Home | History | Annotate | Download | only in arm
      1 %default { "load":"ldr" }
      2     /* For: iget-quick, iget-boolean-quick, iget-byte-quick, iget-char-quick, iget-short-quick */
      3     /* op vA, vB, offset@CCCC */
      4     mov     r2, rINST, lsr #12          @ r2<- B
      5     FETCH r1, 1                         @ r1<- field byte offset
      6     GET_VREG r3, r2                     @ r3<- object we're operating on
      7     ubfx    r2, rINST, #8, #4           @ r2<- A
      8     cmp     r3, #0                      @ check object for null
      9     beq     common_errNullObject        @ object was null
     10     $load   r0, [r3, r1]                @ r0<- obj.field
     11     FETCH_ADVANCE_INST 2                @ advance rPC, load rINST
     12     SET_VREG r0, r2                     @ fp[A]<- r0
     13     GET_INST_OPCODE ip                  @ extract opcode from rINST
     14     GOTO_OPCODE ip                      @ jump to next instruction
     15