Home | History | Annotate | Download | only in arm
      1     /*
      2      * Array object get.  vAA <- vBB[vCC].
      3      *
      4      * for: aget-object
      5      */
      6     /* op vAA, vBB, vCC */
      7     FETCH_B r2, 1, 0                    @ r2<- BB
      8     mov     r9, rINST, lsr #8           @ r9<- AA
      9     FETCH_B r3, 1, 1                    @ r3<- CC
     10     EXPORT_PC
     11     GET_VREG r0, r2                     @ r0<- vBB (array object)
     12     GET_VREG r1, r3                     @ r1<- vCC (requested index)
     13     bl       artAGetObjectFromMterp     @ (array, index)
     14     ldr      r1, [rSELF, #THREAD_EXCEPTION_OFFSET]
     15     PREFETCH_INST 2
     16     cmp      r1, #0
     17     bne      MterpException
     18     SET_VREG_OBJECT r0, r9
     19     ADVANCE 2
     20     GET_INST_OPCODE ip
     21     GOTO_OPCODE ip                      @ jump to next instruction
     22