blob: 9fdb8472735ac6363a99bb38ab73a79db2745456 [file] [log] [blame]
Douglas Leung200f0402016-02-25 20:05:47 -08001 # iput-wide-quick vA, vB, offset /* CCCC */
2 GET_OPA4(a0) # a0 <- A(+)
3 GET_OPB(a1) # a1 <- B
4 GET_VREG(a2, a1) # a2 <- fp[B], the object pointer
5 # check object for null
6 beqz a2, common_errNullObject # object was null
7 EAS2(a3, rFP, a0) # a3 <- &fp[A]
8 LOAD64(a0, a1, a3) # a0/a1 <- fp[A]
9 FETCH(a3, 1) # a3 <- field byte offset
10 FETCH_ADVANCE_INST(2) # advance rPC, load rINST
11 addu a2, a2, a3 # obj.field (64 bits, aligned) <- a0/a1
12 STORE64(a0, a1, a2) # obj.field (64 bits, aligned) <- a0/a1
13 GET_INST_OPCODE(t0) # extract opcode from rINST
14 GOTO_OPCODE(t0) # jump to next instruction