1%verify "executed" 2%verify "exception for null object" 3 /* 4 * Synchronize on an object. 5 */ 6 /* monitor-enter vAA */ 7 mov r2, rINST, lsr #8 @ r2<- AA 8 GET_VREG(r1, r2) @ r1<- vAA (object) 9 mov r0, rSELF @ r0<- self 10 cmp r1, #0 @ null object? 11 EXPORT_PC() @ need for precise GC 12 beq common_errNullObject @ null object, throw an exception 13 FETCH_ADVANCE_INST(1) @ advance rPC, load rINST 14 bl dvmLockObject @ call(self, obj) 15 GET_INST_OPCODE(ip) @ extract opcode from rINST 16 GOTO_OPCODE(ip) @ jump to next instruction 17