[10] RFR: [AOT] assert(false) failed: DEBUG MESSAGE: InterpreterMacroAssembler::call_VM_base: last_sp != NULL

jamsheed jamsheed.c.m at oracle.com
Thu Sep 14 06:21:12 UTC 2017


(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