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