RFR: 8156034: [JVMCI] Notify the jvmci compiler on completion of a bootstrap
Christian Thalinger
christian.thalinger at oracle.com
Wed May 11 19:29:24 UTC 2016
Do you need me to integrate this or will Tom do it?
> On May 11, 2016, at 9:27 AM, Josef Eisl <josef.eisl at jku.at> wrote:
>
> Thanks Christian!
>
> On 05/11/2016 09:21 PM, Christian Thalinger wrote:
>>
>>> On May 10, 2016, at 9:39 PM, Josef Eisl <josef.eisl at jku.at> wrote:
>>>
>>> Thanks again, Chris and Doug!
>>>
>>> Next iteration of the webrev available here:
>>> http://cr.openjdk.java.net/~jeisl/8156034/webrev.02/
>>
>> That looks good.
>>
>>>
>>> Thanks,
>>> Josef
>>>
>>> On 10/05/16 23:35, Doug Simon wrote:
>>>> The _bootstrap_compilation_request_seen variable should be renamed to
>>>> _bootstrap_compilation_request_handled.
>>>>
>>>>
>>>
>>> On 10/05/16 23:33, Christian Thalinger wrote:
>>>>
>>>>> On May 10, 2016, at 11:20 AM, Josef Eisl <josef.eisl at jku.at
>>>>> <mailto:josef.eisl at jku.at>> wrote:
>>>>>
>>>>> Thank you for the review!
>>>>>
>>>>> update webrev: http://cr.openjdk.java.net/~jeisl/8156034/webrev.01
>>>>> <http://cr.openjdk.java.net/%7Ejeisl/8156034/webrev.01>
>>>>
>>>> I think your change works but the proper way is to pass THREAD
>>>> to JVMCICompiler::bootstrap() and use CHECK here:
>>>>
>>>> + JVMCIRuntime::bootstrap_finished(CHECK);
>>>
>>> That makes sense. I'm still figuring out where to use which macro but
>>> I'm getting closer :).
>>>
>>>>>
>>>>> Thanks,
>>>>> Josef
>>>>>
>>>>> On 05/10/2016 07:30 PM, Christian Thalinger wrote:
>>>>>>
>>>>>>> On May 10, 2016, at 6:12 AM, Josef Eisl <josef.eisl at jku.at
>>>>>>> <mailto:josef.eisl at jku.at>
>>>>>>> <mailto:josef.eisl at jku.at>> wrote:
>>>>>>>
>>>>>>> Hi!
>>>>>>>
>>>>>>> May I get a review for this JVMCI change.
>>>>>>>
>>>>>>> webrev: http://cr.openjdk.java.net/~jeisl/8156034/webrev/
>>>>>>> <http://cr.openjdk.java.net/%7Ejeisl/8156034/webrev/>
>>>>>>
>>>>>>
>>>>>> src/share/vm/jvmci/jvmciCompiler.cpp
>>>>>>
>>>>>> + _bootstrap_compilation_request_seen = false;
>>>>>>
>>>>>> Remove the extra space after =
>>>>>>
>>>>>>
>>>>>> src/share/vm/jvmci/jvmciCompiler.hpp
>>>>>>
>>>>>> + * True if we have seen the a bootstrap compilation request.
>>>>>>
>>>>>> Typo “the a”.
>>>>>>
>>>>>>
>>>>>> src/share/vm/jvmci/jvmciRuntime.cpp
>>>>>>
>>>>>> +void JVMCIRuntime::bootstrapFinished() {
>>>>>>
>>>>>> Rename the method to bootstrap_finished. Also, this method should use
>>>>>> TRAPS and propagate the exception. In JNI_CreateJavaVM_inner use
>>>>>> something like this to report exceptions:
>>>>>>
>>>>>> if (HAS_PENDING_EXCEPTION) {
>>>>>> HandleMark hm;
>>>>>> vm_exit_during_initialization(Handle(THREAD, PENDING_EXCEPTION));
>>>>>> }
>>>>>>
>>>>>> + if (_HotSpotJVMCIRuntime_instance != NULL) {
>>>>>>
>>>>>> Can this ever be not true at this point?
>>>>>
>>>>> No, I guess you are right. In jdk9 this condition should always hold.
>>>>>
>>>>>>
>>>>>>
>>>>>> *test/compiler/jvmci/events/JvmciNotifyBootstrapFinishedEventTest.java*
>>>>>>
>>>>>> 27 * @requires (os.simpleArch == "x64" | os.simpleArch ==
>>>>>> "sparcv9" | os.simpleArch == "aarch64")
>>>>>> 28 * @requires (os.simpleArch == "x64" | os.simpleArch ==
>>>>>> "sparcv9" | os.simpleArch == "aarch64")
>>>>>>
>>>>>> Remove duplicate line.
>>>>>>
>>>>>>> bug: https://bugs.openjdk.java.net/browse/JDK-8156034
>>>>>>>
>>>>>>> It passes all jvmci tests.
>>>>>>>
>>>>>>> Note that this changes depends on
>>>>>>> https://bugs.openjdk.java.net/browse/JDK-8155023
>>>>>>>
>>>>>>> Thanks in advance,
>>>>>>> Josef
>>>>
>>>
>>
>
More information about the hotspot-compiler-dev
mailing list