[10] RFR: [AOT] assert(false) failed: DEBUG MESSAGE: InterpreterMacroAssembler::call_VM_base: last_sp != NULL
jamsheed
jamsheed.c.m at oracle.com
Thu Oct 12 10:33:34 UTC 2017
Dean,
Thank you for the review, yes there is check for extended sp equality
too. made the change
http://cr.openjdk.java.net/~jcm/8168712/webrev.02/
Best regards,
Jamsheed
On Thursday 12 October 2017 03:28 AM, dean.long at oracle.com wrote:
> For AARCH64 in templateTable_arm.cpp, how about using the same code as
> generate_deopt_entry_for?
>
> __ restore_sp_after_call(Rtemp); // Restore SP to extended SP
> __ restore_stack_top();
>
>
> dl
>
> On 10/11/17 5:48 AM, jamsheed wrote:
>> Hi Vladimir,
>>
>> Thank you for pointing this.
>>
>> revised webrev: http://cr.openjdk.java.net/~jcm/8168712/webrev.02/
>>
>> Best Regards,
>>
>> Jamsheed
>>
>>
>> On Tuesday 10 October 2017 08:41 PM, Vladimir Kozlov wrote:
>>> Why you added !defined(AARCH64) in templateTable_arm.cpp? Is only
>>> 32-bit affected?
>>>
>>> Thanks,
>>> Vladimir
>>>
>>> On 9/13/17 11:54 PM, Dean Long wrote:
>>>> It looks like you accidentally dropped
>>>> hotspot-compiler-dev at openjdk.java.net when you added runtime.
>>>>
>>>> dl
>>>>
>>>>
>>>> On 9/13/2017 11:21 PM, jamsheed wrote:
>>>>> (adding runtime list for inputs)
>>>>>
>>>>> On Monday 11 September 2017 11:43 PM, jamsheed wrote:
>>>>>> brief desc: special handling of Object.<init> in
>>>>>> TemplateInterpreter::deopt_reexecute_entry
>>>>>>
>>>>>> required last_sp to be reset explicitly in normal return path
>>>>>>
>>>>>> address TemplateInterpreter::deopt_reexecute_entry(Method*
>>>>>> method, address bcp) {
>>>>>> assert(method->contains(bcp), "just checkin'");
>>>>>> Bytecodes::Code code = Bytecodes::java_code_at(method, bcp);
>>>>>> if (code == Bytecodes::_return) {
>>>>>> // This is used for deopt during registration of finalizers
>>>>>> // during Object.<init>. We simply need to resume execution at
>>>>>> // the standard return vtos bytecode to pop the frame normally.
>>>>>> // reexecuting the real bytecode would cause double registration
>>>>>> // of the finalizable object.
>>>>>> return _normal_table.entry(Bytecodes::_return).entry(vtos);
>>>>>
>>>>> last_sp ! = null not an issue for this case, so i skip the assert
>>>>> in debug build
>>>>>
>>>>> http://cr.openjdk.java.net/~jcm/8168712/webrev.01/
>>>>>
>>>>> Please review.
>>>>>
>>>>> Best Regards,
>>>>> Jamsheed
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>
>
More information about the hotspot-runtime-dev
mailing list