diff --git a/baksmali/src/test/smali/deodex_test1/main.smali b/baksmali/src/test/smali/deodex_test1/main.smali index e13aa8d2..946b8a4e 100644 --- a/baksmali/src/test/smali/deodex_test1/main.smali +++ b/baksmali/src/test/smali/deodex_test1/main.smali @@ -5,15 +5,15 @@ .method public static main([Ljava/lang/String;)V .registers 3 - here4: + :here4 const v0, 0 - here3: + :here3 new-instance v2, Lsuperclass; invoke-direct {v2}, Lsuperclass;->()V - if-eqz v0, here2: + if-eqz v0, :here2 #this is the unresolvable instruction. v0 is always null, @@ -32,42 +32,42 @@ #a branch to outside the dead code. The branch label should not #be commented out, because there is a non-dead instruction #that branches to it - if-eqz v0, here2: + if-eqz v0, :here2 #a branch to inside the dead code. the branch label should be #commented out - if-eqz v0, here: + if-eqz v0, :here #another branch to outside the dead code. In this case, the "dead" #instruction is the first instruction that references the label. #the label should not be commented out, because it is referenced #be a non-dead instruction - if-eqz v0, here3: + if-eqz v0, :here3 #one more branch to out the dead code. the branch label should be #commented out, because there are no other non-dead instructions #referenceding it - if-eqz v0, here4: + if-eqz v0, :here4 #another odexed instruction that uses the result of the #first unresolveable odex instruction. this should #appear as a commented invoke-virtual-quick instruction invoke-virtual {v1}, Lsuperclass;->somemethod()V - here: + :here #a resolveable odex instruction in the dead code. It should be resolved, #but still commented out invoke-virtual {v2}, Lsuperclass;->somemethod()V - here2: + :here2 #and we're back to the non-dead code invoke-virtual {v2}, Lsuperclass;->somemethod()V - if-nez v0, here3: + if-nez v0, :here3 return-void diff --git a/baksmali/src/test/smali/deodex_test2/app_classes/main.smali b/baksmali/src/test/smali/deodex_test2/app_classes/main.smali index 9c1846ed..970d4ba0 100644 --- a/baksmali/src/test/smali/deodex_test2/app_classes/main.smali +++ b/baksmali/src/test/smali/deodex_test2/app_classes/main.smali @@ -15,12 +15,12 @@ invoke-direct {v0}, Lsubclass1;->()V aput-object v0, v1, v4 - goto here2: + goto :here2 - here: + :here const v2, 1 - here2: + :here2 #this is tricky, because it has to merge two array types, [Lsubclass1; and [Lsubclass2 #which should result in [Lsuperclass;. However, this dex file won't have a reference @@ -35,7 +35,7 @@ invoke-direct {v0}, Lsubclass2;->()V aput-object v0, v1, v4 - if-eqz v2, here: + if-eqz v2, :here return-void .end method \ No newline at end of file