1 /* 2 * 64-bit instance field get. 3 * 4 * for: iget-wide 5 */ 6 EXPORT_PC 7 FETCH w0, 1 // w0<- field ref CCCC 8 lsr w1, wINST, #12 // w1<- B 9 GET_VREG w1, w1 // w1<- fp[B], the object pointer 10 ldr x2, [xFP, #OFF_FP_METHOD] // w2<- referrer 11 mov x3, xSELF // w3<- self 12 bl artGet64InstanceFromCode 13 ldr x3, [xSELF, #THREAD_EXCEPTION_OFFSET] 14 ubfx w2, wINST, #8, #4 // w2<- A 15 PREFETCH_INST 2 16 cmp w3, #0 17 cbnz w3, MterpException // bail out 18 SET_VREG_WIDE x0, w2 19 ADVANCE 2 20 GET_INST_OPCODE ip // extract opcode from wINST 21 GOTO_OPCODE ip // jump to next instruction 22