Douglas Leung | 200f040 | 2016-02-25 20:05:47 -0800 | [diff] [blame] | 1 | # iget-wide-quick vA, vB, offset /* CCCC */ |
| 2 | GET_OPB(a2) # a2 <- B |
| 3 | GET_VREG(a3, a2) # a3 <- object we're operating on |
| 4 | FETCH(a1, 1) # a1 <- field byte offset |
| 5 | GET_OPA4(a2) # a2 <- A(+) |
| 6 | # check object for null |
| 7 | beqz a3, common_errNullObject # object was null |
| 8 | addu t0, a3, a1 # t0 <- a3 + a1 |
| 9 | LOAD64(a0, a1, t0) # a0 <- obj.field (64 bits, aligned) |
| 10 | FETCH_ADVANCE_INST(2) # advance rPC, load rINST |
| 11 | GET_INST_OPCODE(t0) # extract opcode from rINST |
| 12 | SET_VREG64(a0, a1, a2) # fp[A] <- a0/a1 |
| 13 | GOTO_OPCODE(t0) # jump to next instruction |