11452bee8f06b9f76a333ddf4760e4beaa82f8099buzbee%default { "is_object":"0", "handler":"artSet32InstanceFromMterp" } 21452bee8f06b9f76a333ddf4760e4beaa82f8099buzbee /* 31452bee8f06b9f76a333ddf4760e4beaa82f8099buzbee * General 32-bit instance field put. 41452bee8f06b9f76a333ddf4760e4beaa82f8099buzbee * 51452bee8f06b9f76a333ddf4760e4beaa82f8099buzbee * for: iput, iput-object, iput-boolean, iput-byte, iput-char, iput-short 61452bee8f06b9f76a333ddf4760e4beaa82f8099buzbee */ 71452bee8f06b9f76a333ddf4760e4beaa82f8099buzbee /* op vA, vB, field@CCCC */ 81452bee8f06b9f76a333ddf4760e4beaa82f8099buzbee .extern $handler 91452bee8f06b9f76a333ddf4760e4beaa82f8099buzbee EXPORT_PC 101452bee8f06b9f76a333ddf4760e4beaa82f8099buzbee FETCH r0, 1 @ r0<- field ref CCCC 111452bee8f06b9f76a333ddf4760e4beaa82f8099buzbee mov r1, rINST, lsr #12 @ r1<- B 121452bee8f06b9f76a333ddf4760e4beaa82f8099buzbee GET_VREG r1, r1 @ r1<- fp[B], the object pointer 131452bee8f06b9f76a333ddf4760e4beaa82f8099buzbee ubfx r2, rINST, #8, #4 @ r2<- A 141452bee8f06b9f76a333ddf4760e4beaa82f8099buzbee GET_VREG r2, r2 @ r2<- fp[A] 151452bee8f06b9f76a333ddf4760e4beaa82f8099buzbee ldr r3, [rFP, #OFF_FP_METHOD] @ r3<- referrer 161452bee8f06b9f76a333ddf4760e4beaa82f8099buzbee PREFETCH_INST 2 171452bee8f06b9f76a333ddf4760e4beaa82f8099buzbee bl $handler 181452bee8f06b9f76a333ddf4760e4beaa82f8099buzbee cmp r0, #0 191452bee8f06b9f76a333ddf4760e4beaa82f8099buzbee bne MterpPossibleException 201452bee8f06b9f76a333ddf4760e4beaa82f8099buzbee ADVANCE 2 @ advance rPC 211452bee8f06b9f76a333ddf4760e4beaa82f8099buzbee GET_INST_OPCODE ip @ extract opcode from rINST 221452bee8f06b9f76a333ddf4760e4beaa82f8099buzbee GOTO_OPCODE ip @ jump to next instruction 23