Add addition "FirstInstrucitonTest" method to the deodex_test1 baksmali test

git-svn-id: https://smali.googlecode.com/svn/trunk@563 55b6fa8a-2a1e-11de-a435-ffa8d773f76a
This commit is contained in:
JesusFreke@JesusFreke.com 2010-01-12 08:10:37 +00:00
parent daa8cef392
commit 7eef1e37e7

View File

@ -107,4 +107,27 @@
#and now back to our normal programming
:here
return-object v0
.end method
.method public static FirstInstructionTest(Lrandomclass;)V
.registers 1
:try_start
invoke-virtual/range {p0}, Lrandomclass;->getSuperclass()Lsuperclass;
return-void
:try_end
.catch Ljava/lang/Exception; {:try_start .. :try_end} :handler
:handler
:inner_try_start
#this tests that the parameter register types are correctly propagated to the exception handlers, in the
#case that the first instruction of the method can throw an exception and is in a try black
invoke-virtual/range {p0}, Lrandomclass;->getSuperclass()Lsuperclass;
return-void
:inner_try_end
.catch Ljava/lang/Exception; {:inner_try_start .. :inner_try_end} :inner_handler
:inner_handler
#this additionally tests that the register types are propagated recursively, in the case that the first
#instruction in the exception handler can also throw an exception, and is covered by a try block
invoke-virtual/range {p0}, Lrandomclass;->getSuperclass()Lsuperclass;
return-void
.end method