1    /*
2     * SPUT_WIDE handler wrapper.
3     *
4     */
5    /* sput-wide vAA, field//BBBB */
6    .extern MterpSet64Static
7    EXPORT_PC
8    lhu     a0, 2(rPC)                  # a0 <- field ref BBBB
9    srl     a1, rINST, 8                # a2 <- AA
10    dlsa    a1, a1, rFP, 2
11    ld      a2, OFF_FP_METHOD(rFP)
12    move    a3, rSELF
13    PREFETCH_INST 2                     # Get next inst, but don't advance rPC
14    jal     MterpSet64Static
15    bnezc   v0, MterpException          # 0 on success, -1 on failure
16    ADVANCE 2                           # Past exception point - now advance rPC
17    GET_INST_OPCODE v0                  # extract opcode from rINST
18    GOTO_OPCODE v0                      # jump to next instruction
19