1    /*
2     * 64-bit instance field get.
3     *
4     * for: iget-wide
5     */
6    EXPORT_PC
7    FETCH    r0, 1                         @ r0<- field ref CCCC
8    mov      r1, rINST, lsr #12            @ r1<- B
9    GET_VREG r1, r1                        @ r1<- fp[B], the object pointer
10    ldr      r2, [rFP, #OFF_FP_METHOD]     @ r2<- referrer
11    mov      r3, rSELF                     @ r3<- self
12    bl       artGet64InstanceFromCode
13    ldr      r3, [rSELF, #THREAD_EXCEPTION_OFFSET]
14    ubfx     r2, rINST, #8, #4             @ r2<- A
15    PREFETCH_INST 2
16    cmp      r3, #0
17    bne      MterpException                @ bail out
18    CLEAR_SHADOW_PAIR r2, ip, lr           @ Zero out the shadow regs
19    VREG_INDEX_TO_ADDR r3, r2              @ r3<- &fp[A]
20    stmia    r3, {r0-r1}                   @ fp[A]<- r0/r1
21    ADVANCE 2
22    GET_INST_OPCODE ip                     @ extract opcode from rINST
23    GOTO_OPCODE ip                         @ jump to next instruction
24