%default { "helper":"MterpSet32Static"} /* * General SPUT handler wrapper. * * for: sput, sput-boolean, sput-byte, sput-char, sput-short */ /* op vAA, field//BBBB */ EXPORT_PC FETCH w0, 1 // r0<- field ref BBBB lsr w3, wINST, #8 // r3<- AA GET_VREG w1, w3 // r1<= fp[AA] ldr x2, [xFP, #OFF_FP_METHOD] mov x3, xSELF PREFETCH_INST 2 // Get next inst, but don't advance rPC bl $helper cbnz w0, MterpException // 0 on success ADVANCE 2 // Past exception point - now advance rPC GET_INST_OPCODE ip // extract opcode from rINST GOTO_OPCODE ip // jump to next instruction