1%verify "executed"
2%verify "exception for null object"
3    /*
4     * Synchronize on an object.
5     */
6    /* monitor-enter vAA */
7    movl    rSELF,%ecx
8    GET_VREG_R %eax rINST               # eax<- vAA
9    FETCH_INST_WORD 1
10    testl   %eax,%eax                   # null object?
11    EXPORT_PC                           # need for precise GC
12    je     common_errNullObject
13    movl    %ecx,OUT_ARG0(%esp)
14    movl    %eax,OUT_ARG1(%esp)
15    SPILL(rIBASE)
16    call    dvmLockObject               # dvmLockObject(self,object)
17    UNSPILL(rIBASE)
18    FETCH_INST_OPCODE 1 %ecx
19    ADVANCE_PC 1
20    GOTO_NEXT_R %ecx
21