1%default { "is_object":"0", "handler":"artSet32InstanceFromMterp" } 2 /* 3 * General 32-bit instance field put. 4 * 5 * for: iput, iput-object, iput-boolean, iput-byte, iput-char, iput-short 6 */ 7 /* op vA, vB, field//CCCC */ 8 .extern $handler 9 EXPORT_PC 10 FETCH w0, 1 // w0<- field ref CCCC 11 lsr w1, wINST, #12 // w1<- B 12 GET_VREG w1, w1 // w1<- fp[B], the object pointer 13 ubfx w2, wINST, #8, #4 // w2<- A 14 GET_VREG w2, w2 // w2<- fp[A] 15 ldr x3, [xFP, #OFF_FP_METHOD] // w3<- referrer 16 PREFETCH_INST 2 17 bl $handler 18 cbnz w0, MterpPossibleException 19 ADVANCE 2 // advance rPC 20 GET_INST_OPCODE ip // extract opcode from rINST 21 GOTO_OPCODE ip // jump to next instruction 22