RFR(S)[8u]: 8158639: C2 compilation fails with SIGSEGV

Vladimir Ivanov vladimir.x.ivanov at oracle.com
Thu Nov 17 14:34:35 UTC 2016


Looks good (not a 8u Reviewer).

Best regards,
Vladimir Ivanov

On 11/16/16 7:44 PM, david buck wrote:
> (moving to hotspot-dev for more exposure.)
>
> Jamsheed, thanks once again reviewing my backport!
>
> Any reviewers out there willing to chime in?
>
> Cheers,
> -Buck
>
>
> -------- Forwarded Message --------
> Subject: Re: RFR[8u]: 8158639: C2 compilation fails with SIGSEGV
> Date: Wed, 16 Nov 2016 21:48:10 +0530
> From: Jamsheed C m <jamsheed.c.m at oracle.com>
> Organization: Oracle Corporation
> To: david buck <david.buck at oracle.com>,
> hotspot-compiler-dev at openjdk.java.net
> <hotspot-compiler-dev at openjdk.java.net>
>
> Thanks for fixing. new webrev looks good to me (not a reviewer).
>
> Best Regards,
> Jamsheed
> On 11/16/2016 4:31 PM, david buck wrote:
>> Hi Jamsheed!
>>
>> Thank you for catching the mistake! I have modified the backport to
>> include the relevant change from 8072008 [0]. Here is an updated webrev:
>>
>> http://cr.openjdk.java.net/~dbuck/jdk8158639_8u_02/
>>
>> In the new chunk of code added, the only difference from the code in
>> JDK 9 is I had to add a call to err_msg() as JDK 8 does not have
>> variadic macro version of assert() [1].
>>
>> I have reran all tests (both JPRT and manual) with no issues.
>>
>> Cheers,
>> -Buck
>>
>> [0] http://hg.openjdk.java.net/jdk9/jdk9/hotspot/rev/9988b390777b
>>
>> [1] https://bugs.openjdk.java.net/browse/JDK-8080775
>>
>> On 2016/11/16 16:29, Jamsheed C m wrote:
>>> Hi David,
>>>
>>> this change is missing
>>>
>>> JVMState* VirtualCallGenerator::generate(JVMState* jvms) {
>>>
>>> ...
>>>
>>>   if (kit.gvn().type(receiver)->higher_equal(TypePtr::NULL_PTR)) {
>>>     assert(Bytecodes::is_invoke(kit.java_bc()), "%d: %s", kit.java_bc(),
>>> Bytecodes::name(kit.java_bc()));
>>>     ciMethod* declared_method =
>>> kit.method()->get_method_at_bci(kit.bci());
>>>     int arg_size =
>>> declared_method->signature()->arg_size_for_bc(kit.java_bc());
>>>     kit.inc_sp(arg_size);  // restore arguments
>>>     kit.uncommon_trap(Deoptimization::Reason_null_check,
>>>                       Deoptimization::Action_none,
>>>                       NULL, "null receiver");
>>>
>>>
>>> Best Regards,
>>>
>>> Jamsheed
>>>
>>>
>>> On 11/15/2016 8:55 PM, david buck wrote:
>>>> Hi!
>>>>
>>>> Please review the backported changes of JDK-8158639 to 8u:
>>>>
>>>> It is a very straightforward backport. The only two differences are:
>>>>
>>>> - I added a convenience macro, get_method_at_bci(), from the change
>>>> for 8072008 to make the backport cleaner.
>>>>
>>>> - I had to modify (remove) the package used for the testcase.
>>>>
>>>> Bug Report:
>>>> [ 8158639: C2 compilation fails with SIGSEGV ]
>>>> https://bugs.openjdk.java.net/browse/JDK-8158639
>>>>
>>>> JDK 9 changeset:
>>>> http://hg.openjdk.java.net/jdk9/jdk9/hotspot/rev/119a2a3cc29b
>>>>
>>>> 8u-dev Webrev:
>>>> http://cr.openjdk.java.net/~dbuck/jdk8158639_8u_01/
>>>>
>>>> Testing:
>>>> Manual verification and JPRT (default and hotspot testsets)
>>>>
>>>> Cheers,
>>>> -Buck
>>>
>


More information about the hotspot-dev mailing list