Home | History | Annotate | Download | only in x86_64
      1 %default { "helper":"UndefinedInvokeHandler" }
      2 /*
      3  * Generic invoke handler wrapper.
      4  */
      5     /* op vB, {vD, vE, vF, vG, vA}, class@CCCC */
      6     /* op {vCCCC..v(CCCC+AA-1)}, meth@BBBB */
      7     .extern $helper
      8     EXPORT_PC
      9     movq    rSELF, OUT_ARG0
     10     leaq    OFF_FP_SHADOWFRAME(rFP), OUT_ARG1
     11     movq    rPC, OUT_ARG2
     12     REFRESH_INST ${opnum}
     13     movl    rINST, OUT_32_ARG3
     14     call    SYMBOL($helper)
     15     testb   %al, %al
     16     jz      MterpException
     17     ADVANCE_PC 3
     18     call    SYMBOL(MterpShouldSwitchInterpreters)
     19     testb   %al, %al
     20     jnz     MterpFallback
     21     FETCH_INST
     22     GOTO_NEXT
     23