Home | History | Annotate | Download | only in x86
      1 /*
      2  * SGET_WIDE handler wrapper.
      3  *
      4  */
      5     /* sget-wide vAA, field@BBBB */
      6     .extern artGet64StaticFromCode
      7     EXPORT_PC
      8     movzwl  2(rPC), %eax
      9     movl    %eax, OUT_ARG0(%esp)            # field ref CCCC
     10     movl    OFF_FP_METHOD(rFP), %eax
     11     movl    %eax, OUT_ARG1(%esp)            # referrer
     12     movl    rSELF, %ecx
     13     movl    %ecx, OUT_ARG2(%esp)            # self
     14     call    SYMBOL(artGet64StaticFromCode)
     15     movl    rSELF, %ecx
     16     cmpl    $$0, THREAD_EXCEPTION_OFFSET(%ecx)
     17     jnz     MterpException
     18     SET_VREG %eax, rINST                    # fp[A]<- low part
     19     SET_VREG_HIGH %edx, rINST               # fp[A+1]<- high part
     20     RESTORE_IBASE_FROM_SELF %ecx
     21     ADVANCE_PC_FETCH_AND_GOTO_NEXT 2
     22