[10] RFR: [AOT] assert(false) failed: DEBUG MESSAGE: InterpreterMacroAssembler::call_VM_base: last_sp != NULL
dean.long at oracle.com
dean.long at oracle.com
Thu Oct 12 18:21:29 UTC 2017
Looks good.
dl
On 10/12/17 3:33 AM, jamsheed wrote:
> 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