Orion Hodson | c069a30 | 2017-01-18 09:23:12 +0000 | [diff] [blame] | 1 | Processing 'invoke-custom.dex'... |
| 2 | Opened 'invoke-custom.dex', DEX version '038' |
| 3 | DEX file header: |
| 4 | magic : 'dex\n038\0' |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 5 | checksum : dc722174 |
| 6 | signature : b59a...f803 |
| 7 | file_size : 31732 |
Orion Hodson | c069a30 | 2017-01-18 09:23:12 +0000 | [diff] [blame] | 8 | header_size : 112 |
| 9 | link_size : 0 |
| 10 | link_off : 0 (0x000000) |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 11 | string_ids_size : 478 |
Orion Hodson | c069a30 | 2017-01-18 09:23:12 +0000 | [diff] [blame] | 12 | string_ids_off : 112 (0x000070) |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 13 | type_ids_size : 77 |
| 14 | type_ids_off : 2024 (0x0007e8) |
| 15 | proto_ids_size : 91 |
| 16 | proto_ids_off : 2332 (0x00091c) |
| 17 | field_ids_size : 21 |
| 18 | field_ids_off : 3424 (0x000d60) |
| 19 | method_ids_size : 243 |
| 20 | method_ids_off : 3592 (0x000e08) |
| 21 | class_defs_size : 14 |
| 22 | class_defs_off : 5536 (0x0015a0) |
| 23 | data_size : 25332 |
| 24 | data_off : 6400 (0x001900) |
Orion Hodson | c069a30 | 2017-01-18 09:23:12 +0000 | [diff] [blame] | 25 | |
| 26 | Class #0 header: |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 27 | class_idx : 7 |
| 28 | access_flags : 0 (0x0000) |
| 29 | superclass_idx : 52 |
Orion Hodson | c069a30 | 2017-01-18 09:23:12 +0000 | [diff] [blame] | 30 | interfaces_off : 0 (0x000000) |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 31 | source_file_idx : 144 |
| 32 | annotations_off : 30700 (0x0077ec) |
| 33 | class_data_off : 28922 (0x0070fa) |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 34 | static_fields_size : 0 |
Orion Hodson | c069a30 | 2017-01-18 09:23:12 +0000 | [diff] [blame] | 35 | instance_fields_size: 0 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 36 | direct_methods_size : 1 |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 37 | virtual_methods_size: 0 |
| 38 | |
| 39 | Class #0 annotations: |
| 40 | Annotations on class |
| 41 | VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=LTestBadBootstrapArguments; |
| 42 | VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=8 name="TestersConstantCallSite" |
Orion Hodson | c069a30 | 2017-01-18 09:23:12 +0000 | [diff] [blame] | 43 | |
| 44 | Class #0 - |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 45 | Class descriptor : 'LTestBadBootstrapArguments$TestersConstantCallSite;' |
| 46 | Access flags : 0x0000 () |
| 47 | Superclass : 'Ljava/lang/invoke/ConstantCallSite;' |
| 48 | Interfaces - |
| 49 | Static fields - |
| 50 | Instance fields - |
| 51 | Direct methods - |
| 52 | #0 : (in LTestBadBootstrapArguments$TestersConstantCallSite;) |
| 53 | name : '<init>' |
| 54 | type : '(Ljava/lang/invoke/MethodHandle;)V' |
| 55 | access : 0x10001 (PUBLIC CONSTRUCTOR) |
| 56 | code - |
| 57 | registers : 2 |
| 58 | ins : 2 |
| 59 | outs : 2 |
| 60 | insns size : 4 16-bit code units |
Orion Hodson | fe42d21 | 2018-08-24 14:01:14 +0100 | [diff] [blame] | 61 | 001b18: |[001b18] TestBadBootstrapArguments$TestersConstantCallSite.<init>:(Ljava/lang/invoke/MethodHandle;)V |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 62 | 001b28: 7020 d200 1000 |0000: invoke-direct {v0, v1}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2 |
| 63 | 001b2e: 0e00 |0003: return-void |
| 64 | catches : (none) |
| 65 | positions : |
| 66 | 0x0000 line=449 |
| 67 | 0x0003 line=450 |
| 68 | locals : |
| 69 | 0x0000 - 0x0004 reg=0 this LTestBadBootstrapArguments$TestersConstantCallSite; |
| 70 | 0x0000 - 0x0004 reg=1 mh Ljava/lang/invoke/MethodHandle; |
| 71 | |
| 72 | Virtual methods - |
| 73 | source_file_idx : 144 (TestBadBootstrapArguments.java) |
| 74 | |
| 75 | Class #1 header: |
| 76 | class_idx : 9 |
| 77 | access_flags : 1024 (0x0400) |
| 78 | superclass_idx : 42 |
| 79 | interfaces_off : 0 (0x000000) |
| 80 | source_file_idx : 145 |
| 81 | annotations_off : 0 (0x000000) |
| 82 | class_data_off : 28932 (0x007104) |
| 83 | static_fields_size : 0 |
| 84 | instance_fields_size: 0 |
| 85 | direct_methods_size : 13 |
| 86 | virtual_methods_size: 0 |
| 87 | |
| 88 | Class #1 - |
| 89 | Class descriptor : 'LTestBase;' |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 90 | Access flags : 0x0400 (ABSTRACT) |
Orion Hodson | c069a30 | 2017-01-18 09:23:12 +0000 | [diff] [blame] | 91 | Superclass : 'Ljava/lang/Object;' |
| 92 | Interfaces - |
| 93 | Static fields - |
Orion Hodson | c069a30 | 2017-01-18 09:23:12 +0000 | [diff] [blame] | 94 | Instance fields - |
| 95 | Direct methods - |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 96 | #0 : (in LTestBase;) |
Orion Hodson | c069a30 | 2017-01-18 09:23:12 +0000 | [diff] [blame] | 97 | name : '<init>' |
| 98 | type : '()V' |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 99 | access : 0x10000 (CONSTRUCTOR) |
Orion Hodson | c069a30 | 2017-01-18 09:23:12 +0000 | [diff] [blame] | 100 | code - |
| 101 | registers : 1 |
| 102 | ins : 1 |
| 103 | outs : 1 |
| 104 | insns size : 4 16-bit code units |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 105 | 002544: |[002544] TestBase.<init>:()V |
| 106 | 002554: 7010 bf00 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.<init>:()V // method@00bf |
| 107 | 00255a: 0e00 |0003: return-void |
Orion Hodson | c069a30 | 2017-01-18 09:23:12 +0000 | [diff] [blame] | 108 | catches : (none) |
| 109 | positions : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 110 | 0x0000 line=19 |
Orion Hodson | c069a30 | 2017-01-18 09:23:12 +0000 | [diff] [blame] | 111 | locals : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 112 | 0x0000 - 0x0004 reg=0 this LTestBase; |
Orion Hodson | c069a30 | 2017-01-18 09:23:12 +0000 | [diff] [blame] | 113 | |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 114 | #1 : (in LTestBase;) |
| 115 | name : 'assertEquals' |
| 116 | type : '(BB)V' |
| 117 | access : 0x0008 (STATIC) |
Orion Hodson | c069a30 | 2017-01-18 09:23:12 +0000 | [diff] [blame] | 118 | code - |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 119 | registers : 5 |
| 120 | ins : 2 |
Orion Hodson | c069a30 | 2017-01-18 09:23:12 +0000 | [diff] [blame] | 121 | outs : 2 |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 122 | insns size : 34 16-bit code units |
| 123 | 00255c: |[00255c] TestBase.assertEquals:(BB)V |
| 124 | 00256c: 3343 0300 |0000: if-ne v3, v4, 0003 // +0003 |
| 125 | 002570: 0e00 |0002: return-void |
| 126 | 002572: 2200 1e00 |0003: new-instance v0, Ljava/lang/AssertionError; // type@001e |
| 127 | 002576: 2201 2d00 |0005: new-instance v1, Ljava/lang/StringBuilder; // type@002d |
| 128 | 00257a: 7010 c100 0100 |0007: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1 |
| 129 | 002580: 1a02 d300 |000a: const-string v2, "assertEquals b1: " // string@00d3 |
| 130 | 002584: 6e20 c800 2100 |000c: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 131 | 00258a: 6e20 c500 3100 |000f: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5 |
| 132 | 002590: 1a02 0d00 |0012: const-string v2, ", b2: " // string@000d |
| 133 | 002594: 6e20 c800 2100 |0014: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 134 | 00259a: 6e20 c500 4100 |0017: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5 |
| 135 | 0025a0: 6e10 ca00 0100 |001a: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca |
| 136 | 0025a6: 0c01 |001d: move-result-object v1 |
| 137 | 0025a8: 7020 b500 1000 |001e: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5 |
| 138 | 0025ae: 2700 |0021: throw v0 |
Orion Hodson | c069a30 | 2017-01-18 09:23:12 +0000 | [diff] [blame] | 139 | catches : (none) |
| 140 | positions : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 141 | 0x0000 line=27 |
| 142 | 0x0002 line=28 |
| 143 | 0x0003 line=30 |
Orion Hodson | c069a30 | 2017-01-18 09:23:12 +0000 | [diff] [blame] | 144 | locals : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 145 | 0x0000 - 0x0022 reg=3 b1 B |
| 146 | 0x0000 - 0x0022 reg=4 b2 B |
Orion Hodson | c069a30 | 2017-01-18 09:23:12 +0000 | [diff] [blame] | 147 | |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 148 | #2 : (in LTestBase;) |
| 149 | name : 'assertEquals' |
| 150 | type : '(CC)V' |
| 151 | access : 0x0008 (STATIC) |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 152 | code - |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 153 | registers : 5 |
| 154 | ins : 2 |
| 155 | outs : 2 |
| 156 | insns size : 34 16-bit code units |
| 157 | 0025b0: |[0025b0] TestBase.assertEquals:(CC)V |
| 158 | 0025c0: 3343 0300 |0000: if-ne v3, v4, 0003 // +0003 |
| 159 | 0025c4: 0e00 |0002: return-void |
| 160 | 0025c6: 2200 1e00 |0003: new-instance v0, Ljava/lang/AssertionError; // type@001e |
| 161 | 0025ca: 2201 2d00 |0005: new-instance v1, Ljava/lang/StringBuilder; // type@002d |
| 162 | 0025ce: 7010 c100 0100 |0007: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1 |
| 163 | 0025d4: 1a02 d400 |000a: const-string v2, "assertEquals c1: " // string@00d4 |
| 164 | 0025d8: 6e20 c800 2100 |000c: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 165 | 0025de: 6e20 c200 3100 |000f: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@00c2 |
| 166 | 0025e4: 1a02 0e00 |0012: const-string v2, ", c2: " // string@000e |
| 167 | 0025e8: 6e20 c800 2100 |0014: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 168 | 0025ee: 6e20 c200 4100 |0017: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@00c2 |
| 169 | 0025f4: 6e10 ca00 0100 |001a: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca |
| 170 | 0025fa: 0c01 |001d: move-result-object v1 |
| 171 | 0025fc: 7020 b500 1000 |001e: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5 |
| 172 | 002602: 2700 |0021: throw v0 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 173 | catches : (none) |
| 174 | positions : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 175 | 0x0000 line=34 |
| 176 | 0x0002 line=35 |
| 177 | 0x0003 line=37 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 178 | locals : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 179 | 0x0000 - 0x0022 reg=3 c1 C |
| 180 | 0x0000 - 0x0022 reg=4 c2 C |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 181 | |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 182 | #3 : (in LTestBase;) |
| 183 | name : 'assertEquals' |
| 184 | type : '(DD)V' |
| 185 | access : 0x0008 (STATIC) |
| 186 | code - |
| 187 | registers : 7 |
| 188 | ins : 4 |
| 189 | outs : 3 |
| 190 | insns size : 36 16-bit code units |
| 191 | 002604: |[002604] TestBase.assertEquals:(DD)V |
| 192 | 002614: 2f00 0305 |0000: cmpl-double v0, v3, v5 |
| 193 | 002618: 3900 0300 |0002: if-nez v0, 0005 // +0003 |
| 194 | 00261c: 0e00 |0004: return-void |
| 195 | 00261e: 2200 1e00 |0005: new-instance v0, Ljava/lang/AssertionError; // type@001e |
| 196 | 002622: 2201 2d00 |0007: new-instance v1, Ljava/lang/StringBuilder; // type@002d |
| 197 | 002626: 7010 c100 0100 |0009: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1 |
| 198 | 00262c: 1a02 d500 |000c: const-string v2, "assertEquals d1: " // string@00d5 |
| 199 | 002630: 6e20 c800 2100 |000e: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 200 | 002636: 6e30 c300 3104 |0011: invoke-virtual {v1, v3, v4}, Ljava/lang/StringBuilder;.append:(D)Ljava/lang/StringBuilder; // method@00c3 |
| 201 | 00263c: 1a02 0f00 |0014: const-string v2, ", d2: " // string@000f |
| 202 | 002640: 6e20 c800 2100 |0016: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 203 | 002646: 6e30 c300 5106 |0019: invoke-virtual {v1, v5, v6}, Ljava/lang/StringBuilder;.append:(D)Ljava/lang/StringBuilder; // method@00c3 |
| 204 | 00264c: 6e10 ca00 0100 |001c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca |
| 205 | 002652: 0c01 |001f: move-result-object v1 |
| 206 | 002654: 7020 b500 1000 |0020: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5 |
| 207 | 00265a: 2700 |0023: throw v0 |
| 208 | catches : (none) |
| 209 | positions : |
| 210 | 0x0000 line=69 |
| 211 | 0x0004 line=70 |
| 212 | 0x0005 line=72 |
| 213 | locals : |
| 214 | 0x0000 - 0x0024 reg=3 d1 D |
| 215 | 0x0000 - 0x0024 reg=5 d2 D |
| 216 | |
| 217 | #4 : (in LTestBase;) |
| 218 | name : 'assertEquals' |
| 219 | type : '(FF)V' |
| 220 | access : 0x0008 (STATIC) |
| 221 | code - |
| 222 | registers : 5 |
| 223 | ins : 2 |
| 224 | outs : 2 |
| 225 | insns size : 36 16-bit code units |
| 226 | 00265c: |[00265c] TestBase.assertEquals:(FF)V |
| 227 | 00266c: 2d00 0304 |0000: cmpl-float v0, v3, v4 |
| 228 | 002670: 3900 0300 |0002: if-nez v0, 0005 // +0003 |
| 229 | 002674: 0e00 |0004: return-void |
| 230 | 002676: 2200 1e00 |0005: new-instance v0, Ljava/lang/AssertionError; // type@001e |
| 231 | 00267a: 2201 2d00 |0007: new-instance v1, Ljava/lang/StringBuilder; // type@002d |
| 232 | 00267e: 7010 c100 0100 |0009: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1 |
| 233 | 002684: 1a02 d600 |000c: const-string v2, "assertEquals f1: " // string@00d6 |
| 234 | 002688: 6e20 c800 2100 |000e: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 235 | 00268e: 6e20 c400 3100 |0011: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(F)Ljava/lang/StringBuilder; // method@00c4 |
| 236 | 002694: 1a02 1000 |0014: const-string v2, ", f2: " // string@0010 |
| 237 | 002698: 6e20 c800 2100 |0016: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 238 | 00269e: 6e20 c400 4100 |0019: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(F)Ljava/lang/StringBuilder; // method@00c4 |
| 239 | 0026a4: 6e10 ca00 0100 |001c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca |
| 240 | 0026aa: 0c01 |001f: move-result-object v1 |
| 241 | 0026ac: 7020 b500 1000 |0020: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5 |
| 242 | 0026b2: 2700 |0023: throw v0 |
| 243 | catches : (none) |
| 244 | positions : |
| 245 | 0x0000 line=62 |
| 246 | 0x0004 line=63 |
| 247 | 0x0005 line=65 |
| 248 | locals : |
| 249 | 0x0000 - 0x0024 reg=3 f1 F |
| 250 | 0x0000 - 0x0024 reg=4 f2 F |
| 251 | |
| 252 | #5 : (in LTestBase;) |
| 253 | name : 'assertEquals' |
| 254 | type : '(II)V' |
| 255 | access : 0x0008 (STATIC) |
| 256 | code - |
| 257 | registers : 5 |
| 258 | ins : 2 |
| 259 | outs : 2 |
| 260 | insns size : 34 16-bit code units |
| 261 | 0026b4: |[0026b4] TestBase.assertEquals:(II)V |
| 262 | 0026c4: 3343 0300 |0000: if-ne v3, v4, 0003 // +0003 |
| 263 | 0026c8: 0e00 |0002: return-void |
| 264 | 0026ca: 2200 1e00 |0003: new-instance v0, Ljava/lang/AssertionError; // type@001e |
| 265 | 0026ce: 2201 2d00 |0005: new-instance v1, Ljava/lang/StringBuilder; // type@002d |
| 266 | 0026d2: 7010 c100 0100 |0007: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1 |
| 267 | 0026d8: 1a02 d700 |000a: const-string v2, "assertEquals i1: " // string@00d7 |
| 268 | 0026dc: 6e20 c800 2100 |000c: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 269 | 0026e2: 6e20 c500 3100 |000f: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5 |
| 270 | 0026e8: 1a02 1100 |0012: const-string v2, ", i2: " // string@0011 |
| 271 | 0026ec: 6e20 c800 2100 |0014: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 272 | 0026f2: 6e20 c500 4100 |0017: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5 |
| 273 | 0026f8: 6e10 ca00 0100 |001a: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca |
| 274 | 0026fe: 0c01 |001d: move-result-object v1 |
| 275 | 002700: 7020 b500 1000 |001e: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5 |
| 276 | 002706: 2700 |0021: throw v0 |
| 277 | catches : (none) |
| 278 | positions : |
| 279 | 0x0000 line=48 |
| 280 | 0x0002 line=49 |
| 281 | 0x0003 line=51 |
| 282 | locals : |
| 283 | 0x0000 - 0x0022 reg=3 i1 I |
| 284 | 0x0000 - 0x0022 reg=4 i2 I |
| 285 | |
| 286 | #6 : (in LTestBase;) |
| 287 | name : 'assertEquals' |
| 288 | type : '(JJ)V' |
| 289 | access : 0x0008 (STATIC) |
| 290 | code - |
| 291 | registers : 7 |
| 292 | ins : 4 |
| 293 | outs : 3 |
| 294 | insns size : 36 16-bit code units |
| 295 | 002764: |[002764] TestBase.assertEquals:(JJ)V |
| 296 | 002774: 3100 0305 |0000: cmp-long v0, v3, v5 |
| 297 | 002778: 3900 0300 |0002: if-nez v0, 0005 // +0003 |
| 298 | 00277c: 0e00 |0004: return-void |
| 299 | 00277e: 2200 1e00 |0005: new-instance v0, Ljava/lang/AssertionError; // type@001e |
| 300 | 002782: 2201 2d00 |0007: new-instance v1, Ljava/lang/StringBuilder; // type@002d |
| 301 | 002786: 7010 c100 0100 |0009: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1 |
| 302 | 00278c: 1a02 d800 |000c: const-string v2, "assertEquals l1: " // string@00d8 |
| 303 | 002790: 6e20 c800 2100 |000e: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 304 | 002796: 6e30 c600 3104 |0011: invoke-virtual {v1, v3, v4}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@00c6 |
| 305 | 00279c: 1a02 1200 |0014: const-string v2, ", l2: " // string@0012 |
| 306 | 0027a0: 6e20 c800 2100 |0016: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 307 | 0027a6: 6e30 c600 5106 |0019: invoke-virtual {v1, v5, v6}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@00c6 |
| 308 | 0027ac: 6e10 ca00 0100 |001c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca |
| 309 | 0027b2: 0c01 |001f: move-result-object v1 |
| 310 | 0027b4: 7020 b500 1000 |0020: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5 |
| 311 | 0027ba: 2700 |0023: throw v0 |
| 312 | catches : (none) |
| 313 | positions : |
| 314 | 0x0000 line=55 |
| 315 | 0x0004 line=56 |
| 316 | 0x0005 line=58 |
| 317 | locals : |
| 318 | 0x0000 - 0x0024 reg=3 l1 J |
| 319 | 0x0000 - 0x0024 reg=5 l2 J |
| 320 | |
| 321 | #7 : (in LTestBase;) |
| 322 | name : 'assertEquals' |
| 323 | type : '(Ljava/lang/Object;Ljava/lang/Object;)V' |
| 324 | access : 0x0008 (STATIC) |
| 325 | code - |
| 326 | registers : 5 |
| 327 | ins : 2 |
| 328 | outs : 2 |
| 329 | insns size : 38 16-bit code units |
| 330 | 002708: |[002708] TestBase.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V |
| 331 | 002718: 7120 ec00 4300 |0000: invoke-static {v3, v4}, Ljava/util/Objects;.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z // method@00ec |
| 332 | 00271e: 0a00 |0003: move-result v0 |
| 333 | 002720: 3800 0300 |0004: if-eqz v0, 0007 // +0003 |
| 334 | 002724: 0e00 |0006: return-void |
| 335 | 002726: 2200 1e00 |0007: new-instance v0, Ljava/lang/AssertionError; // type@001e |
| 336 | 00272a: 2201 2d00 |0009: new-instance v1, Ljava/lang/StringBuilder; // type@002d |
| 337 | 00272e: 7010 c100 0100 |000b: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1 |
| 338 | 002734: 1a02 da00 |000e: const-string v2, "assertEquals: o1: " // string@00da |
| 339 | 002738: 6e20 c800 2100 |0010: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 340 | 00273e: 6e20 c700 3100 |0013: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@00c7 |
| 341 | 002744: 1a02 1300 |0016: const-string v2, ", o2: " // string@0013 |
| 342 | 002748: 6e20 c800 2100 |0018: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 343 | 00274e: 6e20 c700 4100 |001b: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@00c7 |
| 344 | 002754: 6e10 ca00 0100 |001e: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca |
| 345 | 00275a: 0c01 |0021: move-result-object v1 |
| 346 | 00275c: 7020 b500 1000 |0022: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5 |
| 347 | 002762: 2700 |0025: throw v0 |
| 348 | catches : (none) |
| 349 | positions : |
| 350 | 0x0000 line=76 |
| 351 | 0x0006 line=79 |
| 352 | 0x0007 line=77 |
| 353 | locals : |
| 354 | 0x0000 - 0x0026 reg=3 o Ljava/lang/Object; |
| 355 | 0x0000 - 0x0026 reg=4 p Ljava/lang/Object; |
| 356 | |
| 357 | #8 : (in LTestBase;) |
| 358 | name : 'assertEquals' |
| 359 | type : '(SS)V' |
| 360 | access : 0x0008 (STATIC) |
| 361 | code - |
| 362 | registers : 5 |
| 363 | ins : 2 |
| 364 | outs : 2 |
| 365 | insns size : 34 16-bit code units |
| 366 | 0027bc: |[0027bc] TestBase.assertEquals:(SS)V |
| 367 | 0027cc: 3343 0300 |0000: if-ne v3, v4, 0003 // +0003 |
| 368 | 0027d0: 0e00 |0002: return-void |
| 369 | 0027d2: 2200 1e00 |0003: new-instance v0, Ljava/lang/AssertionError; // type@001e |
| 370 | 0027d6: 2201 2d00 |0005: new-instance v1, Ljava/lang/StringBuilder; // type@002d |
| 371 | 0027da: 7010 c100 0100 |0007: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1 |
| 372 | 0027e0: 1a02 d900 |000a: const-string v2, "assertEquals s1: " // string@00d9 |
| 373 | 0027e4: 6e20 c800 2100 |000c: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 374 | 0027ea: 6e20 c500 3100 |000f: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5 |
| 375 | 0027f0: 1a02 1400 |0012: const-string v2, ", s2: " // string@0014 |
| 376 | 0027f4: 6e20 c800 2100 |0014: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 377 | 0027fa: 6e20 c500 4100 |0017: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5 |
| 378 | 002800: 6e10 ca00 0100 |001a: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca |
| 379 | 002806: 0c01 |001d: move-result-object v1 |
| 380 | 002808: 7020 b500 1000 |001e: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5 |
| 381 | 00280e: 2700 |0021: throw v0 |
| 382 | catches : (none) |
| 383 | positions : |
| 384 | 0x0000 line=41 |
| 385 | 0x0002 line=42 |
| 386 | 0x0003 line=44 |
| 387 | locals : |
| 388 | 0x0000 - 0x0022 reg=3 s1 S |
| 389 | 0x0000 - 0x0022 reg=4 s2 S |
| 390 | |
| 391 | #9 : (in LTestBase;) |
| 392 | name : 'assertNotEquals' |
| 393 | type : '(Ljava/lang/Object;Ljava/lang/Object;)V' |
| 394 | access : 0x0008 (STATIC) |
| 395 | code - |
| 396 | registers : 5 |
| 397 | ins : 2 |
| 398 | outs : 2 |
| 399 | insns size : 38 16-bit code units |
| 400 | 002810: |[002810] TestBase.assertNotEquals:(Ljava/lang/Object;Ljava/lang/Object;)V |
| 401 | 002820: 7120 ec00 4300 |0000: invoke-static {v3, v4}, Ljava/util/Objects;.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z // method@00ec |
| 402 | 002826: 0a00 |0003: move-result v0 |
| 403 | 002828: 3900 0300 |0004: if-nez v0, 0007 // +0003 |
| 404 | 00282c: 0e00 |0006: return-void |
| 405 | 00282e: 2200 1e00 |0007: new-instance v0, Ljava/lang/AssertionError; // type@001e |
| 406 | 002832: 2201 2d00 |0009: new-instance v1, Ljava/lang/StringBuilder; // type@002d |
| 407 | 002836: 7010 c100 0100 |000b: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1 |
| 408 | 00283c: 1a02 dc00 |000e: const-string v2, "assertNotEquals: o1: " // string@00dc |
| 409 | 002840: 6e20 c800 2100 |0010: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 410 | 002846: 6e20 c700 3100 |0013: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@00c7 |
| 411 | 00284c: 1a02 1300 |0016: const-string v2, ", o2: " // string@0013 |
| 412 | 002850: 6e20 c800 2100 |0018: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 413 | 002856: 6e20 c700 4100 |001b: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@00c7 |
| 414 | 00285c: 6e10 ca00 0100 |001e: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca |
| 415 | 002862: 0c01 |0021: move-result-object v1 |
| 416 | 002864: 7020 b500 1000 |0022: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5 |
| 417 | 00286a: 2700 |0025: throw v0 |
| 418 | catches : (none) |
| 419 | positions : |
| 420 | 0x0000 line=82 |
| 421 | 0x0006 line=85 |
| 422 | 0x0007 line=83 |
| 423 | locals : |
| 424 | 0x0000 - 0x0026 reg=3 o Ljava/lang/Object; |
| 425 | 0x0000 - 0x0026 reg=4 p Ljava/lang/Object; |
| 426 | |
| 427 | #10 : (in LTestBase;) |
| 428 | name : 'assertNotReached' |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 429 | type : '()V' |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 430 | access : 0x0008 (STATIC) |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 431 | code - |
| 432 | registers : 2 |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 433 | ins : 0 |
| 434 | outs : 2 |
| 435 | insns size : 8 16-bit code units |
| 436 | 00286c: |[00286c] TestBase.assertNotReached:()V |
| 437 | 00287c: 2200 1e00 |0000: new-instance v0, Ljava/lang/AssertionError; // type@001e |
| 438 | 002880: 1a01 a300 |0002: const-string v1, "Unreachable" // string@00a3 |
| 439 | 002884: 7020 b500 1000 |0004: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5 |
| 440 | 00288a: 2700 |0007: throw v0 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 441 | catches : (none) |
| 442 | positions : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 443 | 0x0000 line=88 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 444 | locals : |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 445 | |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 446 | #11 : (in LTestBase;) |
| 447 | name : 'assertTrue' |
| 448 | type : '(Z)V' |
| 449 | access : 0x0008 (STATIC) |
| 450 | code - |
| 451 | registers : 4 |
| 452 | ins : 1 |
| 453 | outs : 2 |
| 454 | insns size : 26 16-bit code units |
| 455 | 00288c: |[00288c] TestBase.assertTrue:(Z)V |
| 456 | 00289c: 3803 0300 |0000: if-eqz v3, 0003 // +0003 |
| 457 | 0028a0: 0e00 |0002: return-void |
| 458 | 0028a2: 2200 1e00 |0003: new-instance v0, Ljava/lang/AssertionError; // type@001e |
| 459 | 0028a6: 2201 2d00 |0005: new-instance v1, Ljava/lang/StringBuilder; // type@002d |
| 460 | 0028aa: 7010 c100 0100 |0007: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1 |
| 461 | 0028b0: 1a02 df00 |000a: const-string v2, "assertTrue value: " // string@00df |
| 462 | 0028b4: 6e20 c800 2100 |000c: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 463 | 0028ba: 6e20 c900 3100 |000f: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Z)Ljava/lang/StringBuilder; // method@00c9 |
| 464 | 0028c0: 6e10 ca00 0100 |0012: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca |
| 465 | 0028c6: 0c01 |0015: move-result-object v1 |
| 466 | 0028c8: 7020 b500 1000 |0016: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5 |
| 467 | 0028ce: 2700 |0019: throw v0 |
| 468 | catches : (none) |
| 469 | positions : |
| 470 | 0x0000 line=21 |
| 471 | 0x0002 line=24 |
| 472 | 0x0003 line=22 |
| 473 | locals : |
| 474 | 0x0000 - 0x001a reg=3 value Z |
| 475 | |
| 476 | #12 : (in LTestBase;) |
| 477 | name : 'fail' |
| 478 | type : '()V' |
| 479 | access : 0x0008 (STATIC) |
| 480 | code - |
| 481 | registers : 2 |
| 482 | ins : 0 |
| 483 | outs : 2 |
| 484 | insns size : 11 16-bit code units |
| 485 | 0028d0: |[0028d0] TestBase.fail:()V |
| 486 | 0028e0: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 487 | 0028e4: 1a01 2601 |0002: const-string v1, "fail" // string@0126 |
| 488 | 0028e8: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 489 | 0028ee: 7100 cc00 0000 |0007: invoke-static {}, Ljava/lang/Thread;.dumpStack:()V // method@00cc |
| 490 | 0028f4: 0e00 |000a: return-void |
| 491 | catches : (none) |
| 492 | positions : |
| 493 | 0x0000 line=92 |
| 494 | 0x0007 line=93 |
| 495 | 0x000a line=94 |
| 496 | locals : |
| 497 | |
| 498 | Virtual methods - |
| 499 | source_file_idx : 145 (TestBase.java) |
| 500 | |
| 501 | Class #2 header: |
| 502 | class_idx : 11 |
| 503 | access_flags : 0 (0x0000) |
| 504 | superclass_idx : 42 |
| 505 | interfaces_off : 0 (0x000000) |
| 506 | source_file_idx : 148 |
| 507 | annotations_off : 30716 (0x0077fc) |
| 508 | class_data_off : 28990 (0x00713e) |
| 509 | static_fields_size : 0 |
| 510 | instance_fields_size: 1 |
| 511 | direct_methods_size : 1 |
| 512 | virtual_methods_size: 0 |
| 513 | |
| 514 | Class #2 annotations: |
| 515 | Annotations on class |
| 516 | VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=LTestInvocationKinds; |
| 517 | VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=8 name="Widget" |
| 518 | |
| 519 | Class #2 - |
| 520 | Class descriptor : 'LTestInvocationKinds$Widget;' |
| 521 | Access flags : 0x0000 () |
| 522 | Superclass : 'Ljava/lang/Object;' |
| 523 | Interfaces - |
| 524 | Static fields - |
| 525 | Instance fields - |
| 526 | #0 : (in LTestInvocationKinds$Widget;) |
| 527 | name : 'value' |
| 528 | type : 'I' |
| 529 | access : 0x0000 () |
| 530 | Direct methods - |
| 531 | #0 : (in LTestInvocationKinds$Widget;) |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 532 | name : '<init>' |
| 533 | type : '(I)V' |
| 534 | access : 0x10001 (PUBLIC CONSTRUCTOR) |
| 535 | code - |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 536 | registers : 2 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 537 | ins : 2 |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 538 | outs : 1 |
| 539 | insns size : 4 16-bit code units |
Orion Hodson | fe42d21 | 2018-08-24 14:01:14 +0100 | [diff] [blame] | 540 | 002abc: |[002abc] TestInvocationKinds$Widget.<init>:(I)V |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 541 | 002acc: 7010 bf00 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.<init>:()V // method@00bf |
| 542 | 002ad2: 0e00 |0003: return-void |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 543 | catches : (none) |
| 544 | positions : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 545 | 0x0000 line=177 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 546 | locals : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 547 | 0x0000 - 0x0004 reg=0 this LTestInvocationKinds$Widget; |
| 548 | 0x0000 - 0x0004 reg=1 value I |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 549 | |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 550 | Virtual methods - |
| 551 | source_file_idx : 148 (TestInvocationKinds.java) |
| 552 | |
| 553 | Class #3 header: |
| 554 | class_idx : 13 |
| 555 | access_flags : 0 (0x0000) |
| 556 | superclass_idx : 48 |
| 557 | interfaces_off : 0 (0x000000) |
| 558 | source_file_idx : 149 |
| 559 | annotations_off : 30732 (0x00780c) |
| 560 | class_data_off : 29002 (0x00714a) |
| 561 | static_fields_size : 0 |
| 562 | instance_fields_size: 0 |
| 563 | direct_methods_size : 1 |
| 564 | virtual_methods_size: 2 |
| 565 | |
| 566 | Class #3 annotations: |
| 567 | Annotations on class |
| 568 | VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=LTestInvokeCustomWithConcurrentThreads; |
| 569 | VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null |
| 570 | VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "Ljava/lang/ThreadLocal<" "Ljava/lang/Integer;" ">;" } |
| 571 | |
| 572 | Class #3 - |
| 573 | Class descriptor : 'LTestInvokeCustomWithConcurrentThreads$1;' |
| 574 | Access flags : 0x0000 () |
| 575 | Superclass : 'Ljava/lang/ThreadLocal;' |
| 576 | Interfaces - |
| 577 | Static fields - |
| 578 | Instance fields - |
| 579 | Direct methods - |
| 580 | #0 : (in LTestInvokeCustomWithConcurrentThreads$1;) |
| 581 | name : '<init>' |
| 582 | type : '()V' |
| 583 | access : 0x10000 (CONSTRUCTOR) |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 584 | code - |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 585 | registers : 1 |
| 586 | ins : 1 |
| 587 | outs : 1 |
| 588 | insns size : 4 16-bit code units |
Orion Hodson | fe42d21 | 2018-08-24 14:01:14 +0100 | [diff] [blame] | 589 | 002ee8: |[002ee8] TestInvokeCustomWithConcurrentThreads$1.<init>:()V |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 590 | 002ef8: 7010 cf00 0000 |0000: invoke-direct {v0}, Ljava/lang/ThreadLocal;.<init>:()V // method@00cf |
| 591 | 002efe: 0e00 |0003: return-void |
| 592 | catches : (none) |
| 593 | positions : |
| 594 | 0x0000 line=33 |
| 595 | locals : |
| 596 | 0x0000 - 0x0004 reg=0 this LTestInvokeCustomWithConcurrentThreads$1; |
| 597 | |
| 598 | Virtual methods - |
| 599 | #0 : (in LTestInvokeCustomWithConcurrentThreads$1;) |
| 600 | name : 'initialValue' |
| 601 | type : '()Ljava/lang/Integer;' |
| 602 | access : 0x0004 (PROTECTED) |
| 603 | code - |
| 604 | registers : 2 |
| 605 | ins : 1 |
| 606 | outs : 1 |
| 607 | insns size : 13 16-bit code units |
Orion Hodson | fe42d21 | 2018-08-24 14:01:14 +0100 | [diff] [blame] | 608 | 002ea0: |[002ea0] TestInvokeCustomWithConcurrentThreads$1.initialValue:()Ljava/lang/Integer; |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 609 | 002eb0: 7100 6500 0000 |0000: invoke-static {}, LTestInvokeCustomWithConcurrentThreads;.access$000:()Ljava/util/concurrent/atomic/AtomicInteger; // method@0065 |
| 610 | 002eb6: 0c00 |0003: move-result-object v0 |
| 611 | 002eb8: 6e10 f100 0000 |0004: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.getAndIncrement:()I // method@00f1 |
| 612 | 002ebe: 0a00 |0007: move-result v0 |
| 613 | 002ec0: 7110 bd00 0000 |0008: invoke-static {v0}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@00bd |
| 614 | 002ec6: 0c00 |000b: move-result-object v0 |
| 615 | 002ec8: 1100 |000c: return-object v0 |
| 616 | catches : (none) |
| 617 | positions : |
| 618 | 0x0000 line=36 |
| 619 | locals : |
| 620 | 0x0000 - 0x000d reg=1 this LTestInvokeCustomWithConcurrentThreads$1; |
| 621 | |
| 622 | #1 : (in LTestInvokeCustomWithConcurrentThreads$1;) |
| 623 | name : 'initialValue' |
| 624 | type : '()Ljava/lang/Object;' |
| 625 | access : 0x1044 (PROTECTED BRIDGE SYNTHETIC) |
| 626 | code - |
| 627 | registers : 2 |
| 628 | ins : 1 |
| 629 | outs : 1 |
| 630 | insns size : 5 16-bit code units |
Orion Hodson | fe42d21 | 2018-08-24 14:01:14 +0100 | [diff] [blame] | 631 | 002ecc: |[002ecc] TestInvokeCustomWithConcurrentThreads$1.initialValue:()Ljava/lang/Object; |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 632 | 002edc: 6e10 6100 0100 |0000: invoke-virtual {v1}, LTestInvokeCustomWithConcurrentThreads$1;.initialValue:()Ljava/lang/Integer; // method@0061 |
| 633 | 002ee2: 0c00 |0003: move-result-object v0 |
| 634 | 002ee4: 1100 |0004: return-object v0 |
| 635 | catches : (none) |
| 636 | positions : |
| 637 | 0x0000 line=33 |
| 638 | locals : |
| 639 | 0x0000 - 0x0005 reg=1 this LTestInvokeCustomWithConcurrentThreads$1; |
| 640 | |
| 641 | source_file_idx : 149 (TestInvokeCustomWithConcurrentThreads.java) |
| 642 | |
| 643 | Class #4 header: |
| 644 | class_idx : 19 |
| 645 | access_flags : 0 (0x0000) |
| 646 | superclass_idx : 42 |
| 647 | interfaces_off : 0 (0x000000) |
| 648 | source_file_idx : 164 |
| 649 | annotations_off : 30748 (0x00781c) |
| 650 | class_data_off : 29021 (0x00715d) |
| 651 | static_fields_size : 0 |
| 652 | instance_fields_size: 0 |
| 653 | direct_methods_size : 2 |
| 654 | virtual_methods_size: 0 |
| 655 | |
| 656 | Class #4 annotations: |
| 657 | Annotations on method #170 'bsm' |
| 658 | VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "(" "Ljava/lang/invoke/MethodHandles$Lookup;" "Ljava/lang/String;" "Ljava/lang/invoke/MethodType;" "Ljava/lang/Class<" "*>;)" "Ljava/lang/invoke/CallSite;" } |
| 659 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 660 | |
| 661 | Class #4 - |
| 662 | Class descriptor : 'LUnrelatedBSM;' |
| 663 | Access flags : 0x0000 () |
| 664 | Superclass : 'Ljava/lang/Object;' |
| 665 | Interfaces - |
| 666 | Static fields - |
| 667 | Instance fields - |
| 668 | Direct methods - |
| 669 | #0 : (in LUnrelatedBSM;) |
| 670 | name : '<init>' |
| 671 | type : '()V' |
| 672 | access : 0x10000 (CONSTRUCTOR) |
| 673 | code - |
| 674 | registers : 1 |
| 675 | ins : 1 |
| 676 | outs : 1 |
| 677 | insns size : 4 16-bit code units |
| 678 | 003fc8: |[003fc8] UnrelatedBSM.<init>:()V |
| 679 | 003fd8: 7010 bf00 0000 |0000: invoke-direct {v0}, Ljava/lang/Object;.<init>:()V // method@00bf |
| 680 | 003fde: 0e00 |0003: return-void |
| 681 | catches : (none) |
| 682 | positions : |
| 683 | 0x0000 line=23 |
| 684 | locals : |
| 685 | 0x0000 - 0x0004 reg=0 this LUnrelatedBSM; |
| 686 | |
| 687 | #1 : (in LUnrelatedBSM;) |
| 688 | name : 'bsm' |
| 689 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;)Ljava/lang/invoke/CallSite;' |
| 690 | access : 0x0008 (STATIC) |
| 691 | code - |
| 692 | registers : 6 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 693 | ins : 4 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 694 | outs : 4 |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 695 | insns size : 10 16-bit code units |
| 696 | 003fa4: |[003fa4] UnrelatedBSM.bsm:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;)Ljava/lang/invoke/CallSite; |
| 697 | 003fb4: 6e40 d800 5243 |0000: invoke-virtual {v2, v5, v3, v4}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8 |
| 698 | 003fba: 0c00 |0003: move-result-object v0 |
| 699 | 003fbc: 2201 3400 |0004: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034 |
| 700 | 003fc0: 7020 d200 0100 |0006: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2 |
| 701 | 003fc6: 1101 |0009: return-object v1 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 702 | catches : (none) |
| 703 | positions : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 704 | 0x0000 line=27 |
| 705 | 0x0004 line=28 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 706 | locals : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 707 | 0x0000 - 0x0000 reg=5 (null) Ljava/lang/Class; |
| 708 | 0x0004 - 0x000a reg=0 mh Ljava/lang/invoke/MethodHandle; |
| 709 | 0x0000 - 0x000a reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 710 | 0x0000 - 0x000a reg=3 name Ljava/lang/String; |
| 711 | 0x0000 - 0x000a reg=4 methodType Ljava/lang/invoke/MethodType; |
| 712 | 0x0000 - 0x000a reg=5 target Ljava/lang/Class; Ljava/lang/Class<*>; |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 713 | |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 714 | Virtual methods - |
| 715 | source_file_idx : 164 (UnrelatedBSM.java) |
| 716 | |
| 717 | Class #5 header: |
| 718 | class_idx : 6 |
| 719 | access_flags : 1 (0x0001) |
| 720 | superclass_idx : 9 |
| 721 | interfaces_off : 0 (0x000000) |
| 722 | source_file_idx : 136 |
| 723 | annotations_off : 30772 (0x007834) |
| 724 | class_data_off : 29036 (0x00716c) |
| 725 | static_fields_size : 0 |
| 726 | instance_fields_size: 0 |
| 727 | direct_methods_size : 5 |
| 728 | virtual_methods_size: 0 |
| 729 | |
| 730 | Class #5 annotations: |
| 731 | Annotations on method #1 'TestLinkerMethodMinimalArguments' |
| 732 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 733 | Annotations on method #2 'TestLinkerMethodMultipleArgumentTypes' |
| 734 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 735 | Annotations on method #3 'TestUninitializedCallSite' |
| 736 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 737 | Annotations on method #7 'main' |
| 738 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 739 | |
| 740 | Class #5 - |
| 741 | Class descriptor : 'LMain;' |
| 742 | Access flags : 0x0001 (PUBLIC) |
| 743 | Superclass : 'LTestBase;' |
| 744 | Interfaces - |
| 745 | Static fields - |
| 746 | Instance fields - |
| 747 | Direct methods - |
| 748 | #0 : (in LMain;) |
| 749 | name : '<init>' |
| 750 | type : '()V' |
| 751 | access : 0x10001 (PUBLIC CONSTRUCTOR) |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 752 | code - |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 753 | registers : 1 |
| 754 | ins : 1 |
| 755 | outs : 1 |
| 756 | insns size : 4 16-bit code units |
| 757 | 001900: |[001900] Main.<init>:()V |
| 758 | 001910: 7010 3200 0000 |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032 |
| 759 | 001916: 0e00 |0003: return-void |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 760 | catches : (none) |
| 761 | positions : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 762 | 0x0000 line=21 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 763 | locals : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 764 | 0x0000 - 0x0004 reg=0 this LMain; |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 765 | |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 766 | #1 : (in LMain;) |
| 767 | name : 'TestLinkerMethodMinimalArguments' |
| 768 | type : '()V' |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 769 | access : 0x000a (PRIVATE STATIC) |
| 770 | code - |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 771 | registers : 4 |
| 772 | ins : 0 |
| 773 | outs : 3 |
| 774 | insns size : 66 16-bit code units |
| 775 | 001918: |[001918] Main.TestLinkerMethodMinimalArguments:()V |
| 776 | 001928: 1210 |0000: const/4 v0, #int 1 // #1 |
| 777 | 00192a: 1301 0a00 |0001: const/16 v1, #int 10 // #a |
| 778 | 00192e: 7130 7700 1001 |0003: invoke-static {v0, v1, v1}, LTestLinkerMethodMinimalArguments;.test:(III)V // method@0077 |
| 779 | 001934: 7100 0500 0000 |0006: invoke-static {}, LMain;.assertNotReached:()V // method@0005 |
| 780 | 00193a: 280f |0009: goto 0018 // +000f |
| 781 | 00193c: 0d00 |000a: move-exception v0 |
| 782 | 00193e: 6e10 b600 0000 |000b: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6 |
| 783 | 001944: 0c02 |000e: move-result-object v2 |
| 784 | 001946: 6e10 c000 0200 |000f: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 785 | 00194c: 0c02 |0012: move-result-object v2 |
| 786 | 00194e: 1c03 2200 |0013: const-class v3, Ljava/lang/ClassCastException; // type@0022 |
| 787 | 001952: 7120 0400 3200 |0015: invoke-static {v2, v3}, LMain;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@0004 |
| 788 | 001958: 1220 |0018: const/4 v0, #int 2 // #2 |
| 789 | 00195a: 1302 0b00 |0019: const/16 v2, #int 11 // #b |
| 790 | 00195e: 7130 7700 1002 |001b: invoke-static {v0, v1, v2}, LTestLinkerMethodMinimalArguments;.test:(III)V // method@0077 |
| 791 | 001964: 7100 0500 0000 |001e: invoke-static {}, LMain;.assertNotReached:()V // method@0005 |
| 792 | 00196a: 280f |0021: goto 0030 // +000f |
| 793 | 00196c: 0d00 |0022: move-exception v0 |
| 794 | 00196e: 6e10 b600 0000 |0023: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6 |
| 795 | 001974: 0c02 |0026: move-result-object v2 |
| 796 | 001976: 6e10 c000 0200 |0027: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 797 | 00197c: 0c02 |002a: move-result-object v2 |
| 798 | 00197e: 1c03 2600 |002b: const-class v3, Ljava/lang/InstantiationException; // type@0026 |
| 799 | 001982: 7120 0400 3200 |002d: invoke-static {v2, v3}, LMain;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@0004 |
| 800 | 001988: 1230 |0030: const/4 v0, #int 3 // #3 |
| 801 | 00198a: 1302 0c00 |0031: const/16 v2, #int 12 // #c |
| 802 | 00198e: 7130 7700 1002 |0033: invoke-static {v0, v1, v2}, LTestLinkerMethodMinimalArguments;.test:(III)V // method@0077 |
| 803 | 001994: 7100 0500 0000 |0036: invoke-static {}, LMain;.assertNotReached:()V // method@0005 |
| 804 | 00199a: 2802 |0039: goto 003b // +0002 |
| 805 | 00199c: 0d00 |003a: move-exception v0 |
| 806 | 00199e: 1200 |003b: const/4 v0, #int 0 // #0 |
| 807 | 0019a0: 1302 0d00 |003c: const/16 v2, #int 13 // #d |
| 808 | 0019a4: 7130 7700 1002 |003e: invoke-static {v0, v1, v2}, LTestLinkerMethodMinimalArguments;.test:(III)V // method@0077 |
| 809 | 0019aa: 0e00 |0041: return-void |
| 810 | catches : 3 |
| 811 | 0x0003 - 0x0009 |
| 812 | Ljava/lang/BootstrapMethodError; -> 0x000a |
| 813 | 0x001b - 0x0021 |
| 814 | Ljava/lang/BootstrapMethodError; -> 0x0022 |
| 815 | 0x0033 - 0x0039 |
| 816 | Ljava/lang/ArithmeticException; -> 0x003a |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 817 | positions : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 818 | 0x0000 line=49 |
| 819 | 0x0006 line=53 |
| 820 | 0x0009 line=56 |
| 821 | 0x000a line=54 |
| 822 | 0x000b line=55 |
| 823 | 0x0018 line=59 |
| 824 | 0x001e line=61 |
| 825 | 0x0021 line=64 |
| 826 | 0x0022 line=62 |
| 827 | 0x0023 line=63 |
| 828 | 0x0030 line=67 |
| 829 | 0x0036 line=69 |
| 830 | 0x0039 line=71 |
| 831 | 0x003a line=70 |
| 832 | 0x003b line=73 |
| 833 | 0x0041 line=75 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 834 | locals : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 835 | 0x000b - 0x0018 reg=0 e Ljava/lang/BootstrapMethodError; |
| 836 | 0x0023 - 0x0030 reg=0 e Ljava/lang/BootstrapMethodError; |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 837 | |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 838 | #2 : (in LMain;) |
| 839 | name : 'TestLinkerMethodMultipleArgumentTypes' |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 840 | type : '()V' |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 841 | access : 0x000a (PRIVATE STATIC) |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 842 | code - |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 843 | registers : 2 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 844 | ins : 0 |
| 845 | outs : 2 |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 846 | insns size : 22 16-bit code units |
| 847 | 0019d0: |[0019d0] Main.TestLinkerMethodMultipleArgumentTypes:()V |
| 848 | 0019e0: 1300 2100 |0000: const/16 v0, #int 33 // #21 |
| 849 | 0019e4: 1301 4300 |0002: const/16 v1, #int 67 // #43 |
| 850 | 0019e8: 7120 8400 1000 |0004: invoke-static {v0, v1}, LTestLinkerMethodMultipleArgumentTypes;.test:(II)V // method@0084 |
| 851 | 0019ee: 1300 f0d8 |0007: const/16 v0, #int -10000 // #d8f0 |
| 852 | 0019f2: 1301 e803 |0009: const/16 v1, #int 1000 // #3e8 |
| 853 | 0019f6: 7120 8400 1000 |000b: invoke-static {v0, v1}, LTestLinkerMethodMultipleArgumentTypes;.test:(II)V // method@0084 |
| 854 | 0019fc: 1300 18fc |000e: const/16 v0, #int -1000 // #fc18 |
| 855 | 001a00: 1301 1027 |0010: const/16 v1, #int 10000 // #2710 |
| 856 | 001a04: 7120 8400 1000 |0012: invoke-static {v0, v1}, LTestLinkerMethodMultipleArgumentTypes;.test:(II)V // method@0084 |
| 857 | 001a0a: 0e00 |0015: return-void |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 858 | catches : (none) |
| 859 | positions : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 860 | 0x0000 line=42 |
| 861 | 0x0007 line=43 |
| 862 | 0x000e line=44 |
| 863 | 0x0015 line=45 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 864 | locals : |
| 865 | |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 866 | #3 : (in LMain;) |
| 867 | name : 'TestUninitializedCallSite' |
| 868 | type : '()V' |
| 869 | access : 0x000a (PRIVATE STATIC) |
| 870 | code - |
| 871 | registers : 7 |
| 872 | ins : 0 |
| 873 | outs : 3 |
| 874 | insns size : 78 16-bit code units |
| 875 | 001a0c: |[001a0c] Main.TestUninitializedCallSite:()V |
| 876 | 001a1c: 2200 3900 |0000: new-instance v0, Ljava/lang/invoke/MutableCallSite; // type@0039 |
| 877 | 001a20: 6201 1200 |0002: sget-object v1, Ljava/lang/Integer;.TYPE:Ljava/lang/Class; // field@0012 |
| 878 | 001a24: 7110 e100 0100 |0004: invoke-static {v1}, Ljava/lang/invoke/MethodType;.methodType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType; // method@00e1 |
| 879 | 001a2a: 0c01 |0007: move-result-object v1 |
| 880 | 001a2c: 7020 e600 1000 |0008: invoke-direct {v0, v1}, Ljava/lang/invoke/MutableCallSite;.<init>:(Ljava/lang/invoke/MethodType;)V // method@00e6 |
| 881 | 001a32: 6e10 d100 0000 |000b: invoke-virtual {v0}, Ljava/lang/invoke/CallSite;.getTarget:()Ljava/lang/invoke/MethodHandle; // method@00d1 |
| 882 | 001a38: 0c01 |000e: move-result-object v1 |
| 883 | 001a3a: fa10 d300 0100 4100 |000f: invoke-polymorphic {v1}, Ljava/lang/invoke/MethodHandle;.invoke:([Ljava/lang/Object;)Ljava/lang/Object;, ()V // method@00d3, proto@0041 |
| 884 | 001a42: 7100 0600 0000 |0013: invoke-static {}, LMain;.fail:()V // method@0006 |
| 885 | 001a48: 2809 |0016: goto 001f // +0009 |
| 886 | 001a4a: 0d01 |0017: move-exception v1 |
| 887 | 001a4c: 6202 1300 |0018: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 888 | 001a50: 1a03 2100 |001a: const-string v3, "Caught exception from uninitialized call site" // string@0021 |
| 889 | 001a54: 6e20 b300 3200 |001c: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 890 | 001a5a: 2201 3900 |001f: new-instance v1, Ljava/lang/invoke/MutableCallSite; // type@0039 |
| 891 | 001a5e: 1c02 2c00 |0021: const-class v2, Ljava/lang/String; // type@002c |
| 892 | 001a62: 6203 1200 |0023: sget-object v3, Ljava/lang/Integer;.TYPE:Ljava/lang/Class; // field@0012 |
| 893 | 001a66: 1214 |0025: const/4 v4, #int 1 // #1 |
| 894 | 001a68: 2344 4600 |0026: new-array v4, v4, [Ljava/lang/Class; // type@0046 |
| 895 | 001a6c: 1205 |0028: const/4 v5, #int 0 // #0 |
| 896 | 001a6e: 6206 1100 |0029: sget-object v6, Ljava/lang/Character;.TYPE:Ljava/lang/Class; // field@0011 |
| 897 | 001a72: 4d06 0405 |002b: aput-object v6, v4, v5 |
| 898 | 001a76: 7130 e200 3204 |002d: invoke-static {v2, v3, v4}, Ljava/lang/invoke/MethodType;.methodType:(Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodType; // method@00e2 |
| 899 | 001a7c: 0c02 |0030: move-result-object v2 |
| 900 | 001a7e: 7020 e600 2100 |0031: invoke-direct {v1, v2}, Ljava/lang/invoke/MutableCallSite;.<init>:(Ljava/lang/invoke/MethodType;)V // method@00e6 |
| 901 | 001a84: 0710 |0034: move-object v0, v1 |
| 902 | 001a86: 6e10 d100 0000 |0035: invoke-virtual {v0}, Ljava/lang/invoke/CallSite;.getTarget:()Ljava/lang/invoke/MethodHandle; // method@00d1 |
| 903 | 001a8c: 0c01 |0038: move-result-object v1 |
| 904 | 001a8e: 1302 ff05 |0039: const/16 v2, #int 1535 // #5ff |
| 905 | 001a92: 1303 6400 |003b: const/16 v3, #int 100 // #64 |
| 906 | 001a96: fa30 d300 2103 4800 |003d: invoke-polymorphic {v1, v2, v3}, Ljava/lang/invoke/MethodHandle;.invoke:([Ljava/lang/Object;)Ljava/lang/Object;, (IC)V // method@00d3, proto@0048 |
| 907 | 001a9e: 7100 0600 0000 |0041: invoke-static {}, LMain;.fail:()V // method@0006 |
| 908 | 001aa4: 2809 |0044: goto 004d // +0009 |
| 909 | 001aa6: 0d01 |0045: move-exception v1 |
| 910 | 001aa8: 6202 1300 |0046: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 911 | 001aac: 1a03 2100 |0048: const-string v3, "Caught exception from uninitialized call site" // string@0021 |
| 912 | 001ab0: 6e20 b300 3200 |004a: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 913 | 001ab6: 0e00 |004d: return-void |
| 914 | catches : 2 |
| 915 | 0x000b - 0x0016 |
| 916 | Ljava/lang/IllegalStateException; -> 0x0017 |
| 917 | 0x0035 - 0x0044 |
| 918 | Ljava/lang/IllegalStateException; -> 0x0045 |
| 919 | positions : |
| 920 | 0x0000 line=24 |
| 921 | 0x000b line=26 |
| 922 | 0x0013 line=27 |
| 923 | 0x0016 line=30 |
| 924 | 0x0017 line=28 |
| 925 | 0x0018 line=29 |
| 926 | 0x001f line=32 |
| 927 | 0x0035 line=34 |
| 928 | 0x0041 line=35 |
| 929 | 0x0044 line=38 |
| 930 | 0x0045 line=36 |
| 931 | 0x0046 line=37 |
| 932 | 0x004d line=39 |
| 933 | locals : |
| 934 | 0x0018 - 0x001f reg=1 e Ljava/lang/IllegalStateException; |
| 935 | 0x0046 - 0x004d reg=1 e Ljava/lang/IllegalStateException; |
| 936 | 0x000b - 0x004e reg=0 callSite Ljava/lang/invoke/CallSite; |
| 937 | |
| 938 | #4 : (in LMain;) |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 939 | name : 'main' |
| 940 | type : '([Ljava/lang/String;)V' |
| 941 | access : 0x0009 (PUBLIC STATIC) |
| 942 | code - |
| 943 | registers : 1 |
| 944 | ins : 1 |
| 945 | outs : 0 |
| 946 | insns size : 28 16-bit code units |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 947 | 001ad0: |[001ad0] Main.main:([Ljava/lang/String;)V |
| 948 | 001ae0: 7100 0300 0000 |0000: invoke-static {}, LMain;.TestUninitializedCallSite:()V // method@0003 |
| 949 | 001ae6: 7100 0100 0000 |0003: invoke-static {}, LMain;.TestLinkerMethodMinimalArguments:()V // method@0001 |
| 950 | 001aec: 7100 0200 0000 |0006: invoke-static {}, LMain;.TestLinkerMethodMultipleArgumentTypes:()V // method@0002 |
| 951 | 001af2: 7100 8c00 0000 |0009: invoke-static {}, LTestLinkerUnrelatedBSM;.test:()V // method@008c |
| 952 | 001af8: 7100 6e00 0000 |000c: invoke-static {}, LTestInvokeCustomWithConcurrentThreads;.test:()V // method@006e |
| 953 | 001afe: 7100 5b00 0000 |000f: invoke-static {}, LTestInvocationKinds;.test:()V // method@005b |
| 954 | 001b04: 7100 4500 0000 |0012: invoke-static {}, LTestDynamicBootstrapArguments;.test:()V // method@0045 |
| 955 | 001b0a: 7100 2b00 0000 |0015: invoke-static {}, LTestBadBootstrapArguments;.test:()V // method@002b |
| 956 | 001b10: 7100 a800 0000 |0018: invoke-static {}, LTestVariableArityLinkerMethod;.test:()V // method@00a8 |
| 957 | 001b16: 0e00 |001b: return-void |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 958 | catches : (none) |
| 959 | positions : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 960 | 0x0000 line=78 |
| 961 | 0x0003 line=79 |
| 962 | 0x0006 line=80 |
| 963 | 0x0009 line=81 |
| 964 | 0x000c line=82 |
| 965 | 0x000f line=83 |
| 966 | 0x0012 line=84 |
| 967 | 0x0015 line=85 |
| 968 | 0x0018 line=86 |
| 969 | 0x001b line=87 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 970 | locals : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 971 | 0x0000 - 0x001c reg=0 args [Ljava/lang/String; |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 972 | |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 973 | Virtual methods - |
| 974 | source_file_idx : 136 (Main.java) |
| 975 | |
| 976 | Class #6 header: |
| 977 | class_idx : 8 |
| 978 | access_flags : 1 (0x0001) |
| 979 | superclass_idx : 9 |
| 980 | interfaces_off : 0 (0x000000) |
| 981 | source_file_idx : 144 |
| 982 | annotations_off : 30820 (0x007864) |
| 983 | class_data_off : 29062 (0x007186) |
| 984 | static_fields_size : 0 |
| 985 | instance_fields_size: 0 |
| 986 | direct_methods_size : 38 |
| 987 | virtual_methods_size: 0 |
| 988 | |
| 989 | Class #6 annotations: |
| 990 | Annotations on class |
| 991 | VISIBILITY_SYSTEM Ldalvik/annotation/MemberClasses; value={ LTestBadBootstrapArguments$TestersConstantCallSite; } |
| 992 | Annotations on method #14 'bsm' |
| 993 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 994 | Annotations on method #15 'bsmDJ' |
| 995 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 996 | Annotations on method #16 'bsmDoubleLong' |
| 997 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 998 | Annotations on method #19 'bsmReturningTestersConstantCallsite' |
| 999 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 1000 | Annotations on method #21 'bsmZBCS' |
| 1001 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 1002 | Annotations on method #25 'invokeBoxingArguments' |
| 1003 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsmDoubleLong" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; Ljava/lang/Double; Ljava/lang/Long; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; doubleValue={ 1.79769e+308 } Lannotations/Constant; longValue={ 9223372036854775807 } } fieldOrMethodName="boxingArguments" |
| 1004 | Annotations on method #26 'invokeExtraArguments' |
| 1005 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsm" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; I Ljava/lang/String; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; intValue={ 1 } Lannotations/Constant; stringValue={ "2" } Lannotations/Constant; intValue={ 3 } } fieldOrMethodName="extraArguments" |
| 1006 | Annotations on method #27 'invokeHappy' |
| 1007 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsm" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; I Ljava/lang/String; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; intValue={ -1 } Lannotations/Constant; stringValue={ "very" } } fieldOrMethodName="happy" |
| 1008 | Annotations on method #28 'invokeIntegerReturnType' |
| 1009 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsmReturningInteger" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; } returnType=Ljava/lang/Integer; } fieldOrMethodName="integerReturnType" |
| 1010 | Annotations on method #29 'invokeMissingParameterTypes' |
| 1011 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsm" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; I D } } constantArgumentsForBootstrapMethod={ } fieldOrMethodName="missingParameterTypes" |
| 1012 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/NoSuchMethodError; } |
| 1013 | Annotations on method #30 'invokeNarrowArguments' |
| 1014 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsmZBCS" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; Z B C S } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; booleanValue={ true } Lannotations/Constant; byteValue={ 127 } Lannotations/Constant; charValue={ 65 } Lannotations/Constant; shortValue={ -32768 } } fieldOrMethodName="narrowArguments" |
| 1015 | Annotations on method #31 'invokeObjectReturnType' |
| 1016 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsmReturningObject" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; } returnType=Ljava/lang/Object; } fieldOrMethodName="ObjectReturnType" |
| 1017 | Annotations on method #32 'invokeViaCustomCallSiteClass' |
| 1018 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsmReturningTestersConstantCallsite" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; } returnType=LTestBadBootstrapArguments$TestersConstantCallSite; } fieldOrMethodName="sayHello" |
| 1019 | Annotations on method #33 'invokeVoidReturnType' |
| 1020 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsmReturningVoid" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; } returnType=V } fieldOrMethodName="voidReturnType" |
| 1021 | Annotations on method #34 'invokeWideningArguments' |
| 1022 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsmDJ" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; D J } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; doubleValue={ 1.79769e+308 } Lannotations/Constant; intValue={ 2147483647 } } fieldOrMethodName="wideningArguments" |
| 1023 | Annotations on method #35 'invokeWideningBoxingArguments' |
| 1024 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsmDoubleLong" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; Ljava/lang/Double; Ljava/lang/Long; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; floatValue={ 3.40282e+38 } Lannotations/Constant; longValue={ 2147483647 } } fieldOrMethodName="wideningBoxingArguments" |
| 1025 | Annotations on method #36 'invokeWrongArguments' |
| 1026 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsm" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; I Ljava/lang/String; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; stringValue={ "1" } Lannotations/Constant; doubleValue={ 3.14159 } } fieldOrMethodName="wrongArguments" |
| 1027 | Annotations on method #37 'invokeWrongArgumentsAgain' |
| 1028 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsm" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; I Ljava/lang/String; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; doubleValue={ 3.14159 } Lannotations/Constant; stringValue={ "pie" } } fieldOrMethodName="wrongArgumentsAgain" |
| 1029 | Annotations on method #38 'invokeWrongParameterTypes' |
| 1030 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsm" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; I D } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; intValue={ -1 } Lannotations/Constant; stringValue={ "very" } } fieldOrMethodName="wrongParameterTypes" |
| 1031 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/NoSuchMethodError; } |
| 1032 | |
| 1033 | Class #6 - |
| 1034 | Class descriptor : 'LTestBadBootstrapArguments;' |
| 1035 | Access flags : 0x0001 (PUBLIC) |
| 1036 | Superclass : 'LTestBase;' |
| 1037 | Interfaces - |
| 1038 | Static fields - |
| 1039 | Instance fields - |
| 1040 | Direct methods - |
| 1041 | #0 : (in LTestBadBootstrapArguments;) |
| 1042 | name : '<init>' |
| 1043 | type : '()V' |
| 1044 | access : 0x10001 (PUBLIC CONSTRUCTOR) |
| 1045 | code - |
| 1046 | registers : 1 |
| 1047 | ins : 1 |
| 1048 | outs : 1 |
| 1049 | insns size : 4 16-bit code units |
| 1050 | 001d64: |[001d64] TestBadBootstrapArguments.<init>:()V |
| 1051 | 001d74: 7010 3200 0000 |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032 |
| 1052 | 001d7a: 0e00 |0003: return-void |
| 1053 | catches : (none) |
| 1054 | positions : |
| 1055 | 0x0000 line=27 |
| 1056 | locals : |
| 1057 | 0x0000 - 0x0004 reg=0 this LTestBadBootstrapArguments; |
| 1058 | |
| 1059 | #1 : (in LTestBadBootstrapArguments;) |
| 1060 | name : 'boxingArguments' |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1061 | type : '()V' |
| 1062 | access : 0x000a (PRIVATE STATIC) |
| 1063 | code - |
| 1064 | registers : 2 |
| 1065 | ins : 0 |
| 1066 | outs : 2 |
| 1067 | insns size : 8 16-bit code units |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1068 | 001d7c: |[001d7c] TestBadBootstrapArguments.boxingArguments:()V |
| 1069 | 001d8c: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1070 | 001d90: 1a01 e900 |0002: const-string v1, "boxingArguments" // string@00e9 |
| 1071 | 001d94: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 1072 | 001d9a: 0e00 |0007: return-void |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1073 | catches : (none) |
| 1074 | positions : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1075 | 0x0000 line=348 |
| 1076 | 0x0007 line=349 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1077 | locals : |
| 1078 | |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1079 | #2 : (in LTestBadBootstrapArguments;) |
| 1080 | name : 'bsm' |
| 1081 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;ILjava/lang/String;)Ljava/lang/invoke/CallSite;' |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1082 | access : 0x000a (PRIVATE STATIC) |
| 1083 | code - |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1084 | registers : 7 |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1085 | ins : 5 |
| 1086 | outs : 4 |
| 1087 | insns size : 85 16-bit code units |
| 1088 | 001bb4: |[001bb4] TestBadBootstrapArguments.bsm:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;ILjava/lang/String;)Ljava/lang/invoke/CallSite; |
| 1089 | 001bc4: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1090 | 001bc8: 1a01 ee00 |0002: const-string v1, "bsm(" // string@00ee |
| 1091 | 001bcc: 6e20 b000 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1092 | 001bd2: 6200 1300 |0007: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1093 | 001bd6: 6e10 dc00 0200 |0009: invoke-virtual {v2}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc |
| 1094 | 001bdc: 0c01 |000c: move-result-object v1 |
| 1095 | 001bde: 6e20 af00 1000 |000d: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af |
| 1096 | 001be4: 6200 1300 |0010: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1097 | 001be8: 1a01 0c00 |0012: const-string v1, ", " // string@000c |
| 1098 | 001bec: 6e20 b000 1000 |0014: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1099 | 001bf2: 6200 1300 |0017: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1100 | 001bf6: 6e20 b000 3000 |0019: invoke-virtual {v0, v3}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1101 | 001bfc: 6200 1300 |001c: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1102 | 001c00: 1a01 0c00 |001e: const-string v1, ", " // string@000c |
| 1103 | 001c04: 6e20 b000 1000 |0020: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1104 | 001c0a: 6200 1300 |0023: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1105 | 001c0e: 6e20 af00 4000 |0025: invoke-virtual {v0, v4}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af |
| 1106 | 001c14: 6200 1300 |0028: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1107 | 001c18: 1a01 0c00 |002a: const-string v1, ", " // string@000c |
| 1108 | 001c1c: 6e20 b000 1000 |002c: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1109 | 001c22: 6200 1300 |002f: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1110 | 001c26: 6e20 ad00 5000 |0031: invoke-virtual {v0, v5}, Ljava/io/PrintStream;.print:(I)V // method@00ad |
| 1111 | 001c2c: 6200 1300 |0034: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1112 | 001c30: 1a01 0c00 |0036: const-string v1, ", " // string@000c |
| 1113 | 001c34: 6e20 b000 1000 |0038: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1114 | 001c3a: 6200 1300 |003b: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1115 | 001c3e: 6e20 b000 6000 |003d: invoke-virtual {v0, v6}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1116 | 001c44: 6200 1300 |0040: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1117 | 001c48: 1a01 0700 |0042: const-string v1, ")" // string@0007 |
| 1118 | 001c4c: 6e20 b300 1000 |0044: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 1119 | 001c52: 6e10 dc00 0200 |0047: invoke-virtual {v2}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc |
| 1120 | 001c58: 0c00 |004a: move-result-object v0 |
| 1121 | 001c5a: 6e40 d800 0243 |004b: invoke-virtual {v2, v0, v3, v4}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8 |
| 1122 | 001c60: 0c00 |004e: move-result-object v0 |
| 1123 | 001c62: 2201 3400 |004f: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034 |
| 1124 | 001c66: 7020 d200 0100 |0051: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2 |
| 1125 | 001c6c: 1101 |0054: return-object v1 |
| 1126 | catches : (none) |
| 1127 | positions : |
| 1128 | 0x0000 line=35 |
| 1129 | 0x0007 line=36 |
| 1130 | 0x0010 line=37 |
| 1131 | 0x0017 line=38 |
| 1132 | 0x001c line=39 |
| 1133 | 0x0023 line=40 |
| 1134 | 0x0028 line=41 |
| 1135 | 0x002f line=42 |
| 1136 | 0x0034 line=43 |
| 1137 | 0x003b line=44 |
| 1138 | 0x0040 line=45 |
| 1139 | 0x0047 line=46 |
| 1140 | 0x004f line=47 |
| 1141 | locals : |
| 1142 | 0x004f - 0x0055 reg=0 mh Ljava/lang/invoke/MethodHandle; |
| 1143 | 0x0000 - 0x0055 reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 1144 | 0x0000 - 0x0055 reg=3 methodName Ljava/lang/String; |
| 1145 | 0x0000 - 0x0055 reg=4 methodType Ljava/lang/invoke/MethodType; |
| 1146 | 0x0000 - 0x0055 reg=5 extraInt I |
| 1147 | 0x0000 - 0x0055 reg=6 extraString Ljava/lang/String; |
| 1148 | |
| 1149 | #3 : (in LTestBadBootstrapArguments;) |
| 1150 | name : 'bsmDJ' |
| 1151 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;DJ)Ljava/lang/invoke/CallSite;' |
| 1152 | access : 0x000a (PRIVATE STATIC) |
| 1153 | code - |
| 1154 | registers : 9 |
| 1155 | ins : 7 |
| 1156 | outs : 4 |
| 1157 | insns size : 45 16-bit code units |
| 1158 | 001c70: |[001c70] TestBadBootstrapArguments.bsmDJ:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;DJ)Ljava/lang/invoke/CallSite; |
| 1159 | 001c80: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1160 | 001c84: 1a01 f100 |0002: const-string v1, "bsmDJ(..., " // string@00f1 |
| 1161 | 001c88: 6e20 b000 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1162 | 001c8e: 6200 1300 |0007: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1163 | 001c92: 6e30 ac00 5006 |0009: invoke-virtual {v0, v5, v6}, Ljava/io/PrintStream;.print:(D)V // method@00ac |
| 1164 | 001c98: 6200 1300 |000c: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1165 | 001c9c: 1a01 0c00 |000e: const-string v1, ", " // string@000c |
| 1166 | 001ca0: 6e20 b000 1000 |0010: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1167 | 001ca6: 6200 1300 |0013: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1168 | 001caa: 6e30 ae00 7008 |0015: invoke-virtual {v0, v7, v8}, Ljava/io/PrintStream;.print:(J)V // method@00ae |
| 1169 | 001cb0: 6200 1300 |0018: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1170 | 001cb4: 1a01 0700 |001a: const-string v1, ")" // string@0007 |
| 1171 | 001cb8: 6e20 b300 1000 |001c: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 1172 | 001cbe: 6e10 dc00 0200 |001f: invoke-virtual {v2}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc |
| 1173 | 001cc4: 0c00 |0022: move-result-object v0 |
| 1174 | 001cc6: 6e40 d800 0243 |0023: invoke-virtual {v2, v0, v3, v4}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8 |
| 1175 | 001ccc: 0c00 |0026: move-result-object v0 |
| 1176 | 001cce: 2201 3400 |0027: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034 |
| 1177 | 001cd2: 7020 d200 0100 |0029: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2 |
| 1178 | 001cd8: 1101 |002c: return-object v1 |
| 1179 | catches : (none) |
| 1180 | positions : |
| 1181 | 0x0000 line=270 |
| 1182 | 0x0007 line=271 |
| 1183 | 0x000c line=272 |
| 1184 | 0x0013 line=273 |
| 1185 | 0x0018 line=274 |
| 1186 | 0x001f line=275 |
| 1187 | 0x0027 line=276 |
| 1188 | locals : |
| 1189 | 0x0027 - 0x002d reg=0 mh Ljava/lang/invoke/MethodHandle; |
| 1190 | 0x0000 - 0x002d reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 1191 | 0x0000 - 0x002d reg=3 methodName Ljava/lang/String; |
| 1192 | 0x0000 - 0x002d reg=4 methodType Ljava/lang/invoke/MethodType; |
| 1193 | 0x0000 - 0x002d reg=5 extraArg0 D |
| 1194 | 0x0000 - 0x002d reg=7 extraArg1 J |
| 1195 | |
| 1196 | #4 : (in LTestBadBootstrapArguments;) |
| 1197 | name : 'bsmDoubleLong' |
| 1198 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Double;Ljava/lang/Long;)Ljava/lang/invoke/CallSite;' |
| 1199 | access : 0x000a (PRIVATE STATIC) |
| 1200 | code - |
| 1201 | registers : 7 |
| 1202 | ins : 5 |
| 1203 | outs : 4 |
| 1204 | insns size : 45 16-bit code units |
| 1205 | 001cdc: |[001cdc] TestBadBootstrapArguments.bsmDoubleLong:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Double;Ljava/lang/Long;)Ljava/lang/invoke/CallSite; |
| 1206 | 001cec: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1207 | 001cf0: 1a01 f300 |0002: const-string v1, "bsmDoubleLong(..., " // string@00f3 |
| 1208 | 001cf4: 6e20 b000 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1209 | 001cfa: 6200 1300 |0007: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1210 | 001cfe: 6e20 af00 5000 |0009: invoke-virtual {v0, v5}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af |
| 1211 | 001d04: 6200 1300 |000c: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1212 | 001d08: 1a01 0c00 |000e: const-string v1, ", " // string@000c |
| 1213 | 001d0c: 6e20 b000 1000 |0010: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1214 | 001d12: 6200 1300 |0013: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1215 | 001d16: 6e20 af00 6000 |0015: invoke-virtual {v0, v6}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af |
| 1216 | 001d1c: 6200 1300 |0018: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1217 | 001d20: 1a01 0700 |001a: const-string v1, ")" // string@0007 |
| 1218 | 001d24: 6e20 b300 1000 |001c: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 1219 | 001d2a: 6e10 dc00 0200 |001f: invoke-virtual {v2}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc |
| 1220 | 001d30: 0c00 |0022: move-result-object v0 |
| 1221 | 001d32: 6e40 d800 0243 |0023: invoke-virtual {v2, v0, v3, v4}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8 |
| 1222 | 001d38: 0c00 |0026: move-result-object v0 |
| 1223 | 001d3a: 2201 3400 |0027: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034 |
| 1224 | 001d3e: 7020 d200 0100 |0029: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2 |
| 1225 | 001d44: 1101 |002c: return-object v1 |
| 1226 | catches : (none) |
| 1227 | positions : |
| 1228 | 0x0000 line=314 |
| 1229 | 0x0007 line=315 |
| 1230 | 0x000c line=316 |
| 1231 | 0x0013 line=317 |
| 1232 | 0x0018 line=318 |
| 1233 | 0x001f line=319 |
| 1234 | 0x0027 line=320 |
| 1235 | locals : |
| 1236 | 0x0027 - 0x002d reg=0 mh Ljava/lang/invoke/MethodHandle; |
| 1237 | 0x0000 - 0x002d reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 1238 | 0x0000 - 0x002d reg=3 methodName Ljava/lang/String; |
| 1239 | 0x0000 - 0x002d reg=4 methodType Ljava/lang/invoke/MethodType; |
| 1240 | 0x0000 - 0x002d reg=5 extraArg0 Ljava/lang/Double; |
| 1241 | 0x0000 - 0x002d reg=6 extraArg1 Ljava/lang/Long; |
| 1242 | |
| 1243 | #5 : (in LTestBadBootstrapArguments;) |
| 1244 | name : 'bsmReturningInteger' |
| 1245 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/Integer;' |
| 1246 | access : 0x0008 (STATIC) |
| 1247 | code - |
| 1248 | registers : 5 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1249 | ins : 3 |
| 1250 | outs : 2 |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1251 | insns size : 13 16-bit code units |
| 1252 | 001b5c: |[001b5c] TestBadBootstrapArguments.bsmReturningInteger:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/Integer; |
| 1253 | 001b6c: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1254 | 001b70: 1a01 eb00 |0002: const-string v1, "bsm returning Integer value." // string@00eb |
| 1255 | 001b74: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 1256 | 001b7a: 1230 |0007: const/4 v0, #int 3 // #3 |
| 1257 | 001b7c: 7110 bd00 0000 |0008: invoke-static {v0}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@00bd |
| 1258 | 001b82: 0c00 |000b: move-result-object v0 |
| 1259 | 001b84: 1100 |000c: return-object v0 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1260 | catches : (none) |
| 1261 | positions : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1262 | 0x0000 line=425 |
| 1263 | 0x0007 line=426 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1264 | locals : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1265 | 0x0000 - 0x000d reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 1266 | 0x0000 - 0x000d reg=3 name Ljava/lang/String; |
| 1267 | 0x0000 - 0x000d reg=4 type Ljava/lang/invoke/MethodType; |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1268 | |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1269 | #6 : (in LTestBadBootstrapArguments;) |
| 1270 | name : 'bsmReturningObject' |
| 1271 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/Object;' |
| 1272 | access : 0x0008 (STATIC) |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1273 | code - |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1274 | registers : 5 |
| 1275 | ins : 3 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1276 | outs : 2 |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1277 | insns size : 13 16-bit code units |
| 1278 | 001b88: |[001b88] TestBadBootstrapArguments.bsmReturningObject:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/Object; |
| 1279 | 001b98: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1280 | 001b9c: 1a01 ec00 |0002: const-string v1, "bsm returning Object value." // string@00ec |
| 1281 | 001ba0: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 1282 | 001ba6: 2200 2a00 |0007: new-instance v0, Ljava/lang/Object; // type@002a |
| 1283 | 001baa: 7010 bf00 0000 |0009: invoke-direct {v0}, Ljava/lang/Object;.<init>:()V // method@00bf |
| 1284 | 001bb0: 1100 |000c: return-object v0 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1285 | catches : (none) |
| 1286 | positions : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1287 | 0x0000 line=402 |
| 1288 | 0x0007 line=403 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1289 | locals : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1290 | 0x0000 - 0x000d reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 1291 | 0x0000 - 0x000d reg=3 name Ljava/lang/String; |
| 1292 | 0x0000 - 0x000d reg=4 type Ljava/lang/invoke/MethodType; |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1293 | |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1294 | #7 : (in LTestBadBootstrapArguments;) |
| 1295 | name : 'bsmReturningTestersConstantCallsite' |
| 1296 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)LTestBadBootstrapArguments$TestersConstantCallSite;' |
| 1297 | access : 0x0008 (STATIC) |
| 1298 | code - |
| 1299 | registers : 5 |
| 1300 | ins : 3 |
| 1301 | outs : 4 |
| 1302 | insns size : 14 16-bit code units |
| 1303 | 001b30: |[001b30] TestBadBootstrapArguments.bsmReturningTestersConstantCallsite:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)LTestBadBootstrapArguments$TestersConstantCallSite; |
| 1304 | 001b40: 2200 0700 |0000: new-instance v0, LTestBadBootstrapArguments$TestersConstantCallSite; // type@0007 |
| 1305 | 001b44: 6e10 dc00 0200 |0002: invoke-virtual {v2}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc |
| 1306 | 001b4a: 0c01 |0005: move-result-object v1 |
| 1307 | 001b4c: 6e40 d800 1243 |0006: invoke-virtual {v2, v1, v3, v4}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8 |
| 1308 | 001b52: 0c01 |0009: move-result-object v1 |
| 1309 | 001b54: 7020 0800 1000 |000a: invoke-direct {v0, v1}, LTestBadBootstrapArguments$TestersConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@0008 |
| 1310 | 001b5a: 1100 |000d: return-object v0 |
| 1311 | catches : (none) |
| 1312 | positions : |
| 1313 | 0x0000 line=455 |
| 1314 | locals : |
| 1315 | 0x0000 - 0x000e reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 1316 | 0x0000 - 0x000e reg=3 name Ljava/lang/String; |
| 1317 | 0x0000 - 0x000e reg=4 type Ljava/lang/invoke/MethodType; |
| 1318 | |
| 1319 | #8 : (in LTestBadBootstrapArguments;) |
| 1320 | name : 'bsmReturningVoid' |
| 1321 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)V' |
| 1322 | access : 0x0008 (STATIC) |
| 1323 | code - |
| 1324 | registers : 5 |
| 1325 | ins : 3 |
| 1326 | outs : 2 |
| 1327 | insns size : 8 16-bit code units |
| 1328 | 001d9c: |[001d9c] TestBadBootstrapArguments.bsmReturningVoid:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)V |
| 1329 | 001dac: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1330 | 001db0: 1a01 ed00 |0002: const-string v1, "bsm returning void value." // string@00ed |
| 1331 | 001db4: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 1332 | 001dba: 0e00 |0007: return-void |
| 1333 | catches : (none) |
| 1334 | positions : |
| 1335 | 0x0000 line=380 |
| 1336 | 0x0007 line=381 |
| 1337 | locals : |
| 1338 | 0x0000 - 0x0008 reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 1339 | 0x0000 - 0x0008 reg=3 name Ljava/lang/String; |
| 1340 | 0x0000 - 0x0008 reg=4 type Ljava/lang/invoke/MethodType; |
| 1341 | |
| 1342 | #9 : (in LTestBadBootstrapArguments;) |
| 1343 | name : 'bsmZBCS' |
| 1344 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;ZBCS)Ljava/lang/invoke/CallSite;' |
| 1345 | access : 0x000a (PRIVATE STATIC) |
| 1346 | code - |
| 1347 | registers : 8 |
| 1348 | ins : 7 |
| 1349 | outs : 0 |
| 1350 | insns size : 5 16-bit code units |
| 1351 | 001d48: |[001d48] TestBadBootstrapArguments.bsmZBCS:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;ZBCS)Ljava/lang/invoke/CallSite; |
| 1352 | 001d58: 7100 0b00 0000 |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1353 | 001d5e: 1200 |0003: const/4 v0, #int 0 // #0 |
| 1354 | 001d60: 1100 |0004: return-object v0 |
| 1355 | catches : (none) |
| 1356 | positions : |
| 1357 | 0x0000 line=227 |
| 1358 | 0x0003 line=228 |
| 1359 | locals : |
| 1360 | 0x0000 - 0x0005 reg=1 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 1361 | 0x0000 - 0x0005 reg=2 methodName Ljava/lang/String; |
| 1362 | 0x0000 - 0x0005 reg=3 methodType Ljava/lang/invoke/MethodType; |
| 1363 | 0x0000 - 0x0005 reg=4 extraArg0 Z |
| 1364 | 0x0000 - 0x0005 reg=5 extraArg1 B |
| 1365 | 0x0000 - 0x0005 reg=6 extraArg2 C |
| 1366 | 0x0000 - 0x0005 reg=7 extraArg3 S |
| 1367 | |
| 1368 | #10 : (in LTestBadBootstrapArguments;) |
| 1369 | name : 'extraArguments' |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1370 | type : '()V' |
| 1371 | access : 0x000a (PRIVATE STATIC) |
| 1372 | code - |
| 1373 | registers : 2 |
| 1374 | ins : 0 |
| 1375 | outs : 2 |
| 1376 | insns size : 8 16-bit code units |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1377 | 001dbc: |[001dbc] TestBadBootstrapArguments.extraArguments:()V |
| 1378 | 001dcc: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1379 | 001dd0: 1a01 2001 |0002: const-string v1, "extraArguments" // string@0120 |
| 1380 | 001dd4: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 1381 | 001dda: 0e00 |0007: return-void |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1382 | catches : (none) |
| 1383 | positions : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1384 | 0x0000 line=158 |
| 1385 | 0x0007 line=159 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1386 | locals : |
| 1387 | |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1388 | #11 : (in LTestBadBootstrapArguments;) |
| 1389 | name : 'happy' |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1390 | type : '()V' |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1391 | access : 0x000a (PRIVATE STATIC) |
| 1392 | code - |
| 1393 | registers : 2 |
| 1394 | ins : 0 |
| 1395 | outs : 2 |
| 1396 | insns size : 8 16-bit code units |
| 1397 | 001ddc: |[001ddc] TestBadBootstrapArguments.happy:()V |
| 1398 | 001dec: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1399 | 001df0: 1a01 3d01 |0002: const-string v1, "happy" // string@013d |
| 1400 | 001df4: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 1401 | 001dfa: 0e00 |0007: return-void |
| 1402 | catches : (none) |
| 1403 | positions : |
| 1404 | 0x0000 line=74 |
| 1405 | 0x0007 line=75 |
| 1406 | locals : |
| 1407 | |
| 1408 | #12 : (in LTestBadBootstrapArguments;) |
| 1409 | name : 'integerReturnType' |
| 1410 | type : '()V' |
| 1411 | access : 0x000a (PRIVATE STATIC) |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1412 | code - |
| 1413 | registers : 0 |
| 1414 | ins : 0 |
| 1415 | outs : 0 |
| 1416 | insns size : 4 16-bit code units |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1417 | 001dfc: |[001dfc] TestBadBootstrapArguments.integerReturnType:()V |
| 1418 | 001e0c: 7100 0b00 0000 |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1419 | 001e12: 0e00 |0003: return-void |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1420 | catches : (none) |
| 1421 | positions : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1422 | 0x0000 line=444 |
| 1423 | 0x0003 line=445 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1424 | locals : |
| 1425 | |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1426 | #13 : (in LTestBadBootstrapArguments;) |
| 1427 | name : 'invokeBoxingArguments' |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1428 | type : '()V' |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1429 | access : 0x000a (PRIVATE STATIC) |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1430 | code - |
| 1431 | registers : 0 |
| 1432 | ins : 0 |
| 1433 | outs : 0 |
| 1434 | insns size : 4 16-bit code units |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1435 | 001e14: |[001e14] TestBadBootstrapArguments.invokeBoxingArguments:()V |
| 1436 | 001e24: 7100 0b00 0000 |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1437 | 001e2a: 0e00 |0003: return-void |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1438 | catches : (none) |
| 1439 | positions : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1440 | 0x0000 line=344 |
| 1441 | 0x0003 line=345 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1442 | locals : |
| 1443 | |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1444 | #14 : (in LTestBadBootstrapArguments;) |
| 1445 | name : 'invokeExtraArguments' |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 1446 | type : '()V' |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 1447 | access : 0x000a (PRIVATE STATIC) |
| 1448 | code - |
| 1449 | registers : 0 |
| 1450 | ins : 0 |
| 1451 | outs : 0 |
| 1452 | insns size : 4 16-bit code units |
| 1453 | 001e2c: |[001e2c] TestBadBootstrapArguments.invokeExtraArguments:()V |
| 1454 | 001e3c: 7100 0b00 0000 |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1455 | 001e42: 0e00 |0003: return-void |
| 1456 | catches : (none) |
| 1457 | positions : |
| 1458 | 0x0000 line=154 |
| 1459 | 0x0003 line=155 |
| 1460 | locals : |
| 1461 | |
| 1462 | #15 : (in LTestBadBootstrapArguments;) |
| 1463 | name : 'invokeHappy' |
| 1464 | type : '()V' |
| 1465 | access : 0x000a (PRIVATE STATIC) |
| 1466 | code - |
| 1467 | registers : 0 |
| 1468 | ins : 0 |
| 1469 | outs : 0 |
| 1470 | insns size : 4 16-bit code units |
| 1471 | 001e44: |[001e44] TestBadBootstrapArguments.invokeHappy:()V |
| 1472 | 001e54: 7100 0b00 0000 |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1473 | 001e5a: 0e00 |0003: return-void |
| 1474 | catches : (none) |
| 1475 | positions : |
| 1476 | 0x0000 line=70 |
| 1477 | 0x0003 line=71 |
| 1478 | locals : |
| 1479 | |
| 1480 | #16 : (in LTestBadBootstrapArguments;) |
| 1481 | name : 'invokeIntegerReturnType' |
| 1482 | type : '()V' |
| 1483 | access : 0x000a (PRIVATE STATIC) |
| 1484 | code - |
| 1485 | registers : 0 |
| 1486 | ins : 0 |
| 1487 | outs : 0 |
| 1488 | insns size : 4 16-bit code units |
| 1489 | 001e5c: |[001e5c] TestBadBootstrapArguments.invokeIntegerReturnType:()V |
| 1490 | 001e6c: 7100 0b00 0000 |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1491 | 001e72: 0e00 |0003: return-void |
| 1492 | catches : (none) |
| 1493 | positions : |
| 1494 | 0x0000 line=440 |
| 1495 | 0x0003 line=441 |
| 1496 | locals : |
| 1497 | |
| 1498 | #17 : (in LTestBadBootstrapArguments;) |
| 1499 | name : 'invokeMissingParameterTypes' |
| 1500 | type : '()V' |
| 1501 | access : 0x000a (PRIVATE STATIC) |
| 1502 | code - |
| 1503 | registers : 0 |
| 1504 | ins : 0 |
| 1505 | outs : 0 |
| 1506 | insns size : 4 16-bit code units |
| 1507 | 001e74: |[001e74] TestBadBootstrapArguments.invokeMissingParameterTypes:()V |
| 1508 | 001e84: 7100 0b00 0000 |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1509 | 001e8a: 0e00 |0003: return-void |
| 1510 | catches : (none) |
| 1511 | positions : |
| 1512 | 0x0000 line=124 |
| 1513 | 0x0003 line=125 |
| 1514 | locals : |
| 1515 | |
| 1516 | #18 : (in LTestBadBootstrapArguments;) |
| 1517 | name : 'invokeNarrowArguments' |
| 1518 | type : '()V' |
| 1519 | access : 0x000a (PRIVATE STATIC) |
| 1520 | code - |
| 1521 | registers : 0 |
| 1522 | ins : 0 |
| 1523 | outs : 0 |
| 1524 | insns size : 4 16-bit code units |
| 1525 | 001e8c: |[001e8c] TestBadBootstrapArguments.invokeNarrowArguments:()V |
| 1526 | 001e9c: 7100 0b00 0000 |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1527 | 001ea2: 0e00 |0003: return-void |
| 1528 | catches : (none) |
| 1529 | positions : |
| 1530 | 0x0000 line=256 |
| 1531 | 0x0003 line=257 |
| 1532 | locals : |
| 1533 | |
| 1534 | #19 : (in LTestBadBootstrapArguments;) |
| 1535 | name : 'invokeObjectReturnType' |
| 1536 | type : '()V' |
| 1537 | access : 0x000a (PRIVATE STATIC) |
| 1538 | code - |
| 1539 | registers : 0 |
| 1540 | ins : 0 |
| 1541 | outs : 0 |
| 1542 | insns size : 4 16-bit code units |
| 1543 | 001ea4: |[001ea4] TestBadBootstrapArguments.invokeObjectReturnType:()V |
| 1544 | 001eb4: 7100 0b00 0000 |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1545 | 001eba: 0e00 |0003: return-void |
| 1546 | catches : (none) |
| 1547 | positions : |
| 1548 | 0x0000 line=417 |
| 1549 | 0x0003 line=418 |
| 1550 | locals : |
| 1551 | |
| 1552 | #20 : (in LTestBadBootstrapArguments;) |
| 1553 | name : 'invokeViaCustomCallSiteClass' |
| 1554 | type : '()V' |
| 1555 | access : 0x000a (PRIVATE STATIC) |
| 1556 | code - |
| 1557 | registers : 0 |
| 1558 | ins : 0 |
| 1559 | outs : 0 |
| 1560 | insns size : 4 16-bit code units |
| 1561 | 001ebc: |[001ebc] TestBadBootstrapArguments.invokeViaCustomCallSiteClass:()V |
| 1562 | 001ecc: 7100 0b00 0000 |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1563 | 001ed2: 0e00 |0003: return-void |
| 1564 | catches : (none) |
| 1565 | positions : |
| 1566 | 0x0000 line=469 |
| 1567 | 0x0003 line=470 |
| 1568 | locals : |
| 1569 | |
| 1570 | #21 : (in LTestBadBootstrapArguments;) |
| 1571 | name : 'invokeVoidReturnType' |
| 1572 | type : '()V' |
| 1573 | access : 0x000a (PRIVATE STATIC) |
| 1574 | code - |
| 1575 | registers : 0 |
| 1576 | ins : 0 |
| 1577 | outs : 0 |
| 1578 | insns size : 4 16-bit code units |
| 1579 | 001ed4: |[001ed4] TestBadBootstrapArguments.invokeVoidReturnType:()V |
| 1580 | 001ee4: 7100 0b00 0000 |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1581 | 001eea: 0e00 |0003: return-void |
| 1582 | catches : (none) |
| 1583 | positions : |
| 1584 | 0x0000 line=394 |
| 1585 | 0x0003 line=395 |
| 1586 | locals : |
| 1587 | |
| 1588 | #22 : (in LTestBadBootstrapArguments;) |
| 1589 | name : 'invokeWideningArguments' |
| 1590 | type : '()V' |
| 1591 | access : 0x000a (PRIVATE STATIC) |
| 1592 | code - |
| 1593 | registers : 0 |
| 1594 | ins : 0 |
| 1595 | outs : 0 |
| 1596 | insns size : 4 16-bit code units |
| 1597 | 001eec: |[001eec] TestBadBootstrapArguments.invokeWideningArguments:()V |
| 1598 | 001efc: 7100 0b00 0000 |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1599 | 001f02: 0e00 |0003: return-void |
| 1600 | catches : (none) |
| 1601 | positions : |
| 1602 | 0x0000 line=300 |
| 1603 | 0x0003 line=301 |
| 1604 | locals : |
| 1605 | |
| 1606 | #23 : (in LTestBadBootstrapArguments;) |
| 1607 | name : 'invokeWideningBoxingArguments' |
| 1608 | type : '()V' |
| 1609 | access : 0x000a (PRIVATE STATIC) |
| 1610 | code - |
| 1611 | registers : 0 |
| 1612 | ins : 0 |
| 1613 | outs : 0 |
| 1614 | insns size : 4 16-bit code units |
| 1615 | 001f04: |[001f04] TestBadBootstrapArguments.invokeWideningBoxingArguments:()V |
| 1616 | 001f14: 7100 0b00 0000 |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1617 | 001f1a: 0e00 |0003: return-void |
| 1618 | catches : (none) |
| 1619 | positions : |
| 1620 | 0x0000 line=372 |
| 1621 | 0x0003 line=373 |
| 1622 | locals : |
| 1623 | |
| 1624 | #24 : (in LTestBadBootstrapArguments;) |
| 1625 | name : 'invokeWrongArguments' |
| 1626 | type : '()V' |
| 1627 | access : 0x000a (PRIVATE STATIC) |
| 1628 | code - |
| 1629 | registers : 0 |
| 1630 | ins : 0 |
| 1631 | outs : 0 |
| 1632 | insns size : 4 16-bit code units |
| 1633 | 001f1c: |[001f1c] TestBadBootstrapArguments.invokeWrongArguments:()V |
| 1634 | 001f2c: 7100 0b00 0000 |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1635 | 001f32: 0e00 |0003: return-void |
| 1636 | catches : (none) |
| 1637 | positions : |
| 1638 | 0x0000 line=182 |
| 1639 | 0x0003 line=183 |
| 1640 | locals : |
| 1641 | |
| 1642 | #25 : (in LTestBadBootstrapArguments;) |
| 1643 | name : 'invokeWrongArgumentsAgain' |
| 1644 | type : '()V' |
| 1645 | access : 0x000a (PRIVATE STATIC) |
| 1646 | code - |
| 1647 | registers : 0 |
| 1648 | ins : 0 |
| 1649 | outs : 0 |
| 1650 | insns size : 4 16-bit code units |
| 1651 | 001f34: |[001f34] TestBadBootstrapArguments.invokeWrongArgumentsAgain:()V |
| 1652 | 001f44: 7100 0b00 0000 |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1653 | 001f4a: 0e00 |0003: return-void |
| 1654 | catches : (none) |
| 1655 | positions : |
| 1656 | 0x0000 line=210 |
| 1657 | 0x0003 line=211 |
| 1658 | locals : |
| 1659 | |
| 1660 | #26 : (in LTestBadBootstrapArguments;) |
| 1661 | name : 'invokeWrongParameterTypes' |
| 1662 | type : '()V' |
| 1663 | access : 0x000a (PRIVATE STATIC) |
| 1664 | code - |
| 1665 | registers : 0 |
| 1666 | ins : 0 |
| 1667 | outs : 0 |
| 1668 | insns size : 4 16-bit code units |
| 1669 | 001f4c: |[001f4c] TestBadBootstrapArguments.invokeWrongParameterTypes:()V |
| 1670 | 001f5c: 7100 0b00 0000 |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1671 | 001f62: 0e00 |0003: return-void |
| 1672 | catches : (none) |
| 1673 | positions : |
| 1674 | 0x0000 line=98 |
| 1675 | 0x0003 line=99 |
| 1676 | locals : |
| 1677 | |
| 1678 | #27 : (in LTestBadBootstrapArguments;) |
| 1679 | name : 'missingParameterTypes' |
| 1680 | type : '()V' |
| 1681 | access : 0x000a (PRIVATE STATIC) |
| 1682 | code - |
| 1683 | registers : 2 |
| 1684 | ins : 0 |
| 1685 | outs : 2 |
| 1686 | insns size : 8 16-bit code units |
| 1687 | 001f64: |[001f64] TestBadBootstrapArguments.missingParameterTypes:()V |
| 1688 | 001f74: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1689 | 001f78: 1a01 8c01 |0002: const-string v1, "missingParameterTypes" // string@018c |
| 1690 | 001f7c: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 1691 | 001f82: 0e00 |0007: return-void |
| 1692 | catches : (none) |
| 1693 | positions : |
| 1694 | 0x0000 line=128 |
| 1695 | 0x0007 line=129 |
| 1696 | locals : |
| 1697 | |
| 1698 | #28 : (in LTestBadBootstrapArguments;) |
| 1699 | name : 'narrowArguments' |
| 1700 | type : '()V' |
| 1701 | access : 0x000a (PRIVATE STATIC) |
| 1702 | code - |
| 1703 | registers : 0 |
| 1704 | ins : 0 |
| 1705 | outs : 0 |
| 1706 | insns size : 4 16-bit code units |
| 1707 | 001f84: |[001f84] TestBadBootstrapArguments.narrowArguments:()V |
| 1708 | 001f94: 7100 0b00 0000 |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1709 | 001f9a: 0e00 |0003: return-void |
| 1710 | catches : (none) |
| 1711 | positions : |
| 1712 | 0x0000 line=260 |
| 1713 | 0x0003 line=261 |
| 1714 | locals : |
| 1715 | |
| 1716 | #29 : (in LTestBadBootstrapArguments;) |
| 1717 | name : 'objectReturnType' |
| 1718 | type : '()V' |
| 1719 | access : 0x000a (PRIVATE STATIC) |
| 1720 | code - |
| 1721 | registers : 0 |
| 1722 | ins : 0 |
| 1723 | outs : 0 |
| 1724 | insns size : 4 16-bit code units |
| 1725 | 001f9c: |[001f9c] TestBadBootstrapArguments.objectReturnType:()V |
| 1726 | 001fac: 7100 0b00 0000 |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1727 | 001fb2: 0e00 |0003: return-void |
| 1728 | catches : (none) |
| 1729 | positions : |
| 1730 | 0x0000 line=421 |
| 1731 | 0x0003 line=422 |
| 1732 | locals : |
| 1733 | |
| 1734 | #30 : (in LTestBadBootstrapArguments;) |
| 1735 | name : 'sayHello' |
| 1736 | type : '()V' |
| 1737 | access : 0x000a (PRIVATE STATIC) |
| 1738 | code - |
| 1739 | registers : 2 |
| 1740 | ins : 0 |
| 1741 | outs : 2 |
| 1742 | insns size : 8 16-bit code units |
| 1743 | 001fb4: |[001fb4] TestBadBootstrapArguments.sayHello:()V |
| 1744 | 001fc4: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1745 | 001fc8: 1a01 2d00 |0002: const-string v1, "Hello!" // string@002d |
| 1746 | 001fcc: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 1747 | 001fd2: 0e00 |0007: return-void |
| 1748 | catches : (none) |
| 1749 | positions : |
| 1750 | 0x0000 line=473 |
| 1751 | 0x0007 line=474 |
| 1752 | locals : |
| 1753 | |
| 1754 | #31 : (in LTestBadBootstrapArguments;) |
| 1755 | name : 'test' |
| 1756 | type : '()V' |
| 1757 | access : 0x0008 (STATIC) |
| 1758 | code - |
| 1759 | registers : 3 |
| 1760 | ins : 0 |
| 1761 | outs : 2 |
| 1762 | insns size : 529 16-bit code units |
| 1763 | 001fd4: |[001fd4] TestBadBootstrapArguments.test:()V |
| 1764 | 001fe4: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1765 | 001fe8: 1a01 8f00 |0002: const-string v1, "TestBadBootstrapArguments" // string@008f |
| 1766 | 001fec: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 1767 | 001ff2: fc00 0000 0000 |0007: invoke-custom {}, call_site@0000 |
| 1768 | 001ff8: fc00 0100 0000 |000a: invoke-custom {}, call_site@0001 |
| 1769 | 001ffe: 7100 0b00 0000 |000d: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1770 | 002004: 2812 |0010: goto 0022 // +0012 |
| 1771 | 002006: 0d00 |0011: move-exception v0 |
| 1772 | 002008: 6201 1300 |0012: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1773 | 00200c: 1a02 6101 |0014: const-string v2, "invokeWrongParameterTypes => " // string@0161 |
| 1774 | 002010: 6e20 b000 2100 |0016: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1775 | 002016: 6201 1300 |0019: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1776 | 00201a: 6e10 c000 0000 |001b: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 1777 | 002020: 0c02 |001e: move-result-object v2 |
| 1778 | 002022: 6e20 b200 2100 |001f: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2 |
| 1779 | 002028: fc00 0200 0000 |0022: invoke-custom {}, call_site@0002 |
| 1780 | 00202e: 7100 0b00 0000 |0025: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1781 | 002034: 2812 |0028: goto 003a // +0012 |
| 1782 | 002036: 0d00 |0029: move-exception v0 |
| 1783 | 002038: 6201 1300 |002a: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1784 | 00203c: 1a02 5101 |002c: const-string v2, "invokeMissingParameterTypes => " // string@0151 |
| 1785 | 002040: 6e20 b000 2100 |002e: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1786 | 002046: 6201 1300 |0031: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1787 | 00204a: 6e10 c000 0000 |0033: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 1788 | 002050: 0c02 |0036: move-result-object v2 |
| 1789 | 002052: 6e20 b200 2100 |0037: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2 |
| 1790 | 002058: fc00 0300 0000 |003a: invoke-custom {}, call_site@0003 |
| 1791 | 00205e: 7100 0b00 0000 |003d: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1792 | 002064: 2833 |0040: goto 0073 // +0033 |
| 1793 | 002066: 0d00 |0041: move-exception v0 |
| 1794 | 002068: 1c01 3a00 |0042: const-class v1, Ljava/lang/invoke/WrongMethodTypeException; // type@003a |
| 1795 | 00206c: 6e10 b600 0000 |0044: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6 |
| 1796 | 002072: 0c02 |0047: move-result-object v2 |
| 1797 | 002074: 6e10 c000 0200 |0048: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 1798 | 00207a: 0c02 |004b: move-result-object v2 |
| 1799 | 00207c: 7120 0a00 2100 |004c: invoke-static {v1, v2}, LTestBadBootstrapArguments;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@000a |
| 1800 | 002082: 6201 1300 |004f: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1801 | 002086: 1a02 4c01 |0051: const-string v2, "invokeExtraArguments => " // string@014c |
| 1802 | 00208a: 6e20 b000 2100 |0053: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1803 | 002090: 6201 1300 |0056: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1804 | 002094: 6e10 c000 0000 |0058: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 1805 | 00209a: 0c02 |005b: move-result-object v2 |
| 1806 | 00209c: 6e20 af00 2100 |005c: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af |
| 1807 | 0020a2: 6201 1300 |005f: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1808 | 0020a6: 1a02 0200 |0061: const-string v2, " => " // string@0002 |
| 1809 | 0020aa: 6e20 b000 2100 |0063: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1810 | 0020b0: 6201 1300 |0066: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1811 | 0020b4: 6e10 b600 0000 |0068: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6 |
| 1812 | 0020ba: 0c02 |006b: move-result-object v2 |
| 1813 | 0020bc: 6e10 c000 0200 |006c: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 1814 | 0020c2: 0c02 |006f: move-result-object v2 |
| 1815 | 0020c4: 6e20 b200 2100 |0070: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2 |
| 1816 | 0020ca: fc00 0400 0000 |0073: invoke-custom {}, call_site@0004 |
| 1817 | 0020d0: 7100 0b00 0000 |0076: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1818 | 0020d6: 2833 |0079: goto 00ac // +0033 |
| 1819 | 0020d8: 0d00 |007a: move-exception v0 |
| 1820 | 0020da: 1c01 2200 |007b: const-class v1, Ljava/lang/ClassCastException; // type@0022 |
| 1821 | 0020de: 6e10 b600 0000 |007d: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6 |
| 1822 | 0020e4: 0c02 |0080: move-result-object v2 |
| 1823 | 0020e6: 6e10 c000 0200 |0081: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 1824 | 0020ec: 0c02 |0084: move-result-object v2 |
| 1825 | 0020ee: 7120 0a00 2100 |0085: invoke-static {v1, v2}, LTestBadBootstrapArguments;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@000a |
| 1826 | 0020f4: 6201 1300 |0088: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1827 | 0020f8: 1a02 5d01 |008a: const-string v2, "invokeWrongArguments => " // string@015d |
| 1828 | 0020fc: 6e20 b000 2100 |008c: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1829 | 002102: 6201 1300 |008f: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1830 | 002106: 6e10 c000 0000 |0091: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 1831 | 00210c: 0c02 |0094: move-result-object v2 |
| 1832 | 00210e: 6e20 af00 2100 |0095: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af |
| 1833 | 002114: 6201 1300 |0098: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1834 | 002118: 1a02 0200 |009a: const-string v2, " => " // string@0002 |
| 1835 | 00211c: 6e20 b000 2100 |009c: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1836 | 002122: 6201 1300 |009f: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1837 | 002126: 6e10 b600 0000 |00a1: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6 |
| 1838 | 00212c: 0c02 |00a4: move-result-object v2 |
| 1839 | 00212e: 6e10 c000 0200 |00a5: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 1840 | 002134: 0c02 |00a8: move-result-object v2 |
| 1841 | 002136: 6e20 b200 2100 |00a9: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2 |
| 1842 | 00213c: fc00 0500 0000 |00ac: invoke-custom {}, call_site@0005 |
| 1843 | 002142: 7100 0b00 0000 |00af: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1844 | 002148: 2833 |00b2: goto 00e5 // +0033 |
| 1845 | 00214a: 0d00 |00b3: move-exception v0 |
| 1846 | 00214c: 1c01 2200 |00b4: const-class v1, Ljava/lang/ClassCastException; // type@0022 |
| 1847 | 002150: 6e10 b600 0000 |00b6: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6 |
| 1848 | 002156: 0c02 |00b9: move-result-object v2 |
| 1849 | 002158: 6e10 c000 0200 |00ba: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 1850 | 00215e: 0c02 |00bd: move-result-object v2 |
| 1851 | 002160: 7120 0a00 2100 |00be: invoke-static {v1, v2}, LTestBadBootstrapArguments;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@000a |
| 1852 | 002166: 6201 1300 |00c1: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1853 | 00216a: 1a02 5d01 |00c3: const-string v2, "invokeWrongArguments => " // string@015d |
| 1854 | 00216e: 6e20 b000 2100 |00c5: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1855 | 002174: 6201 1300 |00c8: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1856 | 002178: 6e10 c000 0000 |00ca: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 1857 | 00217e: 0c02 |00cd: move-result-object v2 |
| 1858 | 002180: 6e20 af00 2100 |00ce: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af |
| 1859 | 002186: 6201 1300 |00d1: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1860 | 00218a: 1a02 0200 |00d3: const-string v2, " => " // string@0002 |
| 1861 | 00218e: 6e20 b000 2100 |00d5: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1862 | 002194: 6201 1300 |00d8: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1863 | 002198: 6e10 b600 0000 |00da: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6 |
| 1864 | 00219e: 0c02 |00dd: move-result-object v2 |
| 1865 | 0021a0: 6e10 c000 0200 |00de: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 1866 | 0021a6: 0c02 |00e1: move-result-object v2 |
| 1867 | 0021a8: 6e20 b200 2100 |00e2: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2 |
| 1868 | 0021ae: fc00 0600 0000 |00e5: invoke-custom {}, call_site@0006 |
| 1869 | 0021b4: 7100 0b00 0000 |00e8: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1870 | 0021ba: 2833 |00eb: goto 011e // +0033 |
| 1871 | 0021bc: 0d00 |00ec: move-exception v0 |
| 1872 | 0021be: 1c01 2200 |00ed: const-class v1, Ljava/lang/ClassCastException; // type@0022 |
| 1873 | 0021c2: 6e10 b600 0000 |00ef: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6 |
| 1874 | 0021c8: 0c02 |00f2: move-result-object v2 |
| 1875 | 0021ca: 6e10 c000 0200 |00f3: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 1876 | 0021d0: 0c02 |00f6: move-result-object v2 |
| 1877 | 0021d2: 7120 0a00 2100 |00f7: invoke-static {v1, v2}, LTestBadBootstrapArguments;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@000a |
| 1878 | 0021d8: 6201 1300 |00fa: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1879 | 0021dc: 1a02 5f01 |00fc: const-string v2, "invokeWrongArgumentsAgain => " // string@015f |
| 1880 | 0021e0: 6e20 b000 2100 |00fe: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1881 | 0021e6: 6201 1300 |0101: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1882 | 0021ea: 6e10 c000 0000 |0103: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 1883 | 0021f0: 0c02 |0106: move-result-object v2 |
| 1884 | 0021f2: 6e20 af00 2100 |0107: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af |
| 1885 | 0021f8: 6201 1300 |010a: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1886 | 0021fc: 1a02 0200 |010c: const-string v2, " => " // string@0002 |
| 1887 | 002200: 6e20 b000 2100 |010e: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1888 | 002206: 6201 1300 |0111: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1889 | 00220a: 6e10 b600 0000 |0113: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6 |
| 1890 | 002210: 0c02 |0116: move-result-object v2 |
| 1891 | 002212: 6e10 c000 0200 |0117: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 1892 | 002218: 0c02 |011a: move-result-object v2 |
| 1893 | 00221a: 6e20 b200 2100 |011b: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2 |
| 1894 | 002220: fc00 0700 0000 |011e: invoke-custom {}, call_site@0007 |
| 1895 | 002226: 7100 0b00 0000 |0121: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1896 | 00222c: 2833 |0124: goto 0157 // +0033 |
| 1897 | 00222e: 0d00 |0125: move-exception v0 |
| 1898 | 002230: 1c01 2200 |0126: const-class v1, Ljava/lang/ClassCastException; // type@0022 |
| 1899 | 002234: 6e10 b600 0000 |0128: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6 |
| 1900 | 00223a: 0c02 |012b: move-result-object v2 |
| 1901 | 00223c: 6e10 c000 0200 |012c: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 1902 | 002242: 0c02 |012f: move-result-object v2 |
| 1903 | 002244: 7120 0a00 2100 |0130: invoke-static {v1, v2}, LTestBadBootstrapArguments;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@000a |
| 1904 | 00224a: 6201 1300 |0133: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1905 | 00224e: 1a02 5301 |0135: const-string v2, "invokeNarrowArguments => " // string@0153 |
| 1906 | 002252: 6e20 b000 2100 |0137: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1907 | 002258: 6201 1300 |013a: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1908 | 00225c: 6e10 c000 0000 |013c: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 1909 | 002262: 0c02 |013f: move-result-object v2 |
| 1910 | 002264: 6e20 af00 2100 |0140: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af |
| 1911 | 00226a: 6201 1300 |0143: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1912 | 00226e: 1a02 0200 |0145: const-string v2, " => " // string@0002 |
| 1913 | 002272: 6e20 b000 2100 |0147: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1914 | 002278: 6201 1300 |014a: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1915 | 00227c: 6e10 b600 0000 |014c: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6 |
| 1916 | 002282: 0c02 |014f: move-result-object v2 |
| 1917 | 002284: 6e10 c000 0200 |0150: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 1918 | 00228a: 0c02 |0153: move-result-object v2 |
| 1919 | 00228c: 6e20 b200 2100 |0154: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2 |
| 1920 | 002292: fc00 0800 0000 |0157: invoke-custom {}, call_site@0008 |
| 1921 | 002298: fc00 0900 0000 |015a: invoke-custom {}, call_site@0009 |
| 1922 | 00229e: fc00 0a00 0000 |015d: invoke-custom {}, call_site@000a |
| 1923 | 0022a4: 7100 0b00 0000 |0160: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1924 | 0022aa: 2826 |0163: goto 0189 // +0026 |
| 1925 | 0022ac: 0d00 |0164: move-exception v0 |
| 1926 | 0022ae: 6201 1300 |0165: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1927 | 0022b2: 1a02 5b01 |0167: const-string v2, "invokeWideningBoxingArguments => " // string@015b |
| 1928 | 0022b6: 6e20 b000 2100 |0169: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1929 | 0022bc: 6201 1300 |016c: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1930 | 0022c0: 6e10 c000 0000 |016e: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 1931 | 0022c6: 0c02 |0171: move-result-object v2 |
| 1932 | 0022c8: 6e20 af00 2100 |0172: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af |
| 1933 | 0022ce: 6201 1300 |0175: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1934 | 0022d2: 1a02 0200 |0177: const-string v2, " => " // string@0002 |
| 1935 | 0022d6: 6e20 b000 2100 |0179: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1936 | 0022dc: 6201 1300 |017c: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1937 | 0022e0: 6e10 b600 0000 |017e: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6 |
| 1938 | 0022e6: 0c02 |0181: move-result-object v2 |
| 1939 | 0022e8: 6e10 c000 0200 |0182: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 1940 | 0022ee: 0c02 |0185: move-result-object v2 |
| 1941 | 0022f0: 6e20 b200 2100 |0186: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2 |
| 1942 | 0022f6: fc00 0b00 0000 |0189: invoke-custom {}, call_site@000b |
| 1943 | 0022fc: 7100 0b00 0000 |018c: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1944 | 002302: 2826 |018f: goto 01b5 // +0026 |
| 1945 | 002304: 0d00 |0190: move-exception v0 |
| 1946 | 002306: 6201 1300 |0191: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1947 | 00230a: 1a02 5801 |0193: const-string v2, "invokeVoidReturnType() => " // string@0158 |
| 1948 | 00230e: 6e20 b000 2100 |0195: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1949 | 002314: 6201 1300 |0198: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1950 | 002318: 6e10 c000 0000 |019a: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 1951 | 00231e: 0c02 |019d: move-result-object v2 |
| 1952 | 002320: 6e20 af00 2100 |019e: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af |
| 1953 | 002326: 6201 1300 |01a1: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1954 | 00232a: 1a02 0200 |01a3: const-string v2, " => " // string@0002 |
| 1955 | 00232e: 6e20 b000 2100 |01a5: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1956 | 002334: 6201 1300 |01a8: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1957 | 002338: 6e10 b600 0000 |01aa: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6 |
| 1958 | 00233e: 0c02 |01ad: move-result-object v2 |
| 1959 | 002340: 6e10 c000 0200 |01ae: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 1960 | 002346: 0c02 |01b1: move-result-object v2 |
| 1961 | 002348: 6e20 b200 2100 |01b2: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2 |
| 1962 | 00234e: fc00 0c00 0000 |01b5: invoke-custom {}, call_site@000c |
| 1963 | 002354: 7100 0b00 0000 |01b8: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1964 | 00235a: 2826 |01bb: goto 01e1 // +0026 |
| 1965 | 00235c: 0d00 |01bc: move-exception v0 |
| 1966 | 00235e: 6201 1300 |01bd: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1967 | 002362: 1a02 5501 |01bf: const-string v2, "invokeObjectReturnType() => " // string@0155 |
| 1968 | 002366: 6e20 b000 2100 |01c1: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1969 | 00236c: 6201 1300 |01c4: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1970 | 002370: 6e10 c000 0000 |01c6: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 1971 | 002376: 0c02 |01c9: move-result-object v2 |
| 1972 | 002378: 6e20 af00 2100 |01ca: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af |
| 1973 | 00237e: 6201 1300 |01cd: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1974 | 002382: 1a02 0200 |01cf: const-string v2, " => " // string@0002 |
| 1975 | 002386: 6e20 b000 2100 |01d1: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1976 | 00238c: 6201 1300 |01d4: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1977 | 002390: 6e10 b600 0000 |01d6: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6 |
| 1978 | 002396: 0c02 |01d9: move-result-object v2 |
| 1979 | 002398: 6e10 c000 0200 |01da: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 1980 | 00239e: 0c02 |01dd: move-result-object v2 |
| 1981 | 0023a0: 6e20 b200 2100 |01de: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2 |
| 1982 | 0023a6: fc00 0d00 0000 |01e1: invoke-custom {}, call_site@000d |
| 1983 | 0023ac: 7100 0b00 0000 |01e4: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 1984 | 0023b2: 2826 |01e7: goto 020d // +0026 |
| 1985 | 0023b4: 0d00 |01e8: move-exception v0 |
| 1986 | 0023b6: 6201 1300 |01e9: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1987 | 0023ba: 1a02 4f01 |01eb: const-string v2, "invokeIntegerReturnType() => " // string@014f |
| 1988 | 0023be: 6e20 b000 2100 |01ed: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1989 | 0023c4: 6201 1300 |01f0: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1990 | 0023c8: 6e10 c000 0000 |01f2: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 1991 | 0023ce: 0c02 |01f5: move-result-object v2 |
| 1992 | 0023d0: 6e20 af00 2100 |01f6: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af |
| 1993 | 0023d6: 6201 1300 |01f9: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1994 | 0023da: 1a02 0200 |01fb: const-string v2, " => " // string@0002 |
| 1995 | 0023de: 6e20 b000 2100 |01fd: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 1996 | 0023e4: 6201 1300 |0200: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 1997 | 0023e8: 6e10 b600 0000 |0202: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6 |
| 1998 | 0023ee: 0c02 |0205: move-result-object v2 |
| 1999 | 0023f0: 6e10 c000 0200 |0206: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 2000 | 0023f6: 0c02 |0209: move-result-object v2 |
| 2001 | 0023f8: 6e20 b200 2100 |020a: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2 |
| 2002 | 0023fe: fc00 0e00 0000 |020d: invoke-custom {}, call_site@000e |
| 2003 | 002404: 0e00 |0210: return-void |
| 2004 | catches : 11 |
| 2005 | 0x000a - 0x0010 |
| 2006 | Ljava/lang/NoSuchMethodError; -> 0x0011 |
| 2007 | 0x0022 - 0x0028 |
| 2008 | Ljava/lang/NoSuchMethodError; -> 0x0029 |
| 2009 | 0x003a - 0x0040 |
| 2010 | Ljava/lang/BootstrapMethodError; -> 0x0041 |
| 2011 | 0x0073 - 0x0079 |
| 2012 | Ljava/lang/BootstrapMethodError; -> 0x007a |
| 2013 | 0x00ac - 0x00b2 |
| 2014 | Ljava/lang/BootstrapMethodError; -> 0x00b3 |
| 2015 | 0x00e5 - 0x00eb |
| 2016 | Ljava/lang/BootstrapMethodError; -> 0x00ec |
| 2017 | 0x011e - 0x0124 |
| 2018 | Ljava/lang/BootstrapMethodError; -> 0x0125 |
| 2019 | 0x015d - 0x0163 |
| 2020 | Ljava/lang/BootstrapMethodError; -> 0x0164 |
| 2021 | 0x0189 - 0x018f |
| 2022 | Ljava/lang/BootstrapMethodError; -> 0x0190 |
| 2023 | 0x01b5 - 0x01bb |
| 2024 | Ljava/lang/BootstrapMethodError; -> 0x01bc |
| 2025 | 0x01e1 - 0x01e7 |
| 2026 | Ljava/lang/BootstrapMethodError; -> 0x01e8 |
| 2027 | positions : |
| 2028 | 0x0000 line=477 |
| 2029 | 0x0007 line=478 |
| 2030 | 0x000a line=480 |
| 2031 | 0x000d line=481 |
| 2032 | 0x0010 line=485 |
| 2033 | 0x0011 line=482 |
| 2034 | 0x0012 line=483 |
| 2035 | 0x0019 line=484 |
| 2036 | 0x0022 line=487 |
| 2037 | 0x0025 line=488 |
| 2038 | 0x0028 line=492 |
| 2039 | 0x0029 line=489 |
| 2040 | 0x002a line=490 |
| 2041 | 0x0031 line=491 |
| 2042 | 0x003a line=494 |
| 2043 | 0x003d line=495 |
| 2044 | 0x0040 line=502 |
| 2045 | 0x0041 line=496 |
| 2046 | 0x0042 line=497 |
| 2047 | 0x004f line=498 |
| 2048 | 0x0056 line=499 |
| 2049 | 0x005f line=500 |
| 2050 | 0x0066 line=501 |
| 2051 | 0x0073 line=504 |
| 2052 | 0x0076 line=505 |
| 2053 | 0x0079 line=512 |
| 2054 | 0x007a line=506 |
| 2055 | 0x007b line=507 |
| 2056 | 0x0088 line=508 |
| 2057 | 0x008f line=509 |
| 2058 | 0x0098 line=510 |
| 2059 | 0x009f line=511 |
| 2060 | 0x00ac line=514 |
| 2061 | 0x00af line=515 |
| 2062 | 0x00b2 line=522 |
| 2063 | 0x00b3 line=516 |
| 2064 | 0x00b4 line=517 |
| 2065 | 0x00c1 line=518 |
| 2066 | 0x00c8 line=519 |
| 2067 | 0x00d1 line=520 |
| 2068 | 0x00d8 line=521 |
| 2069 | 0x00e5 line=524 |
| 2070 | 0x00e8 line=525 |
| 2071 | 0x00eb line=532 |
| 2072 | 0x00ec line=526 |
| 2073 | 0x00ed line=527 |
| 2074 | 0x00fa line=528 |
| 2075 | 0x0101 line=529 |
| 2076 | 0x010a line=530 |
| 2077 | 0x0111 line=531 |
| 2078 | 0x011e line=534 |
| 2079 | 0x0121 line=535 |
| 2080 | 0x0124 line=542 |
| 2081 | 0x0125 line=536 |
| 2082 | 0x0126 line=537 |
| 2083 | 0x0133 line=538 |
| 2084 | 0x013a line=539 |
| 2085 | 0x0143 line=540 |
| 2086 | 0x014a line=541 |
| 2087 | 0x0157 line=543 |
| 2088 | 0x015a line=544 |
| 2089 | 0x015d line=546 |
| 2090 | 0x0160 line=547 |
| 2091 | 0x0163 line=553 |
| 2092 | 0x0164 line=548 |
| 2093 | 0x0165 line=549 |
| 2094 | 0x016c line=550 |
| 2095 | 0x0175 line=551 |
| 2096 | 0x017c line=552 |
| 2097 | 0x0189 line=555 |
| 2098 | 0x018c line=556 |
| 2099 | 0x018f line=562 |
| 2100 | 0x0190 line=557 |
| 2101 | 0x0191 line=558 |
| 2102 | 0x0198 line=559 |
| 2103 | 0x01a1 line=560 |
| 2104 | 0x01a8 line=561 |
| 2105 | 0x01b5 line=564 |
| 2106 | 0x01b8 line=565 |
| 2107 | 0x01bb line=571 |
| 2108 | 0x01bc line=566 |
| 2109 | 0x01bd line=567 |
| 2110 | 0x01c4 line=568 |
| 2111 | 0x01cd line=569 |
| 2112 | 0x01d4 line=570 |
| 2113 | 0x01e1 line=573 |
| 2114 | 0x01e4 line=574 |
| 2115 | 0x01e7 line=580 |
| 2116 | 0x01e8 line=575 |
| 2117 | 0x01e9 line=576 |
| 2118 | 0x01f0 line=577 |
| 2119 | 0x01f9 line=578 |
| 2120 | 0x0200 line=579 |
| 2121 | 0x020d line=581 |
| 2122 | 0x0210 line=582 |
| 2123 | locals : |
| 2124 | 0x0012 - 0x0022 reg=0 expected Ljava/lang/NoSuchMethodError; |
| 2125 | 0x002a - 0x003a reg=0 expected Ljava/lang/NoSuchMethodError; |
| 2126 | 0x0042 - 0x0073 reg=0 expected Ljava/lang/BootstrapMethodError; |
| 2127 | 0x007b - 0x00ac reg=0 expected Ljava/lang/BootstrapMethodError; |
| 2128 | 0x00b4 - 0x00e5 reg=0 expected Ljava/lang/BootstrapMethodError; |
| 2129 | 0x00ed - 0x011e reg=0 expected Ljava/lang/BootstrapMethodError; |
| 2130 | 0x0126 - 0x0157 reg=0 expected Ljava/lang/BootstrapMethodError; |
| 2131 | 0x0165 - 0x0189 reg=0 expected Ljava/lang/BootstrapMethodError; |
| 2132 | 0x0191 - 0x01b5 reg=0 expected Ljava/lang/BootstrapMethodError; |
| 2133 | 0x01bd - 0x01e1 reg=0 expected Ljava/lang/BootstrapMethodError; |
| 2134 | 0x01e9 - 0x020d reg=0 expected Ljava/lang/BootstrapMethodError; |
| 2135 | |
| 2136 | #32 : (in LTestBadBootstrapArguments;) |
| 2137 | name : 'voidReturnType' |
| 2138 | type : '()V' |
| 2139 | access : 0x000a (PRIVATE STATIC) |
| 2140 | code - |
| 2141 | registers : 0 |
| 2142 | ins : 0 |
| 2143 | outs : 0 |
| 2144 | insns size : 4 16-bit code units |
| 2145 | 00248c: |[00248c] TestBadBootstrapArguments.voidReturnType:()V |
| 2146 | 00249c: 7100 0b00 0000 |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b |
| 2147 | 0024a2: 0e00 |0003: return-void |
| 2148 | catches : (none) |
| 2149 | positions : |
| 2150 | 0x0000 line=398 |
| 2151 | 0x0003 line=399 |
| 2152 | locals : |
| 2153 | |
| 2154 | #33 : (in LTestBadBootstrapArguments;) |
| 2155 | name : 'wideningArguments' |
| 2156 | type : '()V' |
| 2157 | access : 0x000a (PRIVATE STATIC) |
| 2158 | code - |
| 2159 | registers : 2 |
| 2160 | ins : 0 |
| 2161 | outs : 2 |
| 2162 | insns size : 8 16-bit code units |
| 2163 | 0024a4: |[0024a4] TestBadBootstrapArguments.wideningArguments:()V |
| 2164 | 0024b4: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 2165 | 0024b8: 1a01 d101 |0002: const-string v1, "wideningArguments" // string@01d1 |
| 2166 | 0024bc: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 2167 | 0024c2: 0e00 |0007: return-void |
| 2168 | catches : (none) |
| 2169 | positions : |
| 2170 | 0x0000 line=304 |
| 2171 | 0x0007 line=305 |
| 2172 | locals : |
| 2173 | |
| 2174 | #34 : (in LTestBadBootstrapArguments;) |
| 2175 | name : 'wideningBoxingArguments' |
| 2176 | type : '()V' |
| 2177 | access : 0x000a (PRIVATE STATIC) |
| 2178 | code - |
| 2179 | registers : 2 |
| 2180 | ins : 0 |
| 2181 | outs : 2 |
| 2182 | insns size : 8 16-bit code units |
| 2183 | 0024c4: |[0024c4] TestBadBootstrapArguments.wideningBoxingArguments:()V |
| 2184 | 0024d4: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 2185 | 0024d8: 1a01 d201 |0002: const-string v1, "wideningBoxingArguments" // string@01d2 |
| 2186 | 0024dc: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 2187 | 0024e2: 0e00 |0007: return-void |
| 2188 | catches : (none) |
| 2189 | positions : |
| 2190 | 0x0000 line=376 |
| 2191 | 0x0007 line=377 |
| 2192 | locals : |
| 2193 | |
| 2194 | #35 : (in LTestBadBootstrapArguments;) |
| 2195 | name : 'wrongArguments' |
| 2196 | type : '()V' |
| 2197 | access : 0x000a (PRIVATE STATIC) |
| 2198 | code - |
| 2199 | registers : 2 |
| 2200 | ins : 0 |
| 2201 | outs : 2 |
| 2202 | insns size : 8 16-bit code units |
| 2203 | 0024e4: |[0024e4] TestBadBootstrapArguments.wrongArguments:()V |
| 2204 | 0024f4: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 2205 | 0024f8: 1a01 d401 |0002: const-string v1, "wrongArguments" // string@01d4 |
| 2206 | 0024fc: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 2207 | 002502: 0e00 |0007: return-void |
| 2208 | catches : (none) |
| 2209 | positions : |
| 2210 | 0x0000 line=186 |
| 2211 | 0x0007 line=187 |
| 2212 | locals : |
| 2213 | |
| 2214 | #36 : (in LTestBadBootstrapArguments;) |
| 2215 | name : 'wrongArgumentsAgain' |
| 2216 | type : '()V' |
| 2217 | access : 0x000a (PRIVATE STATIC) |
| 2218 | code - |
| 2219 | registers : 2 |
| 2220 | ins : 0 |
| 2221 | outs : 2 |
| 2222 | insns size : 8 16-bit code units |
| 2223 | 002504: |[002504] TestBadBootstrapArguments.wrongArgumentsAgain:()V |
| 2224 | 002514: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 2225 | 002518: 1a01 d501 |0002: const-string v1, "wrongArgumentsAgain" // string@01d5 |
| 2226 | 00251c: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 2227 | 002522: 0e00 |0007: return-void |
| 2228 | catches : (none) |
| 2229 | positions : |
| 2230 | 0x0000 line=214 |
| 2231 | 0x0007 line=215 |
| 2232 | locals : |
| 2233 | |
| 2234 | #37 : (in LTestBadBootstrapArguments;) |
| 2235 | name : 'wrongParameterTypes' |
| 2236 | type : '()V' |
| 2237 | access : 0x000a (PRIVATE STATIC) |
| 2238 | code - |
| 2239 | registers : 2 |
| 2240 | ins : 0 |
| 2241 | outs : 2 |
| 2242 | insns size : 8 16-bit code units |
| 2243 | 002524: |[002524] TestBadBootstrapArguments.wrongParameterTypes:()V |
| 2244 | 002534: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 2245 | 002538: 1a01 d601 |0002: const-string v1, "wrongParameterTypes" // string@01d6 |
| 2246 | 00253c: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 2247 | 002542: 0e00 |0007: return-void |
| 2248 | catches : (none) |
| 2249 | positions : |
| 2250 | 0x0000 line=102 |
| 2251 | 0x0007 line=103 |
| 2252 | locals : |
| 2253 | |
| 2254 | Virtual methods - |
| 2255 | source_file_idx : 144 (TestBadBootstrapArguments.java) |
| 2256 | |
| 2257 | Class #7 header: |
| 2258 | class_idx : 10 |
| 2259 | access_flags : 0 (0x0000) |
| 2260 | superclass_idx : 9 |
| 2261 | interfaces_off : 0 (0x000000) |
| 2262 | source_file_idx : 147 |
| 2263 | annotations_off : 30988 (0x00790c) |
| 2264 | class_data_off : 29220 (0x007224) |
| 2265 | static_fields_size : 1 |
| 2266 | instance_fields_size: 0 |
| 2267 | direct_methods_size : 7 |
| 2268 | virtual_methods_size: 0 |
| 2269 | |
| 2270 | Class #7 annotations: |
| 2271 | Annotations on method #67 'bsm' |
| 2272 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 2273 | Annotations on method #71 'testDynamic' |
| 2274 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestDynamicBootstrapArguments; name="bsm" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; Ljava/lang/String; J } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; stringValue={ "A" } Lannotations/Constant; longValue={ 100000000 } } fieldOrMethodName="target" parameterTypes={ I Ljava/lang/String; D } returnType=I |
| 2275 | |
| 2276 | Class #7 - |
| 2277 | Class descriptor : 'LTestDynamicBootstrapArguments;' |
| 2278 | Access flags : 0x0000 () |
| 2279 | Superclass : 'LTestBase;' |
| 2280 | Interfaces - |
| 2281 | Static fields - |
| 2282 | #0 : (in LTestDynamicBootstrapArguments;) |
| 2283 | name : 'bsmCalls' |
| 2284 | type : 'I' |
| 2285 | access : 0x000a (PRIVATE STATIC) |
| 2286 | Instance fields - |
| 2287 | Direct methods - |
| 2288 | #0 : (in LTestDynamicBootstrapArguments;) |
| 2289 | name : '<clinit>' |
| 2290 | type : '()V' |
| 2291 | access : 0x10008 (STATIC CONSTRUCTOR) |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 2292 | code - |
| 2293 | registers : 1 |
| 2294 | ins : 0 |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 2295 | outs : 0 |
| 2296 | insns size : 4 16-bit code units |
| 2297 | 0029c8: |[0029c8] TestDynamicBootstrapArguments.<clinit>:()V |
| 2298 | 0029d8: 1200 |0000: const/4 v0, #int 0 // #0 |
| 2299 | 0029da: 6700 0000 |0001: sput v0, LTestDynamicBootstrapArguments;.bsmCalls:I // field@0000 |
| 2300 | 0029de: 0e00 |0003: return-void |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 2301 | catches : (none) |
| 2302 | positions : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 2303 | 0x0000 line=27 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 2304 | locals : |
| 2305 | |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 2306 | #1 : (in LTestDynamicBootstrapArguments;) |
| 2307 | name : '<init>' |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 2308 | type : '()V' |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 2309 | access : 0x10000 (CONSTRUCTOR) |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 2310 | code - |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 2311 | registers : 1 |
| 2312 | ins : 1 |
| 2313 | outs : 1 |
| 2314 | insns size : 4 16-bit code units |
| 2315 | 0029e0: |[0029e0] TestDynamicBootstrapArguments.<init>:()V |
| 2316 | 0029f0: 7010 3200 0000 |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032 |
| 2317 | 0029f6: 0e00 |0003: return-void |
| 2318 | catches : (none) |
| 2319 | positions : |
| 2320 | 0x0000 line=26 |
| 2321 | locals : |
| 2322 | 0x0000 - 0x0004 reg=0 this LTestDynamicBootstrapArguments; |
| 2323 | |
| 2324 | #2 : (in LTestDynamicBootstrapArguments;) |
| 2325 | name : 'bsm' |
| 2326 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;J)Ljava/lang/invoke/CallSite;' |
| 2327 | access : 0x0008 (STATIC) |
| 2328 | code - |
| 2329 | registers : 11 |
| 2330 | ins : 6 |
| 2331 | outs : 4 |
| 2332 | insns size : 43 16-bit code units |
| 2333 | 002960: |[002960] TestDynamicBootstrapArguments.bsm:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;J)Ljava/lang/invoke/CallSite; |
| 2334 | 002970: 6000 0000 |0000: sget v0, LTestDynamicBootstrapArguments;.bsmCalls:I // field@0000 |
| 2335 | 002974: d800 0001 |0002: add-int/lit8 v0, v0, #int 1 // #01 |
| 2336 | 002978: 6700 0000 |0004: sput v0, LTestDynamicBootstrapArguments;.bsmCalls:I // field@0000 |
| 2337 | 00297c: 1c00 0a00 |0006: const-class v0, LTestDynamicBootstrapArguments; // type@000a |
| 2338 | 002980: 2201 2d00 |0008: new-instance v1, Ljava/lang/StringBuilder; // type@002d |
| 2339 | 002984: 7010 c100 0100 |000a: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1 |
| 2340 | 00298a: 6e20 c800 6100 |000d: invoke-virtual {v1, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 2341 | 002990: 6e20 c800 8100 |0010: invoke-virtual {v1, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 2342 | 002996: 6e30 c600 910a |0013: invoke-virtual {v1, v9, v10}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@00c6 |
| 2343 | 00299c: 6e10 ca00 0100 |0016: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca |
| 2344 | 0029a2: 0c01 |0019: move-result-object v1 |
| 2345 | 0029a4: 6e40 d800 0571 |001a: invoke-virtual {v5, v0, v1, v7}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8 |
| 2346 | 0029aa: 0c02 |001d: move-result-object v2 |
| 2347 | 0029ac: 6203 1300 |001e: sget-object v3, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 2348 | 0029b0: 1a04 ea00 |0020: const-string v4, "bsm" // string@00ea |
| 2349 | 0029b4: 6e20 b300 4300 |0022: invoke-virtual {v3, v4}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 2350 | 0029ba: 2203 3400 |0025: new-instance v3, Ljava/lang/invoke/ConstantCallSite; // type@0034 |
| 2351 | 0029be: 7020 d200 2300 |0027: invoke-direct {v3, v2}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2 |
| 2352 | 0029c4: 1103 |002a: return-object v3 |
| 2353 | catches : (none) |
| 2354 | positions : |
| 2355 | 0x0000 line=36 |
| 2356 | 0x0006 line=37 |
| 2357 | 0x0008 line=38 |
| 2358 | 0x001a line=39 |
| 2359 | 0x001e line=40 |
| 2360 | 0x0025 line=41 |
| 2361 | locals : |
| 2362 | 0x0008 - 0x002b reg=0 definingClass Ljava/lang/Class; Ljava/lang/Class<*>; |
| 2363 | 0x001a - 0x002b reg=1 methodName Ljava/lang/String; |
| 2364 | 0x001e - 0x002b reg=2 mh Ljava/lang/invoke/MethodHandle; |
| 2365 | 0x0000 - 0x002b reg=5 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 2366 | 0x0000 - 0x002b reg=6 name Ljava/lang/String; |
| 2367 | 0x0000 - 0x002b reg=7 methodType Ljava/lang/invoke/MethodType; |
| 2368 | 0x0000 - 0x002b reg=8 otherNameComponent Ljava/lang/String; |
| 2369 | 0x0000 - 0x002b reg=9 nameSuffix J |
| 2370 | |
| 2371 | #3 : (in LTestDynamicBootstrapArguments;) |
| 2372 | name : 'targetA100000000' |
| 2373 | type : '(ILjava/lang/String;Ljava/lang/Double;)I' |
| 2374 | access : 0x000a (PRIVATE STATIC) |
| 2375 | code - |
| 2376 | registers : 5 |
| 2377 | ins : 3 |
| 2378 | outs : 2 |
| 2379 | insns size : 30 16-bit code units |
| 2380 | 0028f8: |[0028f8] TestDynamicBootstrapArguments.targetA100000000:(ILjava/lang/String;Ljava/lang/Double;)I |
| 2381 | 002908: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 2382 | 00290c: 6e20 ad00 2000 |0002: invoke-virtual {v0, v2}, Ljava/io/PrintStream;.print:(I)V // method@00ad |
| 2383 | 002912: 6200 1300 |0005: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 2384 | 002916: 1a01 0c00 |0007: const-string v1, ", " // string@000c |
| 2385 | 00291a: 6e20 b000 1000 |0009: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 2386 | 002920: 6200 1300 |000c: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 2387 | 002924: 6e20 b000 3000 |000e: invoke-virtual {v0, v3}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 2388 | 00292a: 6200 1300 |0011: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 2389 | 00292e: 1a01 0c00 |0013: const-string v1, ", " // string@000c |
| 2390 | 002932: 6e20 b000 1000 |0015: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 2391 | 002938: 6200 1300 |0018: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 2392 | 00293c: 6e20 b200 4000 |001a: invoke-virtual {v0, v4}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2 |
| 2393 | 002942: 0f02 |001d: return v2 |
| 2394 | catches : (none) |
| 2395 | positions : |
| 2396 | 0x0000 line=71 |
| 2397 | 0x0005 line=72 |
| 2398 | 0x000c line=73 |
| 2399 | 0x0011 line=74 |
| 2400 | 0x0018 line=75 |
| 2401 | 0x001d line=76 |
| 2402 | locals : |
| 2403 | 0x0000 - 0x001e reg=2 i I |
| 2404 | 0x0000 - 0x001e reg=3 s Ljava/lang/String; |
| 2405 | 0x0000 - 0x001e reg=4 d Ljava/lang/Double; |
| 2406 | |
| 2407 | #4 : (in LTestDynamicBootstrapArguments;) |
| 2408 | name : 'test' |
| 2409 | type : '()V' |
| 2410 | access : 0x0008 (STATIC) |
| 2411 | code - |
| 2412 | registers : 2 |
| 2413 | ins : 0 |
| 2414 | outs : 2 |
| 2415 | insns size : 25 16-bit code units |
| 2416 | 0029f8: |[0029f8] TestDynamicBootstrapArguments.test:()V |
| 2417 | 002a08: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 2418 | 002a0c: 1a01 9200 |0002: const-string v1, "TestDynamicArguments" // string@0092 |
| 2419 | 002a10: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 2420 | 002a16: 7100 4600 0000 |0007: invoke-static {}, LTestDynamicBootstrapArguments;.testCallSites:()V // method@0046 |
| 2421 | 002a1c: 6000 0000 |000a: sget v0, LTestDynamicBootstrapArguments;.bsmCalls:I // field@0000 |
| 2422 | 002a20: 1231 |000c: const/4 v1, #int 3 // #3 |
| 2423 | 002a22: 7120 4100 0100 |000d: invoke-static {v1, v0}, LTestDynamicBootstrapArguments;.assertEquals:(II)V // method@0041 |
| 2424 | 002a28: 7100 4600 0000 |0010: invoke-static {}, LTestDynamicBootstrapArguments;.testCallSites:()V // method@0046 |
| 2425 | 002a2e: 6000 0000 |0013: sget v0, LTestDynamicBootstrapArguments;.bsmCalls:I // field@0000 |
| 2426 | 002a32: 7120 4100 0100 |0015: invoke-static {v1, v0}, LTestDynamicBootstrapArguments;.assertEquals:(II)V // method@0041 |
| 2427 | 002a38: 0e00 |0018: return-void |
| 2428 | catches : (none) |
| 2429 | positions : |
| 2430 | 0x0000 line=86 |
| 2431 | 0x0007 line=87 |
| 2432 | 0x000a line=88 |
| 2433 | 0x0010 line=89 |
| 2434 | 0x0013 line=90 |
| 2435 | 0x0018 line=91 |
| 2436 | locals : |
| 2437 | |
| 2438 | #5 : (in LTestDynamicBootstrapArguments;) |
| 2439 | name : 'testCallSites' |
| 2440 | type : '()V' |
| 2441 | access : 0x0008 (STATIC) |
| 2442 | code - |
| 2443 | registers : 3 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 2444 | ins : 0 |
| 2445 | outs : 3 |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 2446 | insns size : 55 16-bit code units |
| 2447 | 002a3c: |[002a3c] TestDynamicBootstrapArguments.testCallSites:()V |
| 2448 | 002a4c: 1a00 8b00 |0000: const-string v0, "One" // string@008b |
| 2449 | 002a50: 1801 182d 4454 fb21 0940 |0002: const-wide v1, #double 3.14159 // #400921fb54442d18 |
| 2450 | 002a5a: 7120 b900 2100 |0007: invoke-static {v1, v2}, Ljava/lang/Double;.valueOf:(D)Ljava/lang/Double; // method@00b9 |
| 2451 | 002a60: 0c01 |000a: move-result-object v1 |
| 2452 | 002a62: 1202 |000b: const/4 v2, #int 0 // #0 |
| 2453 | 002a64: fc30 0f00 0201 |000c: invoke-custom {v2, v0, v1}, call_site@000f |
| 2454 | 002a6a: 0a00 |000f: move-result v0 |
| 2455 | 002a6c: 7120 4100 0200 |0010: invoke-static {v2, v0}, LTestDynamicBootstrapArguments;.assertEquals:(II)V // method@0041 |
| 2456 | 002a72: 1a00 a200 |0013: const-string v0, "Two" // string@00a2 |
| 2457 | 002a76: 1801 6957 148b 0abf 0540 |0015: const-wide v1, #double 2.71828 // #4005bf0a8b145769 |
| 2458 | 002a80: 7120 b900 2100 |001a: invoke-static {v1, v2}, Ljava/lang/Double;.valueOf:(D)Ljava/lang/Double; // method@00b9 |
| 2459 | 002a86: 0c01 |001d: move-result-object v1 |
| 2460 | 002a88: 1212 |001e: const/4 v2, #int 1 // #1 |
| 2461 | 002a8a: fc30 1000 0201 |001f: invoke-custom {v2, v0, v1}, call_site@0010 |
| 2462 | 002a90: 0a00 |0022: move-result v0 |
| 2463 | 002a92: 7120 4100 0200 |0023: invoke-static {v2, v0}, LTestDynamicBootstrapArguments;.assertEquals:(II)V // method@0041 |
| 2464 | 002a98: 1a00 9f00 |0026: const-string v0, "Three" // string@009f |
| 2465 | 002a9c: 1601 0000 |0028: const-wide/16 v1, #int 0 // #0 |
| 2466 | 002aa0: 7120 b900 2100 |002a: invoke-static {v1, v2}, Ljava/lang/Double;.valueOf:(D)Ljava/lang/Double; // method@00b9 |
| 2467 | 002aa6: 0c01 |002d: move-result-object v1 |
| 2468 | 002aa8: 1222 |002e: const/4 v2, #int 2 // #2 |
| 2469 | 002aaa: fc30 1100 0201 |002f: invoke-custom {v2, v0, v1}, call_site@0011 |
| 2470 | 002ab0: 0a00 |0032: move-result v0 |
| 2471 | 002ab2: 7120 4100 0200 |0033: invoke-static {v2, v0}, LTestDynamicBootstrapArguments;.assertEquals:(II)V // method@0041 |
| 2472 | 002ab8: 0e00 |0036: return-void |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 2473 | catches : (none) |
| 2474 | positions : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 2475 | 0x0000 line=80 |
| 2476 | 0x0013 line=81 |
| 2477 | 0x0026 line=82 |
| 2478 | 0x0036 line=83 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 2479 | locals : |
| 2480 | |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 2481 | #6 : (in LTestDynamicBootstrapArguments;) |
| 2482 | name : 'testDynamic' |
| 2483 | type : '(ILjava/lang/String;Ljava/lang/Double;)I' |
| 2484 | access : 0x000a (PRIVATE STATIC) |
| 2485 | code - |
| 2486 | registers : 4 |
| 2487 | ins : 3 |
| 2488 | outs : 0 |
| 2489 | insns size : 5 16-bit code units |
| 2490 | 002944: |[002944] TestDynamicBootstrapArguments.testDynamic:(ILjava/lang/String;Ljava/lang/Double;)I |
| 2491 | 002954: 7100 4200 0000 |0000: invoke-static {}, LTestDynamicBootstrapArguments;.assertNotReached:()V // method@0042 |
| 2492 | 00295a: 1200 |0003: const/4 v0, #int 0 // #0 |
| 2493 | 00295c: 0f00 |0004: return v0 |
| 2494 | catches : (none) |
| 2495 | positions : |
| 2496 | 0x0000 line=66 |
| 2497 | 0x0003 line=67 |
| 2498 | locals : |
| 2499 | 0x0000 - 0x0005 reg=1 i I |
| 2500 | 0x0000 - 0x0005 reg=2 s Ljava/lang/String; |
| 2501 | 0x0000 - 0x0005 reg=3 d Ljava/lang/Double; |
| 2502 | |
| 2503 | Virtual methods - |
| 2504 | source_file_idx : 147 (TestDynamicBootstrapArguments.java) |
| 2505 | |
| 2506 | Class #8 header: |
| 2507 | class_idx : 12 |
| 2508 | access_flags : 0 (0x0000) |
| 2509 | superclass_idx : 9 |
| 2510 | interfaces_off : 0 (0x000000) |
| 2511 | source_file_idx : 148 |
| 2512 | annotations_off : 31020 (0x00792c) |
| 2513 | class_data_off : 29258 (0x00724a) |
| 2514 | static_fields_size : 1 |
| 2515 | instance_fields_size: 1 |
| 2516 | direct_methods_size : 18 |
| 2517 | virtual_methods_size: 1 |
| 2518 | |
| 2519 | Class #8 annotations: |
| 2520 | Annotations on class |
| 2521 | VISIBILITY_SYSTEM Ldalvik/annotation/MemberClasses; value={ LTestInvocationKinds$Widget; } |
| 2522 | Annotations on method #78 'getInstanceField' |
| 2523 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestInvocationKinds; name="lookupInstanceFieldGetter" } fieldOrMethodName="instance_field" parameterTypes={ LTestInvocationKinds; } returnType=D |
| 2524 | Annotations on method #80 'getStaticField' |
| 2525 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestInvocationKinds; name="lookupStaticFieldGetter" } fieldOrMethodName="static_field" parameterTypes={ } returnType=I |
| 2526 | Annotations on method #81 'lookupConstructor' |
| 2527 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 2528 | Annotations on method #82 'lookupInstanceFieldGetter' |
| 2529 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 2530 | Annotations on method #83 'lookupInstanceFieldSetter' |
| 2531 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 2532 | Annotations on method #84 'lookupStaticFieldGetter' |
| 2533 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 2534 | Annotations on method #85 'lookupStaticFieldSetter' |
| 2535 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 2536 | Annotations on method #86 'lookupVirtual' |
| 2537 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 2538 | Annotations on method #87 'makeWidget' |
| 2539 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestInvocationKinds; name="lookupConstructor" } fieldOrMethodName="unused" parameterTypes={ I } returnType=LTestInvocationKinds$Widget; |
| 2540 | Annotations on method #88 'maxIntegerValue' |
| 2541 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestInvocationKinds; name="lookupVirtual" } fieldOrMethodName="getMaxIntegerValue" parameterTypes={ LTestInvocationKinds; I I } returnType=I |
| 2542 | Annotations on method #89 'setInstanceField' |
| 2543 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestInvocationKinds; name="lookupInstanceFieldSetter" } fieldOrMethodName="instance_field" parameterTypes={ LTestInvocationKinds; D } returnType=V |
| 2544 | Annotations on method #90 'setStaticField' |
| 2545 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestInvocationKinds; name="lookupStaticFieldSetter" } fieldOrMethodName="static_field" parameterTypes={ I } returnType=V |
| 2546 | |
| 2547 | Class #8 - |
| 2548 | Class descriptor : 'LTestInvocationKinds;' |
| 2549 | Access flags : 0x0000 () |
| 2550 | Superclass : 'LTestBase;' |
| 2551 | Interfaces - |
| 2552 | Static fields - |
| 2553 | #0 : (in LTestInvocationKinds;) |
| 2554 | name : 'static_field' |
| 2555 | type : 'I' |
| 2556 | access : 0x000a (PRIVATE STATIC) |
| 2557 | Instance fields - |
| 2558 | #0 : (in LTestInvocationKinds;) |
| 2559 | name : 'instance_field' |
| 2560 | type : 'D' |
| 2561 | access : 0x0002 (PRIVATE) |
| 2562 | Direct methods - |
| 2563 | #0 : (in LTestInvocationKinds;) |
| 2564 | name : '<init>' |
| 2565 | type : '()V' |
| 2566 | access : 0x10000 (CONSTRUCTOR) |
| 2567 | code - |
| 2568 | registers : 1 |
| 2569 | ins : 1 |
| 2570 | outs : 1 |
| 2571 | insns size : 4 16-bit code units |
| 2572 | 002ca4: |[002ca4] TestInvocationKinds.<init>:()V |
| 2573 | 002cb4: 7010 3200 0000 |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032 |
| 2574 | 002cba: 0e00 |0003: return-void |
| 2575 | catches : (none) |
| 2576 | positions : |
| 2577 | 0x0000 line=25 |
| 2578 | locals : |
| 2579 | 0x0000 - 0x0004 reg=0 this LTestInvocationKinds; |
| 2580 | |
| 2581 | #1 : (in LTestInvocationKinds;) |
| 2582 | name : 'getInstanceField' |
| 2583 | type : '(LTestInvocationKinds;)D' |
| 2584 | access : 0x000a (PRIVATE STATIC) |
| 2585 | code - |
| 2586 | registers : 3 |
| 2587 | ins : 1 |
| 2588 | outs : 0 |
| 2589 | insns size : 6 16-bit code units |
| 2590 | 002af0: |[002af0] TestInvocationKinds.getInstanceField:(LTestInvocationKinds;)D |
| 2591 | 002b00: 7100 4d00 0000 |0000: invoke-static {}, LTestInvocationKinds;.assertNotReached:()V // method@004d |
| 2592 | 002b06: 1900 f87f |0003: const-wide/high16 v0, #long 9221120237041090560 // #7ff8 |
| 2593 | 002b0a: 1000 |0005: return-wide v0 |
| 2594 | catches : (none) |
| 2595 | positions : |
| 2596 | 0x0000 line=117 |
| 2597 | 0x0003 line=118 |
| 2598 | locals : |
| 2599 | 0x0000 - 0x0006 reg=2 instance LTestInvocationKinds; |
| 2600 | |
| 2601 | #2 : (in LTestInvocationKinds;) |
| 2602 | name : 'getStaticField' |
| 2603 | type : '()I' |
| 2604 | access : 0x000a (PRIVATE STATIC) |
| 2605 | code - |
| 2606 | registers : 1 |
| 2607 | ins : 0 |
| 2608 | outs : 0 |
| 2609 | insns size : 5 16-bit code units |
| 2610 | 002b28: |[002b28] TestInvocationKinds.getStaticField:()I |
| 2611 | 002b38: 7100 4d00 0000 |0000: invoke-static {}, LTestInvocationKinds;.assertNotReached:()V // method@004d |
| 2612 | 002b3e: 1200 |0003: const/4 v0, #int 0 // #0 |
| 2613 | 002b40: 0f00 |0004: return v0 |
| 2614 | catches : (none) |
| 2615 | positions : |
| 2616 | 0x0000 line=71 |
| 2617 | 0x0003 line=72 |
| 2618 | locals : |
| 2619 | |
| 2620 | #3 : (in LTestInvocationKinds;) |
| 2621 | name : 'lookupConstructor' |
| 2622 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;' |
| 2623 | access : 0x000a (PRIVATE STATIC) |
| 2624 | code - |
| 2625 | registers : 7 |
| 2626 | ins : 3 |
| 2627 | outs : 3 |
| 2628 | insns size : 20 16-bit code units |
| 2629 | 002b60: |[002b60] TestInvocationKinds.lookupConstructor:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; |
| 2630 | 002b70: 6e10 e500 0600 |0000: invoke-virtual {v6}, Ljava/lang/invoke/MethodType;.returnType:()Ljava/lang/Class; // method@00e5 |
| 2631 | 002b76: 0c00 |0003: move-result-object v0 |
| 2632 | 002b78: 6201 1400 |0004: sget-object v1, Ljava/lang/Void;.TYPE:Ljava/lang/Class; // field@0014 |
| 2633 | 002b7c: 6e20 df00 1600 |0006: invoke-virtual {v6, v1}, Ljava/lang/invoke/MethodType;.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType; // method@00df |
| 2634 | 002b82: 0c01 |0009: move-result-object v1 |
| 2635 | 002b84: 6e30 d500 0401 |000a: invoke-virtual {v4, v0, v1}, Ljava/lang/invoke/MethodHandles$Lookup;.findConstructor:(Ljava/lang/Class;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d5 |
| 2636 | 002b8a: 0c02 |000d: move-result-object v2 |
| 2637 | 002b8c: 2203 3400 |000e: new-instance v3, Ljava/lang/invoke/ConstantCallSite; // type@0034 |
| 2638 | 002b90: 7020 d200 2300 |0010: invoke-direct {v3, v2}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2 |
| 2639 | 002b96: 1103 |0013: return-object v3 |
| 2640 | catches : (none) |
| 2641 | positions : |
| 2642 | 0x0000 line=183 |
| 2643 | 0x0004 line=184 |
| 2644 | 0x000a line=185 |
| 2645 | 0x000e line=186 |
| 2646 | locals : |
| 2647 | 0x0004 - 0x0014 reg=0 cls Ljava/lang/Class; Ljava/lang/Class<*>; |
| 2648 | 0x000a - 0x0014 reg=1 constructorMethodType Ljava/lang/invoke/MethodType; |
| 2649 | 0x000e - 0x0014 reg=2 mh Ljava/lang/invoke/MethodHandle; |
| 2650 | 0x0000 - 0x0014 reg=4 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 2651 | 0x0000 - 0x0014 reg=5 name Ljava/lang/String; |
| 2652 | 0x0000 - 0x0014 reg=6 methodType Ljava/lang/invoke/MethodType; |
| 2653 | |
| 2654 | #4 : (in LTestInvocationKinds;) |
| 2655 | name : 'lookupInstanceFieldGetter' |
| 2656 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;' |
| 2657 | access : 0x0008 (STATIC) |
| 2658 | code - |
| 2659 | registers : 5 |
| 2660 | ins : 3 |
| 2661 | outs : 4 |
| 2662 | insns size : 20 16-bit code units |
| 2663 | 002b98: |[002b98] TestInvocationKinds.lookupInstanceFieldGetter:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; |
| 2664 | 002ba8: 0000 |0000: nop // spacer |
| 2665 | 002baa: 1200 |0001: const/4 v0, #int 0 // #0 |
| 2666 | 002bac: 6e20 e400 0400 |0002: invoke-virtual {v4, v0}, Ljava/lang/invoke/MethodType;.parameterType:(I)Ljava/lang/Class; // method@00e4 |
| 2667 | 002bb2: 0c00 |0005: move-result-object v0 |
| 2668 | 002bb4: 6e10 e500 0400 |0006: invoke-virtual {v4}, Ljava/lang/invoke/MethodType;.returnType:()Ljava/lang/Class; // method@00e5 |
| 2669 | 002bba: 0c01 |0009: move-result-object v1 |
| 2670 | 002bbc: 6e40 d600 0213 |000a: invoke-virtual {v2, v0, v3, v1}, Ljava/lang/invoke/MethodHandles$Lookup;.findGetter:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle; // method@00d6 |
| 2671 | 002bc2: 0c00 |000d: move-result-object v0 |
| 2672 | 002bc4: 2201 3400 |000e: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034 |
| 2673 | 002bc8: 7020 d200 0100 |0010: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2 |
| 2674 | 002bce: 1101 |0013: return-object v1 |
| 2675 | catches : (none) |
| 2676 | positions : |
| 2677 | 0x0000 line=101 |
| 2678 | 0x0001 line=102 |
| 2679 | 0x000e line=103 |
| 2680 | locals : |
| 2681 | 0x000e - 0x0014 reg=0 mh Ljava/lang/invoke/MethodHandle; |
| 2682 | 0x0000 - 0x0014 reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 2683 | 0x0000 - 0x0014 reg=3 name Ljava/lang/String; |
| 2684 | 0x0000 - 0x0014 reg=4 methodType Ljava/lang/invoke/MethodType; |
| 2685 | |
| 2686 | #5 : (in LTestInvocationKinds;) |
| 2687 | name : 'lookupInstanceFieldSetter' |
| 2688 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;' |
| 2689 | access : 0x0008 (STATIC) |
| 2690 | code - |
| 2691 | registers : 5 |
| 2692 | ins : 3 |
| 2693 | outs : 4 |
| 2694 | insns size : 21 16-bit code units |
| 2695 | 002bd0: |[002bd0] TestInvocationKinds.lookupInstanceFieldSetter:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; |
| 2696 | 002be0: 0000 |0000: nop // spacer |
| 2697 | 002be2: 1200 |0001: const/4 v0, #int 0 // #0 |
| 2698 | 002be4: 6e20 e400 0400 |0002: invoke-virtual {v4, v0}, Ljava/lang/invoke/MethodType;.parameterType:(I)Ljava/lang/Class; // method@00e4 |
| 2699 | 002bea: 0c00 |0005: move-result-object v0 |
| 2700 | 002bec: 1211 |0006: const/4 v1, #int 1 // #1 |
| 2701 | 002bee: 6e20 e400 1400 |0007: invoke-virtual {v4, v1}, Ljava/lang/invoke/MethodType;.parameterType:(I)Ljava/lang/Class; // method@00e4 |
| 2702 | 002bf4: 0c01 |000a: move-result-object v1 |
| 2703 | 002bf6: 6e40 d700 0213 |000b: invoke-virtual {v2, v0, v3, v1}, Ljava/lang/invoke/MethodHandles$Lookup;.findSetter:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle; // method@00d7 |
| 2704 | 002bfc: 0c00 |000e: move-result-object v0 |
| 2705 | 002bfe: 2201 3400 |000f: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034 |
| 2706 | 002c02: 7020 d200 0100 |0011: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2 |
| 2707 | 002c08: 1101 |0014: return-object v1 |
| 2708 | catches : (none) |
| 2709 | positions : |
| 2710 | 0x0000 line=78 |
| 2711 | 0x0001 line=79 |
| 2712 | 0x000f line=80 |
| 2713 | locals : |
| 2714 | 0x000f - 0x0015 reg=0 mh Ljava/lang/invoke/MethodHandle; |
| 2715 | 0x0000 - 0x0015 reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 2716 | 0x0000 - 0x0015 reg=3 name Ljava/lang/String; |
| 2717 | 0x0000 - 0x0015 reg=4 methodType Ljava/lang/invoke/MethodType; |
| 2718 | |
| 2719 | #6 : (in LTestInvocationKinds;) |
| 2720 | name : 'lookupStaticFieldGetter' |
| 2721 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;' |
| 2722 | access : 0x0008 (STATIC) |
| 2723 | code - |
| 2724 | registers : 5 |
| 2725 | ins : 3 |
| 2726 | outs : 4 |
| 2727 | insns size : 16 16-bit code units |
| 2728 | 002c0c: |[002c0c] TestInvocationKinds.lookupStaticFieldGetter:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; |
| 2729 | 002c1c: 1c00 0c00 |0000: const-class v0, LTestInvocationKinds; // type@000c |
| 2730 | 002c20: 6e10 e500 0400 |0002: invoke-virtual {v4}, Ljava/lang/invoke/MethodType;.returnType:()Ljava/lang/Class; // method@00e5 |
| 2731 | 002c26: 0c01 |0005: move-result-object v1 |
| 2732 | 002c28: 6e40 d900 0213 |0006: invoke-virtual {v2, v0, v3, v1}, Ljava/lang/invoke/MethodHandles$Lookup;.findStaticGetter:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle; // method@00d9 |
| 2733 | 002c2e: 0c00 |0009: move-result-object v0 |
| 2734 | 002c30: 2201 3400 |000a: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034 |
| 2735 | 002c34: 7020 d200 0100 |000c: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2 |
| 2736 | 002c3a: 1101 |000f: return-object v1 |
| 2737 | catches : (none) |
| 2738 | positions : |
| 2739 | 0x0000 line=32 |
| 2740 | 0x0002 line=33 |
| 2741 | 0x000a line=34 |
| 2742 | locals : |
| 2743 | 0x000a - 0x0010 reg=0 mh Ljava/lang/invoke/MethodHandle; |
| 2744 | 0x0000 - 0x0010 reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 2745 | 0x0000 - 0x0010 reg=3 name Ljava/lang/String; |
| 2746 | 0x0000 - 0x0010 reg=4 methodType Ljava/lang/invoke/MethodType; |
| 2747 | |
| 2748 | #7 : (in LTestInvocationKinds;) |
| 2749 | name : 'lookupStaticFieldSetter' |
| 2750 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;' |
| 2751 | access : 0x0008 (STATIC) |
| 2752 | code - |
| 2753 | registers : 5 |
| 2754 | ins : 3 |
| 2755 | outs : 4 |
| 2756 | insns size : 17 16-bit code units |
| 2757 | 002c3c: |[002c3c] TestInvocationKinds.lookupStaticFieldSetter:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; |
| 2758 | 002c4c: 1c00 0c00 |0000: const-class v0, LTestInvocationKinds; // type@000c |
| 2759 | 002c50: 1201 |0002: const/4 v1, #int 0 // #0 |
| 2760 | 002c52: 6e20 e400 1400 |0003: invoke-virtual {v4, v1}, Ljava/lang/invoke/MethodType;.parameterType:(I)Ljava/lang/Class; // method@00e4 |
| 2761 | 002c58: 0c01 |0006: move-result-object v1 |
| 2762 | 002c5a: 6e40 da00 0213 |0007: invoke-virtual {v2, v0, v3, v1}, Ljava/lang/invoke/MethodHandles$Lookup;.findStaticSetter:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle; // method@00da |
| 2763 | 002c60: 0c00 |000a: move-result-object v0 |
| 2764 | 002c62: 2201 3400 |000b: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034 |
| 2765 | 002c66: 7020 d200 0100 |000d: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2 |
| 2766 | 002c6c: 1101 |0010: return-object v1 |
| 2767 | catches : (none) |
| 2768 | positions : |
| 2769 | 0x0000 line=54 |
| 2770 | 0x0002 line=56 |
| 2771 | 0x0007 line=55 |
| 2772 | 0x000b line=57 |
| 2773 | locals : |
| 2774 | 0x000b - 0x0011 reg=0 mh Ljava/lang/invoke/MethodHandle; |
| 2775 | 0x0000 - 0x0011 reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 2776 | 0x0000 - 0x0011 reg=3 name Ljava/lang/String; |
| 2777 | 0x0000 - 0x0011 reg=4 methodType Ljava/lang/invoke/MethodType; |
| 2778 | |
| 2779 | #8 : (in LTestInvocationKinds;) |
| 2780 | name : 'lookupVirtual' |
| 2781 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;' |
| 2782 | access : 0x000a (PRIVATE STATIC) |
| 2783 | code - |
| 2784 | registers : 6 |
| 2785 | ins : 3 |
| 2786 | outs : 4 |
| 2787 | insns size : 18 16-bit code units |
| 2788 | 002c70: |[002c70] TestInvocationKinds.lookupVirtual:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; |
| 2789 | 002c80: 1200 |0000: const/4 v0, #int 0 // #0 |
| 2790 | 002c82: 1211 |0001: const/4 v1, #int 1 // #1 |
| 2791 | 002c84: 6e30 e000 0501 |0002: invoke-virtual {v5, v0, v1}, Ljava/lang/invoke/MethodType;.dropParameterTypes:(II)Ljava/lang/invoke/MethodType; // method@00e0 |
| 2792 | 002c8a: 0c00 |0005: move-result-object v0 |
| 2793 | 002c8c: 1c01 0c00 |0006: const-class v1, LTestInvocationKinds; // type@000c |
| 2794 | 002c90: 6e40 db00 1304 |0008: invoke-virtual {v3, v1, v4, v0}, Ljava/lang/invoke/MethodHandles$Lookup;.findVirtual:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00db |
| 2795 | 002c96: 0c01 |000b: move-result-object v1 |
| 2796 | 002c98: 2202 3400 |000c: new-instance v2, Ljava/lang/invoke/ConstantCallSite; // type@0034 |
| 2797 | 002c9c: 7020 d200 1200 |000e: invoke-direct {v2, v1}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2 |
| 2798 | 002ca2: 1102 |0011: return-object v2 |
| 2799 | catches : (none) |
| 2800 | positions : |
| 2801 | 0x0000 line=146 |
| 2802 | 0x0006 line=147 |
| 2803 | 0x000c line=148 |
| 2804 | locals : |
| 2805 | 0x0006 - 0x0012 reg=0 mt Ljava/lang/invoke/MethodType; |
| 2806 | 0x000c - 0x0012 reg=1 mh Ljava/lang/invoke/MethodHandle; |
| 2807 | 0x0000 - 0x0012 reg=3 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 2808 | 0x0000 - 0x0012 reg=4 name Ljava/lang/String; |
| 2809 | 0x0000 - 0x0012 reg=5 methodType Ljava/lang/invoke/MethodType; |
| 2810 | |
| 2811 | #9 : (in LTestInvocationKinds;) |
| 2812 | name : 'makeWidget' |
| 2813 | type : '(I)LTestInvocationKinds$Widget;' |
| 2814 | access : 0x000a (PRIVATE STATIC) |
| 2815 | code - |
| 2816 | registers : 2 |
| 2817 | ins : 1 |
| 2818 | outs : 0 |
| 2819 | insns size : 5 16-bit code units |
| 2820 | 002ad4: |[002ad4] TestInvocationKinds.makeWidget:(I)LTestInvocationKinds$Widget; |
| 2821 | 002ae4: 7100 4d00 0000 |0000: invoke-static {}, LTestInvocationKinds;.assertNotReached:()V // method@004d |
| 2822 | 002aea: 1200 |0003: const/4 v0, #int 0 // #0 |
| 2823 | 002aec: 1100 |0004: return-object v0 |
| 2824 | catches : (none) |
| 2825 | positions : |
| 2826 | 0x0000 line=200 |
| 2827 | 0x0003 line=201 |
| 2828 | locals : |
| 2829 | 0x0000 - 0x0005 reg=1 v I |
| 2830 | |
| 2831 | #10 : (in LTestInvocationKinds;) |
| 2832 | name : 'maxIntegerValue' |
| 2833 | type : '(LTestInvocationKinds;II)I' |
| 2834 | access : 0x000a (PRIVATE STATIC) |
| 2835 | code - |
| 2836 | registers : 4 |
| 2837 | ins : 3 |
| 2838 | outs : 0 |
| 2839 | insns size : 5 16-bit code units |
| 2840 | 002b44: |[002b44] TestInvocationKinds.maxIntegerValue:(LTestInvocationKinds;II)I |
| 2841 | 002b54: 7100 4d00 0000 |0000: invoke-static {}, LTestInvocationKinds;.assertNotReached:()V // method@004d |
| 2842 | 002b5a: 1200 |0003: const/4 v0, #int 0 // #0 |
| 2843 | 002b5c: 0f00 |0004: return v0 |
| 2844 | catches : (none) |
| 2845 | positions : |
| 2846 | 0x0000 line=159 |
| 2847 | 0x0003 line=160 |
| 2848 | locals : |
| 2849 | 0x0000 - 0x0005 reg=1 receiver LTestInvocationKinds; |
| 2850 | 0x0000 - 0x0005 reg=2 x I |
| 2851 | 0x0000 - 0x0005 reg=3 y I |
| 2852 | |
| 2853 | #11 : (in LTestInvocationKinds;) |
| 2854 | name : 'setInstanceField' |
| 2855 | type : '(LTestInvocationKinds;D)V' |
| 2856 | access : 0x000a (PRIVATE STATIC) |
| 2857 | code - |
| 2858 | registers : 5 |
| 2859 | ins : 3 |
| 2860 | outs : 0 |
| 2861 | insns size : 8 16-bit code units |
| 2862 | 002cbc: |[002cbc] TestInvocationKinds.setInstanceField:(LTestInvocationKinds;D)V |
| 2863 | 002ccc: 7100 4d00 0000 |0000: invoke-static {}, LTestInvocationKinds;.assertNotReached:()V // method@004d |
| 2864 | 002cd2: 1900 f87f |0003: const-wide/high16 v0, #long 9221120237041090560 // #7ff8 |
| 2865 | 002cd6: 5a20 0200 |0005: iput-wide v0, v2, LTestInvocationKinds;.instance_field:D // field@0002 |
| 2866 | 002cda: 0e00 |0007: return-void |
| 2867 | catches : (none) |
| 2868 | positions : |
| 2869 | 0x0000 line=94 |
| 2870 | 0x0003 line=95 |
| 2871 | 0x0007 line=96 |
| 2872 | locals : |
| 2873 | 0x0000 - 0x0008 reg=2 instance LTestInvocationKinds; |
| 2874 | 0x0000 - 0x0008 reg=3 value D |
| 2875 | |
| 2876 | #12 : (in LTestInvocationKinds;) |
| 2877 | name : 'setStaticField' |
| 2878 | type : '(I)V' |
| 2879 | access : 0x000a (PRIVATE STATIC) |
| 2880 | code - |
| 2881 | registers : 1 |
| 2882 | ins : 1 |
| 2883 | outs : 0 |
| 2884 | insns size : 4 16-bit code units |
| 2885 | 002cdc: |[002cdc] TestInvocationKinds.setStaticField:(I)V |
| 2886 | 002cec: 7100 4d00 0000 |0000: invoke-static {}, LTestInvocationKinds;.assertNotReached:()V // method@004d |
| 2887 | 002cf2: 0e00 |0003: return-void |
| 2888 | catches : (none) |
| 2889 | positions : |
| 2890 | 0x0000 line=48 |
| 2891 | 0x0003 line=49 |
| 2892 | locals : |
| 2893 | 0x0000 - 0x0004 reg=0 value I |
| 2894 | |
| 2895 | #13 : (in LTestInvocationKinds;) |
| 2896 | name : 'test' |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 2897 | type : '()V' |
| 2898 | access : 0x0009 (PUBLIC STATIC) |
| 2899 | code - |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 2900 | registers : 2 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 2901 | ins : 0 |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 2902 | outs : 2 |
| 2903 | insns size : 24 16-bit code units |
| 2904 | 002cf4: |[002cf4] TestInvocationKinds.test:()V |
| 2905 | 002d04: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 2906 | 002d08: 1c01 0c00 |0002: const-class v1, LTestInvocationKinds; // type@000c |
| 2907 | 002d0c: 6e10 b700 0100 |0004: invoke-virtual {v1}, Ljava/lang/Class;.getName:()Ljava/lang/String; // method@00b7 |
| 2908 | 002d12: 0c01 |0007: move-result-object v1 |
| 2909 | 002d14: 6e20 b300 1000 |0008: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 2910 | 002d1a: 7100 5f00 0000 |000b: invoke-static {}, LTestInvocationKinds;.testStaticFieldAccessors:()V // method@005f |
| 2911 | 002d20: 7100 5d00 0000 |000e: invoke-static {}, LTestInvocationKinds;.testInstanceFieldAccessors:()V // method@005d |
| 2912 | 002d26: 7100 5e00 0000 |0011: invoke-static {}, LTestInvocationKinds;.testInvokeVirtual:()V // method@005e |
| 2913 | 002d2c: 7100 5c00 0000 |0014: invoke-static {}, LTestInvocationKinds;.testConstructor:()V // method@005c |
| 2914 | 002d32: 0e00 |0017: return-void |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 2915 | catches : (none) |
| 2916 | positions : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 2917 | 0x0000 line=212 |
| 2918 | 0x000b line=213 |
| 2919 | 0x000e line=214 |
| 2920 | 0x0011 line=215 |
| 2921 | 0x0014 line=216 |
| 2922 | 0x0017 line=217 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 2923 | locals : |
| 2924 | |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 2925 | #14 : (in LTestInvocationKinds;) |
| 2926 | name : 'testConstructor' |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 2927 | type : '()V' |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 2928 | access : 0x0008 (STATIC) |
| 2929 | code - |
| 2930 | registers : 3 |
| 2931 | ins : 0 |
| 2932 | outs : 2 |
| 2933 | insns size : 31 16-bit code units |
| 2934 | 002d34: |[002d34] TestInvocationKinds.testConstructor:()V |
| 2935 | 002d44: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 2936 | 002d48: 1a01 b601 |0002: const-string v1, "testConstructor => " // string@01b6 |
| 2937 | 002d4c: 6e20 b000 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 2938 | 002d52: 1230 |0007: const/4 v0, #int 3 // #3 |
| 2939 | 002d54: fc10 1200 0000 |0008: invoke-custom {v0}, call_site@0012 |
| 2940 | 002d5a: 0c00 |000b: move-result-object v0 |
| 2941 | 002d5c: 1c01 0b00 |000c: const-class v1, LTestInvocationKinds$Widget; // type@000b |
| 2942 | 002d60: 6e10 c000 0000 |000e: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 2943 | 002d66: 0c02 |0011: move-result-object v2 |
| 2944 | 002d68: 7120 4c00 2100 |0012: invoke-static {v1, v2}, LTestInvocationKinds;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@004c |
| 2945 | 002d6e: 6201 1300 |0015: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 2946 | 002d72: 6e10 c000 0000 |0017: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 2947 | 002d78: 0c02 |001a: move-result-object v2 |
| 2948 | 002d7a: 6e20 b200 2100 |001b: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2 |
| 2949 | 002d80: 0e00 |001e: return-void |
| 2950 | catches : (none) |
| 2951 | positions : |
| 2952 | 0x0000 line=205 |
| 2953 | 0x0007 line=206 |
| 2954 | 0x000c line=207 |
| 2955 | 0x0015 line=208 |
| 2956 | 0x001e line=209 |
| 2957 | locals : |
| 2958 | 0x000c - 0x001f reg=0 receiver LTestInvocationKinds$Widget; |
| 2959 | |
| 2960 | #15 : (in LTestInvocationKinds;) |
| 2961 | name : 'testInstanceFieldAccessors' |
| 2962 | type : '()V' |
| 2963 | access : 0x000a (PRIVATE STATIC) |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 2964 | code - |
| 2965 | registers : 5 |
| 2966 | ins : 0 |
| 2967 | outs : 4 |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 2968 | insns size : 44 16-bit code units |
| 2969 | 002d84: |[002d84] TestInvocationKinds.testInstanceFieldAccessors:()V |
| 2970 | 002d94: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 2971 | 002d98: 1a01 b801 |0002: const-string v1, "testInstanceFieldAccessors" // string@01b8 |
| 2972 | 002d9c: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 2973 | 002da2: 2200 0c00 |0007: new-instance v0, LTestInvocationKinds; // type@000c |
| 2974 | 002da6: 7010 4900 0000 |0009: invoke-direct {v0}, LTestInvocationKinds;.<init>:()V // method@0049 |
| 2975 | 002dac: 1601 0100 |000c: const-wide/16 v1, #int 1 // #1 |
| 2976 | 002db0: 5a01 0200 |000e: iput-wide v1, v0, LTestInvocationKinds;.instance_field:D // field@0002 |
| 2977 | 002db4: 1801 182d 4454 fb21 0940 |0010: const-wide v1, #double 3.14159 // #400921fb54442d18 |
| 2978 | 002dbe: fc30 1300 1002 |0015: invoke-custom {v0, v1, v2}, call_site@0013 |
| 2979 | 002dc4: 5303 0200 |0018: iget-wide v3, v0, LTestInvocationKinds;.instance_field:D // field@0002 |
| 2980 | 002dc8: 7140 4a00 2143 |001a: invoke-static {v1, v2, v3, v4}, LTestInvocationKinds;.assertEquals:(DD)V // method@004a |
| 2981 | 002dce: 1801 6957 148b 0abf 0540 |001d: const-wide v1, #double 2.71828 // #4005bf0a8b145769 |
| 2982 | 002dd8: 5a01 0200 |0022: iput-wide v1, v0, LTestInvocationKinds;.instance_field:D // field@0002 |
| 2983 | 002ddc: fc10 1400 0000 |0024: invoke-custom {v0}, call_site@0014 |
| 2984 | 002de2: 0b03 |0027: move-result-wide v3 |
| 2985 | 002de4: 7140 4a00 2143 |0028: invoke-static {v1, v2, v3, v4}, LTestInvocationKinds;.assertEquals:(DD)V // method@004a |
| 2986 | 002dea: 0e00 |002b: return-void |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 2987 | catches : (none) |
| 2988 | positions : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 2989 | 0x0000 line=133 |
| 2990 | 0x0007 line=134 |
| 2991 | 0x000c line=135 |
| 2992 | 0x0010 line=136 |
| 2993 | 0x0018 line=137 |
| 2994 | 0x001d line=138 |
| 2995 | 0x0024 line=139 |
| 2996 | 0x002b line=140 |
| 2997 | locals : |
| 2998 | 0x000c - 0x002c reg=0 instance LTestInvocationKinds; |
| 2999 | |
| 3000 | #16 : (in LTestInvocationKinds;) |
| 3001 | name : 'testInvokeVirtual' |
| 3002 | type : '()V' |
| 3003 | access : 0x0008 (STATIC) |
| 3004 | code - |
| 3005 | registers : 3 |
| 3006 | ins : 0 |
| 3007 | outs : 3 |
| 3008 | insns size : 25 16-bit code units |
| 3009 | 002dec: |[002dec] TestInvocationKinds.testInvokeVirtual:()V |
| 3010 | 002dfc: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 3011 | 002e00: 1a01 ba01 |0002: const-string v1, "testInvokeVirtual => max(77, -3) = " // string@01ba |
| 3012 | 002e04: 6e20 b000 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 3013 | 002e0a: 2200 0c00 |0007: new-instance v0, LTestInvocationKinds; // type@000c |
| 3014 | 002e0e: 7010 4900 0000 |0009: invoke-direct {v0}, LTestInvocationKinds;.<init>:()V // method@0049 |
| 3015 | 002e14: 1301 4d00 |000c: const/16 v1, #int 77 // #4d |
| 3016 | 002e18: 12d2 |000e: const/4 v2, #int -3 // #fd |
| 3017 | 002e1a: fc30 1500 1002 |000f: invoke-custom {v0, v1, v2}, call_site@0015 |
| 3018 | 002e20: 0a01 |0012: move-result v1 |
| 3019 | 002e22: 6202 1300 |0013: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 3020 | 002e26: 6e20 b100 1200 |0015: invoke-virtual {v2, v1}, Ljava/io/PrintStream;.println:(I)V // method@00b1 |
| 3021 | 002e2c: 0e00 |0018: return-void |
| 3022 | catches : (none) |
| 3023 | positions : |
| 3024 | 0x0000 line=168 |
| 3025 | 0x0007 line=169 |
| 3026 | 0x000c line=170 |
| 3027 | 0x0013 line=171 |
| 3028 | 0x0018 line=172 |
| 3029 | locals : |
| 3030 | 0x000c - 0x0019 reg=0 receiver LTestInvocationKinds; |
| 3031 | 0x0013 - 0x0019 reg=1 result I |
| 3032 | |
| 3033 | #17 : (in LTestInvocationKinds;) |
| 3034 | name : 'testStaticFieldAccessors' |
| 3035 | type : '()V' |
| 3036 | access : 0x000a (PRIVATE STATIC) |
| 3037 | code - |
| 3038 | registers : 2 |
| 3039 | ins : 0 |
| 3040 | outs : 2 |
| 3041 | insns size : 47 16-bit code units |
| 3042 | 002e30: |[002e30] TestInvocationKinds.testStaticFieldAccessors:()V |
| 3043 | 002e40: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 3044 | 002e44: 1a01 bb01 |0002: const-string v1, "testStaticFieldAccessors" // string@01bb |
| 3045 | 002e48: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 3046 | 002e4e: 1230 |0007: const/4 v0, #int 3 // #3 |
| 3047 | 002e50: fc10 1600 0000 |0008: invoke-custom {v0}, call_site@0016 |
| 3048 | 002e56: 6001 0300 |000b: sget v1, LTestInvocationKinds;.static_field:I // field@0003 |
| 3049 | 002e5a: 7120 4b00 0100 |000d: invoke-static {v1, v0}, LTestInvocationKinds;.assertEquals:(II)V // method@004b |
| 3050 | 002e60: 1240 |0010: const/4 v0, #int 4 // #4 |
| 3051 | 002e62: fc10 1700 0000 |0011: invoke-custom {v0}, call_site@0017 |
| 3052 | 002e68: 6001 0300 |0014: sget v1, LTestInvocationKinds;.static_field:I // field@0003 |
| 3053 | 002e6c: 7120 4b00 0100 |0016: invoke-static {v1, v0}, LTestInvocationKinds;.assertEquals:(II)V // method@004b |
| 3054 | 002e72: 6000 0300 |0019: sget v0, LTestInvocationKinds;.static_field:I // field@0003 |
| 3055 | 002e76: fc00 1800 0000 |001b: invoke-custom {}, call_site@0018 |
| 3056 | 002e7c: 0a01 |001e: move-result v1 |
| 3057 | 002e7e: 7120 4b00 1000 |001f: invoke-static {v0, v1}, LTestInvocationKinds;.assertEquals:(II)V // method@004b |
| 3058 | 002e84: 1400 ffff ff7f |0022: const v0, #float nan // #7fffffff |
| 3059 | 002e8a: 6700 0300 |0025: sput v0, LTestInvocationKinds;.static_field:I // field@0003 |
| 3060 | 002e8e: fc00 1900 0000 |0027: invoke-custom {}, call_site@0019 |
| 3061 | 002e94: 0a01 |002a: move-result v1 |
| 3062 | 002e96: 7120 4b00 1000 |002b: invoke-static {v0, v1}, LTestInvocationKinds;.assertEquals:(II)V // method@004b |
| 3063 | 002e9c: 0e00 |002e: return-void |
| 3064 | catches : (none) |
| 3065 | positions : |
| 3066 | 0x0000 line=122 |
| 3067 | 0x0007 line=123 |
| 3068 | 0x000b line=124 |
| 3069 | 0x0010 line=125 |
| 3070 | 0x0014 line=126 |
| 3071 | 0x0019 line=127 |
| 3072 | 0x0022 line=128 |
| 3073 | 0x0027 line=129 |
| 3074 | 0x002e line=130 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 3075 | locals : |
| 3076 | |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 3077 | Virtual methods - |
| 3078 | #0 : (in LTestInvocationKinds;) |
| 3079 | name : 'getMaxIntegerValue' |
| 3080 | type : '(II)I' |
| 3081 | access : 0x0001 (PUBLIC) |
| 3082 | code - |
| 3083 | registers : 4 |
| 3084 | ins : 3 |
| 3085 | outs : 0 |
| 3086 | insns size : 6 16-bit code units |
| 3087 | 002b0c: |[002b0c] TestInvocationKinds.getMaxIntegerValue:(II)I |
| 3088 | 002b1c: 3732 0400 |0000: if-le v2, v3, 0004 // +0004 |
| 3089 | 002b20: 0120 |0002: move v0, v2 |
| 3090 | 002b22: 2802 |0003: goto 0005 // +0002 |
| 3091 | 002b24: 0130 |0004: move v0, v3 |
| 3092 | 002b26: 0f00 |0005: return v0 |
| 3093 | catches : (none) |
| 3094 | positions : |
| 3095 | 0x0000 line=164 |
| 3096 | locals : |
| 3097 | 0x0000 - 0x0006 reg=1 this LTestInvocationKinds; |
| 3098 | 0x0000 - 0x0006 reg=2 x I |
| 3099 | 0x0000 - 0x0006 reg=3 y I |
| 3100 | |
| 3101 | source_file_idx : 148 (TestInvocationKinds.java) |
| 3102 | |
| 3103 | Class #9 header: |
| 3104 | class_idx : 14 |
| 3105 | access_flags : 1 (0x0001) |
| 3106 | superclass_idx : 9 |
| 3107 | interfaces_off : 18256 (0x004750) |
| 3108 | source_file_idx : 149 |
| 3109 | annotations_off : 31132 (0x00799c) |
| 3110 | class_data_off : 29344 (0x0072a0) |
| 3111 | static_fields_size : 7 |
| 3112 | instance_fields_size: 0 |
| 3113 | direct_methods_size : 8 |
| 3114 | virtual_methods_size: 1 |
| 3115 | |
| 3116 | Class #9 annotations: |
| 3117 | Annotations on field #10 'threadIndex' |
| 3118 | VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "Ljava/lang/ThreadLocal<" "Ljava/lang/Integer;" ">;" } |
| 3119 | Annotations on method #106 'linkerMethod' |
| 3120 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 3121 | Annotations on method #109 'setCalled' |
| 3122 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestInvokeCustomWithConcurrentThreads; name="linkerMethod" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; } } fieldOrMethodName="setCalled" parameterTypes={ I } returnType=I |
| 3123 | Annotations on method #110 'test' |
| 3124 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 3125 | |
| 3126 | Class #9 - |
| 3127 | Class descriptor : 'LTestInvokeCustomWithConcurrentThreads;' |
| 3128 | Access flags : 0x0001 (PUBLIC) |
| 3129 | Superclass : 'LTestBase;' |
| 3130 | Interfaces - |
| 3131 | #0 : 'Ljava/lang/Runnable;' |
| 3132 | Static fields - |
| 3133 | #0 : (in LTestInvokeCustomWithConcurrentThreads;) |
| 3134 | name : 'NUMBER_OF_THREADS' |
| 3135 | type : 'I' |
| 3136 | access : 0x001a (PRIVATE STATIC FINAL) |
| 3137 | value : 16 |
| 3138 | #1 : (in LTestInvokeCustomWithConcurrentThreads;) |
| 3139 | name : 'barrier' |
| 3140 | type : 'Ljava/util/concurrent/CyclicBarrier;' |
| 3141 | access : 0x001a (PRIVATE STATIC FINAL) |
| 3142 | #2 : (in LTestInvokeCustomWithConcurrentThreads;) |
| 3143 | name : 'called' |
| 3144 | type : '[Ljava/util/concurrent/atomic/AtomicInteger;' |
| 3145 | access : 0x001a (PRIVATE STATIC FINAL) |
| 3146 | #3 : (in LTestInvokeCustomWithConcurrentThreads;) |
| 3147 | name : 'instantiated' |
| 3148 | type : '[Ljava/lang/invoke/CallSite;' |
| 3149 | access : 0x001a (PRIVATE STATIC FINAL) |
| 3150 | #4 : (in LTestInvokeCustomWithConcurrentThreads;) |
| 3151 | name : 'nextIndex' |
| 3152 | type : 'Ljava/util/concurrent/atomic/AtomicInteger;' |
| 3153 | access : 0x001a (PRIVATE STATIC FINAL) |
| 3154 | #5 : (in LTestInvokeCustomWithConcurrentThreads;) |
| 3155 | name : 'targetted' |
| 3156 | type : '[Ljava/util/concurrent/atomic/AtomicInteger;' |
| 3157 | access : 0x001a (PRIVATE STATIC FINAL) |
| 3158 | #6 : (in LTestInvokeCustomWithConcurrentThreads;) |
| 3159 | name : 'threadIndex' |
| 3160 | type : 'Ljava/lang/ThreadLocal;' |
| 3161 | access : 0x001a (PRIVATE STATIC FINAL) |
| 3162 | Instance fields - |
| 3163 | Direct methods - |
| 3164 | #0 : (in LTestInvokeCustomWithConcurrentThreads;) |
| 3165 | name : '<clinit>' |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 3166 | type : '()V' |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 3167 | access : 0x10008 (STATIC CONSTRUCTOR) |
| 3168 | code - |
| 3169 | registers : 2 |
| 3170 | ins : 0 |
| 3171 | outs : 2 |
| 3172 | insns size : 37 16-bit code units |
| 3173 | 003064: |[003064] TestInvokeCustomWithConcurrentThreads.<clinit>:()V |
| 3174 | 003074: 2200 3e00 |0000: new-instance v0, Ljava/util/concurrent/atomic/AtomicInteger; // type@003e |
| 3175 | 003078: 1201 |0002: const/4 v1, #int 0 // #0 |
| 3176 | 00307a: 7020 ef00 1000 |0003: invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.<init>:(I)V // method@00ef |
| 3177 | 003080: 6900 0800 |0006: sput-object v0, LTestInvokeCustomWithConcurrentThreads;.nextIndex:Ljava/util/concurrent/atomic/AtomicInteger; // field@0008 |
| 3178 | 003084: 2200 0d00 |0008: new-instance v0, LTestInvokeCustomWithConcurrentThreads$1; // type@000d |
| 3179 | 003088: 7010 6000 0000 |000a: invoke-direct {v0}, LTestInvokeCustomWithConcurrentThreads$1;.<init>:()V // method@0060 |
| 3180 | 00308e: 6900 0a00 |000d: sput-object v0, LTestInvokeCustomWithConcurrentThreads;.threadIndex:Ljava/lang/ThreadLocal; // field@000a |
| 3181 | 003092: 1300 1000 |000f: const/16 v0, #int 16 // #10 |
| 3182 | 003096: 2301 4b00 |0011: new-array v1, v0, [Ljava/lang/invoke/CallSite; // type@004b |
| 3183 | 00309a: 6901 0700 |0013: sput-object v1, LTestInvokeCustomWithConcurrentThreads;.instantiated:[Ljava/lang/invoke/CallSite; // field@0007 |
| 3184 | 00309e: 2301 4c00 |0015: new-array v1, v0, [Ljava/util/concurrent/atomic/AtomicInteger; // type@004c |
| 3185 | 0030a2: 6901 0600 |0017: sput-object v1, LTestInvokeCustomWithConcurrentThreads;.called:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0006 |
| 3186 | 0030a6: 2301 4c00 |0019: new-array v1, v0, [Ljava/util/concurrent/atomic/AtomicInteger; // type@004c |
| 3187 | 0030aa: 6901 0900 |001b: sput-object v1, LTestInvokeCustomWithConcurrentThreads;.targetted:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0009 |
| 3188 | 0030ae: 2201 3d00 |001d: new-instance v1, Ljava/util/concurrent/CyclicBarrier; // type@003d |
| 3189 | 0030b2: 7020 ed00 0100 |001f: invoke-direct {v1, v0}, Ljava/util/concurrent/CyclicBarrier;.<init>:(I)V // method@00ed |
| 3190 | 0030b8: 6901 0500 |0022: sput-object v1, LTestInvokeCustomWithConcurrentThreads;.barrier:Ljava/util/concurrent/CyclicBarrier; // field@0005 |
| 3191 | 0030bc: 0e00 |0024: return-void |
| 3192 | catches : (none) |
| 3193 | positions : |
| 3194 | 0x0000 line=30 |
| 3195 | 0x0008 line=32 |
| 3196 | 0x000f line=41 |
| 3197 | 0x0015 line=44 |
| 3198 | 0x0019 line=47 |
| 3199 | 0x001d line=50 |
| 3200 | locals : |
| 3201 | |
| 3202 | #1 : (in LTestInvokeCustomWithConcurrentThreads;) |
| 3203 | name : '<init>' |
| 3204 | type : '()V' |
| 3205 | access : 0x10002 (PRIVATE CONSTRUCTOR) |
| 3206 | code - |
| 3207 | registers : 1 |
| 3208 | ins : 1 |
| 3209 | outs : 1 |
| 3210 | insns size : 4 16-bit code units |
| 3211 | 0030c0: |[0030c0] TestInvokeCustomWithConcurrentThreads.<init>:()V |
| 3212 | 0030d0: 7010 3200 0000 |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032 |
| 3213 | 0030d6: 0e00 |0003: return-void |
| 3214 | catches : (none) |
| 3215 | positions : |
| 3216 | 0x0000 line=52 |
| 3217 | locals : |
| 3218 | 0x0000 - 0x0004 reg=0 this LTestInvokeCustomWithConcurrentThreads; |
| 3219 | |
| 3220 | #2 : (in LTestInvokeCustomWithConcurrentThreads;) |
| 3221 | name : 'access$000' |
| 3222 | type : '()Ljava/util/concurrent/atomic/AtomicInteger;' |
| 3223 | access : 0x1008 (STATIC SYNTHETIC) |
| 3224 | code - |
| 3225 | registers : 1 |
| 3226 | ins : 0 |
| 3227 | outs : 0 |
| 3228 | insns size : 3 16-bit code units |
| 3229 | 00304c: |[00304c] TestInvokeCustomWithConcurrentThreads.access$000:()Ljava/util/concurrent/atomic/AtomicInteger; |
| 3230 | 00305c: 6200 0800 |0000: sget-object v0, LTestInvokeCustomWithConcurrentThreads;.nextIndex:Ljava/util/concurrent/atomic/AtomicInteger; // field@0008 |
| 3231 | 003060: 1100 |0002: return-object v0 |
| 3232 | catches : (none) |
| 3233 | positions : |
| 3234 | 0x0000 line=27 |
| 3235 | locals : |
| 3236 | |
| 3237 | #3 : (in LTestInvokeCustomWithConcurrentThreads;) |
| 3238 | name : 'getThreadIndex' |
| 3239 | type : '()I' |
| 3240 | access : 0x000a (PRIVATE STATIC) |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 3241 | code - |
| 3242 | registers : 1 |
| 3243 | ins : 0 |
| 3244 | outs : 1 |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 3245 | insns size : 13 16-bit code units |
| 3246 | 002f00: |[002f00] TestInvokeCustomWithConcurrentThreads.getThreadIndex:()I |
| 3247 | 002f10: 6200 0a00 |0000: sget-object v0, LTestInvokeCustomWithConcurrentThreads;.threadIndex:Ljava/lang/ThreadLocal; // field@000a |
| 3248 | 002f14: 6e10 d000 0000 |0002: invoke-virtual {v0}, Ljava/lang/ThreadLocal;.get:()Ljava/lang/Object; // method@00d0 |
| 3249 | 002f1a: 0c00 |0005: move-result-object v0 |
| 3250 | 002f1c: 1f00 2700 |0006: check-cast v0, Ljava/lang/Integer; // type@0027 |
| 3251 | 002f20: 6e10 bc00 0000 |0008: invoke-virtual {v0}, Ljava/lang/Integer;.intValue:()I // method@00bc |
| 3252 | 002f26: 0a00 |000b: move-result v0 |
| 3253 | 002f28: 0f00 |000c: return v0 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 3254 | catches : (none) |
| 3255 | positions : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 3256 | 0x0000 line=55 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 3257 | locals : |
| 3258 | |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 3259 | #4 : (in LTestInvokeCustomWithConcurrentThreads;) |
| 3260 | name : 'linkerMethod' |
| 3261 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;' |
| 3262 | access : 0x000a (PRIVATE STATIC) |
| 3263 | code - |
| 3264 | registers : 8 |
| 3265 | ins : 3 |
| 3266 | outs : 4 |
| 3267 | insns size : 97 16-bit code units |
| 3268 | 002f78: |[002f78] TestInvokeCustomWithConcurrentThreads.linkerMethod:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; |
| 3269 | 002f88: 1c00 0e00 |0000: const-class v0, LTestInvokeCustomWithConcurrentThreads; // type@000e |
| 3270 | 002f8c: 6e40 d800 0576 |0002: invoke-virtual {v5, v0, v6, v7}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8 |
| 3271 | 002f92: 0c00 |0005: move-result-object v0 |
| 3272 | 002f94: 6e10 d400 0000 |0006: invoke-virtual {v0}, Ljava/lang/invoke/MethodHandle;.type:()Ljava/lang/invoke/MethodType; // method@00d4 |
| 3273 | 002f9a: 0c01 |0009: move-result-object v1 |
| 3274 | 002f9c: 7120 6700 1700 |000a: invoke-static {v7, v1}, LTestInvokeCustomWithConcurrentThreads;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@0067 |
| 3275 | 002fa2: 6e10 d400 0000 |000d: invoke-virtual {v0}, Ljava/lang/invoke/MethodHandle;.type:()Ljava/lang/invoke/MethodType; // method@00d4 |
| 3276 | 002fa8: 0c01 |0010: move-result-object v1 |
| 3277 | 002faa: 6e10 e300 0100 |0011: invoke-virtual {v1}, Ljava/lang/invoke/MethodType;.parameterCount:()I // method@00e3 |
| 3278 | 002fb0: 0a01 |0014: move-result v1 |
| 3279 | 002fb2: 1212 |0015: const/4 v2, #int 1 // #1 |
| 3280 | 002fb4: 7120 6600 2100 |0016: invoke-static {v1, v2}, LTestInvokeCustomWithConcurrentThreads;.assertEquals:(II)V // method@0066 |
| 3281 | 002fba: 2321 4800 |0019: new-array v1, v2, [Ljava/lang/Object; // type@0048 |
| 3282 | 002fbe: 7100 6900 0000 |001b: invoke-static {}, LTestInvokeCustomWithConcurrentThreads;.getThreadIndex:()I // method@0069 |
| 3283 | 002fc4: 0a03 |001e: move-result v3 |
| 3284 | 002fc6: 7110 bd00 0300 |001f: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@00bd |
| 3285 | 002fcc: 0c03 |0022: move-result-object v3 |
| 3286 | 002fce: 1204 |0023: const/4 v4, #int 0 // #0 |
| 3287 | 002fd0: 4d03 0104 |0024: aput-object v3, v1, v4 |
| 3288 | 002fd4: 7130 de00 4001 |0026: invoke-static {v0, v4, v1}, Ljava/lang/invoke/MethodHandles;.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle; // method@00de |
| 3289 | 002fda: 0c00 |0029: move-result-object v0 |
| 3290 | 002fdc: 2321 4600 |002a: new-array v1, v2, [Ljava/lang/Class; // type@0046 |
| 3291 | 002fe0: 6203 1200 |002c: sget-object v3, Ljava/lang/Integer;.TYPE:Ljava/lang/Class; // field@0012 |
| 3292 | 002fe4: 4d03 0104 |002e: aput-object v3, v1, v4 |
| 3293 | 002fe8: 7130 dd00 4001 |0030: invoke-static {v0, v4, v1}, Ljava/lang/invoke/MethodHandles;.dropArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle; // method@00dd |
| 3294 | 002fee: 0c00 |0033: move-result-object v0 |
| 3295 | 002ff0: 6e10 d400 0000 |0034: invoke-virtual {v0}, Ljava/lang/invoke/MethodHandle;.type:()Ljava/lang/invoke/MethodType; // method@00d4 |
| 3296 | 002ff6: 0c01 |0037: move-result-object v1 |
| 3297 | 002ff8: 6e10 e300 0100 |0038: invoke-virtual {v1}, Ljava/lang/invoke/MethodType;.parameterCount:()I // method@00e3 |
| 3298 | 002ffe: 0a01 |003b: move-result v1 |
| 3299 | 003000: 7120 6600 2100 |003c: invoke-static {v1, v2}, LTestInvokeCustomWithConcurrentThreads;.assertEquals:(II)V // method@0066 |
| 3300 | 003006: 6e10 d400 0000 |003f: invoke-virtual {v0}, Ljava/lang/invoke/MethodHandle;.type:()Ljava/lang/invoke/MethodType; // method@00d4 |
| 3301 | 00300c: 0c01 |0042: move-result-object v1 |
| 3302 | 00300e: 7120 6700 1700 |0043: invoke-static {v7, v1}, LTestInvokeCustomWithConcurrentThreads;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@0067 |
| 3303 | 003014: 6201 0500 |0046: sget-object v1, LTestInvokeCustomWithConcurrentThreads;.barrier:Ljava/util/concurrent/CyclicBarrier; // field@0005 |
| 3304 | 003018: 6e10 ee00 0100 |0048: invoke-virtual {v1}, Ljava/util/concurrent/CyclicBarrier;.await:()I // method@00ee |
| 3305 | 00301e: 6201 0700 |004b: sget-object v1, LTestInvokeCustomWithConcurrentThreads;.instantiated:[Ljava/lang/invoke/CallSite; // field@0007 |
| 3306 | 003022: 7100 6900 0000 |004d: invoke-static {}, LTestInvokeCustomWithConcurrentThreads;.getThreadIndex:()I // method@0069 |
| 3307 | 003028: 0a02 |0050: move-result v2 |
| 3308 | 00302a: 2203 3400 |0051: new-instance v3, Ljava/lang/invoke/ConstantCallSite; // type@0034 |
| 3309 | 00302e: 7020 d200 0300 |0053: invoke-direct {v3, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2 |
| 3310 | 003034: 4d03 0102 |0056: aput-object v3, v1, v2 |
| 3311 | 003038: 6201 0700 |0058: sget-object v1, LTestInvokeCustomWithConcurrentThreads;.instantiated:[Ljava/lang/invoke/CallSite; // field@0007 |
| 3312 | 00303c: 7100 6900 0000 |005a: invoke-static {}, LTestInvokeCustomWithConcurrentThreads;.getThreadIndex:()I // method@0069 |
| 3313 | 003042: 0a02 |005d: move-result v2 |
| 3314 | 003044: 4601 0102 |005e: aget-object v1, v1, v2 |
| 3315 | 003048: 1101 |0060: return-object v1 |
| 3316 | catches : (none) |
| 3317 | positions : |
| 3318 | 0x0000 line=87 |
| 3319 | 0x0002 line=88 |
| 3320 | 0x0006 line=89 |
| 3321 | 0x000d line=90 |
| 3322 | 0x0019 line=91 |
| 3323 | 0x002a line=92 |
| 3324 | 0x0034 line=93 |
| 3325 | 0x003f line=94 |
| 3326 | 0x0046 line=99 |
| 3327 | 0x004b line=101 |
| 3328 | 0x0058 line=102 |
| 3329 | locals : |
| 3330 | 0x0006 - 0x0061 reg=0 mh Ljava/lang/invoke/MethodHandle; |
| 3331 | 0x0000 - 0x0061 reg=5 caller Ljava/lang/invoke/MethodHandles$Lookup; |
| 3332 | 0x0000 - 0x0061 reg=6 name Ljava/lang/String; |
| 3333 | 0x0000 - 0x0061 reg=7 methodType Ljava/lang/invoke/MethodType; |
| 3334 | |
| 3335 | #5 : (in LTestInvokeCustomWithConcurrentThreads;) |
| 3336 | name : 'notUsed' |
| 3337 | type : '(I)I' |
| 3338 | access : 0x0009 (PUBLIC STATIC) |
| 3339 | code - |
| 3340 | registers : 1 |
| 3341 | ins : 1 |
| 3342 | outs : 0 |
| 3343 | insns size : 1 16-bit code units |
| 3344 | 002f2c: |[002f2c] TestInvokeCustomWithConcurrentThreads.notUsed:(I)I |
| 3345 | 002f3c: 0f00 |0000: return v0 |
| 3346 | catches : (none) |
| 3347 | positions : |
| 3348 | 0x0000 line=59 |
| 3349 | locals : |
| 3350 | 0x0000 - 0x0001 reg=0 x I |
| 3351 | |
| 3352 | #6 : (in LTestInvokeCustomWithConcurrentThreads;) |
| 3353 | name : 'setCalled' |
| 3354 | type : '(I)I' |
| 3355 | access : 0x000a (PRIVATE STATIC) |
| 3356 | code - |
| 3357 | registers : 3 |
| 3358 | ins : 1 |
| 3359 | outs : 2 |
| 3360 | insns size : 20 16-bit code units |
| 3361 | 002f40: |[002f40] TestInvokeCustomWithConcurrentThreads.setCalled:(I)I |
| 3362 | 002f50: 6200 0600 |0000: sget-object v0, LTestInvokeCustomWithConcurrentThreads;.called:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0006 |
| 3363 | 002f54: 4600 0002 |0002: aget-object v0, v0, v2 |
| 3364 | 002f58: 6e10 f100 0000 |0004: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.getAndIncrement:()I // method@00f1 |
| 3365 | 002f5e: 6200 0900 |0007: sget-object v0, LTestInvokeCustomWithConcurrentThreads;.targetted:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0009 |
| 3366 | 002f62: 7100 6900 0000 |0009: invoke-static {}, LTestInvokeCustomWithConcurrentThreads;.getThreadIndex:()I // method@0069 |
| 3367 | 002f68: 0a01 |000c: move-result v1 |
| 3368 | 002f6a: 4600 0001 |000d: aget-object v0, v0, v1 |
| 3369 | 002f6e: 6e20 f200 2000 |000f: invoke-virtual {v0, v2}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@00f2 |
| 3370 | 002f74: 1200 |0012: const/4 v0, #int 0 // #0 |
| 3371 | 002f76: 0f00 |0013: return v0 |
| 3372 | catches : (none) |
| 3373 | positions : |
| 3374 | 0x0000 line=79 |
| 3375 | 0x0007 line=80 |
| 3376 | 0x0012 line=81 |
| 3377 | locals : |
| 3378 | 0x0000 - 0x0014 reg=2 index I |
| 3379 | |
| 3380 | #7 : (in LTestInvokeCustomWithConcurrentThreads;) |
| 3381 | name : 'test' |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 3382 | type : '()V' |
| 3383 | access : 0x0009 (PUBLIC STATIC) |
| 3384 | code - |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 3385 | registers : 12 |
| 3386 | ins : 0 |
| 3387 | outs : 3 |
| 3388 | insns size : 229 16-bit code units |
| 3389 | 0030fc: |[0030fc] TestInvokeCustomWithConcurrentThreads.test:()V |
| 3390 | 00310c: 1200 |0000: const/4 v0, #int 0 // #0 |
| 3391 | 00310e: 0101 |0001: move v1, v0 |
| 3392 | 003110: 1302 1000 |0002: const/16 v2, #int 16 // #10 |
| 3393 | 003114: 3521 1700 |0004: if-ge v1, v2, 001b // +0017 |
| 3394 | 003118: 6202 0600 |0006: sget-object v2, LTestInvokeCustomWithConcurrentThreads;.called:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0006 |
| 3395 | 00311c: 2203 3e00 |0008: new-instance v3, Ljava/util/concurrent/atomic/AtomicInteger; // type@003e |
| 3396 | 003120: 7020 ef00 0300 |000a: invoke-direct {v3, v0}, Ljava/util/concurrent/atomic/AtomicInteger;.<init>:(I)V // method@00ef |
| 3397 | 003126: 4d03 0201 |000d: aput-object v3, v2, v1 |
| 3398 | 00312a: 6202 0900 |000f: sget-object v2, LTestInvokeCustomWithConcurrentThreads;.targetted:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0009 |
| 3399 | 00312e: 2203 3e00 |0011: new-instance v3, Ljava/util/concurrent/atomic/AtomicInteger; // type@003e |
| 3400 | 003132: 7020 ef00 0300 |0013: invoke-direct {v3, v0}, Ljava/util/concurrent/atomic/AtomicInteger;.<init>:(I)V // method@00ef |
| 3401 | 003138: 4d03 0201 |0016: aput-object v3, v2, v1 |
| 3402 | 00313c: d801 0101 |0018: add-int/lit8 v1, v1, #int 1 // #01 |
| 3403 | 003140: 28e8 |001a: goto 0002 // -0018 |
| 3404 | 003142: 2321 4a00 |001b: new-array v1, v2, [Ljava/lang/Thread; // type@004a |
| 3405 | 003146: 0103 |001d: move v3, v0 |
| 3406 | 003148: 3523 1600 |001e: if-ge v3, v2, 0034 // +0016 |
| 3407 | 00314c: 2204 2f00 |0020: new-instance v4, Ljava/lang/Thread; // type@002f |
| 3408 | 003150: 2205 0e00 |0022: new-instance v5, LTestInvokeCustomWithConcurrentThreads; // type@000e |
| 3409 | 003154: 7010 6400 0500 |0024: invoke-direct {v5}, LTestInvokeCustomWithConcurrentThreads;.<init>:()V // method@0064 |
| 3410 | 00315a: 7020 cb00 5400 |0027: invoke-direct {v4, v5}, Ljava/lang/Thread;.<init>:(Ljava/lang/Runnable;)V // method@00cb |
| 3411 | 003160: 4d04 0103 |002a: aput-object v4, v1, v3 |
| 3412 | 003164: 4604 0103 |002c: aget-object v4, v1, v3 |
| 3413 | 003168: 6e10 ce00 0400 |002e: invoke-virtual {v4}, Ljava/lang/Thread;.start:()V // method@00ce |
| 3414 | 00316e: d803 0301 |0031: add-int/lit8 v3, v3, #int 1 // #01 |
| 3415 | 003172: 28eb |0033: goto 001e // -0015 |
| 3416 | 003174: 0103 |0034: move v3, v0 |
| 3417 | 003176: 3523 0a00 |0035: if-ge v3, v2, 003f // +000a |
| 3418 | 00317a: 4604 0103 |0037: aget-object v4, v1, v3 |
| 3419 | 00317e: 6e10 cd00 0400 |0039: invoke-virtual {v4}, Ljava/lang/Thread;.join:()V // method@00cd |
| 3420 | 003184: d803 0301 |003c: add-int/lit8 v3, v3, #int 1 // #01 |
| 3421 | 003188: 28f7 |003e: goto 0035 // -0009 |
| 3422 | 00318a: 1203 |003f: const/4 v3, #int 0 // #0 |
| 3423 | 00318c: 1204 |0040: const/4 v4, #int 0 // #0 |
| 3424 | 00318e: 0145 |0041: move v5, v4 |
| 3425 | 003190: 0134 |0042: move v4, v3 |
| 3426 | 003192: 0103 |0043: move v3, v0 |
| 3427 | 003194: 3523 2200 |0044: if-ge v3, v2, 0066 // +0022 |
| 3428 | 003198: 6206 0700 |0046: sget-object v6, LTestInvokeCustomWithConcurrentThreads;.instantiated:[Ljava/lang/invoke/CallSite; // field@0007 |
| 3429 | 00319c: 4606 0603 |0048: aget-object v6, v6, v3 |
| 3430 | 0031a0: 1207 |004a: const/4 v7, #int 0 // #0 |
| 3431 | 0031a2: 7120 6800 7600 |004b: invoke-static {v6, v7}, LTestInvokeCustomWithConcurrentThreads;.assertNotEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@0068 |
| 3432 | 0031a8: 6206 0600 |004e: sget-object v6, LTestInvokeCustomWithConcurrentThreads;.called:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0006 |
| 3433 | 0031ac: 4606 0603 |0050: aget-object v6, v6, v3 |
| 3434 | 0031b0: 6e10 f000 0600 |0052: invoke-virtual {v6}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@00f0 |
| 3435 | 0031b6: 0a06 |0055: move-result v6 |
| 3436 | 0031b8: 3806 0d00 |0056: if-eqz v6, 0063 // +000d |
| 3437 | 0031bc: d804 0401 |0058: add-int/lit8 v4, v4, #int 1 // #01 |
| 3438 | 0031c0: 6206 0600 |005a: sget-object v6, LTestInvokeCustomWithConcurrentThreads;.called:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0006 |
| 3439 | 0031c4: 4606 0603 |005c: aget-object v6, v6, v3 |
| 3440 | 0031c8: 6e10 f000 0600 |005e: invoke-virtual {v6}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@00f0 |
| 3441 | 0031ce: 0a06 |0061: move-result v6 |
| 3442 | 0031d0: b065 |0062: add-int/2addr v5, v6 |
| 3443 | 0031d2: d803 0301 |0063: add-int/lit8 v3, v3, #int 1 // #01 |
| 3444 | 0031d6: 28df |0065: goto 0044 // -0021 |
| 3445 | 0031d8: 6203 1300 |0066: sget-object v3, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 3446 | 0031dc: 2206 2d00 |0068: new-instance v6, Ljava/lang/StringBuilder; // type@002d |
| 3447 | 0031e0: 7010 c100 0600 |006a: invoke-direct {v6}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1 |
| 3448 | 0031e6: 1a07 b800 |006d: const-string v7, "Winners " // string@00b8 |
| 3449 | 0031ea: 6e20 c800 7600 |006f: invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 3450 | 0031f0: 6e20 c500 4600 |0072: invoke-virtual {v6, v4}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5 |
| 3451 | 0031f6: 1a07 0500 |0075: const-string v7, " Votes " // string@0005 |
| 3452 | 0031fa: 6e20 c800 7600 |0077: invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 3453 | 003200: 6e20 c500 5600 |007a: invoke-virtual {v6, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5 |
| 3454 | 003206: 6e10 ca00 0600 |007d: invoke-virtual {v6}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca |
| 3455 | 00320c: 0c06 |0080: move-result-object v6 |
| 3456 | 00320e: 6e20 b300 6300 |0081: invoke-virtual {v3, v6}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 3457 | 003214: 1223 |0084: const/4 v3, #int 2 // #2 |
| 3458 | 003216: 1216 |0085: const/4 v6, #int 1 // #1 |
| 3459 | 003218: 3264 2c00 |0086: if-eq v4, v6, 00b2 // +002c |
| 3460 | 00321c: 6207 1300 |0088: sget-object v7, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 3461 | 003220: 1a08 9e00 |008a: const-string v8, "Threads did not the same call-sites:" // string@009e |
| 3462 | 003224: 6e20 b300 8700 |008c: invoke-virtual {v7, v8}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 3463 | 00322a: 0107 |008f: move v7, v0 |
| 3464 | 00322c: 3527 2200 |0090: if-ge v7, v2, 00b2 // +0022 |
| 3465 | 003230: 6208 1300 |0092: sget-object v8, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 3466 | 003234: 1a09 0400 |0094: const-string v9, " Thread % 2d invoked call site instance #%02d |
| 3467 | " // string@0004 |
| 3468 | 003238: 233a 4800 |0096: new-array v10, v3, [Ljava/lang/Object; // type@0048 |
| 3469 | 00323c: 7110 bd00 0700 |0098: invoke-static {v7}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@00bd |
| 3470 | 003242: 0c0b |009b: move-result-object v11 |
| 3471 | 003244: 4d0b 0a00 |009c: aput-object v11, v10, v0 |
| 3472 | 003248: 620b 0900 |009e: sget-object v11, LTestInvokeCustomWithConcurrentThreads;.targetted:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0009 |
| 3473 | 00324c: 460b 0b07 |00a0: aget-object v11, v11, v7 |
| 3474 | 003250: 6e10 f000 0b00 |00a2: invoke-virtual {v11}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@00f0 |
| 3475 | 003256: 0a0b |00a5: move-result v11 |
| 3476 | 003258: 7110 bd00 0b00 |00a6: invoke-static {v11}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@00bd |
| 3477 | 00325e: 0c0b |00a9: move-result-object v11 |
| 3478 | 003260: 4d0b 0a06 |00aa: aput-object v11, v10, v6 |
| 3479 | 003264: 6e30 ab00 980a |00ac: invoke-virtual {v8, v9, v10}, Ljava/io/PrintStream;.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream; // method@00ab |
| 3480 | 00326a: d807 0701 |00af: add-int/lit8 v7, v7, #int 1 // #01 |
| 3481 | 00326e: 28df |00b1: goto 0090 // -0021 |
| 3482 | 003270: 3225 2c00 |00b2: if-eq v5, v2, 00de // +002c |
| 3483 | 003274: 6207 1300 |00b4: sget-object v7, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 3484 | 003278: 1a08 2000 |00b6: const-string v8, "Call-sites invocations :" // string@0020 |
| 3485 | 00327c: 6e20 b300 8700 |00b8: invoke-virtual {v7, v8}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 3486 | 003282: 0107 |00bb: move v7, v0 |
| 3487 | 003284: 3527 2200 |00bc: if-ge v7, v2, 00de // +0022 |
| 3488 | 003288: 6208 1300 |00be: sget-object v8, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 3489 | 00328c: 1a09 0300 |00c0: const-string v9, " Call site instance #%02d was invoked % 2d times |
| 3490 | " // string@0003 |
| 3491 | 003290: 233a 4800 |00c2: new-array v10, v3, [Ljava/lang/Object; // type@0048 |
| 3492 | 003294: 7110 bd00 0700 |00c4: invoke-static {v7}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@00bd |
| 3493 | 00329a: 0c0b |00c7: move-result-object v11 |
| 3494 | 00329c: 4d0b 0a00 |00c8: aput-object v11, v10, v0 |
| 3495 | 0032a0: 620b 0600 |00ca: sget-object v11, LTestInvokeCustomWithConcurrentThreads;.called:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0006 |
| 3496 | 0032a4: 460b 0b07 |00cc: aget-object v11, v11, v7 |
| 3497 | 0032a8: 6e10 f000 0b00 |00ce: invoke-virtual {v11}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@00f0 |
| 3498 | 0032ae: 0a0b |00d1: move-result v11 |
| 3499 | 0032b0: 7110 bd00 0b00 |00d2: invoke-static {v11}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@00bd |
| 3500 | 0032b6: 0c0b |00d5: move-result-object v11 |
| 3501 | 0032b8: 4d0b 0a06 |00d6: aput-object v11, v10, v6 |
| 3502 | 0032bc: 6e30 ab00 980a |00d8: invoke-virtual {v8, v9, v10}, Ljava/io/PrintStream;.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream; // method@00ab |
| 3503 | 0032c2: d807 0701 |00db: add-int/lit8 v7, v7, #int 1 // #01 |
| 3504 | 0032c6: 28df |00dd: goto 00bc // -0021 |
| 3505 | 0032c8: 7120 6600 6400 |00de: invoke-static {v4, v6}, LTestInvokeCustomWithConcurrentThreads;.assertEquals:(II)V // method@0066 |
| 3506 | 0032ce: 7120 6600 2500 |00e1: invoke-static {v5, v2}, LTestInvokeCustomWithConcurrentThreads;.assertEquals:(II)V // method@0066 |
| 3507 | 0032d4: 0e00 |00e4: return-void |
| 3508 | catches : (none) |
| 3509 | positions : |
| 3510 | 0x0000 line=107 |
| 3511 | 0x0006 line=108 |
| 3512 | 0x000f line=109 |
| 3513 | 0x0018 line=107 |
| 3514 | 0x001b line=113 |
| 3515 | 0x001d line=114 |
| 3516 | 0x0020 line=115 |
| 3517 | 0x002c line=116 |
| 3518 | 0x0031 line=114 |
| 3519 | 0x0034 line=120 |
| 3520 | 0x0037 line=121 |
| 3521 | 0x003c line=120 |
| 3522 | 0x003f line=125 |
| 3523 | 0x0040 line=126 |
| 3524 | 0x0041 line=127 |
| 3525 | 0x0046 line=128 |
| 3526 | 0x004e line=129 |
| 3527 | 0x0058 line=130 |
| 3528 | 0x005a line=131 |
| 3529 | 0x0063 line=127 |
| 3530 | 0x0066 line=135 |
| 3531 | 0x0084 line=139 |
| 3532 | 0x0088 line=140 |
| 3533 | 0x008f line=141 |
| 3534 | 0x0092 line=142 |
| 3535 | 0x0098 line=143 |
| 3536 | 0x00ac line=142 |
| 3537 | 0x00af line=141 |
| 3538 | 0x00b2 line=149 |
| 3539 | 0x00b4 line=150 |
| 3540 | 0x00bb line=151 |
| 3541 | 0x00be line=152 |
| 3542 | 0x00c4 line=153 |
| 3543 | 0x00d8 line=152 |
| 3544 | 0x00db line=151 |
| 3545 | 0x00de line=157 |
| 3546 | 0x00e1 line=158 |
| 3547 | 0x00e4 line=159 |
| 3548 | locals : |
| 3549 | 0x0002 - 0x001b reg=1 i I |
| 3550 | 0x001e - 0x0034 reg=3 i I |
| 3551 | 0x0035 - 0x003f reg=3 i I |
| 3552 | 0x0040 - 0x0044 reg=3 winners I |
| 3553 | 0x0041 - 0x0044 reg=4 votes I |
| 3554 | 0x0044 - 0x0066 reg=3 i I |
| 3555 | 0x0090 - 0x00b2 reg=7 i I |
| 3556 | 0x00bc - 0x00de reg=7 i I |
| 3557 | 0x001d - 0x00e5 reg=1 threads [Ljava/lang/Thread; |
| 3558 | 0x0044 - 0x00e5 reg=4 winners I |
| 3559 | 0x0044 - 0x00e5 reg=5 votes I |
| 3560 | |
| 3561 | Virtual methods - |
| 3562 | #0 : (in LTestInvokeCustomWithConcurrentThreads;) |
| 3563 | name : 'run' |
| 3564 | type : '()V' |
| 3565 | access : 0x0001 (PUBLIC) |
| 3566 | code - |
| 3567 | registers : 2 |
| 3568 | ins : 1 |
| 3569 | outs : 1 |
| 3570 | insns size : 9 16-bit code units |
| 3571 | 0030d8: |[0030d8] TestInvokeCustomWithConcurrentThreads.run:()V |
| 3572 | 0030e8: 12f0 |0000: const/4 v0, #int -1 // #ff |
| 3573 | 0030ea: fc10 1a00 0000 |0001: invoke-custom {v0}, call_site@001a |
| 3574 | 0030f0: 0a00 |0004: move-result v0 |
| 3575 | 0030f2: 7110 6b00 0000 |0005: invoke-static {v0}, LTestInvokeCustomWithConcurrentThreads;.notUsed:(I)I // method@006b |
| 3576 | 0030f8: 0e00 |0008: return-void |
| 3577 | catches : (none) |
| 3578 | positions : |
| 3579 | 0x0000 line=63 |
| 3580 | 0x0005 line=64 |
| 3581 | 0x0008 line=65 |
| 3582 | locals : |
| 3583 | 0x0005 - 0x0009 reg=0 x I |
| 3584 | 0x0000 - 0x0009 reg=1 this LTestInvokeCustomWithConcurrentThreads; |
| 3585 | |
| 3586 | source_file_idx : 149 (TestInvokeCustomWithConcurrentThreads.java) |
| 3587 | |
| 3588 | Class #10 header: |
| 3589 | class_idx : 15 |
| 3590 | access_flags : 1 (0x0001) |
| 3591 | superclass_idx : 9 |
| 3592 | interfaces_off : 0 (0x000000) |
| 3593 | source_file_idx : 151 |
| 3594 | annotations_off : 31180 (0x0079cc) |
| 3595 | class_data_off : 29403 (0x0072db) |
| 3596 | static_fields_size : 5 |
| 3597 | instance_fields_size: 0 |
| 3598 | direct_methods_size : 6 |
| 3599 | virtual_methods_size: 0 |
| 3600 | |
| 3601 | Class #10 annotations: |
| 3602 | Annotations on method #114 'add' |
| 3603 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestLinkerMethodMinimalArguments; name="linkerMethod" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; } } fieldOrMethodName="_add" parameterTypes={ I I } returnType=I |
| 3604 | Annotations on method #118 'linkerMethod' |
| 3605 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 3606 | Annotations on method #119 'test' |
| 3607 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 3608 | |
| 3609 | Class #10 - |
| 3610 | Class descriptor : 'LTestLinkerMethodMinimalArguments;' |
| 3611 | Access flags : 0x0001 (PUBLIC) |
| 3612 | Superclass : 'LTestBase;' |
| 3613 | Interfaces - |
| 3614 | Static fields - |
| 3615 | #0 : (in LTestLinkerMethodMinimalArguments;) |
| 3616 | name : 'FAILURE_TYPE_LINKER_METHOD_RETURNS_NULL' |
| 3617 | type : 'I' |
| 3618 | access : 0x0018 (STATIC FINAL) |
| 3619 | value : 1 |
| 3620 | #1 : (in LTestLinkerMethodMinimalArguments;) |
| 3621 | name : 'FAILURE_TYPE_LINKER_METHOD_THROWS' |
| 3622 | type : 'I' |
| 3623 | access : 0x0018 (STATIC FINAL) |
| 3624 | value : 2 |
| 3625 | #2 : (in LTestLinkerMethodMinimalArguments;) |
| 3626 | name : 'FAILURE_TYPE_NONE' |
| 3627 | type : 'I' |
| 3628 | access : 0x0018 (STATIC FINAL) |
| 3629 | value : 0 |
| 3630 | #3 : (in LTestLinkerMethodMinimalArguments;) |
| 3631 | name : 'FAILURE_TYPE_TARGET_METHOD_THROWS' |
| 3632 | type : 'I' |
| 3633 | access : 0x0018 (STATIC FINAL) |
| 3634 | value : 3 |
| 3635 | #4 : (in LTestLinkerMethodMinimalArguments;) |
| 3636 | name : 'forceFailureType' |
| 3637 | type : 'I' |
| 3638 | access : 0x000a (PRIVATE STATIC) |
| 3639 | Instance fields - |
| 3640 | Direct methods - |
| 3641 | #0 : (in LTestLinkerMethodMinimalArguments;) |
| 3642 | name : '<clinit>' |
| 3643 | type : '()V' |
| 3644 | access : 0x10008 (STATIC CONSTRUCTOR) |
| 3645 | code - |
| 3646 | registers : 1 |
| 3647 | ins : 0 |
| 3648 | outs : 0 |
| 3649 | insns size : 4 16-bit code units |
| 3650 | 003404: |[003404] TestLinkerMethodMinimalArguments.<clinit>:()V |
| 3651 | 003414: 1200 |0000: const/4 v0, #int 0 // #0 |
| 3652 | 003416: 6700 0f00 |0001: sput v0, LTestLinkerMethodMinimalArguments;.forceFailureType:I // field@000f |
| 3653 | 00341a: 0e00 |0003: return-void |
| 3654 | catches : (none) |
| 3655 | positions : |
| 3656 | 0x0000 line=26 |
| 3657 | locals : |
| 3658 | |
| 3659 | #1 : (in LTestLinkerMethodMinimalArguments;) |
| 3660 | name : '<init>' |
| 3661 | type : '()V' |
| 3662 | access : 0x10001 (PUBLIC CONSTRUCTOR) |
| 3663 | code - |
| 3664 | registers : 1 |
| 3665 | ins : 1 |
| 3666 | outs : 1 |
| 3667 | insns size : 4 16-bit code units |
| 3668 | 00341c: |[00341c] TestLinkerMethodMinimalArguments.<init>:()V |
| 3669 | 00342c: 7010 3200 0000 |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032 |
| 3670 | 003432: 0e00 |0003: return-void |
| 3671 | catches : (none) |
| 3672 | positions : |
| 3673 | 0x0000 line=25 |
| 3674 | locals : |
| 3675 | 0x0000 - 0x0004 reg=0 this LTestLinkerMethodMinimalArguments; |
| 3676 | |
| 3677 | #2 : (in LTestLinkerMethodMinimalArguments;) |
| 3678 | name : '_add' |
| 3679 | type : '(II)I' |
| 3680 | access : 0x0008 (STATIC) |
| 3681 | code - |
| 3682 | registers : 4 |
| 3683 | ins : 2 |
| 3684 | outs : 2 |
| 3685 | insns size : 23 16-bit code units |
| 3686 | 0032d8: |[0032d8] TestLinkerMethodMinimalArguments._add:(II)I |
| 3687 | 0032e8: 6000 0f00 |0000: sget v0, LTestLinkerMethodMinimalArguments;.forceFailureType:I // field@000f |
| 3688 | 0032ec: 1231 |0002: const/4 v1, #int 3 // #3 |
| 3689 | 0032ee: 3210 0500 |0003: if-eq v0, v1, 0008 // +0005 |
| 3690 | 0032f2: 9000 0203 |0005: add-int v0, v2, v3 |
| 3691 | 0032f6: 0f00 |0007: return v0 |
| 3692 | 0032f8: 6200 1300 |0008: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 3693 | 0032fc: 1a01 a000 |000a: const-string v1, "Throwing ArithmeticException in add()" // string@00a0 |
| 3694 | 003300: 6e20 b300 1000 |000c: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 3695 | 003306: 2200 1d00 |000f: new-instance v0, Ljava/lang/ArithmeticException; // type@001d |
| 3696 | 00330a: 1a01 cc00 |0011: const-string v1, "add" // string@00cc |
| 3697 | 00330e: 7020 b400 1000 |0013: invoke-direct {v0, v1}, Ljava/lang/ArithmeticException;.<init>:(Ljava/lang/String;)V // method@00b4 |
| 3698 | 003314: 2700 |0016: throw v0 |
| 3699 | catches : (none) |
| 3700 | positions : |
| 3701 | 0x0000 line=51 |
| 3702 | 0x0005 line=55 |
| 3703 | 0x0008 line=52 |
| 3704 | 0x000f line=53 |
| 3705 | locals : |
| 3706 | 0x0000 - 0x0017 reg=2 a I |
| 3707 | 0x0000 - 0x0017 reg=3 b I |
| 3708 | |
| 3709 | #3 : (in LTestLinkerMethodMinimalArguments;) |
| 3710 | name : 'add' |
| 3711 | type : '(II)I' |
| 3712 | access : 0x000a (PRIVATE STATIC) |
| 3713 | code - |
| 3714 | registers : 3 |
| 3715 | ins : 2 |
| 3716 | outs : 0 |
| 3717 | insns size : 5 16-bit code units |
| 3718 | 003318: |[003318] TestLinkerMethodMinimalArguments.add:(II)I |
| 3719 | 003328: 7100 7400 0000 |0000: invoke-static {}, LTestLinkerMethodMinimalArguments;.assertNotReached:()V // method@0074 |
| 3720 | 00332e: 12f0 |0003: const/4 v0, #int -1 // #ff |
| 3721 | 003330: 0f00 |0004: return v0 |
| 3722 | catches : (none) |
| 3723 | positions : |
| 3724 | 0x0000 line=45 |
| 3725 | 0x0003 line=46 |
| 3726 | locals : |
| 3727 | 0x0000 - 0x0005 reg=1 a I |
| 3728 | 0x0000 - 0x0005 reg=2 b I |
| 3729 | |
| 3730 | #4 : (in LTestLinkerMethodMinimalArguments;) |
| 3731 | name : 'linkerMethod' |
| 3732 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;' |
| 3733 | access : 0x000a (PRIVATE STATIC) |
| 3734 | code - |
| 3735 | registers : 7 |
| 3736 | ins : 3 |
| 3737 | outs : 4 |
| 3738 | insns size : 96 16-bit code units |
| 3739 | 003334: |[003334] TestLinkerMethodMinimalArguments.linkerMethod:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; |
| 3740 | 003344: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 3741 | 003348: 2201 2d00 |0002: new-instance v1, Ljava/lang/StringBuilder; // type@002d |
| 3742 | 00334c: 7010 c100 0100 |0004: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1 |
| 3743 | 003352: 1a02 6701 |0007: const-string v2, "linkerMethod failure type " // string@0167 |
| 3744 | 003356: 6e20 c800 2100 |0009: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 3745 | 00335c: 6002 0f00 |000c: sget v2, LTestLinkerMethodMinimalArguments;.forceFailureType:I // field@000f |
| 3746 | 003360: 6e20 c500 2100 |000e: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5 |
| 3747 | 003366: 6e10 ca00 0100 |0011: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca |
| 3748 | 00336c: 0c01 |0014: move-result-object v1 |
| 3749 | 00336e: 6e20 b300 1000 |0015: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 3750 | 003374: 1c00 0f00 |0018: const-class v0, LTestLinkerMethodMinimalArguments; // type@000f |
| 3751 | 003378: 6e40 d800 0465 |001a: invoke-virtual {v4, v0, v5, v6}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8 |
| 3752 | 00337e: 0c00 |001d: move-result-object v0 |
| 3753 | 003380: 6001 0f00 |001e: sget v1, LTestLinkerMethodMinimalArguments;.forceFailureType:I // field@000f |
| 3754 | 003384: 2b01 3800 0000 |0020: packed-switch v1, 00000058 // +00000038 |
| 3755 | 00338a: 2201 3400 |0023: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034 |
| 3756 | 00338e: 7020 d200 0100 |0025: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2 |
| 3757 | 003394: 1101 |0028: return-object v1 |
| 3758 | 003396: 6201 1300 |0029: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 3759 | 00339a: 1a02 a100 |002b: const-string v2, "Throwing InstantiationException in linkerMethod()" // string@00a1 |
| 3760 | 00339e: 6e20 b300 2100 |002d: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 3761 | 0033a4: 2201 2600 |0030: new-instance v1, Ljava/lang/InstantiationException; // type@0026 |
| 3762 | 0033a8: 1a02 6601 |0032: const-string v2, "linkerMethod" // string@0166 |
| 3763 | 0033ac: 7020 bb00 2100 |0034: invoke-direct {v1, v2}, Ljava/lang/InstantiationException;.<init>:(Ljava/lang/String;)V // method@00bb |
| 3764 | 0033b2: 2701 |0037: throw v1 |
| 3765 | 0033b4: 6201 1300 |0038: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 3766 | 0033b8: 2202 2d00 |003a: new-instance v2, Ljava/lang/StringBuilder; // type@002d |
| 3767 | 0033bc: 7010 c100 0200 |003c: invoke-direct {v2}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1 |
| 3768 | 0033c2: 1a03 8c00 |003f: const-string v3, "Returning null instead of CallSite for " // string@008c |
| 3769 | 0033c6: 6e20 c800 3200 |0041: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 3770 | 0033cc: 6e20 c800 5200 |0044: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 3771 | 0033d2: 1a03 0000 |0047: const-string v3, " " // string@0000 |
| 3772 | 0033d6: 6e20 c800 3200 |0049: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 3773 | 0033dc: 6e20 c700 6200 |004c: invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@00c7 |
| 3774 | 0033e2: 6e10 ca00 0200 |004f: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca |
| 3775 | 0033e8: 0c02 |0052: move-result-object v2 |
| 3776 | 0033ea: 6e20 b300 2100 |0053: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 3777 | 0033f0: 1201 |0056: const/4 v1, #int 0 // #0 |
| 3778 | 0033f2: 1101 |0057: return-object v1 |
| 3779 | 0033f4: 0001 0200 0100 0000 1800 0000 0900 ... |0058: packed-switch-data (8 units) |
| 3780 | catches : (none) |
| 3781 | positions : |
| 3782 | 0x0000 line=61 |
| 3783 | 0x0018 line=62 |
| 3784 | 0x001a line=63 |
| 3785 | 0x001e line=64 |
| 3786 | 0x0023 line=73 |
| 3787 | 0x0029 line=70 |
| 3788 | 0x0030 line=71 |
| 3789 | 0x0038 line=66 |
| 3790 | 0x0056 line=68 |
| 3791 | locals : |
| 3792 | 0x001e - 0x0060 reg=0 mh_add Ljava/lang/invoke/MethodHandle; |
| 3793 | 0x0000 - 0x0060 reg=4 caller Ljava/lang/invoke/MethodHandles$Lookup; |
| 3794 | 0x0000 - 0x0060 reg=5 name Ljava/lang/String; |
| 3795 | 0x0000 - 0x0060 reg=6 methodType Ljava/lang/invoke/MethodType; |
| 3796 | |
| 3797 | #5 : (in LTestLinkerMethodMinimalArguments;) |
| 3798 | name : 'test' |
| 3799 | type : '(III)V' |
| 3800 | access : 0x0009 (PUBLIC STATIC) |
| 3801 | code - |
| 3802 | registers : 6 |
| 3803 | ins : 3 |
| 3804 | outs : 2 |
| 3805 | insns size : 68 16-bit code units |
| 3806 | 003434: |[003434] TestLinkerMethodMinimalArguments.test:(III)V |
| 3807 | 003444: 1200 |0000: const/4 v0, #int 0 // #0 |
| 3808 | 003446: 1211 |0001: const/4 v1, #int 1 // #1 |
| 3809 | 003448: 3a03 0400 |0002: if-ltz v3, 0006 // +0004 |
| 3810 | 00344c: 0112 |0004: move v2, v1 |
| 3811 | 00344e: 2802 |0005: goto 0007 // +0002 |
| 3812 | 003450: 0102 |0006: move v2, v0 |
| 3813 | 003452: 7110 7500 0200 |0007: invoke-static {v2}, LTestLinkerMethodMinimalArguments;.assertTrue:(Z)V // method@0075 |
| 3814 | 003458: 1232 |000a: const/4 v2, #int 3 // #3 |
| 3815 | 00345a: 3623 0400 |000b: if-gt v3, v2, 000f // +0004 |
| 3816 | 00345e: 0110 |000d: move v0, v1 |
| 3817 | 003460: 0000 |000e: nop // spacer |
| 3818 | 003462: 7110 7500 0000 |000f: invoke-static {v0}, LTestLinkerMethodMinimalArguments;.assertTrue:(Z)V // method@0075 |
| 3819 | 003468: 6703 0f00 |0012: sput v3, LTestLinkerMethodMinimalArguments;.forceFailureType:I // field@000f |
| 3820 | 00346c: 9000 0405 |0014: add-int v0, v4, v5 |
| 3821 | 003470: fc20 1b00 5400 |0016: invoke-custom {v4, v5}, call_site@001b |
| 3822 | 003476: 0a01 |0019: move-result v1 |
| 3823 | 003478: 7120 7300 1000 |001a: invoke-static {v0, v1}, LTestLinkerMethodMinimalArguments;.assertEquals:(II)V // method@0073 |
| 3824 | 00347e: 6200 1300 |001d: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 3825 | 003482: 2201 2d00 |001f: new-instance v1, Ljava/lang/StringBuilder; // type@002d |
| 3826 | 003486: 7010 c100 0100 |0021: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1 |
| 3827 | 00348c: 1a02 2a00 |0024: const-string v2, "Failure Type + " // string@002a |
| 3828 | 003490: 6e20 c800 2100 |0026: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 3829 | 003496: 6e20 c500 3100 |0029: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5 |
| 3830 | 00349c: 1a02 0100 |002c: const-string v2, " (" // string@0001 |
| 3831 | 0034a0: 6e20 c800 2100 |002e: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 3832 | 0034a6: 6e20 c500 4100 |0031: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5 |
| 3833 | 0034ac: 6e20 c500 5100 |0034: invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5 |
| 3834 | 0034b2: 1a02 0700 |0037: const-string v2, ")" // string@0007 |
| 3835 | 0034b6: 6e20 c800 2100 |0039: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 3836 | 0034bc: 6e10 ca00 0100 |003c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca |
| 3837 | 0034c2: 0c01 |003f: move-result-object v1 |
| 3838 | 0034c4: 6e20 b300 1000 |0040: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 3839 | 0034ca: 0e00 |0043: return-void |
| 3840 | catches : (none) |
| 3841 | positions : |
| 3842 | 0x0000 line=78 |
| 3843 | 0x000a line=79 |
| 3844 | 0x0012 line=80 |
| 3845 | 0x0014 line=81 |
| 3846 | 0x001d line=82 |
| 3847 | 0x0043 line=83 |
| 3848 | locals : |
| 3849 | 0x0000 - 0x0044 reg=3 failureType I |
| 3850 | 0x0000 - 0x0044 reg=4 x I |
| 3851 | 0x0000 - 0x0044 reg=5 y I |
| 3852 | |
| 3853 | Virtual methods - |
| 3854 | source_file_idx : 151 (TestLinkerMethodMinimalArguments.java) |
| 3855 | |
| 3856 | Class #11 header: |
| 3857 | class_idx : 16 |
| 3858 | access_flags : 1 (0x0001) |
| 3859 | superclass_idx : 9 |
| 3860 | interfaces_off : 0 (0x000000) |
| 3861 | source_file_idx : 153 |
| 3862 | annotations_off : 31220 (0x0079f4) |
| 3863 | class_data_off : 29445 (0x007305) |
| 3864 | static_fields_size : 1 |
| 3865 | instance_fields_size: 0 |
| 3866 | direct_methods_size : 6 |
| 3867 | virtual_methods_size: 1 |
| 3868 | |
| 3869 | Class #11 annotations: |
| 3870 | Annotations on method #124 'add' |
| 3871 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestLinkerMethodMultipleArgumentTypes; name="linkerMethod" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; I I I I I F D Ljava/lang/String; Ljava/lang/Class; J } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; intValue={ -1 } Lannotations/Constant; intValue={ 1 } Lannotations/Constant; intValue={ 97 } Lannotations/Constant; intValue={ 1024 } Lannotations/Constant; intValue={ 1 } Lannotations/Constant; floatValue={ 11.1 } Lannotations/Constant; doubleValue={ 2.2 } Lannotations/Constant; stringValue={ "Hello" } Lannotations/Constant; classValue={ LTestLinkerMethodMultipleArgumentTypes; } Lannotations/Constant; longValue={ 123456789 } } fieldOrMethodName="_add" parameterTypes={ I I } returnType=I |
| 3872 | Annotations on method #131 'linkerMethod' |
| 3873 | VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "(" "Ljava/lang/invoke/MethodHandles$Lookup;" "Ljava/lang/String;" "Ljava/lang/invoke/MethodType;" "IIIIIFD" "Ljava/lang/String;" "Ljava/lang/Class<" "*>;J)" "Ljava/lang/invoke/CallSite;" } |
| 3874 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 3875 | Annotations on method #132 'test' |
| 3876 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 3877 | |
| 3878 | Class #11 - |
| 3879 | Class descriptor : 'LTestLinkerMethodMultipleArgumentTypes;' |
| 3880 | Access flags : 0x0001 (PUBLIC) |
| 3881 | Superclass : 'LTestBase;' |
| 3882 | Interfaces - |
| 3883 | Static fields - |
| 3884 | #0 : (in LTestLinkerMethodMultipleArgumentTypes;) |
| 3885 | name : 'bootstrapRunCount' |
| 3886 | type : 'I' |
| 3887 | access : 0x000a (PRIVATE STATIC) |
| 3888 | Instance fields - |
| 3889 | Direct methods - |
| 3890 | #0 : (in LTestLinkerMethodMultipleArgumentTypes;) |
| 3891 | name : '<clinit>' |
| 3892 | type : '()V' |
| 3893 | access : 0x10008 (STATIC CONSTRUCTOR) |
| 3894 | code - |
| 3895 | registers : 1 |
| 3896 | ins : 0 |
| 3897 | outs : 0 |
| 3898 | insns size : 4 16-bit code units |
| 3899 | 003618: |[003618] TestLinkerMethodMultipleArgumentTypes.<clinit>:()V |
| 3900 | 003628: 1200 |0000: const/4 v0, #int 0 // #0 |
| 3901 | 00362a: 6700 1000 |0001: sput v0, LTestLinkerMethodMultipleArgumentTypes;.bootstrapRunCount:I // field@0010 |
| 3902 | 00362e: 0e00 |0003: return-void |
| 3903 | catches : (none) |
| 3904 | positions : |
| 3905 | 0x0000 line=28 |
| 3906 | locals : |
| 3907 | |
| 3908 | #1 : (in LTestLinkerMethodMultipleArgumentTypes;) |
| 3909 | name : '<init>' |
| 3910 | type : '()V' |
| 3911 | access : 0x10001 (PUBLIC CONSTRUCTOR) |
| 3912 | code - |
| 3913 | registers : 1 |
| 3914 | ins : 1 |
| 3915 | outs : 1 |
| 3916 | insns size : 4 16-bit code units |
| 3917 | 003630: |[003630] TestLinkerMethodMultipleArgumentTypes.<init>:()V |
| 3918 | 003640: 7010 3200 0000 |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032 |
| 3919 | 003646: 0e00 |0003: return-void |
| 3920 | catches : (none) |
| 3921 | positions : |
| 3922 | 0x0000 line=26 |
| 3923 | locals : |
| 3924 | 0x0000 - 0x0004 reg=0 this LTestLinkerMethodMultipleArgumentTypes; |
| 3925 | |
| 3926 | #2 : (in LTestLinkerMethodMultipleArgumentTypes;) |
| 3927 | name : '_add' |
| 3928 | type : '(II)I' |
| 3929 | access : 0x000a (PRIVATE STATIC) |
| 3930 | code - |
| 3931 | registers : 3 |
| 3932 | ins : 2 |
| 3933 | outs : 0 |
| 3934 | insns size : 3 16-bit code units |
| 3935 | 0034e4: |[0034e4] TestLinkerMethodMultipleArgumentTypes._add:(II)I |
| 3936 | 0034f4: 9000 0102 |0000: add-int v0, v1, v2 |
| 3937 | 0034f8: 0f00 |0002: return v0 |
| 3938 | catches : (none) |
| 3939 | positions : |
| 3940 | 0x0000 line=74 |
| 3941 | locals : |
| 3942 | 0x0000 - 0x0003 reg=1 a I |
| 3943 | 0x0000 - 0x0003 reg=2 b I |
| 3944 | |
| 3945 | #3 : (in LTestLinkerMethodMultipleArgumentTypes;) |
| 3946 | name : 'add' |
| 3947 | type : '(II)I' |
| 3948 | access : 0x000a (PRIVATE STATIC) |
| 3949 | code - |
| 3950 | registers : 3 |
| 3951 | ins : 2 |
| 3952 | outs : 0 |
| 3953 | insns size : 5 16-bit code units |
| 3954 | 0034fc: |[0034fc] TestLinkerMethodMultipleArgumentTypes.add:(II)I |
| 3955 | 00350c: 7100 8200 0000 |0000: invoke-static {}, LTestLinkerMethodMultipleArgumentTypes;.assertNotReached:()V // method@0082 |
| 3956 | 003512: 12f0 |0003: const/4 v0, #int -1 // #ff |
| 3957 | 003514: 0f00 |0004: return v0 |
| 3958 | catches : (none) |
| 3959 | positions : |
| 3960 | 0x0000 line=68 |
| 3961 | 0x0003 line=69 |
| 3962 | locals : |
| 3963 | 0x0000 - 0x0005 reg=1 a I |
| 3964 | 0x0000 - 0x0005 reg=2 b I |
| 3965 | |
| 3966 | #4 : (in LTestLinkerMethodMultipleArgumentTypes;) |
| 3967 | name : 'linkerMethod' |
| 3968 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;IIIIIFDLjava/lang/String;Ljava/lang/Class;J)Ljava/lang/invoke/CallSite;' |
| 3969 | access : 0x000a (PRIVATE STATIC) |
| 3970 | code - |
| 3971 | registers : 31 |
| 3972 | ins : 15 |
| 3973 | outs : 4 |
| 3974 | insns size : 119 16-bit code units |
| 3975 | 003518: |[003518] TestLinkerMethodMultipleArgumentTypes.linkerMethod:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;IIIIIFDLjava/lang/String;Ljava/lang/Class;J)Ljava/lang/invoke/CallSite; |
| 3976 | 003528: 0800 1100 |0000: move-object/from16 v0, v17 |
| 3977 | 00352c: 0801 1200 |0002: move-object/from16 v1, v18 |
| 3978 | 003530: 6202 1300 |0004: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 3979 | 003534: 2203 2d00 |0006: new-instance v3, Ljava/lang/StringBuilder; // type@002d |
| 3980 | 003538: 7010 c100 0300 |0008: invoke-direct {v3}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1 |
| 3981 | 00353e: 1a04 6100 |000b: const-string v4, "Linking " // string@0061 |
| 3982 | 003542: 6e20 c800 4300 |000d: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 3983 | 003548: 6e20 c800 0300 |0010: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 3984 | 00354e: 1a04 0000 |0013: const-string v4, " " // string@0000 |
| 3985 | 003552: 6e20 c800 4300 |0015: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8 |
| 3986 | 003558: 6e20 c700 1300 |0018: invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@00c7 |
| 3987 | 00355e: 6e10 ca00 0300 |001b: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca |
| 3988 | 003564: 0c03 |001e: move-result-object v3 |
| 3989 | 003566: 6e20 b300 3200 |001f: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 3990 | 00356c: 12f2 |0022: const/4 v2, #int -1 // #ff |
| 3991 | 00356e: 0203 1300 |0023: move/from16 v3, v19 |
| 3992 | 003572: 7120 7f00 3200 |0025: invoke-static {v2, v3}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(II)V // method@007f |
| 3993 | 003578: 1212 |0028: const/4 v2, #int 1 // #1 |
| 3994 | 00357a: 0204 1400 |0029: move/from16 v4, v20 |
| 3995 | 00357e: 7120 7f00 4200 |002b: invoke-static {v2, v4}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(II)V // method@007f |
| 3996 | 003584: 1305 6100 |002e: const/16 v5, #int 97 // #61 |
| 3997 | 003588: 0206 1500 |0030: move/from16 v6, v21 |
| 3998 | 00358c: 7120 7f00 6500 |0032: invoke-static {v5, v6}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(II)V // method@007f |
| 3999 | 003592: 1305 0004 |0035: const/16 v5, #int 1024 // #400 |
| 4000 | 003596: 0207 1600 |0037: move/from16 v7, v22 |
| 4001 | 00359a: 7120 7f00 7500 |0039: invoke-static {v5, v7}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(II)V // method@007f |
| 4002 | 0035a0: 0205 1700 |003c: move/from16 v5, v23 |
| 4003 | 0035a4: 7120 7f00 5200 |003e: invoke-static {v2, v5}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(II)V // method@007f |
| 4004 | 0035aa: 1402 9a99 3141 |0041: const v2, #float 11.1 // #4131999a |
| 4005 | 0035b0: 0208 1800 |0044: move/from16 v8, v24 |
| 4006 | 0035b4: 7120 7e00 8200 |0046: invoke-static {v2, v8}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(FF)V // method@007e |
| 4007 | 0035ba: 1809 9a99 9999 9999 0140 |0049: const-wide v9, #double 2.2 // #400199999999999a |
| 4008 | 0035c4: 050b 1900 |004e: move-wide/from16 v11, v25 |
| 4009 | 0035c8: 7140 7d00 a9cb |0050: invoke-static {v9, v10, v11, v12}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(DD)V // method@007d |
| 4010 | 0035ce: 1a02 2c00 |0053: const-string v2, "Hello" // string@002c |
| 4011 | 0035d2: 0809 1b00 |0055: move-object/from16 v9, v27 |
| 4012 | 0035d6: 7120 8100 9200 |0057: invoke-static {v2, v9}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@0081 |
| 4013 | 0035dc: 1c02 1000 |005a: const-class v2, LTestLinkerMethodMultipleArgumentTypes; // type@0010 |
| 4014 | 0035e0: 080a 1c00 |005c: move-object/from16 v10, v28 |
| 4015 | 0035e4: 7120 8100 a200 |005e: invoke-static {v2, v10}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@0081 |
| 4016 | 0035ea: 170d 15cd 5b07 |0061: const-wide/32 v13, #float 1.6536e-34 // #075bcd15 |
| 4017 | 0035f0: 0502 1d00 |0064: move-wide/from16 v2, v29 |
| 4018 | 0035f4: 7140 8000 ed32 |0066: invoke-static {v13, v14, v2, v3}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(JJ)V // method@0080 |
| 4019 | 0035fa: 1c0d 1000 |0069: const-class v13, LTestLinkerMethodMultipleArgumentTypes; // type@0010 |
| 4020 | 0035fe: 080e 1000 |006b: move-object/from16 v14, v16 |
| 4021 | 003602: 6e40 d800 de10 |006d: invoke-virtual {v14, v13, v0, v1}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8 |
| 4022 | 003608: 0c0d |0070: move-result-object v13 |
| 4023 | 00360a: 220f 3400 |0071: new-instance v15, Ljava/lang/invoke/ConstantCallSite; // type@0034 |
| 4024 | 00360e: 7020 d200 df00 |0073: invoke-direct {v15, v13}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2 |
| 4025 | 003614: 110f |0076: return-object v15 |
| 4026 | catches : (none) |
| 4027 | positions : |
| 4028 | 0x0000 line=93 |
| 4029 | 0x0022 line=94 |
| 4030 | 0x0028 line=95 |
| 4031 | 0x002e line=96 |
| 4032 | 0x0035 line=97 |
| 4033 | 0x003c line=98 |
| 4034 | 0x0041 line=99 |
| 4035 | 0x0049 line=100 |
| 4036 | 0x0053 line=101 |
| 4037 | 0x005a line=102 |
| 4038 | 0x0061 line=103 |
| 4039 | 0x0069 line=104 |
| 4040 | 0x006b line=105 |
| 4041 | 0x0071 line=106 |
| 4042 | locals : |
| 4043 | 0x0000 - 0x0000 reg=28 (null) Ljava/lang/Class; |
| 4044 | 0x0071 - 0x0077 reg=13 mh_add Ljava/lang/invoke/MethodHandle; |
| 4045 | 0x0000 - 0x0077 reg=16 caller Ljava/lang/invoke/MethodHandles$Lookup; |
| 4046 | 0x0000 - 0x0077 reg=17 name Ljava/lang/String; |
| 4047 | 0x0000 - 0x0077 reg=18 methodType Ljava/lang/invoke/MethodType; |
| 4048 | 0x0000 - 0x0077 reg=19 v1 I |
| 4049 | 0x0000 - 0x0077 reg=20 v2 I |
| 4050 | 0x0000 - 0x0077 reg=21 v3 I |
| 4051 | 0x0000 - 0x0077 reg=22 v4 I |
| 4052 | 0x0000 - 0x0077 reg=23 v5 I |
| 4053 | 0x0000 - 0x0077 reg=24 v6 F |
| 4054 | 0x0000 - 0x0077 reg=25 v7 D |
| 4055 | 0x0000 - 0x0077 reg=27 v8 Ljava/lang/String; |
| 4056 | 0x0000 - 0x0077 reg=28 v9 Ljava/lang/Class; Ljava/lang/Class<*>; |
| 4057 | 0x0000 - 0x0077 reg=29 v10 J |
| 4058 | |
| 4059 | #5 : (in LTestLinkerMethodMultipleArgumentTypes;) |
| 4060 | name : 'test' |
| 4061 | type : '(II)V' |
| 4062 | access : 0x0009 (PUBLIC STATIC) |
| 4063 | code - |
| 4064 | registers : 4 |
| 4065 | ins : 2 |
| 4066 | outs : 2 |
| 4067 | insns size : 17 16-bit code units |
| 4068 | 003648: |[003648] TestLinkerMethodMultipleArgumentTypes.test:(II)V |
| 4069 | 003658: 9000 0203 |0000: add-int v0, v2, v3 |
| 4070 | 00365c: fc20 1c00 3200 |0002: invoke-custom {v2, v3}, call_site@001c |
| 4071 | 003662: 0a01 |0005: move-result v1 |
| 4072 | 003664: 7120 7f00 1000 |0006: invoke-static {v0, v1}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(II)V // method@007f |
| 4073 | 00366a: 6200 1300 |0009: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 4074 | 00366e: 9001 0203 |000b: add-int v1, v2, v3 |
| 4075 | 003672: 6e20 b100 1000 |000d: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(I)V // method@00b1 |
| 4076 | 003678: 0e00 |0010: return-void |
| 4077 | catches : (none) |
| 4078 | positions : |
| 4079 | 0x0000 line=114 |
| 4080 | 0x0009 line=115 |
| 4081 | 0x0010 line=116 |
| 4082 | locals : |
| 4083 | 0x0000 - 0x0011 reg=2 x I |
| 4084 | 0x0000 - 0x0011 reg=3 y I |
| 4085 | |
| 4086 | Virtual methods - |
| 4087 | #0 : (in LTestLinkerMethodMultipleArgumentTypes;) |
| 4088 | name : 'GetBootstrapRunCount' |
| 4089 | type : '()I' |
| 4090 | access : 0x0001 (PUBLIC) |
| 4091 | code - |
| 4092 | registers : 2 |
| 4093 | ins : 1 |
| 4094 | outs : 0 |
| 4095 | insns size : 3 16-bit code units |
| 4096 | 0034cc: |[0034cc] TestLinkerMethodMultipleArgumentTypes.GetBootstrapRunCount:()I |
| 4097 | 0034dc: 6000 1000 |0000: sget v0, LTestLinkerMethodMultipleArgumentTypes;.bootstrapRunCount:I // field@0010 |
| 4098 | 0034e0: 0f00 |0002: return v0 |
| 4099 | catches : (none) |
| 4100 | positions : |
| 4101 | 0x0000 line=110 |
| 4102 | locals : |
| 4103 | 0x0000 - 0x0003 reg=1 this LTestLinkerMethodMultipleArgumentTypes; |
| 4104 | |
| 4105 | source_file_idx : 153 (TestLinkerMethodMultipleArgumentTypes.java) |
| 4106 | |
| 4107 | Class #12 header: |
| 4108 | class_idx : 17 |
| 4109 | access_flags : 0 (0x0000) |
| 4110 | superclass_idx : 9 |
| 4111 | interfaces_off : 0 (0x000000) |
| 4112 | source_file_idx : 154 |
| 4113 | annotations_off : 31260 (0x007a1c) |
| 4114 | class_data_off : 29483 (0x00732b) |
| 4115 | static_fields_size : 0 |
| 4116 | instance_fields_size: 0 |
| 4117 | direct_methods_size : 6 |
| 4118 | virtual_methods_size: 0 |
| 4119 | |
| 4120 | Class #12 annotations: |
| 4121 | Annotations on method #136 'addf' |
| 4122 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LUnrelatedBSM; name="bsm" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; Ljava/lang/Class; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; classValue={ LTestLinkerUnrelatedBSM; } } fieldOrMethodName="_addf" parameterTypes={ F F } returnType=F |
| 4123 | Annotations on method #139 'subf' |
| 4124 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LUnrelatedBSM; name="bsm" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; Ljava/lang/Class; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; classValue={ LTestLinkerUnrelatedBSM; } } fieldOrMethodName="_subf" parameterTypes={ F F } returnType=F |
| 4125 | |
| 4126 | Class #12 - |
| 4127 | Class descriptor : 'LTestLinkerUnrelatedBSM;' |
| 4128 | Access flags : 0x0000 () |
| 4129 | Superclass : 'LTestBase;' |
| 4130 | Interfaces - |
| 4131 | Static fields - |
| 4132 | Instance fields - |
| 4133 | Direct methods - |
| 4134 | #0 : (in LTestLinkerUnrelatedBSM;) |
| 4135 | name : '<init>' |
| 4136 | type : '()V' |
| 4137 | access : 0x10000 (CONSTRUCTOR) |
| 4138 | code - |
| 4139 | registers : 1 |
| 4140 | ins : 1 |
| 4141 | outs : 1 |
| 4142 | insns size : 4 16-bit code units |
| 4143 | 0036e4: |[0036e4] TestLinkerUnrelatedBSM.<init>:()V |
| 4144 | 0036f4: 7010 3200 0000 |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032 |
| 4145 | 0036fa: 0e00 |0003: return-void |
| 4146 | catches : (none) |
| 4147 | positions : |
| 4148 | 0x0000 line=23 |
| 4149 | locals : |
| 4150 | 0x0000 - 0x0004 reg=0 this LTestLinkerUnrelatedBSM; |
| 4151 | |
| 4152 | #1 : (in LTestLinkerUnrelatedBSM;) |
| 4153 | name : '_addf' |
| 4154 | type : '(FF)F' |
| 4155 | access : 0x0009 (PUBLIC STATIC) |
| 4156 | code - |
| 4157 | registers : 3 |
| 4158 | ins : 2 |
| 4159 | outs : 0 |
| 4160 | insns size : 3 16-bit code units |
| 4161 | 00367c: |[00367c] TestLinkerUnrelatedBSM._addf:(FF)F |
| 4162 | 00368c: a600 0102 |0000: add-float v0, v1, v2 |
| 4163 | 003690: 0f00 |0002: return v0 |
| 4164 | catches : (none) |
| 4165 | positions : |
| 4166 | 0x0000 line=47 |
| 4167 | locals : |
| 4168 | 0x0000 - 0x0003 reg=1 a F |
| 4169 | 0x0000 - 0x0003 reg=2 b F |
| 4170 | |
| 4171 | #2 : (in LTestLinkerUnrelatedBSM;) |
| 4172 | name : '_subf' |
| 4173 | type : '(FF)F' |
| 4174 | access : 0x000a (PRIVATE STATIC) |
| 4175 | code - |
| 4176 | registers : 3 |
| 4177 | ins : 2 |
| 4178 | outs : 0 |
| 4179 | insns size : 3 16-bit code units |
| 4180 | 003694: |[003694] TestLinkerUnrelatedBSM._subf:(FF)F |
| 4181 | 0036a4: a700 0102 |0000: sub-float v0, v1, v2 |
| 4182 | 0036a8: 0f00 |0002: return v0 |
| 4183 | catches : (none) |
| 4184 | positions : |
| 4185 | 0x0000 line=73 |
| 4186 | locals : |
| 4187 | 0x0000 - 0x0003 reg=1 a F |
| 4188 | 0x0000 - 0x0003 reg=2 b F |
| 4189 | |
| 4190 | #3 : (in LTestLinkerUnrelatedBSM;) |
| 4191 | name : 'addf' |
| 4192 | type : '(FF)F' |
| 4193 | access : 0x000a (PRIVATE STATIC) |
| 4194 | code - |
| 4195 | registers : 3 |
| 4196 | ins : 2 |
| 4197 | outs : 0 |
| 4198 | insns size : 5 16-bit code units |
| 4199 | 0036ac: |[0036ac] TestLinkerUnrelatedBSM.addf:(FF)F |
| 4200 | 0036bc: 7100 8a00 0000 |0000: invoke-static {}, LTestLinkerUnrelatedBSM;.assertNotReached:()V // method@008a |
| 4201 | 0036c2: 1210 |0003: const/4 v0, #int 1 // #1 |
| 4202 | 0036c4: 0f00 |0004: return v0 |
| 4203 | catches : (none) |
| 4204 | positions : |
| 4205 | 0x0000 line=42 |
| 4206 | 0x0003 line=43 |
| 4207 | locals : |
| 4208 | 0x0000 - 0x0005 reg=1 a F |
| 4209 | 0x0000 - 0x0005 reg=2 b F |
| 4210 | |
| 4211 | #4 : (in LTestLinkerUnrelatedBSM;) |
| 4212 | name : 'subf' |
| 4213 | type : '(FF)F' |
| 4214 | access : 0x000a (PRIVATE STATIC) |
| 4215 | code - |
| 4216 | registers : 3 |
| 4217 | ins : 2 |
| 4218 | outs : 0 |
| 4219 | insns size : 5 16-bit code units |
| 4220 | 0036c8: |[0036c8] TestLinkerUnrelatedBSM.subf:(FF)F |
| 4221 | 0036d8: 7100 8a00 0000 |0000: invoke-static {}, LTestLinkerUnrelatedBSM;.assertNotReached:()V // method@008a |
| 4222 | 0036de: 1210 |0003: const/4 v0, #int 1 // #1 |
| 4223 | 0036e0: 0f00 |0004: return v0 |
| 4224 | catches : (none) |
| 4225 | positions : |
| 4226 | 0x0000 line=68 |
| 4227 | 0x0003 line=69 |
| 4228 | locals : |
| 4229 | 0x0000 - 0x0005 reg=1 a F |
| 4230 | 0x0000 - 0x0005 reg=2 b F |
| 4231 | |
| 4232 | #5 : (in LTestLinkerUnrelatedBSM;) |
| 4233 | name : 'test' |
| 4234 | type : '()V' |
| 4235 | access : 0x0009 (PUBLIC STATIC) |
| 4236 | code - |
| 4237 | registers : 4 |
| 4238 | ins : 0 |
| 4239 | outs : 2 |
| 4240 | insns size : 34 16-bit code units |
| 4241 | 0036fc: |[0036fc] TestLinkerUnrelatedBSM.test:()V |
| 4242 | 00370c: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 4243 | 003710: 1c01 1100 |0002: const-class v1, LTestLinkerUnrelatedBSM; // type@0011 |
| 4244 | 003714: 6e10 b700 0100 |0004: invoke-virtual {v1}, Ljava/lang/Class;.getName:()Ljava/lang/String; // method@00b7 |
| 4245 | 00371a: 0c01 |0007: move-result-object v1 |
| 4246 | 00371c: 6e20 b300 1000 |0008: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 4247 | 003722: 1500 003f |000b: const/high16 v0, #int 1056964608 // #3f00 |
| 4248 | 003726: 1501 0040 |000d: const/high16 v1, #int 1073741824 // #4000 |
| 4249 | 00372a: fc20 1d00 0100 |000f: invoke-custom {v1, v0}, call_site@001d |
| 4250 | 003730: 0a02 |0012: move-result v2 |
| 4251 | 003732: 1503 2040 |0013: const/high16 v3, #int 1075838976 // #4020 |
| 4252 | 003736: 7120 8900 2300 |0015: invoke-static {v3, v2}, LTestLinkerUnrelatedBSM;.assertEquals:(FF)V // method@0089 |
| 4253 | 00373c: fc20 1e00 0100 |0018: invoke-custom {v1, v0}, call_site@001e |
| 4254 | 003742: 0a00 |001b: move-result v0 |
| 4255 | 003744: 1501 c03f |001c: const/high16 v1, #int 1069547520 // #3fc0 |
| 4256 | 003748: 7120 8900 0100 |001e: invoke-static {v1, v0}, LTestLinkerUnrelatedBSM;.assertEquals:(FF)V // method@0089 |
| 4257 | 00374e: 0e00 |0021: return-void |
| 4258 | catches : (none) |
| 4259 | positions : |
| 4260 | 0x0000 line=77 |
| 4261 | 0x000b line=78 |
| 4262 | 0x0018 line=79 |
| 4263 | 0x0021 line=80 |
| 4264 | locals : |
| 4265 | |
| 4266 | Virtual methods - |
| 4267 | source_file_idx : 154 (TestLinkerUnrelatedBSM.java) |
| 4268 | |
| 4269 | Class #13 header: |
| 4270 | class_idx : 18 |
| 4271 | access_flags : 1 (0x0001) |
| 4272 | superclass_idx : 9 |
| 4273 | interfaces_off : 0 (0x000000) |
| 4274 | source_file_idx : 156 |
| 4275 | annotations_off : 31292 (0x007a3c) |
| 4276 | class_data_off : 29514 (0x00734a) |
| 4277 | static_fields_size : 0 |
| 4278 | instance_fields_size: 0 |
| 4279 | direct_methods_size : 27 |
| 4280 | virtual_methods_size: 0 |
| 4281 | |
| 4282 | Class #13 annotations: |
| 4283 | Annotations on method #143 'bsmWithBoxedArray' |
| 4284 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 4285 | Annotations on method #144 'bsmWithClassAndFloatArray' |
| 4286 | VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "(" "Ljava/lang/invoke/MethodHandles$Lookup;" "Ljava/lang/String;" "Ljava/lang/invoke/MethodType;" "Ljava/lang/Class<" "*>;[F)" "Ljava/lang/invoke/CallSite;" } |
| 4287 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 4288 | Annotations on method #145 'bsmWithClassArray' |
| 4289 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 4290 | Annotations on method #146 'bsmWithDoubleArray' |
| 4291 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 4292 | Annotations on method #147 'bsmWithFloatAndLongArray' |
| 4293 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 4294 | Annotations on method #148 'bsmWithIntAndStringArray' |
| 4295 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 4296 | Annotations on method #149 'bsmWithLongAndIntArray' |
| 4297 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 4298 | Annotations on method #150 'bsmWithStringArray' |
| 4299 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 4300 | Annotations on method #151 'bsmWithWiderArray' |
| 4301 | VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; } |
| 4302 | Annotations on method #152 'methodA' |
| 4303 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithStringArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; [Ljava/lang/String; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; stringValue={ "Aachen" } Lannotations/Constant; stringValue={ "Aalborg" } Lannotations/Constant; stringValue={ "Aalto" } } fieldOrMethodName="methodA" |
| 4304 | Annotations on method #153 'methodB' |
| 4305 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithStringArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; [Ljava/lang/String; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; stringValue={ "barium" } } fieldOrMethodName="methodB" |
| 4306 | Annotations on method #154 'methodC' |
| 4307 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithStringArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; [Ljava/lang/String; } } fieldOrMethodName="methodC" |
| 4308 | Annotations on method #155 'methodD' |
| 4309 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithIntAndStringArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; I [Ljava/lang/String; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; intValue={ 101 } Lannotations/Constant; stringValue={ "zoo" } Lannotations/Constant; stringValue={ "zoogene" } Lannotations/Constant; stringValue={ "zoogenic" } } fieldOrMethodName="methodD" |
| 4310 | Annotations on method #156 'methodE' |
| 4311 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithIntAndStringArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; I [Ljava/lang/String; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; intValue={ 102 } Lannotations/Constant; stringValue={ "zonic" } } fieldOrMethodName="methodE" |
| 4312 | Annotations on method #157 'methodF' |
| 4313 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithIntAndStringArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; I [Ljava/lang/String; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; intValue={ 103 } } fieldOrMethodName="methodF" |
| 4314 | Annotations on method #158 'methodG' |
| 4315 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithLongAndIntArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; J [I } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; longValue={ 81985529216486895 } Lannotations/Constant; intValue={ 1 } Lannotations/Constant; intValue={ -1 } Lannotations/Constant; intValue={ 2 } Lannotations/Constant; intValue={ -2 } } fieldOrMethodName="methodG" |
| 4316 | Annotations on method #159 'methodH' |
| 4317 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithFloatAndLongArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; F [J } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; floatValue={ -2.71828 } Lannotations/Constant; longValue={ 999999999999 } Lannotations/Constant; longValue={ -8888888888888 } } fieldOrMethodName="methodH" |
| 4318 | Annotations on method #160 'methodI' |
| 4319 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithClassAndFloatArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; Ljava/lang/Class; [F } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; classValue={ Ljava/lang/Throwable; } Lannotations/Constant; floatValue={ 3.40282e+38 } Lannotations/Constant; floatValue={ 1.4013e-45 } Lannotations/Constant; floatValue={ 3.14159 } Lannotations/Constant; floatValue={ -3.14159 } } fieldOrMethodName="methodI" |
| 4320 | Annotations on method #161 'methodJ' |
| 4321 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithDoubleArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; [D } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; doubleValue={ 1.79769e+308 } Lannotations/Constant; doubleValue={ 4.94066e-324 } Lannotations/Constant; doubleValue={ 2.71828 } Lannotations/Constant; doubleValue={ -3.14159 } } fieldOrMethodName="methodJ" |
| 4322 | Annotations on method #162 'methodK' |
| 4323 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithClassArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; [Ljava/lang/Class; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; classValue={ Ljava/lang/Integer; } Lannotations/Constant; classValue={ Ljava/lang/invoke/MethodHandles; } Lannotations/Constant; classValue={ Ljava/util/Arrays; } } fieldOrMethodName="methodK" |
| 4324 | Annotations on method #163 'methodO' |
| 4325 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithIntAndStringArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; I [Ljava/lang/String; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; intValue={ 103 } Lannotations/Constant; intValue={ 104 } } fieldOrMethodName="methodO" |
| 4326 | Annotations on method #164 'methodP' |
| 4327 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithIntAndStringArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; I [Ljava/lang/String; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; intValue={ 103 } Lannotations/Constant; stringValue={ "A" } Lannotations/Constant; stringValue={ "B" } Lannotations/Constant; intValue={ 42 } } fieldOrMethodName="methodP" |
| 4328 | Annotations on method #165 'methodQ' |
| 4329 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithWiderArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; [J } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; intValue={ 103 } Lannotations/Constant; intValue={ 42 } } fieldOrMethodName="methodQ" |
| 4330 | Annotations on method #166 'methodR' |
| 4331 | VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithBoxedArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; [Ljava/lang/Integer; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; intValue={ 1030 } Lannotations/Constant; intValue={ 420 } } fieldOrMethodName="methodR" |
| 4332 | |
| 4333 | Class #13 - |
| 4334 | Class descriptor : 'LTestVariableArityLinkerMethod;' |
| 4335 | Access flags : 0x0001 (PUBLIC) |
| 4336 | Superclass : 'LTestBase;' |
| 4337 | Interfaces - |
| 4338 | Static fields - |
| 4339 | Instance fields - |
| 4340 | Direct methods - |
| 4341 | #0 : (in LTestVariableArityLinkerMethod;) |
| 4342 | name : '<init>' |
| 4343 | type : '()V' |
| 4344 | access : 0x10001 (PUBLIC CONSTRUCTOR) |
| 4345 | code - |
| 4346 | registers : 1 |
| 4347 | ins : 1 |
| 4348 | outs : 1 |
| 4349 | insns size : 4 16-bit code units |
| 4350 | 003a7c: |[003a7c] TestVariableArityLinkerMethod.<init>:()V |
| 4351 | 003a8c: 7010 3200 0000 |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032 |
| 4352 | 003a92: 0e00 |0003: return-void |
| 4353 | catches : (none) |
| 4354 | positions : |
| 4355 | 0x0000 line=27 |
| 4356 | locals : |
| 4357 | 0x0000 - 0x0004 reg=0 this LTestVariableArityLinkerMethod; |
| 4358 | |
| 4359 | #1 : (in LTestVariableArityLinkerMethod;) |
| 4360 | name : 'bsmWithBoxedArray' |
| 4361 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Integer;)Ljava/lang/invoke/CallSite;' |
| 4362 | access : 0x000a (PRIVATE STATIC) |
| 4363 | code - |
| 4364 | registers : 7 |
| 4365 | ins : 4 |
| 4366 | outs : 4 |
| 4367 | insns size : 34 16-bit code units |
| 4368 | 003750: |[003750] TestVariableArityLinkerMethod.bsmWithBoxedArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Integer;)Ljava/lang/invoke/CallSite; |
| 4369 | 003760: 1a00 f800 |0000: const-string v0, "bsmWithBoxedArray" // string@00f8 |
| 4370 | 003764: 1241 |0002: const/4 v1, #int 4 // #4 |
| 4371 | 003766: 2311 4800 |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048 |
| 4372 | 00376a: 1202 |0005: const/4 v2, #int 0 // #0 |
| 4373 | 00376c: 4d03 0102 |0006: aput-object v3, v1, v2 |
| 4374 | 003770: 1212 |0008: const/4 v2, #int 1 // #1 |
| 4375 | 003772: 4d04 0102 |0009: aput-object v4, v1, v2 |
| 4376 | 003776: 1222 |000b: const/4 v2, #int 2 // #2 |
| 4377 | 003778: 4d05 0102 |000c: aput-object v5, v1, v2 |
| 4378 | 00377c: 1232 |000e: const/4 v2, #int 3 // #3 |
| 4379 | 00377e: 4d06 0102 |000f: aput-object v6, v1, v2 |
| 4380 | 003782: 7120 a700 1000 |0011: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7 |
| 4381 | 003788: 6e10 dc00 0300 |0014: invoke-virtual {v3}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc |
| 4382 | 00378e: 0c00 |0017: move-result-object v0 |
| 4383 | 003790: 6e40 d800 0354 |0018: invoke-virtual {v3, v0, v4, v5}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8 |
| 4384 | 003796: 0c00 |001b: move-result-object v0 |
| 4385 | 003798: 2201 3400 |001c: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034 |
| 4386 | 00379c: 7020 d200 0100 |001e: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2 |
| 4387 | 0037a2: 1101 |0021: return-object v1 |
| 4388 | catches : (none) |
| 4389 | positions : |
| 4390 | 0x0000 line=477 |
| 4391 | 0x0014 line=478 |
| 4392 | 0x001c line=479 |
| 4393 | locals : |
| 4394 | 0x001c - 0x0022 reg=0 mh Ljava/lang/invoke/MethodHandle; |
| 4395 | 0x0000 - 0x0022 reg=3 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 4396 | 0x0000 - 0x0022 reg=4 methodName Ljava/lang/String; |
| 4397 | 0x0000 - 0x0022 reg=5 methodType Ljava/lang/invoke/MethodType; |
| 4398 | 0x0000 - 0x0022 reg=6 extraArgs [Ljava/lang/Integer; |
| 4399 | |
| 4400 | #2 : (in LTestVariableArityLinkerMethod;) |
| 4401 | name : 'bsmWithClassAndFloatArray' |
| 4402 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;[F)Ljava/lang/invoke/CallSite;' |
| 4403 | access : 0x008a (PRIVATE STATIC VARARGS) |
| 4404 | code - |
| 4405 | registers : 8 |
| 4406 | ins : 5 |
| 4407 | outs : 4 |
| 4408 | insns size : 37 16-bit code units |
| 4409 | 0037a4: |[0037a4] TestVariableArityLinkerMethod.bsmWithClassAndFloatArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;[F)Ljava/lang/invoke/CallSite; |
| 4410 | 0037b4: 1a00 f900 |0000: const-string v0, "bsmWithClassAndFloatArray" // string@00f9 |
| 4411 | 0037b8: 1251 |0002: const/4 v1, #int 5 // #5 |
| 4412 | 0037ba: 2311 4800 |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048 |
| 4413 | 0037be: 1202 |0005: const/4 v2, #int 0 // #0 |
| 4414 | 0037c0: 4d03 0102 |0006: aput-object v3, v1, v2 |
| 4415 | 0037c4: 1212 |0008: const/4 v2, #int 1 // #1 |
| 4416 | 0037c6: 4d04 0102 |0009: aput-object v4, v1, v2 |
| 4417 | 0037ca: 1222 |000b: const/4 v2, #int 2 // #2 |
| 4418 | 0037cc: 4d05 0102 |000c: aput-object v5, v1, v2 |
| 4419 | 0037d0: 1232 |000e: const/4 v2, #int 3 // #3 |
| 4420 | 0037d2: 4d06 0102 |000f: aput-object v6, v1, v2 |
| 4421 | 0037d6: 1242 |0011: const/4 v2, #int 4 // #4 |
| 4422 | 0037d8: 4d07 0102 |0012: aput-object v7, v1, v2 |
| 4423 | 0037dc: 7120 a700 1000 |0014: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7 |
| 4424 | 0037e2: 6e10 dc00 0300 |0017: invoke-virtual {v3}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc |
| 4425 | 0037e8: 0c00 |001a: move-result-object v0 |
| 4426 | 0037ea: 6e40 d800 0354 |001b: invoke-virtual {v3, v0, v4, v5}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8 |
| 4427 | 0037f0: 0c00 |001e: move-result-object v0 |
| 4428 | 0037f2: 2201 3400 |001f: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034 |
| 4429 | 0037f6: 7020 d200 0100 |0021: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2 |
| 4430 | 0037fc: 1101 |0024: return-object v1 |
| 4431 | catches : (none) |
| 4432 | positions : |
| 4433 | 0x0000 line=294 |
| 4434 | 0x0017 line=296 |
| 4435 | 0x001f line=297 |
| 4436 | locals : |
| 4437 | 0x0000 - 0x0000 reg=6 (null) Ljava/lang/Class; |
| 4438 | 0x001f - 0x0025 reg=0 mh Ljava/lang/invoke/MethodHandle; |
| 4439 | 0x0000 - 0x0025 reg=3 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 4440 | 0x0000 - 0x0025 reg=4 methodName Ljava/lang/String; |
| 4441 | 0x0000 - 0x0025 reg=5 methodType Ljava/lang/invoke/MethodType; |
| 4442 | 0x0000 - 0x0025 reg=6 extraArg Ljava/lang/Class; Ljava/lang/Class<*>; |
| 4443 | 0x0000 - 0x0025 reg=7 arityArgs [F |
| 4444 | |
| 4445 | #3 : (in LTestVariableArityLinkerMethod;) |
| 4446 | name : 'bsmWithClassArray' |
| 4447 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Class;)Ljava/lang/invoke/CallSite;' |
| 4448 | access : 0x008a (PRIVATE STATIC VARARGS) |
| 4449 | code - |
| 4450 | registers : 7 |
| 4451 | ins : 4 |
| 4452 | outs : 4 |
| 4453 | insns size : 34 16-bit code units |
| 4454 | 003800: |[003800] TestVariableArityLinkerMethod.bsmWithClassArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Class;)Ljava/lang/invoke/CallSite; |
| 4455 | 003810: 1a00 fa00 |0000: const-string v0, "bsmWithClassArray" // string@00fa |
| 4456 | 003814: 1241 |0002: const/4 v1, #int 4 // #4 |
| 4457 | 003816: 2311 4800 |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048 |
| 4458 | 00381a: 1202 |0005: const/4 v2, #int 0 // #0 |
| 4459 | 00381c: 4d03 0102 |0006: aput-object v3, v1, v2 |
| 4460 | 003820: 1212 |0008: const/4 v2, #int 1 // #1 |
| 4461 | 003822: 4d04 0102 |0009: aput-object v4, v1, v2 |
| 4462 | 003826: 1222 |000b: const/4 v2, #int 2 // #2 |
| 4463 | 003828: 4d05 0102 |000c: aput-object v5, v1, v2 |
| 4464 | 00382c: 1232 |000e: const/4 v2, #int 3 // #3 |
| 4465 | 00382e: 4d06 0102 |000f: aput-object v6, v1, v2 |
| 4466 | 003832: 7120 a700 1000 |0011: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7 |
| 4467 | 003838: 6e10 dc00 0300 |0014: invoke-virtual {v3}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc |
| 4468 | 00383e: 0c00 |0017: move-result-object v0 |
| 4469 | 003840: 6e40 d800 0354 |0018: invoke-virtual {v3, v0, v4, v5}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8 |
| 4470 | 003846: 0c00 |001b: move-result-object v0 |
| 4471 | 003848: 2201 3400 |001c: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034 |
| 4472 | 00384c: 7020 d200 0100 |001e: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2 |
| 4473 | 003852: 1101 |0021: return-object v1 |
| 4474 | catches : (none) |
| 4475 | positions : |
| 4476 | 0x0000 line=367 |
| 4477 | 0x0014 line=368 |
| 4478 | 0x001c line=369 |
| 4479 | locals : |
| 4480 | 0x001c - 0x0022 reg=0 mh Ljava/lang/invoke/MethodHandle; |
| 4481 | 0x0000 - 0x0022 reg=3 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 4482 | 0x0000 - 0x0022 reg=4 methodName Ljava/lang/String; |
| 4483 | 0x0000 - 0x0022 reg=5 methodType Ljava/lang/invoke/MethodType; |
| 4484 | 0x0000 - 0x0022 reg=6 arityArgs [Ljava/lang/Class; |
| 4485 | |
| 4486 | #4 : (in LTestVariableArityLinkerMethod;) |
| 4487 | name : 'bsmWithDoubleArray' |
| 4488 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[D)Ljava/lang/invoke/CallSite;' |
| 4489 | access : 0x008a (PRIVATE STATIC VARARGS) |
| 4490 | code - |
| 4491 | registers : 7 |
| 4492 | ins : 4 |
| 4493 | outs : 4 |
| 4494 | insns size : 34 16-bit code units |
| 4495 | 003854: |[003854] TestVariableArityLinkerMethod.bsmWithDoubleArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[D)Ljava/lang/invoke/CallSite; |
| 4496 | 003864: 1a00 fb00 |0000: const-string v0, "bsmWithDoubleArray" // string@00fb |
| 4497 | 003868: 1241 |0002: const/4 v1, #int 4 // #4 |
| 4498 | 00386a: 2311 4800 |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048 |
| 4499 | 00386e: 1202 |0005: const/4 v2, #int 0 // #0 |
| 4500 | 003870: 4d03 0102 |0006: aput-object v3, v1, v2 |
| 4501 | 003874: 1212 |0008: const/4 v2, #int 1 // #1 |
| 4502 | 003876: 4d04 0102 |0009: aput-object v4, v1, v2 |
| 4503 | 00387a: 1222 |000b: const/4 v2, #int 2 // #2 |
| 4504 | 00387c: 4d05 0102 |000c: aput-object v5, v1, v2 |
| 4505 | 003880: 1232 |000e: const/4 v2, #int 3 // #3 |
| 4506 | 003882: 4d06 0102 |000f: aput-object v6, v1, v2 |
| 4507 | 003886: 7120 a700 1000 |0011: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7 |
| 4508 | 00388c: 6e10 dc00 0300 |0014: invoke-virtual {v3}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc |
| 4509 | 003892: 0c00 |0017: move-result-object v0 |
| 4510 | 003894: 6e40 d800 0354 |0018: invoke-virtual {v3, v0, v4, v5}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8 |
| 4511 | 00389a: 0c00 |001b: move-result-object v0 |
| 4512 | 00389c: 2201 3400 |001c: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034 |
| 4513 | 0038a0: 7020 d200 0100 |001e: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2 |
| 4514 | 0038a6: 1101 |0021: return-object v1 |
| 4515 | catches : (none) |
| 4516 | positions : |
| 4517 | 0x0000 line=332 |
| 4518 | 0x0014 line=333 |
| 4519 | 0x001c line=334 |
| 4520 | locals : |
| 4521 | 0x001c - 0x0022 reg=0 mh Ljava/lang/invoke/MethodHandle; |
| 4522 | 0x0000 - 0x0022 reg=3 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 4523 | 0x0000 - 0x0022 reg=4 methodName Ljava/lang/String; |
| 4524 | 0x0000 - 0x0022 reg=5 methodType Ljava/lang/invoke/MethodType; |
| 4525 | 0x0000 - 0x0022 reg=6 arityArgs [D |
| 4526 | |
| 4527 | #5 : (in LTestVariableArityLinkerMethod;) |
| 4528 | name : 'bsmWithFloatAndLongArray' |
| 4529 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;F[J)Ljava/lang/invoke/CallSite;' |
| 4530 | access : 0x008a (PRIVATE STATIC VARARGS) |
| 4531 | code - |
| 4532 | registers : 9 |
| 4533 | ins : 5 |
| 4534 | outs : 4 |
| 4535 | insns size : 41 16-bit code units |
| 4536 | 0038a8: |[0038a8] TestVariableArityLinkerMethod.bsmWithFloatAndLongArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;F[J)Ljava/lang/invoke/CallSite; |
| 4537 | 0038b8: 1a00 fc00 |0000: const-string v0, "bsmWithFloatAndLongArray" // string@00fc |
| 4538 | 0038bc: 1251 |0002: const/4 v1, #int 5 // #5 |
| 4539 | 0038be: 2311 4800 |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048 |
| 4540 | 0038c2: 1202 |0005: const/4 v2, #int 0 // #0 |
| 4541 | 0038c4: 4d04 0102 |0006: aput-object v4, v1, v2 |
| 4542 | 0038c8: 1212 |0008: const/4 v2, #int 1 // #1 |
| 4543 | 0038ca: 4d05 0102 |0009: aput-object v5, v1, v2 |
| 4544 | 0038ce: 1222 |000b: const/4 v2, #int 2 // #2 |
| 4545 | 0038d0: 4d06 0102 |000c: aput-object v6, v1, v2 |
| 4546 | 0038d4: 7110 ba00 0700 |000e: invoke-static {v7}, Ljava/lang/Float;.valueOf:(F)Ljava/lang/Float; // method@00ba |
| 4547 | 0038da: 0c02 |0011: move-result-object v2 |
| 4548 | 0038dc: 1233 |0012: const/4 v3, #int 3 // #3 |
| 4549 | 0038de: 4d02 0103 |0013: aput-object v2, v1, v3 |
| 4550 | 0038e2: 1242 |0015: const/4 v2, #int 4 // #4 |
| 4551 | 0038e4: 4d08 0102 |0016: aput-object v8, v1, v2 |
| 4552 | 0038e8: 7120 a700 1000 |0018: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7 |
| 4553 | 0038ee: 6e10 dc00 0400 |001b: invoke-virtual {v4}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc |
| 4554 | 0038f4: 0c00 |001e: move-result-object v0 |
| 4555 | 0038f6: 6e40 d800 0465 |001f: invoke-virtual {v4, v0, v5, v6}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8 |
| 4556 | 0038fc: 0c00 |0022: move-result-object v0 |
| 4557 | 0038fe: 2201 3400 |0023: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034 |
| 4558 | 003902: 7020 d200 0100 |0025: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2 |
| 4559 | 003908: 1101 |0028: return-object v1 |
| 4560 | catches : (none) |
| 4561 | positions : |
| 4562 | 0x0000 line=257 |
| 4563 | 0x000e line=258 |
| 4564 | 0x0018 line=257 |
| 4565 | 0x001b line=259 |
| 4566 | 0x0023 line=260 |
| 4567 | locals : |
| 4568 | 0x0023 - 0x0029 reg=0 mh Ljava/lang/invoke/MethodHandle; |
| 4569 | 0x0000 - 0x0029 reg=4 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 4570 | 0x0000 - 0x0029 reg=5 methodName Ljava/lang/String; |
| 4571 | 0x0000 - 0x0029 reg=6 methodType Ljava/lang/invoke/MethodType; |
| 4572 | 0x0000 - 0x0029 reg=7 extraArg F |
| 4573 | 0x0000 - 0x0029 reg=8 arityArgs [J |
| 4574 | |
| 4575 | #6 : (in LTestVariableArityLinkerMethod;) |
| 4576 | name : 'bsmWithIntAndStringArray' |
| 4577 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;I[Ljava/lang/String;)Ljava/lang/invoke/CallSite;' |
| 4578 | access : 0x008a (PRIVATE STATIC VARARGS) |
| 4579 | code - |
| 4580 | registers : 9 |
| 4581 | ins : 5 |
| 4582 | outs : 4 |
| 4583 | insns size : 41 16-bit code units |
| 4584 | 00390c: |[00390c] TestVariableArityLinkerMethod.bsmWithIntAndStringArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;I[Ljava/lang/String;)Ljava/lang/invoke/CallSite; |
| 4585 | 00391c: 1a00 fd00 |0000: const-string v0, "bsmWithIntAndStringArray" // string@00fd |
| 4586 | 003920: 1251 |0002: const/4 v1, #int 5 // #5 |
| 4587 | 003922: 2311 4800 |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048 |
| 4588 | 003926: 1202 |0005: const/4 v2, #int 0 // #0 |
| 4589 | 003928: 4d04 0102 |0006: aput-object v4, v1, v2 |
| 4590 | 00392c: 1212 |0008: const/4 v2, #int 1 // #1 |
| 4591 | 00392e: 4d05 0102 |0009: aput-object v5, v1, v2 |
| 4592 | 003932: 1222 |000b: const/4 v2, #int 2 // #2 |
| 4593 | 003934: 4d06 0102 |000c: aput-object v6, v1, v2 |
| 4594 | 003938: 7110 bd00 0700 |000e: invoke-static {v7}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@00bd |
| 4595 | 00393e: 0c02 |0011: move-result-object v2 |
| 4596 | 003940: 1233 |0012: const/4 v3, #int 3 // #3 |
| 4597 | 003942: 4d02 0103 |0013: aput-object v2, v1, v3 |
| 4598 | 003946: 1242 |0015: const/4 v2, #int 4 // #4 |
| 4599 | 003948: 4d08 0102 |0016: aput-object v8, v1, v2 |
| 4600 | 00394c: 7120 a700 1000 |0018: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7 |
| 4601 | 003952: 6e10 dc00 0400 |001b: invoke-virtual {v4}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc |
| 4602 | 003958: 0c00 |001e: move-result-object v0 |
| 4603 | 00395a: 6e40 d800 0465 |001f: invoke-virtual {v4, v0, v5, v6}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8 |
| 4604 | 003960: 0c00 |0022: move-result-object v0 |
| 4605 | 003962: 2201 3400 |0023: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034 |
| 4606 | 003966: 7020 d200 0100 |0025: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2 |
| 4607 | 00396c: 1101 |0028: return-object v1 |
| 4608 | catches : (none) |
| 4609 | positions : |
| 4610 | 0x0000 line=133 |
| 4611 | 0x000e line=138 |
| 4612 | 0x0018 line=133 |
| 4613 | 0x001b line=140 |
| 4614 | 0x0023 line=141 |
| 4615 | locals : |
| 4616 | 0x0023 - 0x0029 reg=0 mh Ljava/lang/invoke/MethodHandle; |
| 4617 | 0x0000 - 0x0029 reg=4 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 4618 | 0x0000 - 0x0029 reg=5 methodName Ljava/lang/String; |
| 4619 | 0x0000 - 0x0029 reg=6 methodType Ljava/lang/invoke/MethodType; |
| 4620 | 0x0000 - 0x0029 reg=7 extraInt I |
| 4621 | 0x0000 - 0x0029 reg=8 extraArityArgs [Ljava/lang/String; |
| 4622 | |
| 4623 | #7 : (in LTestVariableArityLinkerMethod;) |
| 4624 | name : 'bsmWithLongAndIntArray' |
| 4625 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;J[I)Ljava/lang/invoke/CallSite;' |
| 4626 | access : 0x008a (PRIVATE STATIC VARARGS) |
| 4627 | code - |
| 4628 | registers : 10 |
| 4629 | ins : 6 |
| 4630 | outs : 4 |
| 4631 | insns size : 41 16-bit code units |
| 4632 | 003970: |[003970] TestVariableArityLinkerMethod.bsmWithLongAndIntArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;J[I)Ljava/lang/invoke/CallSite; |
| 4633 | 003980: 1a00 fe00 |0000: const-string v0, "bsmWithLongAndIntArray" // string@00fe |
| 4634 | 003984: 1251 |0002: const/4 v1, #int 5 // #5 |
| 4635 | 003986: 2311 4800 |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048 |
| 4636 | 00398a: 1202 |0005: const/4 v2, #int 0 // #0 |
| 4637 | 00398c: 4d04 0102 |0006: aput-object v4, v1, v2 |
| 4638 | 003990: 1212 |0008: const/4 v2, #int 1 // #1 |
| 4639 | 003992: 4d05 0102 |0009: aput-object v5, v1, v2 |
| 4640 | 003996: 1222 |000b: const/4 v2, #int 2 // #2 |
| 4641 | 003998: 4d06 0102 |000c: aput-object v6, v1, v2 |
| 4642 | 00399c: 7120 be00 8700 |000e: invoke-static {v7, v8}, Ljava/lang/Long;.valueOf:(J)Ljava/lang/Long; // method@00be |
| 4643 | 0039a2: 0c02 |0011: move-result-object v2 |
| 4644 | 0039a4: 1233 |0012: const/4 v3, #int 3 // #3 |
| 4645 | 0039a6: 4d02 0103 |0013: aput-object v2, v1, v3 |
| 4646 | 0039aa: 1242 |0015: const/4 v2, #int 4 // #4 |
| 4647 | 0039ac: 4d09 0102 |0016: aput-object v9, v1, v2 |
| 4648 | 0039b0: 7120 a700 1000 |0018: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7 |
| 4649 | 0039b6: 6e10 dc00 0400 |001b: invoke-virtual {v4}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc |
| 4650 | 0039bc: 0c00 |001e: move-result-object v0 |
| 4651 | 0039be: 6e40 d800 0465 |001f: invoke-virtual {v4, v0, v5, v6}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8 |
| 4652 | 0039c4: 0c00 |0022: move-result-object v0 |
| 4653 | 0039c6: 2201 3400 |0023: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034 |
| 4654 | 0039ca: 7020 d200 0100 |0025: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2 |
| 4655 | 0039d0: 1101 |0028: return-object v1 |
| 4656 | catches : (none) |
| 4657 | positions : |
| 4658 | 0x0000 line=219 |
| 4659 | 0x001b line=220 |
| 4660 | 0x0023 line=221 |
| 4661 | locals : |
| 4662 | 0x0023 - 0x0029 reg=0 mh Ljava/lang/invoke/MethodHandle; |
| 4663 | 0x0000 - 0x0029 reg=4 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 4664 | 0x0000 - 0x0029 reg=5 methodName Ljava/lang/String; |
| 4665 | 0x0000 - 0x0029 reg=6 methodType Ljava/lang/invoke/MethodType; |
| 4666 | 0x0000 - 0x0029 reg=7 extraArg J |
| 4667 | 0x0000 - 0x0029 reg=9 arityArgs [I |
| 4668 | |
| 4669 | #8 : (in LTestVariableArityLinkerMethod;) |
| 4670 | name : 'bsmWithStringArray' |
| 4671 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/String;)Ljava/lang/invoke/CallSite;' |
| 4672 | access : 0x008a (PRIVATE STATIC VARARGS) |
| 4673 | code - |
| 4674 | registers : 7 |
| 4675 | ins : 4 |
| 4676 | outs : 4 |
| 4677 | insns size : 34 16-bit code units |
| 4678 | 0039d4: |[0039d4] TestVariableArityLinkerMethod.bsmWithStringArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/String;)Ljava/lang/invoke/CallSite; |
| 4679 | 0039e4: 1a00 ff00 |0000: const-string v0, "bsmWithStringArray" // string@00ff |
| 4680 | 0039e8: 1241 |0002: const/4 v1, #int 4 // #4 |
| 4681 | 0039ea: 2311 4800 |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048 |
| 4682 | 0039ee: 1202 |0005: const/4 v2, #int 0 // #0 |
| 4683 | 0039f0: 4d03 0102 |0006: aput-object v3, v1, v2 |
| 4684 | 0039f4: 1212 |0008: const/4 v2, #int 1 // #1 |
| 4685 | 0039f6: 4d04 0102 |0009: aput-object v4, v1, v2 |
| 4686 | 0039fa: 1222 |000b: const/4 v2, #int 2 // #2 |
| 4687 | 0039fc: 4d05 0102 |000c: aput-object v5, v1, v2 |
| 4688 | 003a00: 1232 |000e: const/4 v2, #int 3 // #3 |
| 4689 | 003a02: 4d06 0102 |000f: aput-object v6, v1, v2 |
| 4690 | 003a06: 7120 a700 1000 |0011: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7 |
| 4691 | 003a0c: 6e10 dc00 0300 |0014: invoke-virtual {v3}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc |
| 4692 | 003a12: 0c00 |0017: move-result-object v0 |
| 4693 | 003a14: 6e40 d800 0354 |0018: invoke-virtual {v3, v0, v4, v5}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8 |
| 4694 | 003a1a: 0c00 |001b: move-result-object v0 |
| 4695 | 003a1c: 2201 3400 |001c: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034 |
| 4696 | 003a20: 7020 d200 0100 |001e: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2 |
| 4697 | 003a26: 1101 |0021: return-object v1 |
| 4698 | catches : (none) |
| 4699 | positions : |
| 4700 | 0x0000 line=61 |
| 4701 | 0x0014 line=62 |
| 4702 | 0x001c line=63 |
| 4703 | locals : |
| 4704 | 0x001c - 0x0022 reg=0 mh Ljava/lang/invoke/MethodHandle; |
| 4705 | 0x0000 - 0x0022 reg=3 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 4706 | 0x0000 - 0x0022 reg=4 methodName Ljava/lang/String; |
| 4707 | 0x0000 - 0x0022 reg=5 methodType Ljava/lang/invoke/MethodType; |
| 4708 | 0x0000 - 0x0022 reg=6 arityArgs [Ljava/lang/String; |
| 4709 | |
| 4710 | #9 : (in LTestVariableArityLinkerMethod;) |
| 4711 | name : 'bsmWithWiderArray' |
| 4712 | type : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[J)Ljava/lang/invoke/CallSite;' |
| 4713 | access : 0x000a (PRIVATE STATIC) |
| 4714 | code - |
| 4715 | registers : 7 |
| 4716 | ins : 4 |
| 4717 | outs : 4 |
| 4718 | insns size : 34 16-bit code units |
| 4719 | 003a28: |[003a28] TestVariableArityLinkerMethod.bsmWithWiderArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[J)Ljava/lang/invoke/CallSite; |
| 4720 | 003a38: 1a00 0001 |0000: const-string v0, "bsmWithWiderArray" // string@0100 |
| 4721 | 003a3c: 1241 |0002: const/4 v1, #int 4 // #4 |
| 4722 | 003a3e: 2311 4800 |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048 |
| 4723 | 003a42: 1202 |0005: const/4 v2, #int 0 // #0 |
| 4724 | 003a44: 4d03 0102 |0006: aput-object v3, v1, v2 |
| 4725 | 003a48: 1212 |0008: const/4 v2, #int 1 // #1 |
| 4726 | 003a4a: 4d04 0102 |0009: aput-object v4, v1, v2 |
| 4727 | 003a4e: 1222 |000b: const/4 v2, #int 2 // #2 |
| 4728 | 003a50: 4d05 0102 |000c: aput-object v5, v1, v2 |
| 4729 | 003a54: 1232 |000e: const/4 v2, #int 3 // #3 |
| 4730 | 003a56: 4d06 0102 |000f: aput-object v6, v1, v2 |
| 4731 | 003a5a: 7120 a700 1000 |0011: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7 |
| 4732 | 003a60: 6e10 dc00 0300 |0014: invoke-virtual {v3}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc |
| 4733 | 003a66: 0c00 |0017: move-result-object v0 |
| 4734 | 003a68: 6e40 d800 0354 |0018: invoke-virtual {v3, v0, v4, v5}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8 |
| 4735 | 003a6e: 0c00 |001b: move-result-object v0 |
| 4736 | 003a70: 2201 3400 |001c: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034 |
| 4737 | 003a74: 7020 d200 0100 |001e: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2 |
| 4738 | 003a7a: 1101 |0021: return-object v1 |
| 4739 | catches : (none) |
| 4740 | positions : |
| 4741 | 0x0000 line=447 |
| 4742 | 0x0014 line=448 |
| 4743 | 0x001c line=449 |
| 4744 | locals : |
| 4745 | 0x001c - 0x0022 reg=0 mh Ljava/lang/invoke/MethodHandle; |
| 4746 | 0x0000 - 0x0022 reg=3 lookup Ljava/lang/invoke/MethodHandles$Lookup; |
| 4747 | 0x0000 - 0x0022 reg=4 methodName Ljava/lang/String; |
| 4748 | 0x0000 - 0x0022 reg=5 methodType Ljava/lang/invoke/MethodType; |
| 4749 | 0x0000 - 0x0022 reg=6 extraArgs [J |
| 4750 | |
| 4751 | #10 : (in LTestVariableArityLinkerMethod;) |
| 4752 | name : 'methodA' |
| 4753 | type : '()V' |
| 4754 | access : 0x000a (PRIVATE STATIC) |
| 4755 | code - |
| 4756 | registers : 2 |
| 4757 | ins : 0 |
| 4758 | outs : 2 |
| 4759 | insns size : 8 16-bit code units |
| 4760 | 003a94: |[003a94] TestVariableArityLinkerMethod.methodA:()V |
| 4761 | 003aa4: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 4762 | 003aa8: 1a01 7501 |0002: const-string v1, "methodA" // string@0175 |
| 4763 | 003aac: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 4764 | 003ab2: 0e00 |0007: return-void |
| 4765 | catches : (none) |
| 4766 | positions : |
| 4767 | 0x0000 line=86 |
| 4768 | 0x0007 line=87 |
| 4769 | locals : |
| 4770 | |
| 4771 | #11 : (in LTestVariableArityLinkerMethod;) |
| 4772 | name : 'methodB' |
| 4773 | type : '()V' |
| 4774 | access : 0x000a (PRIVATE STATIC) |
| 4775 | code - |
| 4776 | registers : 2 |
| 4777 | ins : 0 |
| 4778 | outs : 2 |
| 4779 | insns size : 8 16-bit code units |
| 4780 | 003ab4: |[003ab4] TestVariableArityLinkerMethod.methodB:()V |
| 4781 | 003ac4: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 4782 | 003ac8: 1a01 7601 |0002: const-string v1, "methodB" // string@0176 |
| 4783 | 003acc: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 4784 | 003ad2: 0e00 |0007: return-void |
| 4785 | catches : (none) |
| 4786 | positions : |
| 4787 | 0x0000 line=105 |
| 4788 | 0x0007 line=106 |
| 4789 | locals : |
| 4790 | |
| 4791 | #12 : (in LTestVariableArityLinkerMethod;) |
| 4792 | name : 'methodC' |
| 4793 | type : '()V' |
| 4794 | access : 0x000a (PRIVATE STATIC) |
| 4795 | code - |
| 4796 | registers : 2 |
| 4797 | ins : 0 |
| 4798 | outs : 2 |
| 4799 | insns size : 8 16-bit code units |
| 4800 | 003ad4: |[003ad4] TestVariableArityLinkerMethod.methodC:()V |
| 4801 | 003ae4: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 4802 | 003ae8: 1a01 7701 |0002: const-string v1, "methodC" // string@0177 |
| 4803 | 003aec: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 4804 | 003af2: 0e00 |0007: return-void |
| 4805 | catches : (none) |
| 4806 | positions : |
| 4807 | 0x0000 line=123 |
| 4808 | 0x0007 line=124 |
| 4809 | locals : |
| 4810 | |
| 4811 | #13 : (in LTestVariableArityLinkerMethod;) |
| 4812 | name : 'methodD' |
| 4813 | type : '()V' |
| 4814 | access : 0x000a (PRIVATE STATIC) |
| 4815 | code - |
| 4816 | registers : 2 |
| 4817 | ins : 0 |
| 4818 | outs : 2 |
| 4819 | insns size : 8 16-bit code units |
| 4820 | 003af4: |[003af4] TestVariableArityLinkerMethod.methodD:()V |
| 4821 | 003b04: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 4822 | 003b08: 1a01 7801 |0002: const-string v1, "methodD" // string@0178 |
| 4823 | 003b0c: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 4824 | 003b12: 0e00 |0007: return-void |
| 4825 | catches : (none) |
| 4826 | positions : |
| 4827 | 0x0000 line=166 |
| 4828 | 0x0007 line=167 |
| 4829 | locals : |
| 4830 | |
| 4831 | #14 : (in LTestVariableArityLinkerMethod;) |
| 4832 | name : 'methodE' |
| 4833 | type : '()V' |
| 4834 | access : 0x000a (PRIVATE STATIC) |
| 4835 | code - |
| 4836 | registers : 2 |
| 4837 | ins : 0 |
| 4838 | outs : 2 |
| 4839 | insns size : 8 16-bit code units |
| 4840 | 003b14: |[003b14] TestVariableArityLinkerMethod.methodE:()V |
| 4841 | 003b24: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 4842 | 003b28: 1a01 7901 |0002: const-string v1, "methodE" // string@0179 |
| 4843 | 003b2c: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 4844 | 003b32: 0e00 |0007: return-void |
| 4845 | catches : (none) |
| 4846 | positions : |
| 4847 | 0x0000 line=189 |
| 4848 | 0x0007 line=190 |
| 4849 | locals : |
| 4850 | |
| 4851 | #15 : (in LTestVariableArityLinkerMethod;) |
| 4852 | name : 'methodF' |
| 4853 | type : '()V' |
| 4854 | access : 0x000a (PRIVATE STATIC) |
| 4855 | code - |
| 4856 | registers : 2 |
| 4857 | ins : 0 |
| 4858 | outs : 2 |
| 4859 | insns size : 8 16-bit code units |
| 4860 | 003b34: |[003b34] TestVariableArityLinkerMethod.methodF:()V |
| 4861 | 003b44: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 4862 | 003b48: 1a01 7a01 |0002: const-string v1, "methodF" // string@017a |
| 4863 | 003b4c: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 4864 | 003b52: 0e00 |0007: return-void |
| 4865 | catches : (none) |
| 4866 | positions : |
| 4867 | 0x0000 line=209 |
| 4868 | 0x0007 line=210 |
| 4869 | locals : |
| 4870 | |
| 4871 | #16 : (in LTestVariableArityLinkerMethod;) |
| 4872 | name : 'methodG' |
| 4873 | type : '()V' |
| 4874 | access : 0x000a (PRIVATE STATIC) |
| 4875 | code - |
| 4876 | registers : 2 |
| 4877 | ins : 0 |
| 4878 | outs : 2 |
| 4879 | insns size : 8 16-bit code units |
| 4880 | 003b54: |[003b54] TestVariableArityLinkerMethod.methodG:()V |
| 4881 | 003b64: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 4882 | 003b68: 1a01 7b01 |0002: const-string v1, "methodG" // string@017b |
| 4883 | 003b6c: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 4884 | 003b72: 0e00 |0007: return-void |
| 4885 | catches : (none) |
| 4886 | positions : |
| 4887 | 0x0000 line=247 |
| 4888 | 0x0007 line=248 |
| 4889 | locals : |
| 4890 | |
| 4891 | #17 : (in LTestVariableArityLinkerMethod;) |
| 4892 | name : 'methodH' |
| 4893 | type : '()V' |
| 4894 | access : 0x000a (PRIVATE STATIC) |
| 4895 | code - |
| 4896 | registers : 2 |
| 4897 | ins : 0 |
| 4898 | outs : 2 |
| 4899 | insns size : 8 16-bit code units |
| 4900 | 003b74: |[003b74] TestVariableArityLinkerMethod.methodH:()V |
| 4901 | 003b84: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 4902 | 003b88: 1a01 7c01 |0002: const-string v1, "methodH" // string@017c |
| 4903 | 003b8c: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 4904 | 003b92: 0e00 |0007: return-void |
| 4905 | catches : (none) |
| 4906 | positions : |
| 4907 | 0x0000 line=284 |
| 4908 | 0x0007 line=285 |
| 4909 | locals : |
| 4910 | |
| 4911 | #18 : (in LTestVariableArityLinkerMethod;) |
| 4912 | name : 'methodI' |
| 4913 | type : '()V' |
| 4914 | access : 0x000a (PRIVATE STATIC) |
| 4915 | code - |
| 4916 | registers : 2 |
| 4917 | ins : 0 |
| 4918 | outs : 2 |
| 4919 | insns size : 8 16-bit code units |
| 4920 | 003b94: |[003b94] TestVariableArityLinkerMethod.methodI:()V |
| 4921 | 003ba4: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 4922 | 003ba8: 1a01 7d01 |0002: const-string v1, "methodI" // string@017d |
| 4923 | 003bac: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 4924 | 003bb2: 0e00 |0007: return-void |
| 4925 | catches : (none) |
| 4926 | positions : |
| 4927 | 0x0000 line=323 |
| 4928 | 0x0007 line=324 |
| 4929 | locals : |
| 4930 | |
| 4931 | #19 : (in LTestVariableArityLinkerMethod;) |
| 4932 | name : 'methodJ' |
| 4933 | type : '()V' |
| 4934 | access : 0x000a (PRIVATE STATIC) |
| 4935 | code - |
| 4936 | registers : 2 |
| 4937 | ins : 0 |
| 4938 | outs : 2 |
| 4939 | insns size : 8 16-bit code units |
| 4940 | 003bb4: |[003bb4] TestVariableArityLinkerMethod.methodJ:()V |
| 4941 | 003bc4: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 4942 | 003bc8: 1a01 7e01 |0002: const-string v1, "methodJ" // string@017e |
| 4943 | 003bcc: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 4944 | 003bd2: 0e00 |0007: return-void |
| 4945 | catches : (none) |
| 4946 | positions : |
| 4947 | 0x0000 line=358 |
| 4948 | 0x0007 line=359 |
| 4949 | locals : |
| 4950 | |
| 4951 | #20 : (in LTestVariableArityLinkerMethod;) |
| 4952 | name : 'methodK' |
| 4953 | type : '()V' |
| 4954 | access : 0x000a (PRIVATE STATIC) |
| 4955 | code - |
| 4956 | registers : 2 |
| 4957 | ins : 0 |
| 4958 | outs : 2 |
| 4959 | insns size : 8 16-bit code units |
| 4960 | 003bd4: |[003bd4] TestVariableArityLinkerMethod.methodK:()V |
| 4961 | 003be4: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 4962 | 003be8: 1a01 7f01 |0002: const-string v1, "methodK" // string@017f |
| 4963 | 003bec: 6e20 b300 1000 |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 4964 | 003bf2: 0e00 |0007: return-void |
| 4965 | catches : (none) |
| 4966 | positions : |
| 4967 | 0x0000 line=392 |
| 4968 | 0x0007 line=393 |
| 4969 | locals : |
| 4970 | |
| 4971 | #21 : (in LTestVariableArityLinkerMethod;) |
| 4972 | name : 'methodO' |
| 4973 | type : '()V' |
| 4974 | access : 0x000a (PRIVATE STATIC) |
| 4975 | code - |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 4976 | registers : 0 |
| 4977 | ins : 0 |
| 4978 | outs : 0 |
| 4979 | insns size : 4 16-bit code units |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 4980 | 003bf4: |[003bf4] TestVariableArityLinkerMethod.methodO:()V |
| 4981 | 003c04: 7100 8e00 0000 |0000: invoke-static {}, LTestVariableArityLinkerMethod;.assertNotReached:()V // method@008e |
| 4982 | 003c0a: 0e00 |0003: return-void |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 4983 | catches : (none) |
| 4984 | positions : |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 4985 | 0x0000 line=413 |
| 4986 | 0x0003 line=414 |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 4987 | locals : |
| 4988 | |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 4989 | #22 : (in LTestVariableArityLinkerMethod;) |
| 4990 | name : 'methodP' |
| 4991 | type : '()V' |
| 4992 | access : 0x000a (PRIVATE STATIC) |
| 4993 | code - |
| 4994 | registers : 0 |
| 4995 | ins : 0 |
| 4996 | outs : 0 |
| 4997 | insns size : 4 16-bit code units |
| 4998 | 003c0c: |[003c0c] TestVariableArityLinkerMethod.methodP:()V |
| 4999 | 003c1c: 7100 8e00 0000 |0000: invoke-static {}, LTestVariableArityLinkerMethod;.assertNotReached:()V // method@008e |
| 5000 | 003c22: 0e00 |0003: return-void |
| 5001 | catches : (none) |
| 5002 | positions : |
| 5003 | 0x0000 line=441 |
| 5004 | 0x0003 line=442 |
| 5005 | locals : |
| 5006 | |
| 5007 | #23 : (in LTestVariableArityLinkerMethod;) |
| 5008 | name : 'methodQ' |
| 5009 | type : '()V' |
| 5010 | access : 0x000a (PRIVATE STATIC) |
| 5011 | code - |
| 5012 | registers : 0 |
| 5013 | ins : 0 |
| 5014 | outs : 0 |
| 5015 | insns size : 4 16-bit code units |
| 5016 | 003c24: |[003c24] TestVariableArityLinkerMethod.methodQ:()V |
| 5017 | 003c34: 7100 8e00 0000 |0000: invoke-static {}, LTestVariableArityLinkerMethod;.assertNotReached:()V // method@008e |
| 5018 | 003c3a: 0e00 |0003: return-void |
| 5019 | catches : (none) |
| 5020 | positions : |
| 5021 | 0x0000 line=468 |
| 5022 | 0x0003 line=469 |
| 5023 | locals : |
| 5024 | |
| 5025 | #24 : (in LTestVariableArityLinkerMethod;) |
| 5026 | name : 'methodR' |
| 5027 | type : '()V' |
| 5028 | access : 0x000a (PRIVATE STATIC) |
| 5029 | code - |
| 5030 | registers : 0 |
| 5031 | ins : 0 |
| 5032 | outs : 0 |
| 5033 | insns size : 4 16-bit code units |
| 5034 | 003c3c: |[003c3c] TestVariableArityLinkerMethod.methodR:()V |
| 5035 | 003c4c: 7100 8e00 0000 |0000: invoke-static {}, LTestVariableArityLinkerMethod;.assertNotReached:()V // method@008e |
| 5036 | 003c52: 0e00 |0003: return-void |
| 5037 | catches : (none) |
| 5038 | positions : |
| 5039 | 0x0000 line=501 |
| 5040 | 0x0003 line=502 |
| 5041 | locals : |
| 5042 | |
| 5043 | #25 : (in LTestVariableArityLinkerMethod;) |
| 5044 | name : 'printBsmArgs' |
| 5045 | type : '(Ljava/lang/String;[Ljava/lang/Object;)V' |
| 5046 | access : 0x008a (PRIVATE STATIC VARARGS) |
| 5047 | code - |
| 5048 | registers : 6 |
| 5049 | ins : 2 |
| 5050 | outs : 2 |
| 5051 | insns size : 159 16-bit code units |
| 5052 | 003c54: |[003c54] TestVariableArityLinkerMethod.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V |
| 5053 | 003c64: 6200 1300 |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5054 | 003c68: 6e20 b000 4000 |0002: invoke-virtual {v0, v4}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 5055 | 003c6e: 6200 1300 |0005: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5056 | 003c72: 1a01 0600 |0007: const-string v1, "(" // string@0006 |
| 5057 | 003c76: 6e20 b000 1000 |0009: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 5058 | 003c7c: 1200 |000c: const/4 v0, #int 0 // #0 |
| 5059 | 003c7e: 2151 |000d: array-length v1, v5 |
| 5060 | 003c80: 3510 8900 |000e: if-ge v0, v1, 0097 // +0089 |
| 5061 | 003c84: 3800 0900 |0010: if-eqz v0, 0019 // +0009 |
| 5062 | 003c88: 6201 1300 |0012: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5063 | 003c8c: 1a02 0c00 |0014: const-string v2, ", " // string@000c |
| 5064 | 003c90: 6e20 b000 2100 |0016: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 5065 | 003c96: 4601 0500 |0019: aget-object v1, v5, v0 |
| 5066 | 003c9a: 3801 7100 |001b: if-eqz v1, 008c // +0071 |
| 5067 | 003c9e: 4601 0500 |001d: aget-object v1, v5, v0 |
| 5068 | 003ca2: 6e10 c000 0100 |001f: invoke-virtual {v1}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 5069 | 003ca8: 0c01 |0022: move-result-object v1 |
| 5070 | 003caa: 6e10 b800 0100 |0023: invoke-virtual {v1}, Ljava/lang/Class;.isArray:()Z // method@00b8 |
| 5071 | 003cb0: 0a01 |0026: move-result v1 |
| 5072 | 003cb2: 3801 6500 |0027: if-eqz v1, 008c // +0065 |
| 5073 | 003cb6: 4601 0500 |0029: aget-object v1, v5, v0 |
| 5074 | 003cba: 6e10 c000 0100 |002b: invoke-virtual {v1}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 5075 | 003cc0: 0c02 |002e: move-result-object v2 |
| 5076 | 003cc2: 1c03 4400 |002f: const-class v3, [I // type@0044 |
| 5077 | 003cc6: 3332 0f00 |0031: if-ne v2, v3, 0040 // +000f |
| 5078 | 003cca: 6202 1300 |0033: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5079 | 003cce: 0713 |0035: move-object v3, v1 |
| 5080 | 003cd0: 1f03 4400 |0036: check-cast v3, [I // type@0044 |
| 5081 | 003cd4: 7110 e900 0300 |0038: invoke-static {v3}, Ljava/util/Arrays;.toString:([I)Ljava/lang/String; // method@00e9 |
| 5082 | 003cda: 0c03 |003b: move-result-object v3 |
| 5083 | 003cdc: 6e20 b000 3200 |003c: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 5084 | 003ce2: 284c |003f: goto 008b // +004c |
| 5085 | 003ce4: 6e10 c000 0100 |0040: invoke-virtual {v1}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 5086 | 003cea: 0c02 |0043: move-result-object v2 |
| 5087 | 003cec: 1c03 4500 |0044: const-class v3, [J // type@0045 |
| 5088 | 003cf0: 3332 0f00 |0046: if-ne v2, v3, 0055 // +000f |
| 5089 | 003cf4: 6202 1300 |0048: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5090 | 003cf8: 0713 |004a: move-object v3, v1 |
| 5091 | 003cfa: 1f03 4500 |004b: check-cast v3, [J // type@0045 |
| 5092 | 003cfe: 7110 ea00 0300 |004d: invoke-static {v3}, Ljava/util/Arrays;.toString:([J)Ljava/lang/String; // method@00ea |
| 5093 | 003d04: 0c03 |0050: move-result-object v3 |
| 5094 | 003d06: 6e20 b000 3200 |0051: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 5095 | 003d0c: 2837 |0054: goto 008b // +0037 |
| 5096 | 003d0e: 6e10 c000 0100 |0055: invoke-virtual {v1}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 5097 | 003d14: 0c02 |0058: move-result-object v2 |
| 5098 | 003d16: 1c03 4300 |0059: const-class v3, [F // type@0043 |
| 5099 | 003d1a: 3332 0f00 |005b: if-ne v2, v3, 006a // +000f |
| 5100 | 003d1e: 6202 1300 |005d: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5101 | 003d22: 0713 |005f: move-object v3, v1 |
| 5102 | 003d24: 1f03 4300 |0060: check-cast v3, [F // type@0043 |
| 5103 | 003d28: 7110 e800 0300 |0062: invoke-static {v3}, Ljava/util/Arrays;.toString:([F)Ljava/lang/String; // method@00e8 |
| 5104 | 003d2e: 0c03 |0065: move-result-object v3 |
| 5105 | 003d30: 6e20 b000 3200 |0066: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 5106 | 003d36: 2822 |0069: goto 008b // +0022 |
| 5107 | 003d38: 6e10 c000 0100 |006a: invoke-virtual {v1}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 5108 | 003d3e: 0c02 |006d: move-result-object v2 |
| 5109 | 003d40: 1c03 4200 |006e: const-class v3, [D // type@0042 |
| 5110 | 003d44: 3332 0f00 |0070: if-ne v2, v3, 007f // +000f |
| 5111 | 003d48: 6202 1300 |0072: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5112 | 003d4c: 0713 |0074: move-object v3, v1 |
| 5113 | 003d4e: 1f03 4200 |0075: check-cast v3, [D // type@0042 |
| 5114 | 003d52: 7110 e700 0300 |0077: invoke-static {v3}, Ljava/util/Arrays;.toString:([D)Ljava/lang/String; // method@00e7 |
| 5115 | 003d58: 0c03 |007a: move-result-object v3 |
| 5116 | 003d5a: 6e20 b000 3200 |007b: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 5117 | 003d60: 280d |007e: goto 008b // +000d |
| 5118 | 003d62: 6202 1300 |007f: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5119 | 003d66: 0713 |0081: move-object v3, v1 |
| 5120 | 003d68: 1f03 4800 |0082: check-cast v3, [Ljava/lang/Object; // type@0048 |
| 5121 | 003d6c: 7110 eb00 0300 |0084: invoke-static {v3}, Ljava/util/Arrays;.toString:([Ljava/lang/Object;)Ljava/lang/String; // method@00eb |
| 5122 | 003d72: 0c03 |0087: move-result-object v3 |
| 5123 | 003d74: 6e20 b000 3200 |0088: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 5124 | 003d7a: 2808 |008b: goto 0093 // +0008 |
| 5125 | 003d7c: 6201 1300 |008c: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5126 | 003d80: 4602 0500 |008e: aget-object v2, v5, v0 |
| 5127 | 003d84: 6e20 af00 2100 |0090: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af |
| 5128 | 003d8a: d800 0001 |0093: add-int/lit8 v0, v0, #int 1 // #01 |
| 5129 | 003d8e: 2900 78ff |0095: goto/16 000d // -0088 |
| 5130 | 003d92: 6200 1300 |0097: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5131 | 003d96: 1a01 0800 |0099: const-string v1, ");" // string@0008 |
| 5132 | 003d9a: 6e20 b300 1000 |009b: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3 |
| 5133 | 003da0: 0e00 |009e: return-void |
| 5134 | catches : (none) |
| 5135 | positions : |
| 5136 | 0x0000 line=29 |
| 5137 | 0x0005 line=30 |
| 5138 | 0x000c line=31 |
| 5139 | 0x0010 line=32 |
| 5140 | 0x0012 line=33 |
| 5141 | 0x0019 line=35 |
| 5142 | 0x0029 line=36 |
| 5143 | 0x002b line=37 |
| 5144 | 0x0033 line=38 |
| 5145 | 0x0040 line=39 |
| 5146 | 0x0048 line=40 |
| 5147 | 0x0055 line=41 |
| 5148 | 0x005d line=42 |
| 5149 | 0x006a line=43 |
| 5150 | 0x0072 line=44 |
| 5151 | 0x007f line=46 |
| 5152 | 0x008b line=48 |
| 5153 | 0x008c line=49 |
| 5154 | 0x0093 line=31 |
| 5155 | 0x0097 line=52 |
| 5156 | 0x009e line=53 |
| 5157 | locals : |
| 5158 | 0x002b - 0x008b reg=1 array Ljava/lang/Object; |
| 5159 | 0x000d - 0x0097 reg=0 i I |
| 5160 | 0x0000 - 0x009f reg=4 method Ljava/lang/String; |
| 5161 | 0x0000 - 0x009f reg=5 args [Ljava/lang/Object; |
| 5162 | |
| 5163 | #26 : (in LTestVariableArityLinkerMethod;) |
| 5164 | name : 'test' |
| 5165 | type : '()V' |
| 5166 | access : 0x0008 (STATIC) |
| 5167 | code - |
| 5168 | registers : 3 |
| 5169 | ins : 0 |
| 5170 | outs : 2 |
| 5171 | insns size : 224 16-bit code units |
| 5172 | 003da4: |[003da4] TestVariableArityLinkerMethod.test:()V |
| 5173 | 003db4: 1200 |0000: const/4 v0, #int 0 // #0 |
| 5174 | 003db6: 0101 |0001: move v1, v0 |
| 5175 | 003db8: 1222 |0002: const/4 v2, #int 2 // #2 |
| 5176 | 003dba: 3521 0e00 |0003: if-ge v1, v2, 0011 // +000e |
| 5177 | 003dbe: fc00 1f00 0000 |0005: invoke-custom {}, call_site@001f |
| 5178 | 003dc4: fc00 2000 0000 |0008: invoke-custom {}, call_site@0020 |
| 5179 | 003dca: fc00 2100 0000 |000b: invoke-custom {}, call_site@0021 |
| 5180 | 003dd0: d801 0101 |000e: add-int/lit8 v1, v1, #int 1 // #01 |
| 5181 | 003dd4: 28f2 |0010: goto 0002 // -000e |
| 5182 | 003dd6: 0000 |0011: nop // spacer |
| 5183 | 003dd8: 3520 0e00 |0012: if-ge v0, v2, 0020 // +000e |
| 5184 | 003ddc: fc00 2200 0000 |0014: invoke-custom {}, call_site@0022 |
| 5185 | 003de2: fc00 2300 0000 |0017: invoke-custom {}, call_site@0023 |
| 5186 | 003de8: fc00 2400 0000 |001a: invoke-custom {}, call_site@0024 |
| 5187 | 003dee: d800 0001 |001d: add-int/lit8 v0, v0, #int 1 // #01 |
| 5188 | 003df2: 28f3 |001f: goto 0012 // -000d |
| 5189 | 003df4: fc00 2500 0000 |0020: invoke-custom {}, call_site@0025 |
| 5190 | 003dfa: fc00 2600 0000 |0023: invoke-custom {}, call_site@0026 |
| 5191 | 003e00: fc00 2700 0000 |0026: invoke-custom {}, call_site@0027 |
| 5192 | 003e06: fc00 2800 0000 |0029: invoke-custom {}, call_site@0028 |
| 5193 | 003e0c: fc00 2900 0000 |002c: invoke-custom {}, call_site@0029 |
| 5194 | 003e12: fc00 2a00 0000 |002f: invoke-custom {}, call_site@002a |
| 5195 | 003e18: 7100 8e00 0000 |0032: invoke-static {}, LTestVariableArityLinkerMethod;.assertNotReached:()V // method@008e |
| 5196 | 003e1e: 2826 |0035: goto 005b // +0026 |
| 5197 | 003e20: 0d00 |0036: move-exception v0 |
| 5198 | 003e22: 6201 1300 |0037: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5199 | 003e26: 1a02 8201 |0039: const-string v2, "methodO => " // string@0182 |
| 5200 | 003e2a: 6e20 b000 2100 |003b: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 5201 | 003e30: 6201 1300 |003e: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5202 | 003e34: 6e10 c000 0000 |0040: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 5203 | 003e3a: 0c02 |0043: move-result-object v2 |
| 5204 | 003e3c: 6e20 af00 2100 |0044: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af |
| 5205 | 003e42: 6201 1300 |0047: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5206 | 003e46: 1a02 0200 |0049: const-string v2, " => " // string@0002 |
| 5207 | 003e4a: 6e20 b000 2100 |004b: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 5208 | 003e50: 6201 1300 |004e: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5209 | 003e54: 6e10 b600 0000 |0050: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6 |
| 5210 | 003e5a: 0c02 |0053: move-result-object v2 |
| 5211 | 003e5c: 6e10 c000 0200 |0054: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 5212 | 003e62: 0c02 |0057: move-result-object v2 |
| 5213 | 003e64: 6e20 b200 2100 |0058: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2 |
| 5214 | 003e6a: fc00 2b00 0000 |005b: invoke-custom {}, call_site@002b |
| 5215 | 003e70: 7100 8e00 0000 |005e: invoke-static {}, LTestVariableArityLinkerMethod;.assertNotReached:()V // method@008e |
| 5216 | 003e76: 2826 |0061: goto 0087 // +0026 |
| 5217 | 003e78: 0d00 |0062: move-exception v0 |
| 5218 | 003e7a: 6201 1300 |0063: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5219 | 003e7e: 1a02 8401 |0065: const-string v2, "methodP => " // string@0184 |
| 5220 | 003e82: 6e20 b000 2100 |0067: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 5221 | 003e88: 6201 1300 |006a: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5222 | 003e8c: 6e10 c000 0000 |006c: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 5223 | 003e92: 0c02 |006f: move-result-object v2 |
| 5224 | 003e94: 6e20 af00 2100 |0070: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af |
| 5225 | 003e9a: 6201 1300 |0073: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5226 | 003e9e: 1a02 0200 |0075: const-string v2, " => " // string@0002 |
| 5227 | 003ea2: 6e20 b000 2100 |0077: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 5228 | 003ea8: 6201 1300 |007a: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5229 | 003eac: 6e10 b600 0000 |007c: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6 |
| 5230 | 003eb2: 0c02 |007f: move-result-object v2 |
| 5231 | 003eb4: 6e10 c000 0200 |0080: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 5232 | 003eba: 0c02 |0083: move-result-object v2 |
| 5233 | 003ebc: 6e20 b200 2100 |0084: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2 |
| 5234 | 003ec2: fc00 2c00 0000 |0087: invoke-custom {}, call_site@002c |
| 5235 | 003ec8: 7100 8e00 0000 |008a: invoke-static {}, LTestVariableArityLinkerMethod;.assertNotReached:()V // method@008e |
| 5236 | 003ece: 2826 |008d: goto 00b3 // +0026 |
| 5237 | 003ed0: 0d00 |008e: move-exception v0 |
| 5238 | 003ed2: 6201 1300 |008f: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5239 | 003ed6: 1a02 8601 |0091: const-string v2, "methodQ => " // string@0186 |
| 5240 | 003eda: 6e20 b000 2100 |0093: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 5241 | 003ee0: 6201 1300 |0096: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5242 | 003ee4: 6e10 c000 0000 |0098: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 5243 | 003eea: 0c02 |009b: move-result-object v2 |
| 5244 | 003eec: 6e20 af00 2100 |009c: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af |
| 5245 | 003ef2: 6201 1300 |009f: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5246 | 003ef6: 1a02 0200 |00a1: const-string v2, " => " // string@0002 |
| 5247 | 003efa: 6e20 b000 2100 |00a3: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 5248 | 003f00: 6201 1300 |00a6: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5249 | 003f04: 6e10 b600 0000 |00a8: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6 |
| 5250 | 003f0a: 0c02 |00ab: move-result-object v2 |
| 5251 | 003f0c: 6e10 c000 0200 |00ac: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 5252 | 003f12: 0c02 |00af: move-result-object v2 |
| 5253 | 003f14: 6e20 b200 2100 |00b0: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2 |
| 5254 | 003f1a: fc00 2d00 0000 |00b3: invoke-custom {}, call_site@002d |
| 5255 | 003f20: 7100 8e00 0000 |00b6: invoke-static {}, LTestVariableArityLinkerMethod;.assertNotReached:()V // method@008e |
| 5256 | 003f26: 2826 |00b9: goto 00df // +0026 |
| 5257 | 003f28: 0d00 |00ba: move-exception v0 |
| 5258 | 003f2a: 6201 1300 |00bb: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5259 | 003f2e: 1a02 8801 |00bd: const-string v2, "methodR => " // string@0188 |
| 5260 | 003f32: 6e20 b000 2100 |00bf: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 5261 | 003f38: 6201 1300 |00c2: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5262 | 003f3c: 6e10 c000 0000 |00c4: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 5263 | 003f42: 0c02 |00c7: move-result-object v2 |
| 5264 | 003f44: 6e20 af00 2100 |00c8: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af |
| 5265 | 003f4a: 6201 1300 |00cb: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5266 | 003f4e: 1a02 0200 |00cd: const-string v2, " => " // string@0002 |
| 5267 | 003f52: 6e20 b000 2100 |00cf: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0 |
| 5268 | 003f58: 6201 1300 |00d2: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013 |
| 5269 | 003f5c: 6e10 b600 0000 |00d4: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6 |
| 5270 | 003f62: 0c02 |00d7: move-result-object v2 |
| 5271 | 003f64: 6e10 c000 0200 |00d8: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0 |
| 5272 | 003f6a: 0c02 |00db: move-result-object v2 |
| 5273 | 003f6c: 6e20 b200 2100 |00dc: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2 |
| 5274 | 003f72: 0e00 |00df: return-void |
| 5275 | catches : 4 |
| 5276 | 0x002f - 0x0035 |
| 5277 | Ljava/lang/BootstrapMethodError; -> 0x0036 |
| 5278 | 0x005b - 0x0061 |
| 5279 | Ljava/lang/BootstrapMethodError; -> 0x0062 |
| 5280 | 0x0087 - 0x008d |
| 5281 | Ljava/lang/BootstrapMethodError; -> 0x008e |
| 5282 | 0x00b3 - 0x00b9 |
| 5283 | Ljava/lang/BootstrapMethodError; -> 0x00ba |
| 5284 | positions : |
| 5285 | 0x0000 line=506 |
| 5286 | 0x0005 line=507 |
| 5287 | 0x0008 line=508 |
| 5288 | 0x000b line=509 |
| 5289 | 0x000e line=506 |
| 5290 | 0x0011 line=511 |
| 5291 | 0x0014 line=512 |
| 5292 | 0x0017 line=513 |
| 5293 | 0x001a line=514 |
| 5294 | 0x001d line=511 |
| 5295 | 0x0020 line=516 |
| 5296 | 0x0023 line=517 |
| 5297 | 0x0026 line=518 |
| 5298 | 0x0029 line=519 |
| 5299 | 0x002c line=520 |
| 5300 | 0x002f line=527 |
| 5301 | 0x0032 line=528 |
| 5302 | 0x0035 line=534 |
| 5303 | 0x0036 line=529 |
| 5304 | 0x0037 line=530 |
| 5305 | 0x003e line=531 |
| 5306 | 0x0047 line=532 |
| 5307 | 0x004e line=533 |
| 5308 | 0x005b line=538 |
| 5309 | 0x005e line=539 |
| 5310 | 0x0061 line=545 |
| 5311 | 0x0062 line=540 |
| 5312 | 0x0063 line=541 |
| 5313 | 0x006a line=542 |
| 5314 | 0x0073 line=543 |
| 5315 | 0x007a line=544 |
| 5316 | 0x0087 line=549 |
| 5317 | 0x008a line=550 |
| 5318 | 0x008d line=556 |
| 5319 | 0x008e line=551 |
| 5320 | 0x008f line=552 |
| 5321 | 0x0096 line=553 |
| 5322 | 0x009f line=554 |
| 5323 | 0x00a6 line=555 |
| 5324 | 0x00b3 line=560 |
| 5325 | 0x00b6 line=561 |
| 5326 | 0x00b9 line=567 |
| 5327 | 0x00ba line=562 |
| 5328 | 0x00bb line=563 |
| 5329 | 0x00c2 line=564 |
| 5330 | 0x00cb line=565 |
| 5331 | 0x00d2 line=566 |
| 5332 | 0x00df line=568 |
| 5333 | locals : |
| 5334 | 0x0002 - 0x0011 reg=1 i I |
| 5335 | 0x0012 - 0x0020 reg=0 i I |
| 5336 | 0x0037 - 0x005b reg=0 expected Ljava/lang/BootstrapMethodError; |
| 5337 | 0x0063 - 0x0087 reg=0 expected Ljava/lang/BootstrapMethodError; |
| 5338 | 0x008f - 0x00b3 reg=0 expected Ljava/lang/BootstrapMethodError; |
| 5339 | 0x00bb - 0x00df reg=0 expected Ljava/lang/BootstrapMethodError; |
| 5340 | |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 5341 | Virtual methods - |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 5342 | source_file_idx : 156 (TestVariableArityLinkerMethod.java) |
Orion Hodson | c069a30 | 2017-01-18 09:23:12 +0000 | [diff] [blame] | 5343 | |
| 5344 | Method handle #0: |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 5345 | type : invoke-static |
| 5346 | target : LTestBadBootstrapArguments; bsm |
| 5347 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;ID)Ljava/lang/invoke/CallSite; |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 5348 | Method handle #1: |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 5349 | type : invoke-static |
| 5350 | target : LTestBadBootstrapArguments; bsm |
| 5351 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;ILjava/lang/String;)Ljava/lang/invoke/CallSite; |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 5352 | Method handle #2: |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 5353 | type : invoke-static |
| 5354 | target : LTestBadBootstrapArguments; bsmDJ |
| 5355 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;DJ)Ljava/lang/invoke/CallSite; |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 5356 | Method handle #3: |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 5357 | type : invoke-static |
| 5358 | target : LTestBadBootstrapArguments; bsmDoubleLong |
| 5359 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Double;Ljava/lang/Long;)Ljava/lang/invoke/CallSite; |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 5360 | Method handle #4: |
Orion Hodson | c069a30 | 2017-01-18 09:23:12 +0000 | [diff] [blame] | 5361 | type : invoke-static |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 5362 | target : LTestBadBootstrapArguments; bsmReturningInteger |
| 5363 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/Integer; |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 5364 | Method handle #5: |
| 5365 | type : invoke-static |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 5366 | target : LTestBadBootstrapArguments; bsmReturningObject |
| 5367 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/Object; |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 5368 | Method handle #6: |
| 5369 | type : invoke-static |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 5370 | target : LTestBadBootstrapArguments; bsmReturningTestersConstantCallsite |
| 5371 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)LTestBadBootstrapArguments$TestersConstantCallSite; |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 5372 | Method handle #7: |
| 5373 | type : invoke-static |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 5374 | target : LTestBadBootstrapArguments; bsmReturningVoid |
| 5375 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)V |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 5376 | Method handle #8: |
| 5377 | type : invoke-static |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 5378 | target : LTestBadBootstrapArguments; bsmZBCS |
| 5379 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;ZBCS)Ljava/lang/invoke/CallSite; |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 5380 | Method handle #9: |
| 5381 | type : invoke-static |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 5382 | target : LTestDynamicBootstrapArguments; bsm |
| 5383 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;J)Ljava/lang/invoke/CallSite; |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 5384 | Method handle #10: |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 5385 | type : invoke-static |
| 5386 | target : LTestInvocationKinds; lookupConstructor |
| 5387 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 5388 | Method handle #11: |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 5389 | type : invoke-static |
| 5390 | target : LTestInvocationKinds; lookupInstanceFieldGetter |
| 5391 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 5392 | Method handle #12: |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 5393 | type : invoke-static |
| 5394 | target : LTestInvocationKinds; lookupInstanceFieldSetter |
| 5395 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 5396 | Method handle #13: |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 5397 | type : invoke-static |
| 5398 | target : LTestInvocationKinds; lookupStaticFieldGetter |
| 5399 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 5400 | Method handle #14: |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 5401 | type : invoke-static |
| 5402 | target : LTestInvocationKinds; lookupStaticFieldSetter |
| 5403 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 5404 | Method handle #15: |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 5405 | type : invoke-static |
| 5406 | target : LTestInvocationKinds; lookupVirtual |
| 5407 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; |
| 5408 | Method handle #16: |
| 5409 | type : invoke-static |
| 5410 | target : LTestInvokeCustomWithConcurrentThreads; linkerMethod |
| 5411 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; |
| 5412 | Method handle #17: |
| 5413 | type : invoke-static |
| 5414 | target : LTestLinkerMethodMinimalArguments; linkerMethod |
| 5415 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; |
| 5416 | Method handle #18: |
| 5417 | type : invoke-static |
| 5418 | target : LTestLinkerMethodMultipleArgumentTypes; linkerMethod |
| 5419 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;IIIIIFDLjava/lang/String;Ljava/lang/Class;J)Ljava/lang/invoke/CallSite; |
| 5420 | Method handle #19: |
| 5421 | type : invoke-static |
| 5422 | target : LTestVariableArityLinkerMethod; bsmWithBoxedArray |
| 5423 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Integer;)Ljava/lang/invoke/CallSite; |
| 5424 | Method handle #20: |
| 5425 | type : invoke-static |
| 5426 | target : LTestVariableArityLinkerMethod; bsmWithClassAndFloatArray |
| 5427 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;[F)Ljava/lang/invoke/CallSite; |
| 5428 | Method handle #21: |
| 5429 | type : invoke-static |
| 5430 | target : LTestVariableArityLinkerMethod; bsmWithClassArray |
| 5431 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Class;)Ljava/lang/invoke/CallSite; |
| 5432 | Method handle #22: |
| 5433 | type : invoke-static |
| 5434 | target : LTestVariableArityLinkerMethod; bsmWithDoubleArray |
| 5435 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[D)Ljava/lang/invoke/CallSite; |
| 5436 | Method handle #23: |
| 5437 | type : invoke-static |
| 5438 | target : LTestVariableArityLinkerMethod; bsmWithFloatAndLongArray |
| 5439 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;F[J)Ljava/lang/invoke/CallSite; |
| 5440 | Method handle #24: |
| 5441 | type : invoke-static |
| 5442 | target : LTestVariableArityLinkerMethod; bsmWithIntAndStringArray |
| 5443 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;I[Ljava/lang/String;)Ljava/lang/invoke/CallSite; |
| 5444 | Method handle #25: |
| 5445 | type : invoke-static |
| 5446 | target : LTestVariableArityLinkerMethod; bsmWithLongAndIntArray |
| 5447 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;J[I)Ljava/lang/invoke/CallSite; |
| 5448 | Method handle #26: |
| 5449 | type : invoke-static |
| 5450 | target : LTestVariableArityLinkerMethod; bsmWithStringArray |
| 5451 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/String;)Ljava/lang/invoke/CallSite; |
| 5452 | Method handle #27: |
| 5453 | type : invoke-static |
| 5454 | target : LTestVariableArityLinkerMethod; bsmWithWiderArray |
| 5455 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[J)Ljava/lang/invoke/CallSite; |
| 5456 | Method handle #28: |
| 5457 | type : invoke-static |
| 5458 | target : LUnrelatedBSM; bsm |
| 5459 | target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;)Ljava/lang/invoke/CallSite; |
| 5460 | Call site #0: // offset 29649 |
| 5461 | link_argument[0] : 1 (MethodHandle) |
| 5462 | link_argument[1] : happy (String) |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 5463 | link_argument[2] : ()V (MethodType) |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 5464 | link_argument[3] : -1 (int) |
| 5465 | link_argument[4] : very (String) |
| 5466 | Call site #1: // offset 29662 |
| 5467 | link_argument[0] : 0 (MethodHandle) |
| 5468 | link_argument[1] : wrongParameterTypes (String) |
| 5469 | link_argument[2] : ()V (MethodType) |
| 5470 | link_argument[3] : -1 (int) |
| 5471 | link_argument[4] : very (String) |
| 5472 | Call site #2: // offset 29675 |
| 5473 | link_argument[0] : 0 (MethodHandle) |
| 5474 | link_argument[1] : missingParameterTypes (String) |
| 5475 | link_argument[2] : ()V (MethodType) |
| 5476 | Call site #3: // offset 29683 |
| 5477 | link_argument[0] : 1 (MethodHandle) |
| 5478 | link_argument[1] : extraArguments (String) |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 5479 | link_argument[2] : ()V (MethodType) |
Orion Hodson | c069a30 | 2017-01-18 09:23:12 +0000 | [diff] [blame] | 5480 | link_argument[3] : 1 (int) |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 5481 | link_argument[4] : 2 (String) |
| 5482 | link_argument[5] : 3 (int) |
| 5483 | Call site #4: // offset 29697 |
| 5484 | link_argument[0] : 1 (MethodHandle) |
| 5485 | link_argument[1] : wrongArguments (String) |
Orion Hodson | 775224d | 2017-07-05 11:04:01 +0100 | [diff] [blame] | 5486 | link_argument[2] : ()V (MethodType) |
Orion Hodson | 0f6cc7f | 2018-05-25 15:33:44 +0100 | [diff] [blame] | 5487 | link_argument[3] : 1 (String) |
| 5488 | link_argument[4] : 3.14159 (double) |
| 5489 | Call site #5: // offset 29697 |
| 5490 | link_argument[0] : 1 (MethodHandle) |
| 5491 | link_argument[1] : wrongArguments (String) |
| 5492 | link_argument[2] : ()V (MethodType) |
| 5493 | link_argument[3] : 1 (String) |
| 5494 | link_argument[4] : 3.14159 (double) |
| 5495 | Call site #6: // offset 29716 |
| 5496 | link_argument[0] : 1 (MethodHandle) |
| 5497 | link_argument[1] : wrongArgumentsAgain (String) |
| 5498 | link_argument[2] : ()V (MethodType) |
| 5499 | link_argument[3] : 3.14159 (double) |
| 5500 | link_argument[4] : pie (String) |
| 5501 | Call site #7: // offset 29736 |
| 5502 | link_argument[0] : 8 (MethodHandle) |
| 5503 | link_argument[1] : narrowArguments (String) |
| 5504 | link_argument[2] : ()V (MethodType) |
| 5505 | link_argument[3] : 1 (int) |
| 5506 | link_argument[4] : 127 (int) |
| 5507 | link_argument[5] : 65 (int) |
| 5508 | link_argument[6] : -32768 (int) |
| 5509 | Call site #8: // offset 29753 |
| 5510 | link_argument[0] : 2 (MethodHandle) |
| 5511 | link_argument[1] : wideningArguments (String) |
| 5512 | link_argument[2] : ()V (MethodType) |
| 5513 | link_argument[3] : 1.79769e+308 (double) |
| 5514 | link_argument[4] : 2147483647 (int) |
| 5515 | Call site #9: // offset 29775 |
| 5516 | link_argument[0] : 3 (MethodHandle) |
| 5517 | link_argument[1] : boxingArguments (String) |
| 5518 | link_argument[2] : ()V (MethodType) |
| 5519 | link_argument[3] : 1.79769e+308 (double) |
| 5520 | link_argument[4] : 9223372036854775807 (long) |
| 5521 | Call site #10: // offset 29800 |
| 5522 | link_argument[0] : 3 (MethodHandle) |
| 5523 | link_argument[1] : wideningBoxingArguments (String) |
| 5524 | link_argument[2] : ()V (MethodType) |
| 5525 | link_argument[3] : 3.40282e+38 (float) |
| 5526 | link_argument[4] : 2147483647 (long) |
| 5527 | Call site #11: // offset 29818 |
| 5528 | link_argument[0] : 7 (MethodHandle) |
| 5529 | link_argument[1] : voidReturnType (String) |
| 5530 | link_argument[2] : ()V (MethodType) |
| 5531 | Call site #12: // offset 29826 |
| 5532 | link_argument[0] : 5 (MethodHandle) |
| 5533 | link_argument[1] : ObjectReturnType (String) |
| 5534 | link_argument[2] : ()V (MethodType) |
| 5535 | Call site #13: // offset 29833 |
| 5536 | link_argument[0] : 4 (MethodHandle) |
| 5537 | link_argument[1] : integerReturnType (String) |
| 5538 | link_argument[2] : ()V (MethodType) |
| 5539 | Call site #14: // offset 29841 |
| 5540 | link_argument[0] : 6 (MethodHandle) |
| 5541 | link_argument[1] : sayHello (String) |
| 5542 | link_argument[2] : ()V (MethodType) |
| 5543 | Call site #15: // offset 29849 |
| 5544 | link_argument[0] : 9 (MethodHandle) |
| 5545 | link_argument[1] : target (String) |
| 5546 | link_argument[2] : (ILjava/lang/String;Ljava/lang/Double;)I (MethodType) |
| 5547 | link_argument[3] : A (String) |
| 5548 | link_argument[4] : 100000000 (long) |
| 5549 | Call site #16: // offset 29849 |
| 5550 | link_argument[0] : 9 (MethodHandle) |
| 5551 | link_argument[1] : target (String) |
| 5552 | link_argument[2] : (ILjava/lang/String;Ljava/lang/Double;)I (MethodType) |
| 5553 | link_argument[3] : A (String) |
| 5554 | link_argument[4] : 100000000 (long) |
| 5555 | Call site #17: // offset 29849 |
| 5556 | link_argument[0] : 9 (MethodHandle) |
| 5557 | link_argument[1] : target (String) |
| 5558 | link_argument[2] : (ILjava/lang/String;Ljava/lang/Double;)I (MethodType) |
| 5559 | link_argument[3] : A (String) |
| 5560 | link_argument[4] : 100000000 (long) |
| 5561 | Call site #18: // offset 29864 |
| 5562 | link_argument[0] : 10 (MethodHandle) |
| 5563 | link_argument[1] : unused (String) |
| 5564 | link_argument[2] : (I)LTestInvocationKinds$Widget; (MethodType) |
| 5565 | Call site #19: // offset 29872 |
| 5566 | link_argument[0] : 12 (MethodHandle) |
| 5567 | link_argument[1] : instance_field (String) |
| 5568 | link_argument[2] : (LTestInvocationKinds;D)V (MethodType) |
| 5569 | Call site #20: // offset 29880 |
| 5570 | link_argument[0] : 11 (MethodHandle) |
| 5571 | link_argument[1] : instance_field (String) |
| 5572 | link_argument[2] : (LTestInvocationKinds;)D (MethodType) |
| 5573 | Call site #21: // offset 29888 |
| 5574 | link_argument[0] : 15 (MethodHandle) |
| 5575 | link_argument[1] : getMaxIntegerValue (String) |
| 5576 | link_argument[2] : (LTestInvocationKinds;II)I (MethodType) |
| 5577 | Call site #22: // offset 29896 |
| 5578 | link_argument[0] : 14 (MethodHandle) |
| 5579 | link_argument[1] : static_field (String) |
| 5580 | link_argument[2] : (I)V (MethodType) |
| 5581 | Call site #23: // offset 29896 |
| 5582 | link_argument[0] : 14 (MethodHandle) |
| 5583 | link_argument[1] : static_field (String) |
| 5584 | link_argument[2] : (I)V (MethodType) |
| 5585 | Call site #24: // offset 29904 |
| 5586 | link_argument[0] : 13 (MethodHandle) |
| 5587 | link_argument[1] : static_field (String) |
| 5588 | link_argument[2] : ()I (MethodType) |
| 5589 | Call site #25: // offset 29904 |
| 5590 | link_argument[0] : 13 (MethodHandle) |
| 5591 | link_argument[1] : static_field (String) |
| 5592 | link_argument[2] : ()I (MethodType) |
| 5593 | Call site #26: // offset 29912 |
| 5594 | link_argument[0] : 16 (MethodHandle) |
| 5595 | link_argument[1] : setCalled (String) |
| 5596 | link_argument[2] : (I)I (MethodType) |
| 5597 | Call site #27: // offset 29920 |
| 5598 | link_argument[0] : 17 (MethodHandle) |
| 5599 | link_argument[1] : _add (String) |
| 5600 | link_argument[2] : (II)I (MethodType) |
| 5601 | Call site #28: // offset 29927 |
| 5602 | link_argument[0] : 18 (MethodHandle) |
| 5603 | link_argument[1] : _add (String) |
| 5604 | link_argument[2] : (II)I (MethodType) |
| 5605 | link_argument[3] : -1 (int) |
| 5606 | link_argument[4] : 1 (int) |
| 5607 | link_argument[5] : 97 (int) |
| 5608 | link_argument[6] : 1024 (int) |
| 5609 | link_argument[7] : 1 (int) |
| 5610 | link_argument[8] : 11.1 (float) |
| 5611 | link_argument[9] : 2.2 (double) |
| 5612 | link_argument[10] : Hello (String) |
| 5613 | link_argument[11] : LTestLinkerMethodMultipleArgumentTypes; (Class) |
| 5614 | link_argument[12] : 123456789 (long) |
| 5615 | Call site #29: // offset 29968 |
| 5616 | link_argument[0] : 28 (MethodHandle) |
| 5617 | link_argument[1] : _addf (String) |
| 5618 | link_argument[2] : (FF)F (MethodType) |
| 5619 | link_argument[3] : LTestLinkerUnrelatedBSM; (Class) |
| 5620 | Call site #30: // offset 29977 |
| 5621 | link_argument[0] : 28 (MethodHandle) |
| 5622 | link_argument[1] : _subf (String) |
| 5623 | link_argument[2] : (FF)F (MethodType) |
| 5624 | link_argument[3] : LTestLinkerUnrelatedBSM; (Class) |
| 5625 | Call site #31: // offset 29986 |
| 5626 | link_argument[0] : 26 (MethodHandle) |
| 5627 | link_argument[1] : methodA (String) |
| 5628 | link_argument[2] : ()V (MethodType) |
| 5629 | link_argument[3] : Aachen (String) |
| 5630 | link_argument[4] : Aalborg (String) |
| 5631 | link_argument[5] : Aalto (String) |
| 5632 | Call site #32: // offset 30000 |
| 5633 | link_argument[0] : 26 (MethodHandle) |
| 5634 | link_argument[1] : methodB (String) |
| 5635 | link_argument[2] : ()V (MethodType) |
| 5636 | link_argument[3] : barium (String) |
| 5637 | Call site #33: // offset 30010 |
| 5638 | link_argument[0] : 26 (MethodHandle) |
| 5639 | link_argument[1] : methodC (String) |
| 5640 | link_argument[2] : ()V (MethodType) |
| 5641 | Call site #34: // offset 30018 |
| 5642 | link_argument[0] : 24 (MethodHandle) |
| 5643 | link_argument[1] : methodD (String) |
| 5644 | link_argument[2] : ()V (MethodType) |
| 5645 | link_argument[3] : 101 (int) |
| 5646 | link_argument[4] : zoo (String) |
| 5647 | link_argument[5] : zoogene (String) |
| 5648 | link_argument[6] : zoogenic (String) |
| 5649 | Call site #35: // offset 30037 |
| 5650 | link_argument[0] : 24 (MethodHandle) |
| 5651 | link_argument[1] : methodE (String) |
| 5652 | link_argument[2] : ()V (MethodType) |
| 5653 | link_argument[3] : 102 (int) |
| 5654 | link_argument[4] : zonic (String) |
| 5655 | Call site #36: // offset 30050 |
| 5656 | link_argument[0] : 24 (MethodHandle) |
| 5657 | link_argument[1] : methodF (String) |
| 5658 | link_argument[2] : ()V (MethodType) |
| 5659 | link_argument[3] : 103 (int) |
| 5660 | Call site #37: // offset 30060 |
| 5661 | link_argument[0] : 25 (MethodHandle) |
| 5662 | link_argument[1] : methodG (String) |
| 5663 | link_argument[2] : ()V (MethodType) |
| 5664 | link_argument[3] : 81985529216486895 (long) |
| 5665 | link_argument[4] : 1 (int) |
| 5666 | link_argument[5] : -1 (int) |
| 5667 | link_argument[6] : 2 (int) |
| 5668 | link_argument[7] : -2 (int) |
| 5669 | Call site #38: // offset 30085 |
| 5670 | link_argument[0] : 23 (MethodHandle) |
| 5671 | link_argument[1] : methodH (String) |
| 5672 | link_argument[2] : ()V (MethodType) |
| 5673 | link_argument[3] : -2.71828 (float) |
| 5674 | link_argument[4] : 999999999999 (long) |
| 5675 | link_argument[5] : -8888888888888 (long) |
| 5676 | Call site #39: // offset 30112 |
| 5677 | link_argument[0] : 20 (MethodHandle) |
| 5678 | link_argument[1] : methodI (String) |
| 5679 | link_argument[2] : ()V (MethodType) |
| 5680 | link_argument[3] : Ljava/lang/Throwable; (Class) |
| 5681 | link_argument[4] : 3.40282e+38 (float) |
| 5682 | link_argument[5] : 1.4013e-45 (float) |
| 5683 | link_argument[6] : 3.14159 (float) |
| 5684 | link_argument[7] : -3.14159 (float) |
| 5685 | Call site #40: // offset 30142 |
| 5686 | link_argument[0] : 22 (MethodHandle) |
| 5687 | link_argument[1] : methodJ (String) |
| 5688 | link_argument[2] : ()V (MethodType) |
| 5689 | link_argument[3] : 1.79769e+308 (double) |
| 5690 | link_argument[4] : 4.94066e-324 (double) |
| 5691 | link_argument[5] : 2.71828 (double) |
| 5692 | link_argument[6] : -3.14159 (double) |
| 5693 | Call site #41: // offset 30186 |
| 5694 | link_argument[0] : 21 (MethodHandle) |
| 5695 | link_argument[1] : methodK (String) |
| 5696 | link_argument[2] : ()V (MethodType) |
| 5697 | link_argument[3] : Ljava/lang/Integer; (Class) |
| 5698 | link_argument[4] : Ljava/lang/invoke/MethodHandles; (Class) |
| 5699 | link_argument[5] : Ljava/util/Arrays; (Class) |
| 5700 | Call site #42: // offset 30200 |
| 5701 | link_argument[0] : 24 (MethodHandle) |
| 5702 | link_argument[1] : methodO (String) |
| 5703 | link_argument[2] : ()V (MethodType) |
| 5704 | link_argument[3] : 103 (int) |
| 5705 | link_argument[4] : 104 (int) |
| 5706 | Call site #43: // offset 30212 |
| 5707 | link_argument[0] : 24 (MethodHandle) |
| 5708 | link_argument[1] : methodP (String) |
| 5709 | link_argument[2] : ()V (MethodType) |
| 5710 | link_argument[3] : 103 (int) |
| 5711 | link_argument[4] : A (String) |
| 5712 | link_argument[5] : B (String) |
| 5713 | link_argument[6] : 42 (int) |
| 5714 | Call site #44: // offset 30228 |
| 5715 | link_argument[0] : 27 (MethodHandle) |
| 5716 | link_argument[1] : methodQ (String) |
| 5717 | link_argument[2] : ()V (MethodType) |
| 5718 | link_argument[3] : 103 (int) |
| 5719 | link_argument[4] : 42 (int) |
| 5720 | Call site #45: // offset 30240 |
| 5721 | link_argument[0] : 19 (MethodHandle) |
| 5722 | link_argument[1] : methodR (String) |
| 5723 | link_argument[2] : ()V (MethodType) |
| 5724 | link_argument[3] : 1030 (int) |
| 5725 | link_argument[4] : 420 (int) |