1200f040af3e4fe9e178cb63c90860d58d90ef665Douglas Leung # iget-wide-quick vA, vB, offset /* CCCC */ 2200f040af3e4fe9e178cb63c90860d58d90ef665Douglas Leung GET_OPB(a2) # a2 <- B 3200f040af3e4fe9e178cb63c90860d58d90ef665Douglas Leung GET_VREG(a3, a2) # a3 <- object we're operating on 4200f040af3e4fe9e178cb63c90860d58d90ef665Douglas Leung FETCH(a1, 1) # a1 <- field byte offset 5200f040af3e4fe9e178cb63c90860d58d90ef665Douglas Leung GET_OPA4(a2) # a2 <- A(+) 6200f040af3e4fe9e178cb63c90860d58d90ef665Douglas Leung # check object for null 7200f040af3e4fe9e178cb63c90860d58d90ef665Douglas Leung beqz a3, common_errNullObject # object was null 8200f040af3e4fe9e178cb63c90860d58d90ef665Douglas Leung addu t0, a3, a1 # t0 <- a3 + a1 9200f040af3e4fe9e178cb63c90860d58d90ef665Douglas Leung LOAD64(a0, a1, t0) # a0 <- obj.field (64 bits, aligned) 10200f040af3e4fe9e178cb63c90860d58d90ef665Douglas Leung FETCH_ADVANCE_INST(2) # advance rPC, load rINST 11200f040af3e4fe9e178cb63c90860d58d90ef665Douglas Leung GET_INST_OPCODE(t0) # extract opcode from rINST 12200f040af3e4fe9e178cb63c90860d58d90ef665Douglas Leung SET_VREG64(a0, a1, a2) # fp[A] <- a0/a1 13200f040af3e4fe9e178cb63c90860d58d90ef665Douglas Leung GOTO_OPCODE(t0) # jump to next instruction 14