blob: 573e14d6630894c06a26cf22ece64ab535751b25 [file] [log] [blame]
/* iput-wide vA, vB, field@CCCC */
.extern artSet64InstanceFromMterp
EXPORT_PC
movzwl 2(rPC), %eax # eax <- 0000CCCC
movl %eax, OUT_ARG0(%esp) # field ref CCCC
movzbl rINSTbl,%ecx # ecx <- BA
sarl $$4,%ecx # ecx <- B
GET_VREG %ecx, %ecx
movl %ecx, OUT_ARG1(%esp) # the object pointer
andb $$0xf,rINSTbl # rINST <- A
leal VREG_ADDRESS(rINST), %eax
movl %eax, OUT_ARG2(%esp) # &fp[A]
movl OFF_FP_METHOD(rFP), %eax
movl %eax, OUT_ARG3(%esp) # referrer
call SYMBOL(artSet64InstanceFromMterp)
testl %eax, %eax
jnz MterpPossibleException
REFRESH_IBASE
ADVANCE_PC_FETCH_AND_GOTO_NEXT 2