%verify "executed" %verify "exception for null object" /* * Throw an exception object in the current thread. */ /* throw vAA */ GET_OPA(a2) # a2 <- AA GET_VREG(a1, a2) # a1 <- vAA (exception object) EXPORT_PC() # exception handler can throw # null object? beqz a1, common_errNullObject # yes, throw an NPE instead # bypass dvmSetException, just store it STORE_offThread_exception(a1, rSELF) # thread->exception <- obj b common_exceptionThrown