1 /* 2 * 64-bit instance field get. 3 * 4 * for: iget-wide 5 */ 6 EXPORT_PC 7 movzwl 2(rPC), %eax # eax <- 0000CCCC 8 movl %eax, OUT_ARG0(%esp) # field ref CCCC 9 movzbl rINSTbl, %ecx # ecx <- BA 10 sarl $$4, %ecx # ecx <- B 11 GET_VREG %ecx, %ecx 12 movl %ecx, OUT_ARG1(%esp) # the object pointer 13 movl OFF_FP_METHOD(rFP), %eax 14 movl %eax, OUT_ARG2(%esp) # referrer 15 mov rSELF, %ecx 16 movl %ecx, OUT_ARG3(%esp) # self 17 call SYMBOL(artGet64InstanceFromCode) 18 mov rSELF, %ecx 19 cmpl $$0, THREAD_EXCEPTION_OFFSET(%ecx) 20 jnz MterpException # bail out 21 andb $$0xf, rINSTbl # rINST <- A 22 SET_VREG %eax, rINST 23 SET_VREG_HIGH %edx, rINST 24 RESTORE_IBASE_FROM_SELF %ecx 25 ADVANCE_PC_FETCH_AND_GOTO_NEXT 2 26