blob: 95c34d7b3f60ebd4df3685fddf577f9866a377b0 [file] [log] [blame]
Douglas Leung200f0402016-02-25 20:05:47 -08001 /* For: iget-object-quick */
2 /* op vA, vB, offset@CCCC */
3 GET_OPB(a2) # a2 <- B
4 FETCH(a1, 1) # a1 <- field byte offset
5 EXPORT_PC()
6 GET_VREG(a0, a2) # a0 <- object we're operating on
7 JAL(artIGetObjectFromMterp) # v0 <- GetObj(obj, offset)
8 lw a3, THREAD_EXCEPTION_OFFSET(rSELF)
9 GET_OPA4(a2) # a2<- A+
10 PREFETCH_INST(2) # load rINST
11 bnez a3, MterpPossibleException # bail out
Douglas Leung200f0402016-02-25 20:05:47 -080012 ADVANCE(2) # advance rPC
13 GET_INST_OPCODE(t0) # extract opcode from rINST
Alexey Frunze84603bf2016-10-21 19:54:43 -070014 SET_VREG_OBJECT_GOTO(v0, a2, t0) # fp[A] <- v0