1 %default { "helper":"artSet32StaticFromCode"} 2 /* 3 * General SPUT handler. 4 * 5 * for: sput, sput-boolean, sput-byte, sput-char, sput-short 6 */ 7 # op vAA, field /* BBBB */ 8 EXPORT_PC() 9 FETCH(a0, 1) # a0 <- field ref BBBB 10 GET_OPA(a3) # a3 <- AA 11 GET_VREG(a1, a3) # a1 <- fp[AA], the object pointer 12 lw a2, OFF_FP_METHOD(rFP) # a2 <- method 13 move a3, rSELF # a3 <- self 14 PREFETCH_INST(2) # load rINST 15 JAL($helper) 16 bnez v0, MterpException # bail out 17 ADVANCE(2) # advance rPC 18 GET_INST_OPCODE(t0) # extract opcode from rINST 19 GOTO_OPCODE(t0) # jump to next instruction 20