1 /* fill-array-data vAA, +BBBBBBBB */ 2 EXPORT_PC 3 FETCH r0, 1 @ r0<- bbbb (lo) 4 FETCH r1, 2 @ r1<- BBBB (hi) 5 mov r3, rINST, lsr #8 @ r3<- AA 6 orr r1, r0, r1, lsl #16 @ r1<- BBBBbbbb 7 GET_VREG r0, r3 @ r0<- vAA (array object) 8 add r1, rPC, r1, lsl #1 @ r1<- PC + BBBBbbbb*2 (array data off.) 9 bl MterpFillArrayData @ (obj, payload) 10 cmp r0, #0 @ 0 means an exception is thrown 11 beq MterpPossibleException @ exception? 12 FETCH_ADVANCE_INST 3 @ advance rPC, load rINST 13 GET_INST_OPCODE ip @ extract opcode from rINST 14 GOTO_OPCODE ip @ jump to next instruction 15