Home | History | Annotate | Download | only in x86
      1 /*
      2  * Return a 32-bit value.
      3  *
      4  * for: return, return-object
      5  */
      6     /* op vAA */
      7     .extern MterpThreadFenceForConstructor
      8     call    SYMBOL(MterpThreadFenceForConstructor)
      9     movl    rSELF, %eax
     10     testl   $$(THREAD_SUSPEND_OR_CHECKPOINT_REQUEST), THREAD_FLAGS_OFFSET(%eax)
     11     jz      1f
     12     movl    %eax, OUT_ARG0(%esp)
     13     call    SYMBOL(MterpSuspendCheck)
     14 1:
     15     GET_VREG %eax, rINST                    # eax <- vAA
     16     xorl    %ecx, %ecx
     17     jmp     MterpReturn
     18