main.smali revision cf4e7ce3601e18e8690bbdb83017c366a5238cca
1.class public Lmain;
2
3.super Ljava/lang/Object;
4
5.method public static main([Ljava/lang/String;)V
6    .registers 6
7
8    const v2, 0
9    
10    
11    const v3, 1
12    const v4, 0
13    new-array v1, v3, [Lsubclass1;    
14    new-instance v0, Lsubclass1;
15    invoke-direct {v0}, Lsubclass1;-><init>()V
16    aput-object v0, v1, v4
17
18    goto here2:
19
20    here:
21    const v2, 1
22
23    here2:
24
25    #this is tricky, because it has to merge two array types, [Lsubclass1; and [Lsubclass2
26    #which should result in [Lsuperclass;. However, this dex file won't have a reference
27    #to [Lsuperclass;
28    aget-object v5, v1, v4
29
30    invoke-virtual {v5}, Lsupersuperclass;->somemethod()V
31
32
33    new-array v1, v3, [Lsubclass2;
34    new-instance v0, Lsubclass2;
35    invoke-direct {v0}, Lsubclass2;-><init>()V
36    aput-object v0, v1, v4
37
38    if-eqz v2, here:
39
40    return-void
41.end method