• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1Processing 'invoke-custom.dex'...
2Opened 'invoke-custom.dex', DEX version '038'
3DEX file header:
4magic               : 'dex\n038\0'
5checksum            : dc722174
6signature           : b59a...f803
7file_size           : 31732
8header_size         : 112
9link_size           : 0
10link_off            : 0 (0x000000)
11string_ids_size     : 478
12string_ids_off      : 112 (0x000070)
13type_ids_size       : 77
14type_ids_off        : 2024 (0x0007e8)
15proto_ids_size      : 91
16proto_ids_off       : 2332 (0x00091c)
17field_ids_size      : 21
18field_ids_off       : 3424 (0x000d60)
19method_ids_size     : 243
20method_ids_off      : 3592 (0x000e08)
21class_defs_size     : 14
22class_defs_off      : 5536 (0x0015a0)
23data_size           : 25332
24data_off            : 6400 (0x001900)
25
26Class #0 header:
27class_idx           : 7
28access_flags        : 0 (0x0000)
29superclass_idx      : 52
30interfaces_off      : 0 (0x000000)
31source_file_idx     : 144
32annotations_off     : 30700 (0x0077ec)
33class_data_off      : 28922 (0x0070fa)
34static_fields_size  : 0
35instance_fields_size: 0
36direct_methods_size : 1
37virtual_methods_size: 0
38
39Class #0 annotations:
40Annotations on class
41  VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=LTestBadBootstrapArguments;
42  VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=8 name="TestersConstantCallSite"
43
44Class #0            -
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      method_idx    : 8
57      code          -
58      registers     : 2
59      ins           : 2
60      outs          : 2
61      insns size    : 4 16-bit code units
62001b18:                                        |[001b18] TestBadBootstrapArguments$TestersConstantCallSite.<init>:(Ljava/lang/invoke/MethodHandle;)V
63001b28: 7020 d200 1000                         |0000: invoke-direct {v0, v1}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
64001b2e: 0e00                                   |0003: return-void
65      catches       : (none)
66      positions     :
67        0x0000 line=449
68        0x0003 line=450
69      locals        :
70        0x0000 - 0x0004 reg=0 this LTestBadBootstrapArguments$TestersConstantCallSite;
71        0x0000 - 0x0004 reg=1 mh Ljava/lang/invoke/MethodHandle;
72
73  Virtual methods   -
74  source_file_idx   : 144 (TestBadBootstrapArguments.java)
75
76Class #1 header:
77class_idx           : 9
78access_flags        : 1024 (0x0400)
79superclass_idx      : 42
80interfaces_off      : 0 (0x000000)
81source_file_idx     : 145
82annotations_off     : 0 (0x000000)
83class_data_off      : 28932 (0x007104)
84static_fields_size  : 0
85instance_fields_size: 0
86direct_methods_size : 13
87virtual_methods_size: 0
88
89Class #1            -
90  Class descriptor  : 'LTestBase;'
91  Access flags      : 0x0400 (ABSTRACT)
92  Superclass        : 'Ljava/lang/Object;'
93  Interfaces        -
94  Static fields     -
95  Instance fields   -
96  Direct methods    -
97    #0              : (in LTestBase;)
98      name          : '<init>'
99      type          : '()V'
100      access        : 0x10000 (CONSTRUCTOR)
101      method_idx    : 50
102      code          -
103      registers     : 1
104      ins           : 1
105      outs          : 1
106      insns size    : 4 16-bit code units
107002544:                                        |[002544] TestBase.<init>:()V
108002554: 7010 bf00 0000                         |0000: invoke-direct {v0}, Ljava/lang/Object;.<init>:()V // method@00bf
10900255a: 0e00                                   |0003: return-void
110      catches       : (none)
111      positions     :
112        0x0000 line=19
113      locals        :
114        0x0000 - 0x0004 reg=0 this LTestBase;
115
116    #1              : (in LTestBase;)
117      name          : 'assertEquals'
118      type          : '(BB)V'
119      access        : 0x0008 (STATIC)
120      method_idx    : 51
121      code          -
122      registers     : 5
123      ins           : 2
124      outs          : 2
125      insns size    : 34 16-bit code units
12600255c:                                        |[00255c] TestBase.assertEquals:(BB)V
12700256c: 3343 0300                              |0000: if-ne v3, v4, 0003 // +0003
128002570: 0e00                                   |0002: return-void
129002572: 2200 1e00                              |0003: new-instance v0, Ljava/lang/AssertionError; // type@001e
130002576: 2201 2d00                              |0005: new-instance v1, Ljava/lang/StringBuilder; // type@002d
13100257a: 7010 c100 0100                         |0007: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
132002580: 1a02 d300                              |000a: const-string v2, "assertEquals b1: " // string@00d3
133002584: 6e20 c800 2100                         |000c: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
13400258a: 6e20 c500 3100                         |000f: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5
135002590: 1a02 0d00                              |0012: const-string v2, ", b2: " // string@000d
136002594: 6e20 c800 2100                         |0014: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
13700259a: 6e20 c500 4100                         |0017: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5
1380025a0: 6e10 ca00 0100                         |001a: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
1390025a6: 0c01                                   |001d: move-result-object v1
1400025a8: 7020 b500 1000                         |001e: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5
1410025ae: 2700                                   |0021: throw v0
142      catches       : (none)
143      positions     :
144        0x0000 line=27
145        0x0002 line=28
146        0x0003 line=30
147      locals        :
148        0x0000 - 0x0022 reg=3 b1 B
149        0x0000 - 0x0022 reg=4 b2 B
150
151    #2              : (in LTestBase;)
152      name          : 'assertEquals'
153      type          : '(CC)V'
154      access        : 0x0008 (STATIC)
155      method_idx    : 52
156      code          -
157      registers     : 5
158      ins           : 2
159      outs          : 2
160      insns size    : 34 16-bit code units
1610025b0:                                        |[0025b0] TestBase.assertEquals:(CC)V
1620025c0: 3343 0300                              |0000: if-ne v3, v4, 0003 // +0003
1630025c4: 0e00                                   |0002: return-void
1640025c6: 2200 1e00                              |0003: new-instance v0, Ljava/lang/AssertionError; // type@001e
1650025ca: 2201 2d00                              |0005: new-instance v1, Ljava/lang/StringBuilder; // type@002d
1660025ce: 7010 c100 0100                         |0007: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
1670025d4: 1a02 d400                              |000a: const-string v2, "assertEquals c1: " // string@00d4
1680025d8: 6e20 c800 2100                         |000c: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
1690025de: 6e20 c200 3100                         |000f: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@00c2
1700025e4: 1a02 0e00                              |0012: const-string v2, ", c2: " // string@000e
1710025e8: 6e20 c800 2100                         |0014: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
1720025ee: 6e20 c200 4100                         |0017: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@00c2
1730025f4: 6e10 ca00 0100                         |001a: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
1740025fa: 0c01                                   |001d: move-result-object v1
1750025fc: 7020 b500 1000                         |001e: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5
176002602: 2700                                   |0021: throw v0
177      catches       : (none)
178      positions     :
179        0x0000 line=34
180        0x0002 line=35
181        0x0003 line=37
182      locals        :
183        0x0000 - 0x0022 reg=3 c1 C
184        0x0000 - 0x0022 reg=4 c2 C
185
186    #3              : (in LTestBase;)
187      name          : 'assertEquals'
188      type          : '(DD)V'
189      access        : 0x0008 (STATIC)
190      method_idx    : 53
191      code          -
192      registers     : 7
193      ins           : 4
194      outs          : 3
195      insns size    : 36 16-bit code units
196002604:                                        |[002604] TestBase.assertEquals:(DD)V
197002614: 2f00 0305                              |0000: cmpl-double v0, v3, v5
198002618: 3900 0300                              |0002: if-nez v0, 0005 // +0003
19900261c: 0e00                                   |0004: return-void
20000261e: 2200 1e00                              |0005: new-instance v0, Ljava/lang/AssertionError; // type@001e
201002622: 2201 2d00                              |0007: new-instance v1, Ljava/lang/StringBuilder; // type@002d
202002626: 7010 c100 0100                         |0009: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
20300262c: 1a02 d500                              |000c: const-string v2, "assertEquals d1: " // string@00d5
204002630: 6e20 c800 2100                         |000e: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
205002636: 6e30 c300 3104                         |0011: invoke-virtual {v1, v3, v4}, Ljava/lang/StringBuilder;.append:(D)Ljava/lang/StringBuilder; // method@00c3
20600263c: 1a02 0f00                              |0014: const-string v2, ", d2: " // string@000f
207002640: 6e20 c800 2100                         |0016: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
208002646: 6e30 c300 5106                         |0019: invoke-virtual {v1, v5, v6}, Ljava/lang/StringBuilder;.append:(D)Ljava/lang/StringBuilder; // method@00c3
20900264c: 6e10 ca00 0100                         |001c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
210002652: 0c01                                   |001f: move-result-object v1
211002654: 7020 b500 1000                         |0020: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5
21200265a: 2700                                   |0023: throw v0
213      catches       : (none)
214      positions     :
215        0x0000 line=69
216        0x0004 line=70
217        0x0005 line=72
218      locals        :
219        0x0000 - 0x0024 reg=3 d1 D
220        0x0000 - 0x0024 reg=5 d2 D
221
222    #4              : (in LTestBase;)
223      name          : 'assertEquals'
224      type          : '(FF)V'
225      access        : 0x0008 (STATIC)
226      method_idx    : 54
227      code          -
228      registers     : 5
229      ins           : 2
230      outs          : 2
231      insns size    : 36 16-bit code units
23200265c:                                        |[00265c] TestBase.assertEquals:(FF)V
23300266c: 2d00 0304                              |0000: cmpl-float v0, v3, v4
234002670: 3900 0300                              |0002: if-nez v0, 0005 // +0003
235002674: 0e00                                   |0004: return-void
236002676: 2200 1e00                              |0005: new-instance v0, Ljava/lang/AssertionError; // type@001e
23700267a: 2201 2d00                              |0007: new-instance v1, Ljava/lang/StringBuilder; // type@002d
23800267e: 7010 c100 0100                         |0009: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
239002684: 1a02 d600                              |000c: const-string v2, "assertEquals f1: " // string@00d6
240002688: 6e20 c800 2100                         |000e: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
24100268e: 6e20 c400 3100                         |0011: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(F)Ljava/lang/StringBuilder; // method@00c4
242002694: 1a02 1000                              |0014: const-string v2, ", f2: " // string@0010
243002698: 6e20 c800 2100                         |0016: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
24400269e: 6e20 c400 4100                         |0019: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(F)Ljava/lang/StringBuilder; // method@00c4
2450026a4: 6e10 ca00 0100                         |001c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
2460026aa: 0c01                                   |001f: move-result-object v1
2470026ac: 7020 b500 1000                         |0020: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5
2480026b2: 2700                                   |0023: throw v0
249      catches       : (none)
250      positions     :
251        0x0000 line=62
252        0x0004 line=63
253        0x0005 line=65
254      locals        :
255        0x0000 - 0x0024 reg=3 f1 F
256        0x0000 - 0x0024 reg=4 f2 F
257
258    #5              : (in LTestBase;)
259      name          : 'assertEquals'
260      type          : '(II)V'
261      access        : 0x0008 (STATIC)
262      method_idx    : 55
263      code          -
264      registers     : 5
265      ins           : 2
266      outs          : 2
267      insns size    : 34 16-bit code units
2680026b4:                                        |[0026b4] TestBase.assertEquals:(II)V
2690026c4: 3343 0300                              |0000: if-ne v3, v4, 0003 // +0003
2700026c8: 0e00                                   |0002: return-void
2710026ca: 2200 1e00                              |0003: new-instance v0, Ljava/lang/AssertionError; // type@001e
2720026ce: 2201 2d00                              |0005: new-instance v1, Ljava/lang/StringBuilder; // type@002d
2730026d2: 7010 c100 0100                         |0007: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
2740026d8: 1a02 d700                              |000a: const-string v2, "assertEquals i1: " // string@00d7
2750026dc: 6e20 c800 2100                         |000c: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
2760026e2: 6e20 c500 3100                         |000f: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5
2770026e8: 1a02 1100                              |0012: const-string v2, ", i2: " // string@0011
2780026ec: 6e20 c800 2100                         |0014: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
2790026f2: 6e20 c500 4100                         |0017: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5
2800026f8: 6e10 ca00 0100                         |001a: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
2810026fe: 0c01                                   |001d: move-result-object v1
282002700: 7020 b500 1000                         |001e: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5
283002706: 2700                                   |0021: throw v0
284      catches       : (none)
285      positions     :
286        0x0000 line=48
287        0x0002 line=49
288        0x0003 line=51
289      locals        :
290        0x0000 - 0x0022 reg=3 i1 I
291        0x0000 - 0x0022 reg=4 i2 I
292
293    #6              : (in LTestBase;)
294      name          : 'assertEquals'
295      type          : '(JJ)V'
296      access        : 0x0008 (STATIC)
297      method_idx    : 56
298      code          -
299      registers     : 7
300      ins           : 4
301      outs          : 3
302      insns size    : 36 16-bit code units
303002764:                                        |[002764] TestBase.assertEquals:(JJ)V
304002774: 3100 0305                              |0000: cmp-long v0, v3, v5
305002778: 3900 0300                              |0002: if-nez v0, 0005 // +0003
30600277c: 0e00                                   |0004: return-void
30700277e: 2200 1e00                              |0005: new-instance v0, Ljava/lang/AssertionError; // type@001e
308002782: 2201 2d00                              |0007: new-instance v1, Ljava/lang/StringBuilder; // type@002d
309002786: 7010 c100 0100                         |0009: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
31000278c: 1a02 d800                              |000c: const-string v2, "assertEquals l1: " // string@00d8
311002790: 6e20 c800 2100                         |000e: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
312002796: 6e30 c600 3104                         |0011: invoke-virtual {v1, v3, v4}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@00c6
31300279c: 1a02 1200                              |0014: const-string v2, ", l2: " // string@0012
3140027a0: 6e20 c800 2100                         |0016: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
3150027a6: 6e30 c600 5106                         |0019: invoke-virtual {v1, v5, v6}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@00c6
3160027ac: 6e10 ca00 0100                         |001c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
3170027b2: 0c01                                   |001f: move-result-object v1
3180027b4: 7020 b500 1000                         |0020: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5
3190027ba: 2700                                   |0023: throw v0
320      catches       : (none)
321      positions     :
322        0x0000 line=55
323        0x0004 line=56
324        0x0005 line=58
325      locals        :
326        0x0000 - 0x0024 reg=3 l1 J
327        0x0000 - 0x0024 reg=5 l2 J
328
329    #7              : (in LTestBase;)
330      name          : 'assertEquals'
331      type          : '(Ljava/lang/Object;Ljava/lang/Object;)V'
332      access        : 0x0008 (STATIC)
333      method_idx    : 57
334      code          -
335      registers     : 5
336      ins           : 2
337      outs          : 2
338      insns size    : 38 16-bit code units
339002708:                                        |[002708] TestBase.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
340002718: 7120 ec00 4300                         |0000: invoke-static {v3, v4}, Ljava/util/Objects;.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z // method@00ec
34100271e: 0a00                                   |0003: move-result v0
342002720: 3800 0300                              |0004: if-eqz v0, 0007 // +0003
343002724: 0e00                                   |0006: return-void
344002726: 2200 1e00                              |0007: new-instance v0, Ljava/lang/AssertionError; // type@001e
34500272a: 2201 2d00                              |0009: new-instance v1, Ljava/lang/StringBuilder; // type@002d
34600272e: 7010 c100 0100                         |000b: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
347002734: 1a02 da00                              |000e: const-string v2, "assertEquals: o1: " // string@00da
348002738: 6e20 c800 2100                         |0010: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
34900273e: 6e20 c700 3100                         |0013: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@00c7
350002744: 1a02 1300                              |0016: const-string v2, ", o2: " // string@0013
351002748: 6e20 c800 2100                         |0018: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
35200274e: 6e20 c700 4100                         |001b: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@00c7
353002754: 6e10 ca00 0100                         |001e: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
35400275a: 0c01                                   |0021: move-result-object v1
35500275c: 7020 b500 1000                         |0022: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5
356002762: 2700                                   |0025: throw v0
357      catches       : (none)
358      positions     :
359        0x0000 line=76
360        0x0006 line=79
361        0x0007 line=77
362      locals        :
363        0x0000 - 0x0026 reg=3 o Ljava/lang/Object;
364        0x0000 - 0x0026 reg=4 p Ljava/lang/Object;
365
366    #8              : (in LTestBase;)
367      name          : 'assertEquals'
368      type          : '(SS)V'
369      access        : 0x0008 (STATIC)
370      method_idx    : 58
371      code          -
372      registers     : 5
373      ins           : 2
374      outs          : 2
375      insns size    : 34 16-bit code units
3760027bc:                                        |[0027bc] TestBase.assertEquals:(SS)V
3770027cc: 3343 0300                              |0000: if-ne v3, v4, 0003 // +0003
3780027d0: 0e00                                   |0002: return-void
3790027d2: 2200 1e00                              |0003: new-instance v0, Ljava/lang/AssertionError; // type@001e
3800027d6: 2201 2d00                              |0005: new-instance v1, Ljava/lang/StringBuilder; // type@002d
3810027da: 7010 c100 0100                         |0007: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
3820027e0: 1a02 d900                              |000a: const-string v2, "assertEquals s1: " // string@00d9
3830027e4: 6e20 c800 2100                         |000c: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
3840027ea: 6e20 c500 3100                         |000f: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5
3850027f0: 1a02 1400                              |0012: const-string v2, ", s2: " // string@0014
3860027f4: 6e20 c800 2100                         |0014: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
3870027fa: 6e20 c500 4100                         |0017: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5
388002800: 6e10 ca00 0100                         |001a: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
389002806: 0c01                                   |001d: move-result-object v1
390002808: 7020 b500 1000                         |001e: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5
39100280e: 2700                                   |0021: throw v0
392      catches       : (none)
393      positions     :
394        0x0000 line=41
395        0x0002 line=42
396        0x0003 line=44
397      locals        :
398        0x0000 - 0x0022 reg=3 s1 S
399        0x0000 - 0x0022 reg=4 s2 S
400
401    #9              : (in LTestBase;)
402      name          : 'assertNotEquals'
403      type          : '(Ljava/lang/Object;Ljava/lang/Object;)V'
404      access        : 0x0008 (STATIC)
405      method_idx    : 59
406      code          -
407      registers     : 5
408      ins           : 2
409      outs          : 2
410      insns size    : 38 16-bit code units
411002810:                                        |[002810] TestBase.assertNotEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
412002820: 7120 ec00 4300                         |0000: invoke-static {v3, v4}, Ljava/util/Objects;.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z // method@00ec
413002826: 0a00                                   |0003: move-result v0
414002828: 3900 0300                              |0004: if-nez v0, 0007 // +0003
41500282c: 0e00                                   |0006: return-void
41600282e: 2200 1e00                              |0007: new-instance v0, Ljava/lang/AssertionError; // type@001e
417002832: 2201 2d00                              |0009: new-instance v1, Ljava/lang/StringBuilder; // type@002d
418002836: 7010 c100 0100                         |000b: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
41900283c: 1a02 dc00                              |000e: const-string v2, "assertNotEquals: o1: " // string@00dc
420002840: 6e20 c800 2100                         |0010: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
421002846: 6e20 c700 3100                         |0013: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@00c7
42200284c: 1a02 1300                              |0016: const-string v2, ", o2: " // string@0013
423002850: 6e20 c800 2100                         |0018: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
424002856: 6e20 c700 4100                         |001b: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@00c7
42500285c: 6e10 ca00 0100                         |001e: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
426002862: 0c01                                   |0021: move-result-object v1
427002864: 7020 b500 1000                         |0022: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5
42800286a: 2700                                   |0025: throw v0
429      catches       : (none)
430      positions     :
431        0x0000 line=82
432        0x0006 line=85
433        0x0007 line=83
434      locals        :
435        0x0000 - 0x0026 reg=3 o Ljava/lang/Object;
436        0x0000 - 0x0026 reg=4 p Ljava/lang/Object;
437
438    #10              : (in LTestBase;)
439      name          : 'assertNotReached'
440      type          : '()V'
441      access        : 0x0008 (STATIC)
442      method_idx    : 60
443      code          -
444      registers     : 2
445      ins           : 0
446      outs          : 2
447      insns size    : 8 16-bit code units
44800286c:                                        |[00286c] TestBase.assertNotReached:()V
44900287c: 2200 1e00                              |0000: new-instance v0, Ljava/lang/AssertionError; // type@001e
450002880: 1a01 a300                              |0002: const-string v1, "Unreachable" // string@00a3
451002884: 7020 b500 1000                         |0004: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5
45200288a: 2700                                   |0007: throw v0
453      catches       : (none)
454      positions     :
455        0x0000 line=88
456      locals        :
457
458    #11              : (in LTestBase;)
459      name          : 'assertTrue'
460      type          : '(Z)V'
461      access        : 0x0008 (STATIC)
462      method_idx    : 61
463      code          -
464      registers     : 4
465      ins           : 1
466      outs          : 2
467      insns size    : 26 16-bit code units
46800288c:                                        |[00288c] TestBase.assertTrue:(Z)V
46900289c: 3803 0300                              |0000: if-eqz v3, 0003 // +0003
4700028a0: 0e00                                   |0002: return-void
4710028a2: 2200 1e00                              |0003: new-instance v0, Ljava/lang/AssertionError; // type@001e
4720028a6: 2201 2d00                              |0005: new-instance v1, Ljava/lang/StringBuilder; // type@002d
4730028aa: 7010 c100 0100                         |0007: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
4740028b0: 1a02 df00                              |000a: const-string v2, "assertTrue value: " // string@00df
4750028b4: 6e20 c800 2100                         |000c: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
4760028ba: 6e20 c900 3100                         |000f: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Z)Ljava/lang/StringBuilder; // method@00c9
4770028c0: 6e10 ca00 0100                         |0012: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
4780028c6: 0c01                                   |0015: move-result-object v1
4790028c8: 7020 b500 1000                         |0016: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5
4800028ce: 2700                                   |0019: throw v0
481      catches       : (none)
482      positions     :
483        0x0000 line=21
484        0x0002 line=24
485        0x0003 line=22
486      locals        :
487        0x0000 - 0x001a reg=3 value Z
488
489    #12              : (in LTestBase;)
490      name          : 'fail'
491      type          : '()V'
492      access        : 0x0008 (STATIC)
493      method_idx    : 62
494      code          -
495      registers     : 2
496      ins           : 0
497      outs          : 2
498      insns size    : 11 16-bit code units
4990028d0:                                        |[0028d0] TestBase.fail:()V
5000028e0: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5010028e4: 1a01 2601                              |0002: const-string v1, "fail" // string@0126
5020028e8: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
5030028ee: 7100 cc00 0000                         |0007: invoke-static {}, Ljava/lang/Thread;.dumpStack:()V // method@00cc
5040028f4: 0e00                                   |000a: return-void
505      catches       : (none)
506      positions     :
507        0x0000 line=92
508        0x0007 line=93
509        0x000a line=94
510      locals        :
511
512  Virtual methods   -
513  source_file_idx   : 145 (TestBase.java)
514
515Class #2 header:
516class_idx           : 11
517access_flags        : 0 (0x0000)
518superclass_idx      : 42
519interfaces_off      : 0 (0x000000)
520source_file_idx     : 148
521annotations_off     : 30716 (0x0077fc)
522class_data_off      : 28990 (0x00713e)
523static_fields_size  : 0
524instance_fields_size: 1
525direct_methods_size : 1
526virtual_methods_size: 0
527
528Class #2 annotations:
529Annotations on class
530  VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=LTestInvocationKinds;
531  VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=8 name="Widget"
532
533Class #2            -
534  Class descriptor  : 'LTestInvocationKinds$Widget;'
535  Access flags      : 0x0000 ()
536  Superclass        : 'Ljava/lang/Object;'
537  Interfaces        -
538  Static fields     -
539  Instance fields   -
540    #0              : (in LTestInvocationKinds$Widget;)
541      name          : 'value'
542      type          : 'I'
543      access        : 0x0000 ()
544  Direct methods    -
545    #0              : (in LTestInvocationKinds$Widget;)
546      name          : '<init>'
547      type          : '(I)V'
548      access        : 0x10001 (PUBLIC CONSTRUCTOR)
549      method_idx    : 72
550      code          -
551      registers     : 2
552      ins           : 2
553      outs          : 1
554      insns size    : 4 16-bit code units
555002abc:                                        |[002abc] TestInvocationKinds$Widget.<init>:(I)V
556002acc: 7010 bf00 0000                         |0000: invoke-direct {v0}, Ljava/lang/Object;.<init>:()V // method@00bf
557002ad2: 0e00                                   |0003: return-void
558      catches       : (none)
559      positions     :
560        0x0000 line=177
561      locals        :
562        0x0000 - 0x0004 reg=0 this LTestInvocationKinds$Widget;
563        0x0000 - 0x0004 reg=1 value I
564
565  Virtual methods   -
566  source_file_idx   : 148 (TestInvocationKinds.java)
567
568Class #3 header:
569class_idx           : 13
570access_flags        : 0 (0x0000)
571superclass_idx      : 48
572interfaces_off      : 0 (0x000000)
573source_file_idx     : 149
574annotations_off     : 30732 (0x00780c)
575class_data_off      : 29002 (0x00714a)
576static_fields_size  : 0
577instance_fields_size: 0
578direct_methods_size : 1
579virtual_methods_size: 2
580
581Class #3 annotations:
582Annotations on class
583  VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=LTestInvokeCustomWithConcurrentThreads;
584  VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null
585  VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "Ljava/lang/ThreadLocal<" "Ljava/lang/Integer;" ">;" }
586
587Class #3            -
588  Class descriptor  : 'LTestInvokeCustomWithConcurrentThreads$1;'
589  Access flags      : 0x0000 ()
590  Superclass        : 'Ljava/lang/ThreadLocal;'
591  Interfaces        -
592  Static fields     -
593  Instance fields   -
594  Direct methods    -
595    #0              : (in LTestInvokeCustomWithConcurrentThreads$1;)
596      name          : '<init>'
597      type          : '()V'
598      access        : 0x10000 (CONSTRUCTOR)
599      method_idx    : 96
600      code          -
601      registers     : 1
602      ins           : 1
603      outs          : 1
604      insns size    : 4 16-bit code units
605002ee8:                                        |[002ee8] TestInvokeCustomWithConcurrentThreads$1.<init>:()V
606002ef8: 7010 cf00 0000                         |0000: invoke-direct {v0}, Ljava/lang/ThreadLocal;.<init>:()V // method@00cf
607002efe: 0e00                                   |0003: return-void
608      catches       : (none)
609      positions     :
610        0x0000 line=33
611      locals        :
612        0x0000 - 0x0004 reg=0 this LTestInvokeCustomWithConcurrentThreads$1;
613
614  Virtual methods   -
615    #0              : (in LTestInvokeCustomWithConcurrentThreads$1;)
616      name          : 'initialValue'
617      type          : '()Ljava/lang/Integer;'
618      access        : 0x0004 (PROTECTED)
619      method_idx    : 97
620      code          -
621      registers     : 2
622      ins           : 1
623      outs          : 1
624      insns size    : 13 16-bit code units
625002ea0:                                        |[002ea0] TestInvokeCustomWithConcurrentThreads$1.initialValue:()Ljava/lang/Integer;
626002eb0: 7100 6500 0000                         |0000: invoke-static {}, LTestInvokeCustomWithConcurrentThreads;.access$000:()Ljava/util/concurrent/atomic/AtomicInteger; // method@0065
627002eb6: 0c00                                   |0003: move-result-object v0
628002eb8: 6e10 f100 0000                         |0004: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.getAndIncrement:()I // method@00f1
629002ebe: 0a00                                   |0007: move-result v0
630002ec0: 7110 bd00 0000                         |0008: invoke-static {v0}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@00bd
631002ec6: 0c00                                   |000b: move-result-object v0
632002ec8: 1100                                   |000c: return-object v0
633      catches       : (none)
634      positions     :
635        0x0000 line=36
636      locals        :
637        0x0000 - 0x000d reg=1 this LTestInvokeCustomWithConcurrentThreads$1;
638
639    #1              : (in LTestInvokeCustomWithConcurrentThreads$1;)
640      name          : 'initialValue'
641      type          : '()Ljava/lang/Object;'
642      access        : 0x1044 (PROTECTED BRIDGE SYNTHETIC)
643      method_idx    : 98
644      code          -
645      registers     : 2
646      ins           : 1
647      outs          : 1
648      insns size    : 5 16-bit code units
649002ecc:                                        |[002ecc] TestInvokeCustomWithConcurrentThreads$1.initialValue:()Ljava/lang/Object;
650002edc: 6e10 6100 0100                         |0000: invoke-virtual {v1}, LTestInvokeCustomWithConcurrentThreads$1;.initialValue:()Ljava/lang/Integer; // method@0061
651002ee2: 0c00                                   |0003: move-result-object v0
652002ee4: 1100                                   |0004: return-object v0
653      catches       : (none)
654      positions     :
655        0x0000 line=33
656      locals        :
657        0x0000 - 0x0005 reg=1 this LTestInvokeCustomWithConcurrentThreads$1;
658
659  source_file_idx   : 149 (TestInvokeCustomWithConcurrentThreads.java)
660
661Class #4 header:
662class_idx           : 19
663access_flags        : 0 (0x0000)
664superclass_idx      : 42
665interfaces_off      : 0 (0x000000)
666source_file_idx     : 164
667annotations_off     : 30748 (0x00781c)
668class_data_off      : 29021 (0x00715d)
669static_fields_size  : 0
670instance_fields_size: 0
671direct_methods_size : 2
672virtual_methods_size: 0
673
674Class #4 annotations:
675Annotations on method #170 'bsm'
676  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;" }
677  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
678
679Class #4            -
680  Class descriptor  : 'LUnrelatedBSM;'
681  Access flags      : 0x0000 ()
682  Superclass        : 'Ljava/lang/Object;'
683  Interfaces        -
684  Static fields     -
685  Instance fields   -
686  Direct methods    -
687    #0              : (in LUnrelatedBSM;)
688      name          : '<init>'
689      type          : '()V'
690      access        : 0x10000 (CONSTRUCTOR)
691      method_idx    : 169
692      code          -
693      registers     : 1
694      ins           : 1
695      outs          : 1
696      insns size    : 4 16-bit code units
697003fc8:                                        |[003fc8] UnrelatedBSM.<init>:()V
698003fd8: 7010 bf00 0000                         |0000: invoke-direct {v0}, Ljava/lang/Object;.<init>:()V // method@00bf
699003fde: 0e00                                   |0003: return-void
700      catches       : (none)
701      positions     :
702        0x0000 line=23
703      locals        :
704        0x0000 - 0x0004 reg=0 this LUnrelatedBSM;
705
706    #1              : (in LUnrelatedBSM;)
707      name          : 'bsm'
708      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;)Ljava/lang/invoke/CallSite;'
709      access        : 0x0008 (STATIC)
710      method_idx    : 170
711      code          -
712      registers     : 6
713      ins           : 4
714      outs          : 4
715      insns size    : 10 16-bit code units
716003fa4:                                        |[003fa4] UnrelatedBSM.bsm:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;)Ljava/lang/invoke/CallSite;
717003fb4: 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
718003fba: 0c00                                   |0003: move-result-object v0
719003fbc: 2201 3400                              |0004: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
720003fc0: 7020 d200 0100                         |0006: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
721003fc6: 1101                                   |0009: return-object v1
722      catches       : (none)
723      positions     :
724        0x0000 line=27
725        0x0004 line=28
726      locals        :
727        0x0000 - 0x0000 reg=5 (null) Ljava/lang/Class;
728        0x0004 - 0x000a reg=0 mh Ljava/lang/invoke/MethodHandle;
729        0x0000 - 0x000a reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup;
730        0x0000 - 0x000a reg=3 name Ljava/lang/String;
731        0x0000 - 0x000a reg=4 methodType Ljava/lang/invoke/MethodType;
732        0x0000 - 0x000a reg=5 target Ljava/lang/Class; Ljava/lang/Class<*>;
733
734  Virtual methods   -
735  source_file_idx   : 164 (UnrelatedBSM.java)
736
737Class #5 header:
738class_idx           : 6
739access_flags        : 1 (0x0001)
740superclass_idx      : 9
741interfaces_off      : 0 (0x000000)
742source_file_idx     : 136
743annotations_off     : 30772 (0x007834)
744class_data_off      : 29036 (0x00716c)
745static_fields_size  : 0
746instance_fields_size: 0
747direct_methods_size : 5
748virtual_methods_size: 0
749
750Class #5 annotations:
751Annotations on method #1 'TestLinkerMethodMinimalArguments'
752  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
753Annotations on method #2 'TestLinkerMethodMultipleArgumentTypes'
754  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
755Annotations on method #3 'TestUninitializedCallSite'
756  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
757Annotations on method #7 'main'
758  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
759
760Class #5            -
761  Class descriptor  : 'LMain;'
762  Access flags      : 0x0001 (PUBLIC)
763  Superclass        : 'LTestBase;'
764  Interfaces        -
765  Static fields     -
766  Instance fields   -
767  Direct methods    -
768    #0              : (in LMain;)
769      name          : '<init>'
770      type          : '()V'
771      access        : 0x10001 (PUBLIC CONSTRUCTOR)
772      method_idx    : 0
773      code          -
774      registers     : 1
775      ins           : 1
776      outs          : 1
777      insns size    : 4 16-bit code units
778001900:                                        |[001900] Main.<init>:()V
779001910: 7010 3200 0000                         |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032
780001916: 0e00                                   |0003: return-void
781      catches       : (none)
782      positions     :
783        0x0000 line=21
784      locals        :
785        0x0000 - 0x0004 reg=0 this LMain;
786
787    #1              : (in LMain;)
788      name          : 'TestLinkerMethodMinimalArguments'
789      type          : '()V'
790      access        : 0x000a (PRIVATE STATIC)
791      method_idx    : 1
792      code          -
793      registers     : 4
794      ins           : 0
795      outs          : 3
796      insns size    : 66 16-bit code units
797001918:                                        |[001918] Main.TestLinkerMethodMinimalArguments:()V
798001928: 1210                                   |0000: const/4 v0, #int 1 // #1
79900192a: 1301 0a00                              |0001: const/16 v1, #int 10 // #a
80000192e: 7130 7700 1001                         |0003: invoke-static {v0, v1, v1}, LTestLinkerMethodMinimalArguments;.test:(III)V // method@0077
801001934: 7100 0500 0000                         |0006: invoke-static {}, LMain;.assertNotReached:()V // method@0005
80200193a: 280f                                   |0009: goto 0018 // +000f
80300193c: 0d00                                   |000a: move-exception v0
80400193e: 6e10 b600 0000                         |000b: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
805001944: 0c02                                   |000e: move-result-object v2
806001946: 6e10 c000 0200                         |000f: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
80700194c: 0c02                                   |0012: move-result-object v2
80800194e: 1c03 2200                              |0013: const-class v3, Ljava/lang/ClassCastException; // type@0022
809001952: 7120 0400 3200                         |0015: invoke-static {v2, v3}, LMain;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@0004
810001958: 1220                                   |0018: const/4 v0, #int 2 // #2
81100195a: 1302 0b00                              |0019: const/16 v2, #int 11 // #b
81200195e: 7130 7700 1002                         |001b: invoke-static {v0, v1, v2}, LTestLinkerMethodMinimalArguments;.test:(III)V // method@0077
813001964: 7100 0500 0000                         |001e: invoke-static {}, LMain;.assertNotReached:()V // method@0005
81400196a: 280f                                   |0021: goto 0030 // +000f
81500196c: 0d00                                   |0022: move-exception v0
81600196e: 6e10 b600 0000                         |0023: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
817001974: 0c02                                   |0026: move-result-object v2
818001976: 6e10 c000 0200                         |0027: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
81900197c: 0c02                                   |002a: move-result-object v2
82000197e: 1c03 2600                              |002b: const-class v3, Ljava/lang/InstantiationException; // type@0026
821001982: 7120 0400 3200                         |002d: invoke-static {v2, v3}, LMain;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@0004
822001988: 1230                                   |0030: const/4 v0, #int 3 // #3
82300198a: 1302 0c00                              |0031: const/16 v2, #int 12 // #c
82400198e: 7130 7700 1002                         |0033: invoke-static {v0, v1, v2}, LTestLinkerMethodMinimalArguments;.test:(III)V // method@0077
825001994: 7100 0500 0000                         |0036: invoke-static {}, LMain;.assertNotReached:()V // method@0005
82600199a: 2802                                   |0039: goto 003b // +0002
82700199c: 0d00                                   |003a: move-exception v0
82800199e: 1200                                   |003b: const/4 v0, #int 0 // #0
8290019a0: 1302 0d00                              |003c: const/16 v2, #int 13 // #d
8300019a4: 7130 7700 1002                         |003e: invoke-static {v0, v1, v2}, LTestLinkerMethodMinimalArguments;.test:(III)V // method@0077
8310019aa: 0e00                                   |0041: return-void
832      catches       : 3
833        0x0003 - 0x0009
834          Ljava/lang/BootstrapMethodError; -> 0x000a
835        0x001b - 0x0021
836          Ljava/lang/BootstrapMethodError; -> 0x0022
837        0x0033 - 0x0039
838          Ljava/lang/ArithmeticException; -> 0x003a
839      positions     :
840        0x0000 line=49
841        0x0006 line=53
842        0x0009 line=56
843        0x000a line=54
844        0x000b line=55
845        0x0018 line=59
846        0x001e line=61
847        0x0021 line=64
848        0x0022 line=62
849        0x0023 line=63
850        0x0030 line=67
851        0x0036 line=69
852        0x0039 line=71
853        0x003a line=70
854        0x003b line=73
855        0x0041 line=75
856      locals        :
857        0x000b - 0x0018 reg=0 e Ljava/lang/BootstrapMethodError;
858        0x0023 - 0x0030 reg=0 e Ljava/lang/BootstrapMethodError;
859
860    #2              : (in LMain;)
861      name          : 'TestLinkerMethodMultipleArgumentTypes'
862      type          : '()V'
863      access        : 0x000a (PRIVATE STATIC)
864      method_idx    : 2
865      code          -
866      registers     : 2
867      ins           : 0
868      outs          : 2
869      insns size    : 22 16-bit code units
8700019d0:                                        |[0019d0] Main.TestLinkerMethodMultipleArgumentTypes:()V
8710019e0: 1300 2100                              |0000: const/16 v0, #int 33 // #21
8720019e4: 1301 4300                              |0002: const/16 v1, #int 67 // #43
8730019e8: 7120 8400 1000                         |0004: invoke-static {v0, v1}, LTestLinkerMethodMultipleArgumentTypes;.test:(II)V // method@0084
8740019ee: 1300 f0d8                              |0007: const/16 v0, #int -10000 // #d8f0
8750019f2: 1301 e803                              |0009: const/16 v1, #int 1000 // #3e8
8760019f6: 7120 8400 1000                         |000b: invoke-static {v0, v1}, LTestLinkerMethodMultipleArgumentTypes;.test:(II)V // method@0084
8770019fc: 1300 18fc                              |000e: const/16 v0, #int -1000 // #fc18
878001a00: 1301 1027                              |0010: const/16 v1, #int 10000 // #2710
879001a04: 7120 8400 1000                         |0012: invoke-static {v0, v1}, LTestLinkerMethodMultipleArgumentTypes;.test:(II)V // method@0084
880001a0a: 0e00                                   |0015: return-void
881      catches       : (none)
882      positions     :
883        0x0000 line=42
884        0x0007 line=43
885        0x000e line=44
886        0x0015 line=45
887      locals        :
888
889    #3              : (in LMain;)
890      name          : 'TestUninitializedCallSite'
891      type          : '()V'
892      access        : 0x000a (PRIVATE STATIC)
893      method_idx    : 3
894      code          -
895      registers     : 7
896      ins           : 0
897      outs          : 3
898      insns size    : 78 16-bit code units
899001a0c:                                        |[001a0c] Main.TestUninitializedCallSite:()V
900001a1c: 2200 3900                              |0000: new-instance v0, Ljava/lang/invoke/MutableCallSite; // type@0039
901001a20: 6201 1200                              |0002: sget-object v1, Ljava/lang/Integer;.TYPE:Ljava/lang/Class; // field@0012
902001a24: 7110 e100 0100                         |0004: invoke-static {v1}, Ljava/lang/invoke/MethodType;.methodType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType; // method@00e1
903001a2a: 0c01                                   |0007: move-result-object v1
904001a2c: 7020 e600 1000                         |0008: invoke-direct {v0, v1}, Ljava/lang/invoke/MutableCallSite;.<init>:(Ljava/lang/invoke/MethodType;)V // method@00e6
905001a32: 6e10 d100 0000                         |000b: invoke-virtual {v0}, Ljava/lang/invoke/CallSite;.getTarget:()Ljava/lang/invoke/MethodHandle; // method@00d1
906001a38: 0c01                                   |000e: move-result-object v1
907001a3a: fa10 d300 0100 4100                    |000f: invoke-polymorphic {v1}, Ljava/lang/invoke/MethodHandle;.invoke:([Ljava/lang/Object;)Ljava/lang/Object;, ()V // method@00d3, proto@0041
908001a42: 7100 0600 0000                         |0013: invoke-static {}, LMain;.fail:()V // method@0006
909001a48: 2809                                   |0016: goto 001f // +0009
910001a4a: 0d01                                   |0017: move-exception v1
911001a4c: 6202 1300                              |0018: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
912001a50: 1a03 2100                              |001a: const-string v3, "Caught exception from uninitialized call site" // string@0021
913001a54: 6e20 b300 3200                         |001c: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
914001a5a: 2201 3900                              |001f: new-instance v1, Ljava/lang/invoke/MutableCallSite; // type@0039
915001a5e: 1c02 2c00                              |0021: const-class v2, Ljava/lang/String; // type@002c
916001a62: 6203 1200                              |0023: sget-object v3, Ljava/lang/Integer;.TYPE:Ljava/lang/Class; // field@0012
917001a66: 1214                                   |0025: const/4 v4, #int 1 // #1
918001a68: 2344 4600                              |0026: new-array v4, v4, [Ljava/lang/Class; // type@0046
919001a6c: 1205                                   |0028: const/4 v5, #int 0 // #0
920001a6e: 6206 1100                              |0029: sget-object v6, Ljava/lang/Character;.TYPE:Ljava/lang/Class; // field@0011
921001a72: 4d06 0405                              |002b: aput-object v6, v4, v5
922001a76: 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
923001a7c: 0c02                                   |0030: move-result-object v2
924001a7e: 7020 e600 2100                         |0031: invoke-direct {v1, v2}, Ljava/lang/invoke/MutableCallSite;.<init>:(Ljava/lang/invoke/MethodType;)V // method@00e6
925001a84: 0710                                   |0034: move-object v0, v1
926001a86: 6e10 d100 0000                         |0035: invoke-virtual {v0}, Ljava/lang/invoke/CallSite;.getTarget:()Ljava/lang/invoke/MethodHandle; // method@00d1
927001a8c: 0c01                                   |0038: move-result-object v1
928001a8e: 1302 ff05                              |0039: const/16 v2, #int 1535 // #5ff
929001a92: 1303 6400                              |003b: const/16 v3, #int 100 // #64
930001a96: 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
931001a9e: 7100 0600 0000                         |0041: invoke-static {}, LMain;.fail:()V // method@0006
932001aa4: 2809                                   |0044: goto 004d // +0009
933001aa6: 0d01                                   |0045: move-exception v1
934001aa8: 6202 1300                              |0046: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
935001aac: 1a03 2100                              |0048: const-string v3, "Caught exception from uninitialized call site" // string@0021
936001ab0: 6e20 b300 3200                         |004a: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
937001ab6: 0e00                                   |004d: return-void
938      catches       : 2
939        0x000b - 0x0016
940          Ljava/lang/IllegalStateException; -> 0x0017
941        0x0035 - 0x0044
942          Ljava/lang/IllegalStateException; -> 0x0045
943      positions     :
944        0x0000 line=24
945        0x000b line=26
946        0x0013 line=27
947        0x0016 line=30
948        0x0017 line=28
949        0x0018 line=29
950        0x001f line=32
951        0x0035 line=34
952        0x0041 line=35
953        0x0044 line=38
954        0x0045 line=36
955        0x0046 line=37
956        0x004d line=39
957      locals        :
958        0x0018 - 0x001f reg=1 e Ljava/lang/IllegalStateException;
959        0x0046 - 0x004d reg=1 e Ljava/lang/IllegalStateException;
960        0x000b - 0x004e reg=0 callSite Ljava/lang/invoke/CallSite;
961
962    #4              : (in LMain;)
963      name          : 'main'
964      type          : '([Ljava/lang/String;)V'
965      access        : 0x0009 (PUBLIC STATIC)
966      method_idx    : 7
967      code          -
968      registers     : 1
969      ins           : 1
970      outs          : 0
971      insns size    : 28 16-bit code units
972001ad0:                                        |[001ad0] Main.main:([Ljava/lang/String;)V
973001ae0: 7100 0300 0000                         |0000: invoke-static {}, LMain;.TestUninitializedCallSite:()V // method@0003
974001ae6: 7100 0100 0000                         |0003: invoke-static {}, LMain;.TestLinkerMethodMinimalArguments:()V // method@0001
975001aec: 7100 0200 0000                         |0006: invoke-static {}, LMain;.TestLinkerMethodMultipleArgumentTypes:()V // method@0002
976001af2: 7100 8c00 0000                         |0009: invoke-static {}, LTestLinkerUnrelatedBSM;.test:()V // method@008c
977001af8: 7100 6e00 0000                         |000c: invoke-static {}, LTestInvokeCustomWithConcurrentThreads;.test:()V // method@006e
978001afe: 7100 5b00 0000                         |000f: invoke-static {}, LTestInvocationKinds;.test:()V // method@005b
979001b04: 7100 4500 0000                         |0012: invoke-static {}, LTestDynamicBootstrapArguments;.test:()V // method@0045
980001b0a: 7100 2b00 0000                         |0015: invoke-static {}, LTestBadBootstrapArguments;.test:()V // method@002b
981001b10: 7100 a800 0000                         |0018: invoke-static {}, LTestVariableArityLinkerMethod;.test:()V // method@00a8
982001b16: 0e00                                   |001b: return-void
983      catches       : (none)
984      positions     :
985        0x0000 line=78
986        0x0003 line=79
987        0x0006 line=80
988        0x0009 line=81
989        0x000c line=82
990        0x000f line=83
991        0x0012 line=84
992        0x0015 line=85
993        0x0018 line=86
994        0x001b line=87
995      locals        :
996        0x0000 - 0x001c reg=0 args [Ljava/lang/String;
997
998  Virtual methods   -
999  source_file_idx   : 136 (Main.java)
1000
1001Class #6 header:
1002class_idx           : 8
1003access_flags        : 1 (0x0001)
1004superclass_idx      : 9
1005interfaces_off      : 0 (0x000000)
1006source_file_idx     : 144
1007annotations_off     : 30820 (0x007864)
1008class_data_off      : 29062 (0x007186)
1009static_fields_size  : 0
1010instance_fields_size: 0
1011direct_methods_size : 38
1012virtual_methods_size: 0
1013
1014Class #6 annotations:
1015Annotations on class
1016  VISIBILITY_SYSTEM Ldalvik/annotation/MemberClasses; value={ LTestBadBootstrapArguments$TestersConstantCallSite; }
1017Annotations on method #14 'bsm'
1018  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
1019Annotations on method #15 'bsmDJ'
1020  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
1021Annotations on method #16 'bsmDoubleLong'
1022  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
1023Annotations on method #19 'bsmReturningTestersConstantCallsite'
1024  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
1025Annotations on method #21 'bsmZBCS'
1026  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
1027Annotations on method #25 'invokeBoxingArguments'
1028  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"
1029Annotations on method #26 'invokeExtraArguments'
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 Ljava/lang/String; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; intValue={ 1 } Lannotations/Constant; stringValue={ "2" } Lannotations/Constant; intValue={ 3 } } fieldOrMethodName="extraArguments"
1031Annotations on method #27 'invokeHappy'
1032  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"
1033Annotations on method #28 'invokeIntegerReturnType'
1034  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"
1035Annotations on method #29 'invokeMissingParameterTypes'
1036  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"
1037  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/NoSuchMethodError; }
1038Annotations on method #30 'invokeNarrowArguments'
1039  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"
1040Annotations on method #31 'invokeObjectReturnType'
1041  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"
1042Annotations on method #32 'invokeViaCustomCallSiteClass'
1043  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"
1044Annotations on method #33 'invokeVoidReturnType'
1045  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"
1046Annotations on method #34 'invokeWideningArguments'
1047  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"
1048Annotations on method #35 'invokeWideningBoxingArguments'
1049  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"
1050Annotations on method #36 'invokeWrongArguments'
1051  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"
1052Annotations on method #37 'invokeWrongArgumentsAgain'
1053  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"
1054Annotations on method #38 'invokeWrongParameterTypes'
1055  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"
1056  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/NoSuchMethodError; }
1057
1058Class #6            -
1059  Class descriptor  : 'LTestBadBootstrapArguments;'
1060  Access flags      : 0x0001 (PUBLIC)
1061  Superclass        : 'LTestBase;'
1062  Interfaces        -
1063  Static fields     -
1064  Instance fields   -
1065  Direct methods    -
1066    #0              : (in LTestBadBootstrapArguments;)
1067      name          : '<init>'
1068      type          : '()V'
1069      access        : 0x10001 (PUBLIC CONSTRUCTOR)
1070      method_idx    : 9
1071      code          -
1072      registers     : 1
1073      ins           : 1
1074      outs          : 1
1075      insns size    : 4 16-bit code units
1076001d64:                                        |[001d64] TestBadBootstrapArguments.<init>:()V
1077001d74: 7010 3200 0000                         |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032
1078001d7a: 0e00                                   |0003: return-void
1079      catches       : (none)
1080      positions     :
1081        0x0000 line=27
1082      locals        :
1083        0x0000 - 0x0004 reg=0 this LTestBadBootstrapArguments;
1084
1085    #1              : (in LTestBadBootstrapArguments;)
1086      name          : 'boxingArguments'
1087      type          : '()V'
1088      access        : 0x000a (PRIVATE STATIC)
1089      method_idx    : 12
1090      code          -
1091      registers     : 2
1092      ins           : 0
1093      outs          : 2
1094      insns size    : 8 16-bit code units
1095001d7c:                                        |[001d7c] TestBadBootstrapArguments.boxingArguments:()V
1096001d8c: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1097001d90: 1a01 e900                              |0002: const-string v1, "boxingArguments" // string@00e9
1098001d94: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
1099001d9a: 0e00                                   |0007: return-void
1100      catches       : (none)
1101      positions     :
1102        0x0000 line=348
1103        0x0007 line=349
1104      locals        :
1105
1106    #2              : (in LTestBadBootstrapArguments;)
1107      name          : 'bsm'
1108      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;ILjava/lang/String;)Ljava/lang/invoke/CallSite;'
1109      access        : 0x000a (PRIVATE STATIC)
1110      method_idx    : 14
1111      code          -
1112      registers     : 7
1113      ins           : 5
1114      outs          : 4
1115      insns size    : 85 16-bit code units
1116001bb4:                                        |[001bb4] TestBadBootstrapArguments.bsm:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;ILjava/lang/String;)Ljava/lang/invoke/CallSite;
1117001bc4: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1118001bc8: 1a01 ee00                              |0002: const-string v1, "bsm(" // string@00ee
1119001bcc: 6e20 b000 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
1120001bd2: 6200 1300                              |0007: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1121001bd6: 6e10 dc00 0200                         |0009: invoke-virtual {v2}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
1122001bdc: 0c01                                   |000c: move-result-object v1
1123001bde: 6e20 af00 1000                         |000d: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
1124001be4: 6200 1300                              |0010: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1125001be8: 1a01 0c00                              |0012: const-string v1, ", " // string@000c
1126001bec: 6e20 b000 1000                         |0014: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
1127001bf2: 6200 1300                              |0017: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1128001bf6: 6e20 b000 3000                         |0019: invoke-virtual {v0, v3}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
1129001bfc: 6200 1300                              |001c: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1130001c00: 1a01 0c00                              |001e: const-string v1, ", " // string@000c
1131001c04: 6e20 b000 1000                         |0020: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
1132001c0a: 6200 1300                              |0023: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1133001c0e: 6e20 af00 4000                         |0025: invoke-virtual {v0, v4}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
1134001c14: 6200 1300                              |0028: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1135001c18: 1a01 0c00                              |002a: const-string v1, ", " // string@000c
1136001c1c: 6e20 b000 1000                         |002c: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
1137001c22: 6200 1300                              |002f: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1138001c26: 6e20 ad00 5000                         |0031: invoke-virtual {v0, v5}, Ljava/io/PrintStream;.print:(I)V // method@00ad
1139001c2c: 6200 1300                              |0034: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1140001c30: 1a01 0c00                              |0036: const-string v1, ", " // string@000c
1141001c34: 6e20 b000 1000                         |0038: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
1142001c3a: 6200 1300                              |003b: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1143001c3e: 6e20 b000 6000                         |003d: invoke-virtual {v0, v6}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
1144001c44: 6200 1300                              |0040: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1145001c48: 1a01 0700                              |0042: const-string v1, ")" // string@0007
1146001c4c: 6e20 b300 1000                         |0044: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
1147001c52: 6e10 dc00 0200                         |0047: invoke-virtual {v2}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
1148001c58: 0c00                                   |004a: move-result-object v0
1149001c5a: 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
1150001c60: 0c00                                   |004e: move-result-object v0
1151001c62: 2201 3400                              |004f: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
1152001c66: 7020 d200 0100                         |0051: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
1153001c6c: 1101                                   |0054: return-object v1
1154      catches       : (none)
1155      positions     :
1156        0x0000 line=35
1157        0x0007 line=36
1158        0x0010 line=37
1159        0x0017 line=38
1160        0x001c line=39
1161        0x0023 line=40
1162        0x0028 line=41
1163        0x002f line=42
1164        0x0034 line=43
1165        0x003b line=44
1166        0x0040 line=45
1167        0x0047 line=46
1168        0x004f line=47
1169      locals        :
1170        0x004f - 0x0055 reg=0 mh Ljava/lang/invoke/MethodHandle;
1171        0x0000 - 0x0055 reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup;
1172        0x0000 - 0x0055 reg=3 methodName Ljava/lang/String;
1173        0x0000 - 0x0055 reg=4 methodType Ljava/lang/invoke/MethodType;
1174        0x0000 - 0x0055 reg=5 extraInt I
1175        0x0000 - 0x0055 reg=6 extraString Ljava/lang/String;
1176
1177    #3              : (in LTestBadBootstrapArguments;)
1178      name          : 'bsmDJ'
1179      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;DJ)Ljava/lang/invoke/CallSite;'
1180      access        : 0x000a (PRIVATE STATIC)
1181      method_idx    : 15
1182      code          -
1183      registers     : 9
1184      ins           : 7
1185      outs          : 4
1186      insns size    : 45 16-bit code units
1187001c70:                                        |[001c70] TestBadBootstrapArguments.bsmDJ:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;DJ)Ljava/lang/invoke/CallSite;
1188001c80: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1189001c84: 1a01 f100                              |0002: const-string v1, "bsmDJ(..., " // string@00f1
1190001c88: 6e20 b000 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
1191001c8e: 6200 1300                              |0007: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1192001c92: 6e30 ac00 5006                         |0009: invoke-virtual {v0, v5, v6}, Ljava/io/PrintStream;.print:(D)V // method@00ac
1193001c98: 6200 1300                              |000c: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1194001c9c: 1a01 0c00                              |000e: const-string v1, ", " // string@000c
1195001ca0: 6e20 b000 1000                         |0010: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
1196001ca6: 6200 1300                              |0013: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1197001caa: 6e30 ae00 7008                         |0015: invoke-virtual {v0, v7, v8}, Ljava/io/PrintStream;.print:(J)V // method@00ae
1198001cb0: 6200 1300                              |0018: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1199001cb4: 1a01 0700                              |001a: const-string v1, ")" // string@0007
1200001cb8: 6e20 b300 1000                         |001c: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
1201001cbe: 6e10 dc00 0200                         |001f: invoke-virtual {v2}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
1202001cc4: 0c00                                   |0022: move-result-object v0
1203001cc6: 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
1204001ccc: 0c00                                   |0026: move-result-object v0
1205001cce: 2201 3400                              |0027: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
1206001cd2: 7020 d200 0100                         |0029: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
1207001cd8: 1101                                   |002c: return-object v1
1208      catches       : (none)
1209      positions     :
1210        0x0000 line=270
1211        0x0007 line=271
1212        0x000c line=272
1213        0x0013 line=273
1214        0x0018 line=274
1215        0x001f line=275
1216        0x0027 line=276
1217      locals        :
1218        0x0027 - 0x002d reg=0 mh Ljava/lang/invoke/MethodHandle;
1219        0x0000 - 0x002d reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup;
1220        0x0000 - 0x002d reg=3 methodName Ljava/lang/String;
1221        0x0000 - 0x002d reg=4 methodType Ljava/lang/invoke/MethodType;
1222        0x0000 - 0x002d reg=5 extraArg0 D
1223        0x0000 - 0x002d reg=7 extraArg1 J
1224
1225    #4              : (in LTestBadBootstrapArguments;)
1226      name          : 'bsmDoubleLong'
1227      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Double;Ljava/lang/Long;)Ljava/lang/invoke/CallSite;'
1228      access        : 0x000a (PRIVATE STATIC)
1229      method_idx    : 16
1230      code          -
1231      registers     : 7
1232      ins           : 5
1233      outs          : 4
1234      insns size    : 45 16-bit code units
1235001cdc:                                        |[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;
1236001cec: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1237001cf0: 1a01 f300                              |0002: const-string v1, "bsmDoubleLong(..., " // string@00f3
1238001cf4: 6e20 b000 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
1239001cfa: 6200 1300                              |0007: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1240001cfe: 6e20 af00 5000                         |0009: invoke-virtual {v0, v5}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
1241001d04: 6200 1300                              |000c: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1242001d08: 1a01 0c00                              |000e: const-string v1, ", " // string@000c
1243001d0c: 6e20 b000 1000                         |0010: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
1244001d12: 6200 1300                              |0013: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1245001d16: 6e20 af00 6000                         |0015: invoke-virtual {v0, v6}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
1246001d1c: 6200 1300                              |0018: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1247001d20: 1a01 0700                              |001a: const-string v1, ")" // string@0007
1248001d24: 6e20 b300 1000                         |001c: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
1249001d2a: 6e10 dc00 0200                         |001f: invoke-virtual {v2}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
1250001d30: 0c00                                   |0022: move-result-object v0
1251001d32: 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
1252001d38: 0c00                                   |0026: move-result-object v0
1253001d3a: 2201 3400                              |0027: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
1254001d3e: 7020 d200 0100                         |0029: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
1255001d44: 1101                                   |002c: return-object v1
1256      catches       : (none)
1257      positions     :
1258        0x0000 line=314
1259        0x0007 line=315
1260        0x000c line=316
1261        0x0013 line=317
1262        0x0018 line=318
1263        0x001f line=319
1264        0x0027 line=320
1265      locals        :
1266        0x0027 - 0x002d reg=0 mh Ljava/lang/invoke/MethodHandle;
1267        0x0000 - 0x002d reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup;
1268        0x0000 - 0x002d reg=3 methodName Ljava/lang/String;
1269        0x0000 - 0x002d reg=4 methodType Ljava/lang/invoke/MethodType;
1270        0x0000 - 0x002d reg=5 extraArg0 Ljava/lang/Double;
1271        0x0000 - 0x002d reg=6 extraArg1 Ljava/lang/Long;
1272
1273    #5              : (in LTestBadBootstrapArguments;)
1274      name          : 'bsmReturningInteger'
1275      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/Integer;'
1276      access        : 0x0008 (STATIC)
1277      method_idx    : 17
1278      code          -
1279      registers     : 5
1280      ins           : 3
1281      outs          : 2
1282      insns size    : 13 16-bit code units
1283001b5c:                                        |[001b5c] TestBadBootstrapArguments.bsmReturningInteger:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/Integer;
1284001b6c: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1285001b70: 1a01 eb00                              |0002: const-string v1, "bsm returning Integer value." // string@00eb
1286001b74: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
1287001b7a: 1230                                   |0007: const/4 v0, #int 3 // #3
1288001b7c: 7110 bd00 0000                         |0008: invoke-static {v0}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@00bd
1289001b82: 0c00                                   |000b: move-result-object v0
1290001b84: 1100                                   |000c: return-object v0
1291      catches       : (none)
1292      positions     :
1293        0x0000 line=425
1294        0x0007 line=426
1295      locals        :
1296        0x0000 - 0x000d reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup;
1297        0x0000 - 0x000d reg=3 name Ljava/lang/String;
1298        0x0000 - 0x000d reg=4 type Ljava/lang/invoke/MethodType;
1299
1300    #6              : (in LTestBadBootstrapArguments;)
1301      name          : 'bsmReturningObject'
1302      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/Object;'
1303      access        : 0x0008 (STATIC)
1304      method_idx    : 18
1305      code          -
1306      registers     : 5
1307      ins           : 3
1308      outs          : 2
1309      insns size    : 13 16-bit code units
1310001b88:                                        |[001b88] TestBadBootstrapArguments.bsmReturningObject:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/Object;
1311001b98: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1312001b9c: 1a01 ec00                              |0002: const-string v1, "bsm returning Object value." // string@00ec
1313001ba0: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
1314001ba6: 2200 2a00                              |0007: new-instance v0, Ljava/lang/Object; // type@002a
1315001baa: 7010 bf00 0000                         |0009: invoke-direct {v0}, Ljava/lang/Object;.<init>:()V // method@00bf
1316001bb0: 1100                                   |000c: return-object v0
1317      catches       : (none)
1318      positions     :
1319        0x0000 line=402
1320        0x0007 line=403
1321      locals        :
1322        0x0000 - 0x000d reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup;
1323        0x0000 - 0x000d reg=3 name Ljava/lang/String;
1324        0x0000 - 0x000d reg=4 type Ljava/lang/invoke/MethodType;
1325
1326    #7              : (in LTestBadBootstrapArguments;)
1327      name          : 'bsmReturningTestersConstantCallsite'
1328      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)LTestBadBootstrapArguments$TestersConstantCallSite;'
1329      access        : 0x0008 (STATIC)
1330      method_idx    : 19
1331      code          -
1332      registers     : 5
1333      ins           : 3
1334      outs          : 4
1335      insns size    : 14 16-bit code units
1336001b30:                                        |[001b30] TestBadBootstrapArguments.bsmReturningTestersConstantCallsite:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)LTestBadBootstrapArguments$TestersConstantCallSite;
1337001b40: 2200 0700                              |0000: new-instance v0, LTestBadBootstrapArguments$TestersConstantCallSite; // type@0007
1338001b44: 6e10 dc00 0200                         |0002: invoke-virtual {v2}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
1339001b4a: 0c01                                   |0005: move-result-object v1
1340001b4c: 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
1341001b52: 0c01                                   |0009: move-result-object v1
1342001b54: 7020 0800 1000                         |000a: invoke-direct {v0, v1}, LTestBadBootstrapArguments$TestersConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@0008
1343001b5a: 1100                                   |000d: return-object v0
1344      catches       : (none)
1345      positions     :
1346        0x0000 line=455
1347      locals        :
1348        0x0000 - 0x000e reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup;
1349        0x0000 - 0x000e reg=3 name Ljava/lang/String;
1350        0x0000 - 0x000e reg=4 type Ljava/lang/invoke/MethodType;
1351
1352    #8              : (in LTestBadBootstrapArguments;)
1353      name          : 'bsmReturningVoid'
1354      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)V'
1355      access        : 0x0008 (STATIC)
1356      method_idx    : 20
1357      code          -
1358      registers     : 5
1359      ins           : 3
1360      outs          : 2
1361      insns size    : 8 16-bit code units
1362001d9c:                                        |[001d9c] TestBadBootstrapArguments.bsmReturningVoid:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)V
1363001dac: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1364001db0: 1a01 ed00                              |0002: const-string v1, "bsm returning void value." // string@00ed
1365001db4: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
1366001dba: 0e00                                   |0007: return-void
1367      catches       : (none)
1368      positions     :
1369        0x0000 line=380
1370        0x0007 line=381
1371      locals        :
1372        0x0000 - 0x0008 reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup;
1373        0x0000 - 0x0008 reg=3 name Ljava/lang/String;
1374        0x0000 - 0x0008 reg=4 type Ljava/lang/invoke/MethodType;
1375
1376    #9              : (in LTestBadBootstrapArguments;)
1377      name          : 'bsmZBCS'
1378      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;ZBCS)Ljava/lang/invoke/CallSite;'
1379      access        : 0x000a (PRIVATE STATIC)
1380      method_idx    : 21
1381      code          -
1382      registers     : 8
1383      ins           : 7
1384      outs          : 0
1385      insns size    : 5 16-bit code units
1386001d48:                                        |[001d48] TestBadBootstrapArguments.bsmZBCS:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;ZBCS)Ljava/lang/invoke/CallSite;
1387001d58: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
1388001d5e: 1200                                   |0003: const/4 v0, #int 0 // #0
1389001d60: 1100                                   |0004: return-object v0
1390      catches       : (none)
1391      positions     :
1392        0x0000 line=227
1393        0x0003 line=228
1394      locals        :
1395        0x0000 - 0x0005 reg=1 lookup Ljava/lang/invoke/MethodHandles$Lookup;
1396        0x0000 - 0x0005 reg=2 methodName Ljava/lang/String;
1397        0x0000 - 0x0005 reg=3 methodType Ljava/lang/invoke/MethodType;
1398        0x0000 - 0x0005 reg=4 extraArg0 Z
1399        0x0000 - 0x0005 reg=5 extraArg1 B
1400        0x0000 - 0x0005 reg=6 extraArg2 C
1401        0x0000 - 0x0005 reg=7 extraArg3 S
1402
1403    #10              : (in LTestBadBootstrapArguments;)
1404      name          : 'extraArguments'
1405      type          : '()V'
1406      access        : 0x000a (PRIVATE STATIC)
1407      method_idx    : 22
1408      code          -
1409      registers     : 2
1410      ins           : 0
1411      outs          : 2
1412      insns size    : 8 16-bit code units
1413001dbc:                                        |[001dbc] TestBadBootstrapArguments.extraArguments:()V
1414001dcc: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1415001dd0: 1a01 2001                              |0002: const-string v1, "extraArguments" // string@0120
1416001dd4: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
1417001dda: 0e00                                   |0007: return-void
1418      catches       : (none)
1419      positions     :
1420        0x0000 line=158
1421        0x0007 line=159
1422      locals        :
1423
1424    #11              : (in LTestBadBootstrapArguments;)
1425      name          : 'happy'
1426      type          : '()V'
1427      access        : 0x000a (PRIVATE STATIC)
1428      method_idx    : 23
1429      code          -
1430      registers     : 2
1431      ins           : 0
1432      outs          : 2
1433      insns size    : 8 16-bit code units
1434001ddc:                                        |[001ddc] TestBadBootstrapArguments.happy:()V
1435001dec: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1436001df0: 1a01 3d01                              |0002: const-string v1, "happy" // string@013d
1437001df4: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
1438001dfa: 0e00                                   |0007: return-void
1439      catches       : (none)
1440      positions     :
1441        0x0000 line=74
1442        0x0007 line=75
1443      locals        :
1444
1445    #12              : (in LTestBadBootstrapArguments;)
1446      name          : 'integerReturnType'
1447      type          : '()V'
1448      access        : 0x000a (PRIVATE STATIC)
1449      method_idx    : 24
1450      code          -
1451      registers     : 0
1452      ins           : 0
1453      outs          : 0
1454      insns size    : 4 16-bit code units
1455001dfc:                                        |[001dfc] TestBadBootstrapArguments.integerReturnType:()V
1456001e0c: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
1457001e12: 0e00                                   |0003: return-void
1458      catches       : (none)
1459      positions     :
1460        0x0000 line=444
1461        0x0003 line=445
1462      locals        :
1463
1464    #13              : (in LTestBadBootstrapArguments;)
1465      name          : 'invokeBoxingArguments'
1466      type          : '()V'
1467      access        : 0x000a (PRIVATE STATIC)
1468      method_idx    : 25
1469      code          -
1470      registers     : 0
1471      ins           : 0
1472      outs          : 0
1473      insns size    : 4 16-bit code units
1474001e14:                                        |[001e14] TestBadBootstrapArguments.invokeBoxingArguments:()V
1475001e24: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
1476001e2a: 0e00                                   |0003: return-void
1477      catches       : (none)
1478      positions     :
1479        0x0000 line=344
1480        0x0003 line=345
1481      locals        :
1482
1483    #14              : (in LTestBadBootstrapArguments;)
1484      name          : 'invokeExtraArguments'
1485      type          : '()V'
1486      access        : 0x000a (PRIVATE STATIC)
1487      method_idx    : 26
1488      code          -
1489      registers     : 0
1490      ins           : 0
1491      outs          : 0
1492      insns size    : 4 16-bit code units
1493001e2c:                                        |[001e2c] TestBadBootstrapArguments.invokeExtraArguments:()V
1494001e3c: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
1495001e42: 0e00                                   |0003: return-void
1496      catches       : (none)
1497      positions     :
1498        0x0000 line=154
1499        0x0003 line=155
1500      locals        :
1501
1502    #15              : (in LTestBadBootstrapArguments;)
1503      name          : 'invokeHappy'
1504      type          : '()V'
1505      access        : 0x000a (PRIVATE STATIC)
1506      method_idx    : 27
1507      code          -
1508      registers     : 0
1509      ins           : 0
1510      outs          : 0
1511      insns size    : 4 16-bit code units
1512001e44:                                        |[001e44] TestBadBootstrapArguments.invokeHappy:()V
1513001e54: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
1514001e5a: 0e00                                   |0003: return-void
1515      catches       : (none)
1516      positions     :
1517        0x0000 line=70
1518        0x0003 line=71
1519      locals        :
1520
1521    #16              : (in LTestBadBootstrapArguments;)
1522      name          : 'invokeIntegerReturnType'
1523      type          : '()V'
1524      access        : 0x000a (PRIVATE STATIC)
1525      method_idx    : 28
1526      code          -
1527      registers     : 0
1528      ins           : 0
1529      outs          : 0
1530      insns size    : 4 16-bit code units
1531001e5c:                                        |[001e5c] TestBadBootstrapArguments.invokeIntegerReturnType:()V
1532001e6c: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
1533001e72: 0e00                                   |0003: return-void
1534      catches       : (none)
1535      positions     :
1536        0x0000 line=440
1537        0x0003 line=441
1538      locals        :
1539
1540    #17              : (in LTestBadBootstrapArguments;)
1541      name          : 'invokeMissingParameterTypes'
1542      type          : '()V'
1543      access        : 0x000a (PRIVATE STATIC)
1544      method_idx    : 29
1545      code          -
1546      registers     : 0
1547      ins           : 0
1548      outs          : 0
1549      insns size    : 4 16-bit code units
1550001e74:                                        |[001e74] TestBadBootstrapArguments.invokeMissingParameterTypes:()V
1551001e84: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
1552001e8a: 0e00                                   |0003: return-void
1553      catches       : (none)
1554      positions     :
1555        0x0000 line=124
1556        0x0003 line=125
1557      locals        :
1558
1559    #18              : (in LTestBadBootstrapArguments;)
1560      name          : 'invokeNarrowArguments'
1561      type          : '()V'
1562      access        : 0x000a (PRIVATE STATIC)
1563      method_idx    : 30
1564      code          -
1565      registers     : 0
1566      ins           : 0
1567      outs          : 0
1568      insns size    : 4 16-bit code units
1569001e8c:                                        |[001e8c] TestBadBootstrapArguments.invokeNarrowArguments:()V
1570001e9c: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
1571001ea2: 0e00                                   |0003: return-void
1572      catches       : (none)
1573      positions     :
1574        0x0000 line=256
1575        0x0003 line=257
1576      locals        :
1577
1578    #19              : (in LTestBadBootstrapArguments;)
1579      name          : 'invokeObjectReturnType'
1580      type          : '()V'
1581      access        : 0x000a (PRIVATE STATIC)
1582      method_idx    : 31
1583      code          -
1584      registers     : 0
1585      ins           : 0
1586      outs          : 0
1587      insns size    : 4 16-bit code units
1588001ea4:                                        |[001ea4] TestBadBootstrapArguments.invokeObjectReturnType:()V
1589001eb4: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
1590001eba: 0e00                                   |0003: return-void
1591      catches       : (none)
1592      positions     :
1593        0x0000 line=417
1594        0x0003 line=418
1595      locals        :
1596
1597    #20              : (in LTestBadBootstrapArguments;)
1598      name          : 'invokeViaCustomCallSiteClass'
1599      type          : '()V'
1600      access        : 0x000a (PRIVATE STATIC)
1601      method_idx    : 32
1602      code          -
1603      registers     : 0
1604      ins           : 0
1605      outs          : 0
1606      insns size    : 4 16-bit code units
1607001ebc:                                        |[001ebc] TestBadBootstrapArguments.invokeViaCustomCallSiteClass:()V
1608001ecc: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
1609001ed2: 0e00                                   |0003: return-void
1610      catches       : (none)
1611      positions     :
1612        0x0000 line=469
1613        0x0003 line=470
1614      locals        :
1615
1616    #21              : (in LTestBadBootstrapArguments;)
1617      name          : 'invokeVoidReturnType'
1618      type          : '()V'
1619      access        : 0x000a (PRIVATE STATIC)
1620      method_idx    : 33
1621      code          -
1622      registers     : 0
1623      ins           : 0
1624      outs          : 0
1625      insns size    : 4 16-bit code units
1626001ed4:                                        |[001ed4] TestBadBootstrapArguments.invokeVoidReturnType:()V
1627001ee4: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
1628001eea: 0e00                                   |0003: return-void
1629      catches       : (none)
1630      positions     :
1631        0x0000 line=394
1632        0x0003 line=395
1633      locals        :
1634
1635    #22              : (in LTestBadBootstrapArguments;)
1636      name          : 'invokeWideningArguments'
1637      type          : '()V'
1638      access        : 0x000a (PRIVATE STATIC)
1639      method_idx    : 34
1640      code          -
1641      registers     : 0
1642      ins           : 0
1643      outs          : 0
1644      insns size    : 4 16-bit code units
1645001eec:                                        |[001eec] TestBadBootstrapArguments.invokeWideningArguments:()V
1646001efc: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
1647001f02: 0e00                                   |0003: return-void
1648      catches       : (none)
1649      positions     :
1650        0x0000 line=300
1651        0x0003 line=301
1652      locals        :
1653
1654    #23              : (in LTestBadBootstrapArguments;)
1655      name          : 'invokeWideningBoxingArguments'
1656      type          : '()V'
1657      access        : 0x000a (PRIVATE STATIC)
1658      method_idx    : 35
1659      code          -
1660      registers     : 0
1661      ins           : 0
1662      outs          : 0
1663      insns size    : 4 16-bit code units
1664001f04:                                        |[001f04] TestBadBootstrapArguments.invokeWideningBoxingArguments:()V
1665001f14: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
1666001f1a: 0e00                                   |0003: return-void
1667      catches       : (none)
1668      positions     :
1669        0x0000 line=372
1670        0x0003 line=373
1671      locals        :
1672
1673    #24              : (in LTestBadBootstrapArguments;)
1674      name          : 'invokeWrongArguments'
1675      type          : '()V'
1676      access        : 0x000a (PRIVATE STATIC)
1677      method_idx    : 36
1678      code          -
1679      registers     : 0
1680      ins           : 0
1681      outs          : 0
1682      insns size    : 4 16-bit code units
1683001f1c:                                        |[001f1c] TestBadBootstrapArguments.invokeWrongArguments:()V
1684001f2c: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
1685001f32: 0e00                                   |0003: return-void
1686      catches       : (none)
1687      positions     :
1688        0x0000 line=182
1689        0x0003 line=183
1690      locals        :
1691
1692    #25              : (in LTestBadBootstrapArguments;)
1693      name          : 'invokeWrongArgumentsAgain'
1694      type          : '()V'
1695      access        : 0x000a (PRIVATE STATIC)
1696      method_idx    : 37
1697      code          -
1698      registers     : 0
1699      ins           : 0
1700      outs          : 0
1701      insns size    : 4 16-bit code units
1702001f34:                                        |[001f34] TestBadBootstrapArguments.invokeWrongArgumentsAgain:()V
1703001f44: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
1704001f4a: 0e00                                   |0003: return-void
1705      catches       : (none)
1706      positions     :
1707        0x0000 line=210
1708        0x0003 line=211
1709      locals        :
1710
1711    #26              : (in LTestBadBootstrapArguments;)
1712      name          : 'invokeWrongParameterTypes'
1713      type          : '()V'
1714      access        : 0x000a (PRIVATE STATIC)
1715      method_idx    : 38
1716      code          -
1717      registers     : 0
1718      ins           : 0
1719      outs          : 0
1720      insns size    : 4 16-bit code units
1721001f4c:                                        |[001f4c] TestBadBootstrapArguments.invokeWrongParameterTypes:()V
1722001f5c: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
1723001f62: 0e00                                   |0003: return-void
1724      catches       : (none)
1725      positions     :
1726        0x0000 line=98
1727        0x0003 line=99
1728      locals        :
1729
1730    #27              : (in LTestBadBootstrapArguments;)
1731      name          : 'missingParameterTypes'
1732      type          : '()V'
1733      access        : 0x000a (PRIVATE STATIC)
1734      method_idx    : 39
1735      code          -
1736      registers     : 2
1737      ins           : 0
1738      outs          : 2
1739      insns size    : 8 16-bit code units
1740001f64:                                        |[001f64] TestBadBootstrapArguments.missingParameterTypes:()V
1741001f74: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1742001f78: 1a01 8c01                              |0002: const-string v1, "missingParameterTypes" // string@018c
1743001f7c: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
1744001f82: 0e00                                   |0007: return-void
1745      catches       : (none)
1746      positions     :
1747        0x0000 line=128
1748        0x0007 line=129
1749      locals        :
1750
1751    #28              : (in LTestBadBootstrapArguments;)
1752      name          : 'narrowArguments'
1753      type          : '()V'
1754      access        : 0x000a (PRIVATE STATIC)
1755      method_idx    : 40
1756      code          -
1757      registers     : 0
1758      ins           : 0
1759      outs          : 0
1760      insns size    : 4 16-bit code units
1761001f84:                                        |[001f84] TestBadBootstrapArguments.narrowArguments:()V
1762001f94: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
1763001f9a: 0e00                                   |0003: return-void
1764      catches       : (none)
1765      positions     :
1766        0x0000 line=260
1767        0x0003 line=261
1768      locals        :
1769
1770    #29              : (in LTestBadBootstrapArguments;)
1771      name          : 'objectReturnType'
1772      type          : '()V'
1773      access        : 0x000a (PRIVATE STATIC)
1774      method_idx    : 41
1775      code          -
1776      registers     : 0
1777      ins           : 0
1778      outs          : 0
1779      insns size    : 4 16-bit code units
1780001f9c:                                        |[001f9c] TestBadBootstrapArguments.objectReturnType:()V
1781001fac: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
1782001fb2: 0e00                                   |0003: return-void
1783      catches       : (none)
1784      positions     :
1785        0x0000 line=421
1786        0x0003 line=422
1787      locals        :
1788
1789    #30              : (in LTestBadBootstrapArguments;)
1790      name          : 'sayHello'
1791      type          : '()V'
1792      access        : 0x000a (PRIVATE STATIC)
1793      method_idx    : 42
1794      code          -
1795      registers     : 2
1796      ins           : 0
1797      outs          : 2
1798      insns size    : 8 16-bit code units
1799001fb4:                                        |[001fb4] TestBadBootstrapArguments.sayHello:()V
1800001fc4: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1801001fc8: 1a01 2d00                              |0002: const-string v1, "Hello!" // string@002d
1802001fcc: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
1803001fd2: 0e00                                   |0007: return-void
1804      catches       : (none)
1805      positions     :
1806        0x0000 line=473
1807        0x0007 line=474
1808      locals        :
1809
1810    #31              : (in LTestBadBootstrapArguments;)
1811      name          : 'test'
1812      type          : '()V'
1813      access        : 0x0008 (STATIC)
1814      method_idx    : 43
1815      code          -
1816      registers     : 3
1817      ins           : 0
1818      outs          : 2
1819      insns size    : 529 16-bit code units
1820001fd4:                                        |[001fd4] TestBadBootstrapArguments.test:()V
1821001fe4: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1822001fe8: 1a01 8f00                              |0002: const-string v1, "TestBadBootstrapArguments" // string@008f
1823001fec: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
1824001ff2: fc00 0000 0000                         |0007: invoke-custom {}, call_site@0000
1825001ff8: fc00 0100 0000                         |000a: invoke-custom {}, call_site@0001
1826001ffe: 7100 0b00 0000                         |000d: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
1827002004: 2812                                   |0010: goto 0022 // +0012
1828002006: 0d00                                   |0011: move-exception v0
1829002008: 6201 1300                              |0012: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
183000200c: 1a02 6101                              |0014: const-string v2, "invokeWrongParameterTypes => " // string@0161
1831002010: 6e20 b000 2100                         |0016: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
1832002016: 6201 1300                              |0019: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
183300201a: 6e10 c000 0000                         |001b: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
1834002020: 0c02                                   |001e: move-result-object v2
1835002022: 6e20 b200 2100                         |001f: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
1836002028: fc00 0200 0000                         |0022: invoke-custom {}, call_site@0002
183700202e: 7100 0b00 0000                         |0025: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
1838002034: 2812                                   |0028: goto 003a // +0012
1839002036: 0d00                                   |0029: move-exception v0
1840002038: 6201 1300                              |002a: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
184100203c: 1a02 5101                              |002c: const-string v2, "invokeMissingParameterTypes => " // string@0151
1842002040: 6e20 b000 2100                         |002e: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
1843002046: 6201 1300                              |0031: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
184400204a: 6e10 c000 0000                         |0033: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
1845002050: 0c02                                   |0036: move-result-object v2
1846002052: 6e20 b200 2100                         |0037: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
1847002058: fc00 0300 0000                         |003a: invoke-custom {}, call_site@0003
184800205e: 7100 0b00 0000                         |003d: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
1849002064: 2833                                   |0040: goto 0073 // +0033
1850002066: 0d00                                   |0041: move-exception v0
1851002068: 1c01 3a00                              |0042: const-class v1, Ljava/lang/invoke/WrongMethodTypeException; // type@003a
185200206c: 6e10 b600 0000                         |0044: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
1853002072: 0c02                                   |0047: move-result-object v2
1854002074: 6e10 c000 0200                         |0048: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
185500207a: 0c02                                   |004b: move-result-object v2
185600207c: 7120 0a00 2100                         |004c: invoke-static {v1, v2}, LTestBadBootstrapArguments;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@000a
1857002082: 6201 1300                              |004f: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1858002086: 1a02 4c01                              |0051: const-string v2, "invokeExtraArguments => " // string@014c
185900208a: 6e20 b000 2100                         |0053: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
1860002090: 6201 1300                              |0056: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1861002094: 6e10 c000 0000                         |0058: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
186200209a: 0c02                                   |005b: move-result-object v2
186300209c: 6e20 af00 2100                         |005c: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
18640020a2: 6201 1300                              |005f: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
18650020a6: 1a02 0200                              |0061: const-string v2, " => " // string@0002
18660020aa: 6e20 b000 2100                         |0063: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
18670020b0: 6201 1300                              |0066: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
18680020b4: 6e10 b600 0000                         |0068: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
18690020ba: 0c02                                   |006b: move-result-object v2
18700020bc: 6e10 c000 0200                         |006c: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
18710020c2: 0c02                                   |006f: move-result-object v2
18720020c4: 6e20 b200 2100                         |0070: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
18730020ca: fc00 0400 0000                         |0073: invoke-custom {}, call_site@0004
18740020d0: 7100 0b00 0000                         |0076: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
18750020d6: 2833                                   |0079: goto 00ac // +0033
18760020d8: 0d00                                   |007a: move-exception v0
18770020da: 1c01 2200                              |007b: const-class v1, Ljava/lang/ClassCastException; // type@0022
18780020de: 6e10 b600 0000                         |007d: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
18790020e4: 0c02                                   |0080: move-result-object v2
18800020e6: 6e10 c000 0200                         |0081: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
18810020ec: 0c02                                   |0084: move-result-object v2
18820020ee: 7120 0a00 2100                         |0085: invoke-static {v1, v2}, LTestBadBootstrapArguments;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@000a
18830020f4: 6201 1300                              |0088: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
18840020f8: 1a02 5d01                              |008a: const-string v2, "invokeWrongArguments => " // string@015d
18850020fc: 6e20 b000 2100                         |008c: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
1886002102: 6201 1300                              |008f: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1887002106: 6e10 c000 0000                         |0091: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
188800210c: 0c02                                   |0094: move-result-object v2
188900210e: 6e20 af00 2100                         |0095: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
1890002114: 6201 1300                              |0098: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1891002118: 1a02 0200                              |009a: const-string v2, " => " // string@0002
189200211c: 6e20 b000 2100                         |009c: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
1893002122: 6201 1300                              |009f: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1894002126: 6e10 b600 0000                         |00a1: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
189500212c: 0c02                                   |00a4: move-result-object v2
189600212e: 6e10 c000 0200                         |00a5: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
1897002134: 0c02                                   |00a8: move-result-object v2
1898002136: 6e20 b200 2100                         |00a9: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
189900213c: fc00 0500 0000                         |00ac: invoke-custom {}, call_site@0005
1900002142: 7100 0b00 0000                         |00af: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
1901002148: 2833                                   |00b2: goto 00e5 // +0033
190200214a: 0d00                                   |00b3: move-exception v0
190300214c: 1c01 2200                              |00b4: const-class v1, Ljava/lang/ClassCastException; // type@0022
1904002150: 6e10 b600 0000                         |00b6: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
1905002156: 0c02                                   |00b9: move-result-object v2
1906002158: 6e10 c000 0200                         |00ba: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
190700215e: 0c02                                   |00bd: move-result-object v2
1908002160: 7120 0a00 2100                         |00be: invoke-static {v1, v2}, LTestBadBootstrapArguments;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@000a
1909002166: 6201 1300                              |00c1: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
191000216a: 1a02 5d01                              |00c3: const-string v2, "invokeWrongArguments => " // string@015d
191100216e: 6e20 b000 2100                         |00c5: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
1912002174: 6201 1300                              |00c8: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1913002178: 6e10 c000 0000                         |00ca: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
191400217e: 0c02                                   |00cd: move-result-object v2
1915002180: 6e20 af00 2100                         |00ce: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
1916002186: 6201 1300                              |00d1: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
191700218a: 1a02 0200                              |00d3: const-string v2, " => " // string@0002
191800218e: 6e20 b000 2100                         |00d5: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
1919002194: 6201 1300                              |00d8: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
1920002198: 6e10 b600 0000                         |00da: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
192100219e: 0c02                                   |00dd: move-result-object v2
19220021a0: 6e10 c000 0200                         |00de: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
19230021a6: 0c02                                   |00e1: move-result-object v2
19240021a8: 6e20 b200 2100                         |00e2: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
19250021ae: fc00 0600 0000                         |00e5: invoke-custom {}, call_site@0006
19260021b4: 7100 0b00 0000                         |00e8: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
19270021ba: 2833                                   |00eb: goto 011e // +0033
19280021bc: 0d00                                   |00ec: move-exception v0
19290021be: 1c01 2200                              |00ed: const-class v1, Ljava/lang/ClassCastException; // type@0022
19300021c2: 6e10 b600 0000                         |00ef: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
19310021c8: 0c02                                   |00f2: move-result-object v2
19320021ca: 6e10 c000 0200                         |00f3: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
19330021d0: 0c02                                   |00f6: move-result-object v2
19340021d2: 7120 0a00 2100                         |00f7: invoke-static {v1, v2}, LTestBadBootstrapArguments;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@000a
19350021d8: 6201 1300                              |00fa: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
19360021dc: 1a02 5f01                              |00fc: const-string v2, "invokeWrongArgumentsAgain => " // string@015f
19370021e0: 6e20 b000 2100                         |00fe: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
19380021e6: 6201 1300                              |0101: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
19390021ea: 6e10 c000 0000                         |0103: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
19400021f0: 0c02                                   |0106: move-result-object v2
19410021f2: 6e20 af00 2100                         |0107: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
19420021f8: 6201 1300                              |010a: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
19430021fc: 1a02 0200                              |010c: const-string v2, " => " // string@0002
1944002200: 6e20 b000 2100                         |010e: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
1945002206: 6201 1300                              |0111: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
194600220a: 6e10 b600 0000                         |0113: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
1947002210: 0c02                                   |0116: move-result-object v2
1948002212: 6e10 c000 0200                         |0117: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
1949002218: 0c02                                   |011a: move-result-object v2
195000221a: 6e20 b200 2100                         |011b: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
1951002220: fc00 0700 0000                         |011e: invoke-custom {}, call_site@0007
1952002226: 7100 0b00 0000                         |0121: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
195300222c: 2833                                   |0124: goto 0157 // +0033
195400222e: 0d00                                   |0125: move-exception v0
1955002230: 1c01 2200                              |0126: const-class v1, Ljava/lang/ClassCastException; // type@0022
1956002234: 6e10 b600 0000                         |0128: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
195700223a: 0c02                                   |012b: move-result-object v2
195800223c: 6e10 c000 0200                         |012c: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
1959002242: 0c02                                   |012f: move-result-object v2
1960002244: 7120 0a00 2100                         |0130: invoke-static {v1, v2}, LTestBadBootstrapArguments;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@000a
196100224a: 6201 1300                              |0133: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
196200224e: 1a02 5301                              |0135: const-string v2, "invokeNarrowArguments => " // string@0153
1963002252: 6e20 b000 2100                         |0137: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
1964002258: 6201 1300                              |013a: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
196500225c: 6e10 c000 0000                         |013c: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
1966002262: 0c02                                   |013f: move-result-object v2
1967002264: 6e20 af00 2100                         |0140: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
196800226a: 6201 1300                              |0143: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
196900226e: 1a02 0200                              |0145: const-string v2, " => " // string@0002
1970002272: 6e20 b000 2100                         |0147: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
1971002278: 6201 1300                              |014a: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
197200227c: 6e10 b600 0000                         |014c: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
1973002282: 0c02                                   |014f: move-result-object v2
1974002284: 6e10 c000 0200                         |0150: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
197500228a: 0c02                                   |0153: move-result-object v2
197600228c: 6e20 b200 2100                         |0154: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
1977002292: fc00 0800 0000                         |0157: invoke-custom {}, call_site@0008
1978002298: fc00 0900 0000                         |015a: invoke-custom {}, call_site@0009
197900229e: fc00 0a00 0000                         |015d: invoke-custom {}, call_site@000a
19800022a4: 7100 0b00 0000                         |0160: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
19810022aa: 2826                                   |0163: goto 0189 // +0026
19820022ac: 0d00                                   |0164: move-exception v0
19830022ae: 6201 1300                              |0165: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
19840022b2: 1a02 5b01                              |0167: const-string v2, "invokeWideningBoxingArguments => " // string@015b
19850022b6: 6e20 b000 2100                         |0169: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
19860022bc: 6201 1300                              |016c: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
19870022c0: 6e10 c000 0000                         |016e: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
19880022c6: 0c02                                   |0171: move-result-object v2
19890022c8: 6e20 af00 2100                         |0172: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
19900022ce: 6201 1300                              |0175: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
19910022d2: 1a02 0200                              |0177: const-string v2, " => " // string@0002
19920022d6: 6e20 b000 2100                         |0179: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
19930022dc: 6201 1300                              |017c: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
19940022e0: 6e10 b600 0000                         |017e: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
19950022e6: 0c02                                   |0181: move-result-object v2
19960022e8: 6e10 c000 0200                         |0182: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
19970022ee: 0c02                                   |0185: move-result-object v2
19980022f0: 6e20 b200 2100                         |0186: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
19990022f6: fc00 0b00 0000                         |0189: invoke-custom {}, call_site@000b
20000022fc: 7100 0b00 0000                         |018c: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
2001002302: 2826                                   |018f: goto 01b5 // +0026
2002002304: 0d00                                   |0190: move-exception v0
2003002306: 6201 1300                              |0191: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
200400230a: 1a02 5801                              |0193: const-string v2, "invokeVoidReturnType() => " // string@0158
200500230e: 6e20 b000 2100                         |0195: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
2006002314: 6201 1300                              |0198: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
2007002318: 6e10 c000 0000                         |019a: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
200800231e: 0c02                                   |019d: move-result-object v2
2009002320: 6e20 af00 2100                         |019e: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
2010002326: 6201 1300                              |01a1: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
201100232a: 1a02 0200                              |01a3: const-string v2, " => " // string@0002
201200232e: 6e20 b000 2100                         |01a5: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
2013002334: 6201 1300                              |01a8: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
2014002338: 6e10 b600 0000                         |01aa: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
201500233e: 0c02                                   |01ad: move-result-object v2
2016002340: 6e10 c000 0200                         |01ae: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
2017002346: 0c02                                   |01b1: move-result-object v2
2018002348: 6e20 b200 2100                         |01b2: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
201900234e: fc00 0c00 0000                         |01b5: invoke-custom {}, call_site@000c
2020002354: 7100 0b00 0000                         |01b8: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
202100235a: 2826                                   |01bb: goto 01e1 // +0026
202200235c: 0d00                                   |01bc: move-exception v0
202300235e: 6201 1300                              |01bd: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
2024002362: 1a02 5501                              |01bf: const-string v2, "invokeObjectReturnType() => " // string@0155
2025002366: 6e20 b000 2100                         |01c1: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
202600236c: 6201 1300                              |01c4: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
2027002370: 6e10 c000 0000                         |01c6: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
2028002376: 0c02                                   |01c9: move-result-object v2
2029002378: 6e20 af00 2100                         |01ca: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
203000237e: 6201 1300                              |01cd: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
2031002382: 1a02 0200                              |01cf: const-string v2, " => " // string@0002
2032002386: 6e20 b000 2100                         |01d1: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
203300238c: 6201 1300                              |01d4: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
2034002390: 6e10 b600 0000                         |01d6: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
2035002396: 0c02                                   |01d9: move-result-object v2
2036002398: 6e10 c000 0200                         |01da: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
203700239e: 0c02                                   |01dd: move-result-object v2
20380023a0: 6e20 b200 2100                         |01de: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
20390023a6: fc00 0d00 0000                         |01e1: invoke-custom {}, call_site@000d
20400023ac: 7100 0b00 0000                         |01e4: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
20410023b2: 2826                                   |01e7: goto 020d // +0026
20420023b4: 0d00                                   |01e8: move-exception v0
20430023b6: 6201 1300                              |01e9: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
20440023ba: 1a02 4f01                              |01eb: const-string v2, "invokeIntegerReturnType() => " // string@014f
20450023be: 6e20 b000 2100                         |01ed: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
20460023c4: 6201 1300                              |01f0: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
20470023c8: 6e10 c000 0000                         |01f2: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
20480023ce: 0c02                                   |01f5: move-result-object v2
20490023d0: 6e20 af00 2100                         |01f6: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
20500023d6: 6201 1300                              |01f9: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
20510023da: 1a02 0200                              |01fb: const-string v2, " => " // string@0002
20520023de: 6e20 b000 2100                         |01fd: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
20530023e4: 6201 1300                              |0200: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
20540023e8: 6e10 b600 0000                         |0202: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
20550023ee: 0c02                                   |0205: move-result-object v2
20560023f0: 6e10 c000 0200                         |0206: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
20570023f6: 0c02                                   |0209: move-result-object v2
20580023f8: 6e20 b200 2100                         |020a: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
20590023fe: fc00 0e00 0000                         |020d: invoke-custom {}, call_site@000e
2060002404: 0e00                                   |0210: return-void
2061      catches       : 11
2062        0x000a - 0x0010
2063          Ljava/lang/NoSuchMethodError; -> 0x0011
2064        0x0022 - 0x0028
2065          Ljava/lang/NoSuchMethodError; -> 0x0029
2066        0x003a - 0x0040
2067          Ljava/lang/BootstrapMethodError; -> 0x0041
2068        0x0073 - 0x0079
2069          Ljava/lang/BootstrapMethodError; -> 0x007a
2070        0x00ac - 0x00b2
2071          Ljava/lang/BootstrapMethodError; -> 0x00b3
2072        0x00e5 - 0x00eb
2073          Ljava/lang/BootstrapMethodError; -> 0x00ec
2074        0x011e - 0x0124
2075          Ljava/lang/BootstrapMethodError; -> 0x0125
2076        0x015d - 0x0163
2077          Ljava/lang/BootstrapMethodError; -> 0x0164
2078        0x0189 - 0x018f
2079          Ljava/lang/BootstrapMethodError; -> 0x0190
2080        0x01b5 - 0x01bb
2081          Ljava/lang/BootstrapMethodError; -> 0x01bc
2082        0x01e1 - 0x01e7
2083          Ljava/lang/BootstrapMethodError; -> 0x01e8
2084      positions     :
2085        0x0000 line=477
2086        0x0007 line=478
2087        0x000a line=480
2088        0x000d line=481
2089        0x0010 line=485
2090        0x0011 line=482
2091        0x0012 line=483
2092        0x0019 line=484
2093        0x0022 line=487
2094        0x0025 line=488
2095        0x0028 line=492
2096        0x0029 line=489
2097        0x002a line=490
2098        0x0031 line=491
2099        0x003a line=494
2100        0x003d line=495
2101        0x0040 line=502
2102        0x0041 line=496
2103        0x0042 line=497
2104        0x004f line=498
2105        0x0056 line=499
2106        0x005f line=500
2107        0x0066 line=501
2108        0x0073 line=504
2109        0x0076 line=505
2110        0x0079 line=512
2111        0x007a line=506
2112        0x007b line=507
2113        0x0088 line=508
2114        0x008f line=509
2115        0x0098 line=510
2116        0x009f line=511
2117        0x00ac line=514
2118        0x00af line=515
2119        0x00b2 line=522
2120        0x00b3 line=516
2121        0x00b4 line=517
2122        0x00c1 line=518
2123        0x00c8 line=519
2124        0x00d1 line=520
2125        0x00d8 line=521
2126        0x00e5 line=524
2127        0x00e8 line=525
2128        0x00eb line=532
2129        0x00ec line=526
2130        0x00ed line=527
2131        0x00fa line=528
2132        0x0101 line=529
2133        0x010a line=530
2134        0x0111 line=531
2135        0x011e line=534
2136        0x0121 line=535
2137        0x0124 line=542
2138        0x0125 line=536
2139        0x0126 line=537
2140        0x0133 line=538
2141        0x013a line=539
2142        0x0143 line=540
2143        0x014a line=541
2144        0x0157 line=543
2145        0x015a line=544
2146        0x015d line=546
2147        0x0160 line=547
2148        0x0163 line=553
2149        0x0164 line=548
2150        0x0165 line=549
2151        0x016c line=550
2152        0x0175 line=551
2153        0x017c line=552
2154        0x0189 line=555
2155        0x018c line=556
2156        0x018f line=562
2157        0x0190 line=557
2158        0x0191 line=558
2159        0x0198 line=559
2160        0x01a1 line=560
2161        0x01a8 line=561
2162        0x01b5 line=564
2163        0x01b8 line=565
2164        0x01bb line=571
2165        0x01bc line=566
2166        0x01bd line=567
2167        0x01c4 line=568
2168        0x01cd line=569
2169        0x01d4 line=570
2170        0x01e1 line=573
2171        0x01e4 line=574
2172        0x01e7 line=580
2173        0x01e8 line=575
2174        0x01e9 line=576
2175        0x01f0 line=577
2176        0x01f9 line=578
2177        0x0200 line=579
2178        0x020d line=581
2179        0x0210 line=582
2180      locals        :
2181        0x0012 - 0x0022 reg=0 expected Ljava/lang/NoSuchMethodError;
2182        0x002a - 0x003a reg=0 expected Ljava/lang/NoSuchMethodError;
2183        0x0042 - 0x0073 reg=0 expected Ljava/lang/BootstrapMethodError;
2184        0x007b - 0x00ac reg=0 expected Ljava/lang/BootstrapMethodError;
2185        0x00b4 - 0x00e5 reg=0 expected Ljava/lang/BootstrapMethodError;
2186        0x00ed - 0x011e reg=0 expected Ljava/lang/BootstrapMethodError;
2187        0x0126 - 0x0157 reg=0 expected Ljava/lang/BootstrapMethodError;
2188        0x0165 - 0x0189 reg=0 expected Ljava/lang/BootstrapMethodError;
2189        0x0191 - 0x01b5 reg=0 expected Ljava/lang/BootstrapMethodError;
2190        0x01bd - 0x01e1 reg=0 expected Ljava/lang/BootstrapMethodError;
2191        0x01e9 - 0x020d reg=0 expected Ljava/lang/BootstrapMethodError;
2192
2193    #32              : (in LTestBadBootstrapArguments;)
2194      name          : 'voidReturnType'
2195      type          : '()V'
2196      access        : 0x000a (PRIVATE STATIC)
2197      method_idx    : 44
2198      code          -
2199      registers     : 0
2200      ins           : 0
2201      outs          : 0
2202      insns size    : 4 16-bit code units
220300248c:                                        |[00248c] TestBadBootstrapArguments.voidReturnType:()V
220400249c: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
22050024a2: 0e00                                   |0003: return-void
2206      catches       : (none)
2207      positions     :
2208        0x0000 line=398
2209        0x0003 line=399
2210      locals        :
2211
2212    #33              : (in LTestBadBootstrapArguments;)
2213      name          : 'wideningArguments'
2214      type          : '()V'
2215      access        : 0x000a (PRIVATE STATIC)
2216      method_idx    : 45
2217      code          -
2218      registers     : 2
2219      ins           : 0
2220      outs          : 2
2221      insns size    : 8 16-bit code units
22220024a4:                                        |[0024a4] TestBadBootstrapArguments.wideningArguments:()V
22230024b4: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
22240024b8: 1a01 d101                              |0002: const-string v1, "wideningArguments" // string@01d1
22250024bc: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
22260024c2: 0e00                                   |0007: return-void
2227      catches       : (none)
2228      positions     :
2229        0x0000 line=304
2230        0x0007 line=305
2231      locals        :
2232
2233    #34              : (in LTestBadBootstrapArguments;)
2234      name          : 'wideningBoxingArguments'
2235      type          : '()V'
2236      access        : 0x000a (PRIVATE STATIC)
2237      method_idx    : 46
2238      code          -
2239      registers     : 2
2240      ins           : 0
2241      outs          : 2
2242      insns size    : 8 16-bit code units
22430024c4:                                        |[0024c4] TestBadBootstrapArguments.wideningBoxingArguments:()V
22440024d4: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
22450024d8: 1a01 d201                              |0002: const-string v1, "wideningBoxingArguments" // string@01d2
22460024dc: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
22470024e2: 0e00                                   |0007: return-void
2248      catches       : (none)
2249      positions     :
2250        0x0000 line=376
2251        0x0007 line=377
2252      locals        :
2253
2254    #35              : (in LTestBadBootstrapArguments;)
2255      name          : 'wrongArguments'
2256      type          : '()V'
2257      access        : 0x000a (PRIVATE STATIC)
2258      method_idx    : 47
2259      code          -
2260      registers     : 2
2261      ins           : 0
2262      outs          : 2
2263      insns size    : 8 16-bit code units
22640024e4:                                        |[0024e4] TestBadBootstrapArguments.wrongArguments:()V
22650024f4: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
22660024f8: 1a01 d401                              |0002: const-string v1, "wrongArguments" // string@01d4
22670024fc: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
2268002502: 0e00                                   |0007: return-void
2269      catches       : (none)
2270      positions     :
2271        0x0000 line=186
2272        0x0007 line=187
2273      locals        :
2274
2275    #36              : (in LTestBadBootstrapArguments;)
2276      name          : 'wrongArgumentsAgain'
2277      type          : '()V'
2278      access        : 0x000a (PRIVATE STATIC)
2279      method_idx    : 48
2280      code          -
2281      registers     : 2
2282      ins           : 0
2283      outs          : 2
2284      insns size    : 8 16-bit code units
2285002504:                                        |[002504] TestBadBootstrapArguments.wrongArgumentsAgain:()V
2286002514: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
2287002518: 1a01 d501                              |0002: const-string v1, "wrongArgumentsAgain" // string@01d5
228800251c: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
2289002522: 0e00                                   |0007: return-void
2290      catches       : (none)
2291      positions     :
2292        0x0000 line=214
2293        0x0007 line=215
2294      locals        :
2295
2296    #37              : (in LTestBadBootstrapArguments;)
2297      name          : 'wrongParameterTypes'
2298      type          : '()V'
2299      access        : 0x000a (PRIVATE STATIC)
2300      method_idx    : 49
2301      code          -
2302      registers     : 2
2303      ins           : 0
2304      outs          : 2
2305      insns size    : 8 16-bit code units
2306002524:                                        |[002524] TestBadBootstrapArguments.wrongParameterTypes:()V
2307002534: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
2308002538: 1a01 d601                              |0002: const-string v1, "wrongParameterTypes" // string@01d6
230900253c: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
2310002542: 0e00                                   |0007: return-void
2311      catches       : (none)
2312      positions     :
2313        0x0000 line=102
2314        0x0007 line=103
2315      locals        :
2316
2317  Virtual methods   -
2318  source_file_idx   : 144 (TestBadBootstrapArguments.java)
2319
2320Class #7 header:
2321class_idx           : 10
2322access_flags        : 0 (0x0000)
2323superclass_idx      : 9
2324interfaces_off      : 0 (0x000000)
2325source_file_idx     : 147
2326annotations_off     : 30988 (0x00790c)
2327class_data_off      : 29220 (0x007224)
2328static_fields_size  : 1
2329instance_fields_size: 0
2330direct_methods_size : 7
2331virtual_methods_size: 0
2332
2333Class #7 annotations:
2334Annotations on method #67 'bsm'
2335  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
2336Annotations on method #71 'testDynamic'
2337  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
2338
2339Class #7            -
2340  Class descriptor  : 'LTestDynamicBootstrapArguments;'
2341  Access flags      : 0x0000 ()
2342  Superclass        : 'LTestBase;'
2343  Interfaces        -
2344  Static fields     -
2345    #0              : (in LTestDynamicBootstrapArguments;)
2346      name          : 'bsmCalls'
2347      type          : 'I'
2348      access        : 0x000a (PRIVATE STATIC)
2349  Instance fields   -
2350  Direct methods    -
2351    #0              : (in LTestDynamicBootstrapArguments;)
2352      name          : '<clinit>'
2353      type          : '()V'
2354      access        : 0x10008 (STATIC CONSTRUCTOR)
2355      method_idx    : 63
2356      code          -
2357      registers     : 1
2358      ins           : 0
2359      outs          : 0
2360      insns size    : 4 16-bit code units
23610029c8:                                        |[0029c8] TestDynamicBootstrapArguments.<clinit>:()V
23620029d8: 1200                                   |0000: const/4 v0, #int 0 // #0
23630029da: 6700 0000                              |0001: sput v0, LTestDynamicBootstrapArguments;.bsmCalls:I // field@0000
23640029de: 0e00                                   |0003: return-void
2365      catches       : (none)
2366      positions     :
2367        0x0000 line=27
2368      locals        :
2369
2370    #1              : (in LTestDynamicBootstrapArguments;)
2371      name          : '<init>'
2372      type          : '()V'
2373      access        : 0x10000 (CONSTRUCTOR)
2374      method_idx    : 64
2375      code          -
2376      registers     : 1
2377      ins           : 1
2378      outs          : 1
2379      insns size    : 4 16-bit code units
23800029e0:                                        |[0029e0] TestDynamicBootstrapArguments.<init>:()V
23810029f0: 7010 3200 0000                         |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032
23820029f6: 0e00                                   |0003: return-void
2383      catches       : (none)
2384      positions     :
2385        0x0000 line=26
2386      locals        :
2387        0x0000 - 0x0004 reg=0 this LTestDynamicBootstrapArguments;
2388
2389    #2              : (in LTestDynamicBootstrapArguments;)
2390      name          : 'bsm'
2391      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;J)Ljava/lang/invoke/CallSite;'
2392      access        : 0x0008 (STATIC)
2393      method_idx    : 67
2394      code          -
2395      registers     : 11
2396      ins           : 6
2397      outs          : 4
2398      insns size    : 43 16-bit code units
2399002960:                                        |[002960] TestDynamicBootstrapArguments.bsm:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;J)Ljava/lang/invoke/CallSite;
2400002970: 6000 0000                              |0000: sget v0, LTestDynamicBootstrapArguments;.bsmCalls:I // field@0000
2401002974: d800 0001                              |0002: add-int/lit8 v0, v0, #int 1 // #01
2402002978: 6700 0000                              |0004: sput v0, LTestDynamicBootstrapArguments;.bsmCalls:I // field@0000
240300297c: 1c00 0a00                              |0006: const-class v0, LTestDynamicBootstrapArguments; // type@000a
2404002980: 2201 2d00                              |0008: new-instance v1, Ljava/lang/StringBuilder; // type@002d
2405002984: 7010 c100 0100                         |000a: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
240600298a: 6e20 c800 6100                         |000d: invoke-virtual {v1, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
2407002990: 6e20 c800 8100                         |0010: invoke-virtual {v1, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
2408002996: 6e30 c600 910a                         |0013: invoke-virtual {v1, v9, v10}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@00c6
240900299c: 6e10 ca00 0100                         |0016: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
24100029a2: 0c01                                   |0019: move-result-object v1
24110029a4: 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
24120029aa: 0c02                                   |001d: move-result-object v2
24130029ac: 6203 1300                              |001e: sget-object v3, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
24140029b0: 1a04 ea00                              |0020: const-string v4, "bsm" // string@00ea
24150029b4: 6e20 b300 4300                         |0022: invoke-virtual {v3, v4}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
24160029ba: 2203 3400                              |0025: new-instance v3, Ljava/lang/invoke/ConstantCallSite; // type@0034
24170029be: 7020 d200 2300                         |0027: invoke-direct {v3, v2}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
24180029c4: 1103                                   |002a: return-object v3
2419      catches       : (none)
2420      positions     :
2421        0x0000 line=36
2422        0x0006 line=37
2423        0x0008 line=38
2424        0x001a line=39
2425        0x001e line=40
2426        0x0025 line=41
2427      locals        :
2428        0x0008 - 0x002b reg=0 definingClass Ljava/lang/Class; Ljava/lang/Class<*>;
2429        0x001a - 0x002b reg=1 methodName Ljava/lang/String;
2430        0x001e - 0x002b reg=2 mh Ljava/lang/invoke/MethodHandle;
2431        0x0000 - 0x002b reg=5 lookup Ljava/lang/invoke/MethodHandles$Lookup;
2432        0x0000 - 0x002b reg=6 name Ljava/lang/String;
2433        0x0000 - 0x002b reg=7 methodType Ljava/lang/invoke/MethodType;
2434        0x0000 - 0x002b reg=8 otherNameComponent Ljava/lang/String;
2435        0x0000 - 0x002b reg=9 nameSuffix J
2436
2437    #3              : (in LTestDynamicBootstrapArguments;)
2438      name          : 'targetA100000000'
2439      type          : '(ILjava/lang/String;Ljava/lang/Double;)I'
2440      access        : 0x000a (PRIVATE STATIC)
2441      method_idx    : 68
2442      code          -
2443      registers     : 5
2444      ins           : 3
2445      outs          : 2
2446      insns size    : 30 16-bit code units
24470028f8:                                        |[0028f8] TestDynamicBootstrapArguments.targetA100000000:(ILjava/lang/String;Ljava/lang/Double;)I
2448002908: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
244900290c: 6e20 ad00 2000                         |0002: invoke-virtual {v0, v2}, Ljava/io/PrintStream;.print:(I)V // method@00ad
2450002912: 6200 1300                              |0005: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
2451002916: 1a01 0c00                              |0007: const-string v1, ", " // string@000c
245200291a: 6e20 b000 1000                         |0009: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
2453002920: 6200 1300                              |000c: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
2454002924: 6e20 b000 3000                         |000e: invoke-virtual {v0, v3}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
245500292a: 6200 1300                              |0011: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
245600292e: 1a01 0c00                              |0013: const-string v1, ", " // string@000c
2457002932: 6e20 b000 1000                         |0015: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
2458002938: 6200 1300                              |0018: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
245900293c: 6e20 b200 4000                         |001a: invoke-virtual {v0, v4}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
2460002942: 0f02                                   |001d: return v2
2461      catches       : (none)
2462      positions     :
2463        0x0000 line=71
2464        0x0005 line=72
2465        0x000c line=73
2466        0x0011 line=74
2467        0x0018 line=75
2468        0x001d line=76
2469      locals        :
2470        0x0000 - 0x001e reg=2 i I
2471        0x0000 - 0x001e reg=3 s Ljava/lang/String;
2472        0x0000 - 0x001e reg=4 d Ljava/lang/Double;
2473
2474    #4              : (in LTestDynamicBootstrapArguments;)
2475      name          : 'test'
2476      type          : '()V'
2477      access        : 0x0008 (STATIC)
2478      method_idx    : 69
2479      code          -
2480      registers     : 2
2481      ins           : 0
2482      outs          : 2
2483      insns size    : 25 16-bit code units
24840029f8:                                        |[0029f8] TestDynamicBootstrapArguments.test:()V
2485002a08: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
2486002a0c: 1a01 9200                              |0002: const-string v1, "TestDynamicArguments" // string@0092
2487002a10: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
2488002a16: 7100 4600 0000                         |0007: invoke-static {}, LTestDynamicBootstrapArguments;.testCallSites:()V // method@0046
2489002a1c: 6000 0000                              |000a: sget v0, LTestDynamicBootstrapArguments;.bsmCalls:I // field@0000
2490002a20: 1231                                   |000c: const/4 v1, #int 3 // #3
2491002a22: 7120 4100 0100                         |000d: invoke-static {v1, v0}, LTestDynamicBootstrapArguments;.assertEquals:(II)V // method@0041
2492002a28: 7100 4600 0000                         |0010: invoke-static {}, LTestDynamicBootstrapArguments;.testCallSites:()V // method@0046
2493002a2e: 6000 0000                              |0013: sget v0, LTestDynamicBootstrapArguments;.bsmCalls:I // field@0000
2494002a32: 7120 4100 0100                         |0015: invoke-static {v1, v0}, LTestDynamicBootstrapArguments;.assertEquals:(II)V // method@0041
2495002a38: 0e00                                   |0018: return-void
2496      catches       : (none)
2497      positions     :
2498        0x0000 line=86
2499        0x0007 line=87
2500        0x000a line=88
2501        0x0010 line=89
2502        0x0013 line=90
2503        0x0018 line=91
2504      locals        :
2505
2506    #5              : (in LTestDynamicBootstrapArguments;)
2507      name          : 'testCallSites'
2508      type          : '()V'
2509      access        : 0x0008 (STATIC)
2510      method_idx    : 70
2511      code          -
2512      registers     : 3
2513      ins           : 0
2514      outs          : 3
2515      insns size    : 55 16-bit code units
2516002a3c:                                        |[002a3c] TestDynamicBootstrapArguments.testCallSites:()V
2517002a4c: 1a00 8b00                              |0000: const-string v0, "One" // string@008b
2518002a50: 1801 182d 4454 fb21 0940               |0002: const-wide v1, #double 3.14159 // #400921fb54442d18
2519002a5a: 7120 b900 2100                         |0007: invoke-static {v1, v2}, Ljava/lang/Double;.valueOf:(D)Ljava/lang/Double; // method@00b9
2520002a60: 0c01                                   |000a: move-result-object v1
2521002a62: 1202                                   |000b: const/4 v2, #int 0 // #0
2522002a64: fc30 0f00 0201                         |000c: invoke-custom {v2, v0, v1}, call_site@000f
2523002a6a: 0a00                                   |000f: move-result v0
2524002a6c: 7120 4100 0200                         |0010: invoke-static {v2, v0}, LTestDynamicBootstrapArguments;.assertEquals:(II)V // method@0041
2525002a72: 1a00 a200                              |0013: const-string v0, "Two" // string@00a2
2526002a76: 1801 6957 148b 0abf 0540               |0015: const-wide v1, #double 2.71828 // #4005bf0a8b145769
2527002a80: 7120 b900 2100                         |001a: invoke-static {v1, v2}, Ljava/lang/Double;.valueOf:(D)Ljava/lang/Double; // method@00b9
2528002a86: 0c01                                   |001d: move-result-object v1
2529002a88: 1212                                   |001e: const/4 v2, #int 1 // #1
2530002a8a: fc30 1000 0201                         |001f: invoke-custom {v2, v0, v1}, call_site@0010
2531002a90: 0a00                                   |0022: move-result v0
2532002a92: 7120 4100 0200                         |0023: invoke-static {v2, v0}, LTestDynamicBootstrapArguments;.assertEquals:(II)V // method@0041
2533002a98: 1a00 9f00                              |0026: const-string v0, "Three" // string@009f
2534002a9c: 1601 0000                              |0028: const-wide/16 v1, #int 0 // #0
2535002aa0: 7120 b900 2100                         |002a: invoke-static {v1, v2}, Ljava/lang/Double;.valueOf:(D)Ljava/lang/Double; // method@00b9
2536002aa6: 0c01                                   |002d: move-result-object v1
2537002aa8: 1222                                   |002e: const/4 v2, #int 2 // #2
2538002aaa: fc30 1100 0201                         |002f: invoke-custom {v2, v0, v1}, call_site@0011
2539002ab0: 0a00                                   |0032: move-result v0
2540002ab2: 7120 4100 0200                         |0033: invoke-static {v2, v0}, LTestDynamicBootstrapArguments;.assertEquals:(II)V // method@0041
2541002ab8: 0e00                                   |0036: return-void
2542      catches       : (none)
2543      positions     :
2544        0x0000 line=80
2545        0x0013 line=81
2546        0x0026 line=82
2547        0x0036 line=83
2548      locals        :
2549
2550    #6              : (in LTestDynamicBootstrapArguments;)
2551      name          : 'testDynamic'
2552      type          : '(ILjava/lang/String;Ljava/lang/Double;)I'
2553      access        : 0x000a (PRIVATE STATIC)
2554      method_idx    : 71
2555      code          -
2556      registers     : 4
2557      ins           : 3
2558      outs          : 0
2559      insns size    : 5 16-bit code units
2560002944:                                        |[002944] TestDynamicBootstrapArguments.testDynamic:(ILjava/lang/String;Ljava/lang/Double;)I
2561002954: 7100 4200 0000                         |0000: invoke-static {}, LTestDynamicBootstrapArguments;.assertNotReached:()V // method@0042
256200295a: 1200                                   |0003: const/4 v0, #int 0 // #0
256300295c: 0f00                                   |0004: return v0
2564      catches       : (none)
2565      positions     :
2566        0x0000 line=66
2567        0x0003 line=67
2568      locals        :
2569        0x0000 - 0x0005 reg=1 i I
2570        0x0000 - 0x0005 reg=2 s Ljava/lang/String;
2571        0x0000 - 0x0005 reg=3 d Ljava/lang/Double;
2572
2573  Virtual methods   -
2574  source_file_idx   : 147 (TestDynamicBootstrapArguments.java)
2575
2576Class #8 header:
2577class_idx           : 12
2578access_flags        : 0 (0x0000)
2579superclass_idx      : 9
2580interfaces_off      : 0 (0x000000)
2581source_file_idx     : 148
2582annotations_off     : 31020 (0x00792c)
2583class_data_off      : 29258 (0x00724a)
2584static_fields_size  : 1
2585instance_fields_size: 1
2586direct_methods_size : 18
2587virtual_methods_size: 1
2588
2589Class #8 annotations:
2590Annotations on class
2591  VISIBILITY_SYSTEM Ldalvik/annotation/MemberClasses; value={ LTestInvocationKinds$Widget; }
2592Annotations on method #78 'getInstanceField'
2593  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestInvocationKinds; name="lookupInstanceFieldGetter" } fieldOrMethodName="instance_field" parameterTypes={ LTestInvocationKinds; } returnType=D
2594Annotations on method #80 'getStaticField'
2595  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestInvocationKinds; name="lookupStaticFieldGetter" } fieldOrMethodName="static_field" parameterTypes={ } returnType=I
2596Annotations on method #81 'lookupConstructor'
2597  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
2598Annotations on method #82 'lookupInstanceFieldGetter'
2599  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
2600Annotations on method #83 'lookupInstanceFieldSetter'
2601  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
2602Annotations on method #84 'lookupStaticFieldGetter'
2603  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
2604Annotations on method #85 'lookupStaticFieldSetter'
2605  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
2606Annotations on method #86 'lookupVirtual'
2607  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
2608Annotations on method #87 'makeWidget'
2609  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestInvocationKinds; name="lookupConstructor" } fieldOrMethodName="unused" parameterTypes={ I } returnType=LTestInvocationKinds$Widget;
2610Annotations on method #88 'maxIntegerValue'
2611  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestInvocationKinds; name="lookupVirtual" } fieldOrMethodName="getMaxIntegerValue" parameterTypes={ LTestInvocationKinds; I I } returnType=I
2612Annotations on method #89 'setInstanceField'
2613  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestInvocationKinds; name="lookupInstanceFieldSetter" } fieldOrMethodName="instance_field" parameterTypes={ LTestInvocationKinds; D } returnType=V
2614Annotations on method #90 'setStaticField'
2615  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestInvocationKinds; name="lookupStaticFieldSetter" } fieldOrMethodName="static_field" parameterTypes={ I } returnType=V
2616
2617Class #8            -
2618  Class descriptor  : 'LTestInvocationKinds;'
2619  Access flags      : 0x0000 ()
2620  Superclass        : 'LTestBase;'
2621  Interfaces        -
2622  Static fields     -
2623    #0              : (in LTestInvocationKinds;)
2624      name          : 'static_field'
2625      type          : 'I'
2626      access        : 0x000a (PRIVATE STATIC)
2627  Instance fields   -
2628    #0              : (in LTestInvocationKinds;)
2629      name          : 'instance_field'
2630      type          : 'D'
2631      access        : 0x0002 (PRIVATE)
2632  Direct methods    -
2633    #0              : (in LTestInvocationKinds;)
2634      name          : '<init>'
2635      type          : '()V'
2636      access        : 0x10000 (CONSTRUCTOR)
2637      method_idx    : 73
2638      code          -
2639      registers     : 1
2640      ins           : 1
2641      outs          : 1
2642      insns size    : 4 16-bit code units
2643002ca4:                                        |[002ca4] TestInvocationKinds.<init>:()V
2644002cb4: 7010 3200 0000                         |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032
2645002cba: 0e00                                   |0003: return-void
2646      catches       : (none)
2647      positions     :
2648        0x0000 line=25
2649      locals        :
2650        0x0000 - 0x0004 reg=0 this LTestInvocationKinds;
2651
2652    #1              : (in LTestInvocationKinds;)
2653      name          : 'getInstanceField'
2654      type          : '(LTestInvocationKinds;)D'
2655      access        : 0x000a (PRIVATE STATIC)
2656      method_idx    : 78
2657      code          -
2658      registers     : 3
2659      ins           : 1
2660      outs          : 0
2661      insns size    : 6 16-bit code units
2662002af0:                                        |[002af0] TestInvocationKinds.getInstanceField:(LTestInvocationKinds;)D
2663002b00: 7100 4d00 0000                         |0000: invoke-static {}, LTestInvocationKinds;.assertNotReached:()V // method@004d
2664002b06: 1900 f87f                              |0003: const-wide/high16 v0, #long 9221120237041090560 // #7ff8
2665002b0a: 1000                                   |0005: return-wide v0
2666      catches       : (none)
2667      positions     :
2668        0x0000 line=117
2669        0x0003 line=118
2670      locals        :
2671        0x0000 - 0x0006 reg=2 instance LTestInvocationKinds;
2672
2673    #2              : (in LTestInvocationKinds;)
2674      name          : 'getStaticField'
2675      type          : '()I'
2676      access        : 0x000a (PRIVATE STATIC)
2677      method_idx    : 80
2678      code          -
2679      registers     : 1
2680      ins           : 0
2681      outs          : 0
2682      insns size    : 5 16-bit code units
2683002b28:                                        |[002b28] TestInvocationKinds.getStaticField:()I
2684002b38: 7100 4d00 0000                         |0000: invoke-static {}, LTestInvocationKinds;.assertNotReached:()V // method@004d
2685002b3e: 1200                                   |0003: const/4 v0, #int 0 // #0
2686002b40: 0f00                                   |0004: return v0
2687      catches       : (none)
2688      positions     :
2689        0x0000 line=71
2690        0x0003 line=72
2691      locals        :
2692
2693    #3              : (in LTestInvocationKinds;)
2694      name          : 'lookupConstructor'
2695      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;'
2696      access        : 0x000a (PRIVATE STATIC)
2697      method_idx    : 81
2698      code          -
2699      registers     : 7
2700      ins           : 3
2701      outs          : 3
2702      insns size    : 20 16-bit code units
2703002b60:                                        |[002b60] TestInvocationKinds.lookupConstructor:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
2704002b70: 6e10 e500 0600                         |0000: invoke-virtual {v6}, Ljava/lang/invoke/MethodType;.returnType:()Ljava/lang/Class; // method@00e5
2705002b76: 0c00                                   |0003: move-result-object v0
2706002b78: 6201 1400                              |0004: sget-object v1, Ljava/lang/Void;.TYPE:Ljava/lang/Class; // field@0014
2707002b7c: 6e20 df00 1600                         |0006: invoke-virtual {v6, v1}, Ljava/lang/invoke/MethodType;.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType; // method@00df
2708002b82: 0c01                                   |0009: move-result-object v1
2709002b84: 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
2710002b8a: 0c02                                   |000d: move-result-object v2
2711002b8c: 2203 3400                              |000e: new-instance v3, Ljava/lang/invoke/ConstantCallSite; // type@0034
2712002b90: 7020 d200 2300                         |0010: invoke-direct {v3, v2}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
2713002b96: 1103                                   |0013: return-object v3
2714      catches       : (none)
2715      positions     :
2716        0x0000 line=183
2717        0x0004 line=184
2718        0x000a line=185
2719        0x000e line=186
2720      locals        :
2721        0x0004 - 0x0014 reg=0 cls Ljava/lang/Class; Ljava/lang/Class<*>;
2722        0x000a - 0x0014 reg=1 constructorMethodType Ljava/lang/invoke/MethodType;
2723        0x000e - 0x0014 reg=2 mh Ljava/lang/invoke/MethodHandle;
2724        0x0000 - 0x0014 reg=4 lookup Ljava/lang/invoke/MethodHandles$Lookup;
2725        0x0000 - 0x0014 reg=5 name Ljava/lang/String;
2726        0x0000 - 0x0014 reg=6 methodType Ljava/lang/invoke/MethodType;
2727
2728    #4              : (in LTestInvocationKinds;)
2729      name          : 'lookupInstanceFieldGetter'
2730      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;'
2731      access        : 0x0008 (STATIC)
2732      method_idx    : 82
2733      code          -
2734      registers     : 5
2735      ins           : 3
2736      outs          : 4
2737      insns size    : 20 16-bit code units
2738002b98:                                        |[002b98] TestInvocationKinds.lookupInstanceFieldGetter:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
2739002ba8: 0000                                   |0000: nop // spacer
2740002baa: 1200                                   |0001: const/4 v0, #int 0 // #0
2741002bac: 6e20 e400 0400                         |0002: invoke-virtual {v4, v0}, Ljava/lang/invoke/MethodType;.parameterType:(I)Ljava/lang/Class; // method@00e4
2742002bb2: 0c00                                   |0005: move-result-object v0
2743002bb4: 6e10 e500 0400                         |0006: invoke-virtual {v4}, Ljava/lang/invoke/MethodType;.returnType:()Ljava/lang/Class; // method@00e5
2744002bba: 0c01                                   |0009: move-result-object v1
2745002bbc: 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
2746002bc2: 0c00                                   |000d: move-result-object v0
2747002bc4: 2201 3400                              |000e: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
2748002bc8: 7020 d200 0100                         |0010: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
2749002bce: 1101                                   |0013: return-object v1
2750      catches       : (none)
2751      positions     :
2752        0x0000 line=101
2753        0x0001 line=102
2754        0x000e line=103
2755      locals        :
2756        0x000e - 0x0014 reg=0 mh Ljava/lang/invoke/MethodHandle;
2757        0x0000 - 0x0014 reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup;
2758        0x0000 - 0x0014 reg=3 name Ljava/lang/String;
2759        0x0000 - 0x0014 reg=4 methodType Ljava/lang/invoke/MethodType;
2760
2761    #5              : (in LTestInvocationKinds;)
2762      name          : 'lookupInstanceFieldSetter'
2763      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;'
2764      access        : 0x0008 (STATIC)
2765      method_idx    : 83
2766      code          -
2767      registers     : 5
2768      ins           : 3
2769      outs          : 4
2770      insns size    : 21 16-bit code units
2771002bd0:                                        |[002bd0] TestInvocationKinds.lookupInstanceFieldSetter:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
2772002be0: 0000                                   |0000: nop // spacer
2773002be2: 1200                                   |0001: const/4 v0, #int 0 // #0
2774002be4: 6e20 e400 0400                         |0002: invoke-virtual {v4, v0}, Ljava/lang/invoke/MethodType;.parameterType:(I)Ljava/lang/Class; // method@00e4
2775002bea: 0c00                                   |0005: move-result-object v0
2776002bec: 1211                                   |0006: const/4 v1, #int 1 // #1
2777002bee: 6e20 e400 1400                         |0007: invoke-virtual {v4, v1}, Ljava/lang/invoke/MethodType;.parameterType:(I)Ljava/lang/Class; // method@00e4
2778002bf4: 0c01                                   |000a: move-result-object v1
2779002bf6: 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
2780002bfc: 0c00                                   |000e: move-result-object v0
2781002bfe: 2201 3400                              |000f: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
2782002c02: 7020 d200 0100                         |0011: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
2783002c08: 1101                                   |0014: return-object v1
2784      catches       : (none)
2785      positions     :
2786        0x0000 line=78
2787        0x0001 line=79
2788        0x000f line=80
2789      locals        :
2790        0x000f - 0x0015 reg=0 mh Ljava/lang/invoke/MethodHandle;
2791        0x0000 - 0x0015 reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup;
2792        0x0000 - 0x0015 reg=3 name Ljava/lang/String;
2793        0x0000 - 0x0015 reg=4 methodType Ljava/lang/invoke/MethodType;
2794
2795    #6              : (in LTestInvocationKinds;)
2796      name          : 'lookupStaticFieldGetter'
2797      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;'
2798      access        : 0x0008 (STATIC)
2799      method_idx    : 84
2800      code          -
2801      registers     : 5
2802      ins           : 3
2803      outs          : 4
2804      insns size    : 16 16-bit code units
2805002c0c:                                        |[002c0c] TestInvocationKinds.lookupStaticFieldGetter:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
2806002c1c: 1c00 0c00                              |0000: const-class v0, LTestInvocationKinds; // type@000c
2807002c20: 6e10 e500 0400                         |0002: invoke-virtual {v4}, Ljava/lang/invoke/MethodType;.returnType:()Ljava/lang/Class; // method@00e5
2808002c26: 0c01                                   |0005: move-result-object v1
2809002c28: 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
2810002c2e: 0c00                                   |0009: move-result-object v0
2811002c30: 2201 3400                              |000a: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
2812002c34: 7020 d200 0100                         |000c: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
2813002c3a: 1101                                   |000f: return-object v1
2814      catches       : (none)
2815      positions     :
2816        0x0000 line=32
2817        0x0002 line=33
2818        0x000a line=34
2819      locals        :
2820        0x000a - 0x0010 reg=0 mh Ljava/lang/invoke/MethodHandle;
2821        0x0000 - 0x0010 reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup;
2822        0x0000 - 0x0010 reg=3 name Ljava/lang/String;
2823        0x0000 - 0x0010 reg=4 methodType Ljava/lang/invoke/MethodType;
2824
2825    #7              : (in LTestInvocationKinds;)
2826      name          : 'lookupStaticFieldSetter'
2827      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;'
2828      access        : 0x0008 (STATIC)
2829      method_idx    : 85
2830      code          -
2831      registers     : 5
2832      ins           : 3
2833      outs          : 4
2834      insns size    : 17 16-bit code units
2835002c3c:                                        |[002c3c] TestInvocationKinds.lookupStaticFieldSetter:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
2836002c4c: 1c00 0c00                              |0000: const-class v0, LTestInvocationKinds; // type@000c
2837002c50: 1201                                   |0002: const/4 v1, #int 0 // #0
2838002c52: 6e20 e400 1400                         |0003: invoke-virtual {v4, v1}, Ljava/lang/invoke/MethodType;.parameterType:(I)Ljava/lang/Class; // method@00e4
2839002c58: 0c01                                   |0006: move-result-object v1
2840002c5a: 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
2841002c60: 0c00                                   |000a: move-result-object v0
2842002c62: 2201 3400                              |000b: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
2843002c66: 7020 d200 0100                         |000d: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
2844002c6c: 1101                                   |0010: return-object v1
2845      catches       : (none)
2846      positions     :
2847        0x0000 line=54
2848        0x0002 line=56
2849        0x0007 line=55
2850        0x000b line=57
2851      locals        :
2852        0x000b - 0x0011 reg=0 mh Ljava/lang/invoke/MethodHandle;
2853        0x0000 - 0x0011 reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup;
2854        0x0000 - 0x0011 reg=3 name Ljava/lang/String;
2855        0x0000 - 0x0011 reg=4 methodType Ljava/lang/invoke/MethodType;
2856
2857    #8              : (in LTestInvocationKinds;)
2858      name          : 'lookupVirtual'
2859      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;'
2860      access        : 0x000a (PRIVATE STATIC)
2861      method_idx    : 86
2862      code          -
2863      registers     : 6
2864      ins           : 3
2865      outs          : 4
2866      insns size    : 18 16-bit code units
2867002c70:                                        |[002c70] TestInvocationKinds.lookupVirtual:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
2868002c80: 1200                                   |0000: const/4 v0, #int 0 // #0
2869002c82: 1211                                   |0001: const/4 v1, #int 1 // #1
2870002c84: 6e30 e000 0501                         |0002: invoke-virtual {v5, v0, v1}, Ljava/lang/invoke/MethodType;.dropParameterTypes:(II)Ljava/lang/invoke/MethodType; // method@00e0
2871002c8a: 0c00                                   |0005: move-result-object v0
2872002c8c: 1c01 0c00                              |0006: const-class v1, LTestInvocationKinds; // type@000c
2873002c90: 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
2874002c96: 0c01                                   |000b: move-result-object v1
2875002c98: 2202 3400                              |000c: new-instance v2, Ljava/lang/invoke/ConstantCallSite; // type@0034
2876002c9c: 7020 d200 1200                         |000e: invoke-direct {v2, v1}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
2877002ca2: 1102                                   |0011: return-object v2
2878      catches       : (none)
2879      positions     :
2880        0x0000 line=146
2881        0x0006 line=147
2882        0x000c line=148
2883      locals        :
2884        0x0006 - 0x0012 reg=0 mt Ljava/lang/invoke/MethodType;
2885        0x000c - 0x0012 reg=1 mh Ljava/lang/invoke/MethodHandle;
2886        0x0000 - 0x0012 reg=3 lookup Ljava/lang/invoke/MethodHandles$Lookup;
2887        0x0000 - 0x0012 reg=4 name Ljava/lang/String;
2888        0x0000 - 0x0012 reg=5 methodType Ljava/lang/invoke/MethodType;
2889
2890    #9              : (in LTestInvocationKinds;)
2891      name          : 'makeWidget'
2892      type          : '(I)LTestInvocationKinds$Widget;'
2893      access        : 0x000a (PRIVATE STATIC)
2894      method_idx    : 87
2895      code          -
2896      registers     : 2
2897      ins           : 1
2898      outs          : 0
2899      insns size    : 5 16-bit code units
2900002ad4:                                        |[002ad4] TestInvocationKinds.makeWidget:(I)LTestInvocationKinds$Widget;
2901002ae4: 7100 4d00 0000                         |0000: invoke-static {}, LTestInvocationKinds;.assertNotReached:()V // method@004d
2902002aea: 1200                                   |0003: const/4 v0, #int 0 // #0
2903002aec: 1100                                   |0004: return-object v0
2904      catches       : (none)
2905      positions     :
2906        0x0000 line=200
2907        0x0003 line=201
2908      locals        :
2909        0x0000 - 0x0005 reg=1 v I
2910
2911    #10              : (in LTestInvocationKinds;)
2912      name          : 'maxIntegerValue'
2913      type          : '(LTestInvocationKinds;II)I'
2914      access        : 0x000a (PRIVATE STATIC)
2915      method_idx    : 88
2916      code          -
2917      registers     : 4
2918      ins           : 3
2919      outs          : 0
2920      insns size    : 5 16-bit code units
2921002b44:                                        |[002b44] TestInvocationKinds.maxIntegerValue:(LTestInvocationKinds;II)I
2922002b54: 7100 4d00 0000                         |0000: invoke-static {}, LTestInvocationKinds;.assertNotReached:()V // method@004d
2923002b5a: 1200                                   |0003: const/4 v0, #int 0 // #0
2924002b5c: 0f00                                   |0004: return v0
2925      catches       : (none)
2926      positions     :
2927        0x0000 line=159
2928        0x0003 line=160
2929      locals        :
2930        0x0000 - 0x0005 reg=1 receiver LTestInvocationKinds;
2931        0x0000 - 0x0005 reg=2 x I
2932        0x0000 - 0x0005 reg=3 y I
2933
2934    #11              : (in LTestInvocationKinds;)
2935      name          : 'setInstanceField'
2936      type          : '(LTestInvocationKinds;D)V'
2937      access        : 0x000a (PRIVATE STATIC)
2938      method_idx    : 89
2939      code          -
2940      registers     : 5
2941      ins           : 3
2942      outs          : 0
2943      insns size    : 8 16-bit code units
2944002cbc:                                        |[002cbc] TestInvocationKinds.setInstanceField:(LTestInvocationKinds;D)V
2945002ccc: 7100 4d00 0000                         |0000: invoke-static {}, LTestInvocationKinds;.assertNotReached:()V // method@004d
2946002cd2: 1900 f87f                              |0003: const-wide/high16 v0, #long 9221120237041090560 // #7ff8
2947002cd6: 5a20 0200                              |0005: iput-wide v0, v2, LTestInvocationKinds;.instance_field:D // field@0002
2948002cda: 0e00                                   |0007: return-void
2949      catches       : (none)
2950      positions     :
2951        0x0000 line=94
2952        0x0003 line=95
2953        0x0007 line=96
2954      locals        :
2955        0x0000 - 0x0008 reg=2 instance LTestInvocationKinds;
2956        0x0000 - 0x0008 reg=3 value D
2957
2958    #12              : (in LTestInvocationKinds;)
2959      name          : 'setStaticField'
2960      type          : '(I)V'
2961      access        : 0x000a (PRIVATE STATIC)
2962      method_idx    : 90
2963      code          -
2964      registers     : 1
2965      ins           : 1
2966      outs          : 0
2967      insns size    : 4 16-bit code units
2968002cdc:                                        |[002cdc] TestInvocationKinds.setStaticField:(I)V
2969002cec: 7100 4d00 0000                         |0000: invoke-static {}, LTestInvocationKinds;.assertNotReached:()V // method@004d
2970002cf2: 0e00                                   |0003: return-void
2971      catches       : (none)
2972      positions     :
2973        0x0000 line=48
2974        0x0003 line=49
2975      locals        :
2976        0x0000 - 0x0004 reg=0 value I
2977
2978    #13              : (in LTestInvocationKinds;)
2979      name          : 'test'
2980      type          : '()V'
2981      access        : 0x0009 (PUBLIC STATIC)
2982      method_idx    : 91
2983      code          -
2984      registers     : 2
2985      ins           : 0
2986      outs          : 2
2987      insns size    : 24 16-bit code units
2988002cf4:                                        |[002cf4] TestInvocationKinds.test:()V
2989002d04: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
2990002d08: 1c01 0c00                              |0002: const-class v1, LTestInvocationKinds; // type@000c
2991002d0c: 6e10 b700 0100                         |0004: invoke-virtual {v1}, Ljava/lang/Class;.getName:()Ljava/lang/String; // method@00b7
2992002d12: 0c01                                   |0007: move-result-object v1
2993002d14: 6e20 b300 1000                         |0008: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
2994002d1a: 7100 5f00 0000                         |000b: invoke-static {}, LTestInvocationKinds;.testStaticFieldAccessors:()V // method@005f
2995002d20: 7100 5d00 0000                         |000e: invoke-static {}, LTestInvocationKinds;.testInstanceFieldAccessors:()V // method@005d
2996002d26: 7100 5e00 0000                         |0011: invoke-static {}, LTestInvocationKinds;.testInvokeVirtual:()V // method@005e
2997002d2c: 7100 5c00 0000                         |0014: invoke-static {}, LTestInvocationKinds;.testConstructor:()V // method@005c
2998002d32: 0e00                                   |0017: return-void
2999      catches       : (none)
3000      positions     :
3001        0x0000 line=212
3002        0x000b line=213
3003        0x000e line=214
3004        0x0011 line=215
3005        0x0014 line=216
3006        0x0017 line=217
3007      locals        :
3008
3009    #14              : (in LTestInvocationKinds;)
3010      name          : 'testConstructor'
3011      type          : '()V'
3012      access        : 0x0008 (STATIC)
3013      method_idx    : 92
3014      code          -
3015      registers     : 3
3016      ins           : 0
3017      outs          : 2
3018      insns size    : 31 16-bit code units
3019002d34:                                        |[002d34] TestInvocationKinds.testConstructor:()V
3020002d44: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
3021002d48: 1a01 b601                              |0002: const-string v1, "testConstructor => " // string@01b6
3022002d4c: 6e20 b000 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
3023002d52: 1230                                   |0007: const/4 v0, #int 3 // #3
3024002d54: fc10 1200 0000                         |0008: invoke-custom {v0}, call_site@0012
3025002d5a: 0c00                                   |000b: move-result-object v0
3026002d5c: 1c01 0b00                              |000c: const-class v1, LTestInvocationKinds$Widget; // type@000b
3027002d60: 6e10 c000 0000                         |000e: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
3028002d66: 0c02                                   |0011: move-result-object v2
3029002d68: 7120 4c00 2100                         |0012: invoke-static {v1, v2}, LTestInvocationKinds;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@004c
3030002d6e: 6201 1300                              |0015: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
3031002d72: 6e10 c000 0000                         |0017: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
3032002d78: 0c02                                   |001a: move-result-object v2
3033002d7a: 6e20 b200 2100                         |001b: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
3034002d80: 0e00                                   |001e: return-void
3035      catches       : (none)
3036      positions     :
3037        0x0000 line=205
3038        0x0007 line=206
3039        0x000c line=207
3040        0x0015 line=208
3041        0x001e line=209
3042      locals        :
3043        0x000c - 0x001f reg=0 receiver LTestInvocationKinds$Widget;
3044
3045    #15              : (in LTestInvocationKinds;)
3046      name          : 'testInstanceFieldAccessors'
3047      type          : '()V'
3048      access        : 0x000a (PRIVATE STATIC)
3049      method_idx    : 93
3050      code          -
3051      registers     : 5
3052      ins           : 0
3053      outs          : 4
3054      insns size    : 44 16-bit code units
3055002d84:                                        |[002d84] TestInvocationKinds.testInstanceFieldAccessors:()V
3056002d94: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
3057002d98: 1a01 b801                              |0002: const-string v1, "testInstanceFieldAccessors" // string@01b8
3058002d9c: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
3059002da2: 2200 0c00                              |0007: new-instance v0, LTestInvocationKinds; // type@000c
3060002da6: 7010 4900 0000                         |0009: invoke-direct {v0}, LTestInvocationKinds;.<init>:()V // method@0049
3061002dac: 1601 0100                              |000c: const-wide/16 v1, #int 1 // #1
3062002db0: 5a01 0200                              |000e: iput-wide v1, v0, LTestInvocationKinds;.instance_field:D // field@0002
3063002db4: 1801 182d 4454 fb21 0940               |0010: const-wide v1, #double 3.14159 // #400921fb54442d18
3064002dbe: fc30 1300 1002                         |0015: invoke-custom {v0, v1, v2}, call_site@0013
3065002dc4: 5303 0200                              |0018: iget-wide v3, v0, LTestInvocationKinds;.instance_field:D // field@0002
3066002dc8: 7140 4a00 2143                         |001a: invoke-static {v1, v2, v3, v4}, LTestInvocationKinds;.assertEquals:(DD)V // method@004a
3067002dce: 1801 6957 148b 0abf 0540               |001d: const-wide v1, #double 2.71828 // #4005bf0a8b145769
3068002dd8: 5a01 0200                              |0022: iput-wide v1, v0, LTestInvocationKinds;.instance_field:D // field@0002
3069002ddc: fc10 1400 0000                         |0024: invoke-custom {v0}, call_site@0014
3070002de2: 0b03                                   |0027: move-result-wide v3
3071002de4: 7140 4a00 2143                         |0028: invoke-static {v1, v2, v3, v4}, LTestInvocationKinds;.assertEquals:(DD)V // method@004a
3072002dea: 0e00                                   |002b: return-void
3073      catches       : (none)
3074      positions     :
3075        0x0000 line=133
3076        0x0007 line=134
3077        0x000c line=135
3078        0x0010 line=136
3079        0x0018 line=137
3080        0x001d line=138
3081        0x0024 line=139
3082        0x002b line=140
3083      locals        :
3084        0x000c - 0x002c reg=0 instance LTestInvocationKinds;
3085
3086    #16              : (in LTestInvocationKinds;)
3087      name          : 'testInvokeVirtual'
3088      type          : '()V'
3089      access        : 0x0008 (STATIC)
3090      method_idx    : 94
3091      code          -
3092      registers     : 3
3093      ins           : 0
3094      outs          : 3
3095      insns size    : 25 16-bit code units
3096002dec:                                        |[002dec] TestInvocationKinds.testInvokeVirtual:()V
3097002dfc: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
3098002e00: 1a01 ba01                              |0002: const-string v1, "testInvokeVirtual => max(77, -3) = " // string@01ba
3099002e04: 6e20 b000 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
3100002e0a: 2200 0c00                              |0007: new-instance v0, LTestInvocationKinds; // type@000c
3101002e0e: 7010 4900 0000                         |0009: invoke-direct {v0}, LTestInvocationKinds;.<init>:()V // method@0049
3102002e14: 1301 4d00                              |000c: const/16 v1, #int 77 // #4d
3103002e18: 12d2                                   |000e: const/4 v2, #int -3 // #fd
3104002e1a: fc30 1500 1002                         |000f: invoke-custom {v0, v1, v2}, call_site@0015
3105002e20: 0a01                                   |0012: move-result v1
3106002e22: 6202 1300                              |0013: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
3107002e26: 6e20 b100 1200                         |0015: invoke-virtual {v2, v1}, Ljava/io/PrintStream;.println:(I)V // method@00b1
3108002e2c: 0e00                                   |0018: return-void
3109      catches       : (none)
3110      positions     :
3111        0x0000 line=168
3112        0x0007 line=169
3113        0x000c line=170
3114        0x0013 line=171
3115        0x0018 line=172
3116      locals        :
3117        0x000c - 0x0019 reg=0 receiver LTestInvocationKinds;
3118        0x0013 - 0x0019 reg=1 result I
3119
3120    #17              : (in LTestInvocationKinds;)
3121      name          : 'testStaticFieldAccessors'
3122      type          : '()V'
3123      access        : 0x000a (PRIVATE STATIC)
3124      method_idx    : 95
3125      code          -
3126      registers     : 2
3127      ins           : 0
3128      outs          : 2
3129      insns size    : 47 16-bit code units
3130002e30:                                        |[002e30] TestInvocationKinds.testStaticFieldAccessors:()V
3131002e40: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
3132002e44: 1a01 bb01                              |0002: const-string v1, "testStaticFieldAccessors" // string@01bb
3133002e48: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
3134002e4e: 1230                                   |0007: const/4 v0, #int 3 // #3
3135002e50: fc10 1600 0000                         |0008: invoke-custom {v0}, call_site@0016
3136002e56: 6001 0300                              |000b: sget v1, LTestInvocationKinds;.static_field:I // field@0003
3137002e5a: 7120 4b00 0100                         |000d: invoke-static {v1, v0}, LTestInvocationKinds;.assertEquals:(II)V // method@004b
3138002e60: 1240                                   |0010: const/4 v0, #int 4 // #4
3139002e62: fc10 1700 0000                         |0011: invoke-custom {v0}, call_site@0017
3140002e68: 6001 0300                              |0014: sget v1, LTestInvocationKinds;.static_field:I // field@0003
3141002e6c: 7120 4b00 0100                         |0016: invoke-static {v1, v0}, LTestInvocationKinds;.assertEquals:(II)V // method@004b
3142002e72: 6000 0300                              |0019: sget v0, LTestInvocationKinds;.static_field:I // field@0003
3143002e76: fc00 1800 0000                         |001b: invoke-custom {}, call_site@0018
3144002e7c: 0a01                                   |001e: move-result v1
3145002e7e: 7120 4b00 1000                         |001f: invoke-static {v0, v1}, LTestInvocationKinds;.assertEquals:(II)V // method@004b
3146002e84: 1400 ffff ff7f                         |0022: const v0, #float nan // #7fffffff
3147002e8a: 6700 0300                              |0025: sput v0, LTestInvocationKinds;.static_field:I // field@0003
3148002e8e: fc00 1900 0000                         |0027: invoke-custom {}, call_site@0019
3149002e94: 0a01                                   |002a: move-result v1
3150002e96: 7120 4b00 1000                         |002b: invoke-static {v0, v1}, LTestInvocationKinds;.assertEquals:(II)V // method@004b
3151002e9c: 0e00                                   |002e: return-void
3152      catches       : (none)
3153      positions     :
3154        0x0000 line=122
3155        0x0007 line=123
3156        0x000b line=124
3157        0x0010 line=125
3158        0x0014 line=126
3159        0x0019 line=127
3160        0x0022 line=128
3161        0x0027 line=129
3162        0x002e line=130
3163      locals        :
3164
3165  Virtual methods   -
3166    #0              : (in LTestInvocationKinds;)
3167      name          : 'getMaxIntegerValue'
3168      type          : '(II)I'
3169      access        : 0x0001 (PUBLIC)
3170      method_idx    : 79
3171      code          -
3172      registers     : 4
3173      ins           : 3
3174      outs          : 0
3175      insns size    : 6 16-bit code units
3176002b0c:                                        |[002b0c] TestInvocationKinds.getMaxIntegerValue:(II)I
3177002b1c: 3732 0400                              |0000: if-le v2, v3, 0004 // +0004
3178002b20: 0120                                   |0002: move v0, v2
3179002b22: 2802                                   |0003: goto 0005 // +0002
3180002b24: 0130                                   |0004: move v0, v3
3181002b26: 0f00                                   |0005: return v0
3182      catches       : (none)
3183      positions     :
3184        0x0000 line=164
3185      locals        :
3186        0x0000 - 0x0006 reg=1 this LTestInvocationKinds;
3187        0x0000 - 0x0006 reg=2 x I
3188        0x0000 - 0x0006 reg=3 y I
3189
3190  source_file_idx   : 148 (TestInvocationKinds.java)
3191
3192Class #9 header:
3193class_idx           : 14
3194access_flags        : 1 (0x0001)
3195superclass_idx      : 9
3196interfaces_off      : 18256 (0x004750)
3197source_file_idx     : 149
3198annotations_off     : 31132 (0x00799c)
3199class_data_off      : 29344 (0x0072a0)
3200static_fields_size  : 7
3201instance_fields_size: 0
3202direct_methods_size : 8
3203virtual_methods_size: 1
3204
3205Class #9 annotations:
3206Annotations on field #10 'threadIndex'
3207  VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "Ljava/lang/ThreadLocal<" "Ljava/lang/Integer;" ">;" }
3208Annotations on method #106 'linkerMethod'
3209  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
3210Annotations on method #109 'setCalled'
3211  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
3212Annotations on method #110 'test'
3213  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
3214
3215Class #9            -
3216  Class descriptor  : 'LTestInvokeCustomWithConcurrentThreads;'
3217  Access flags      : 0x0001 (PUBLIC)
3218  Superclass        : 'LTestBase;'
3219  Interfaces        -
3220    #0              : 'Ljava/lang/Runnable;'
3221  Static fields     -
3222    #0              : (in LTestInvokeCustomWithConcurrentThreads;)
3223      name          : 'NUMBER_OF_THREADS'
3224      type          : 'I'
3225      access        : 0x001a (PRIVATE STATIC FINAL)
3226      value         : 16
3227    #1              : (in LTestInvokeCustomWithConcurrentThreads;)
3228      name          : 'barrier'
3229      type          : 'Ljava/util/concurrent/CyclicBarrier;'
3230      access        : 0x001a (PRIVATE STATIC FINAL)
3231    #2              : (in LTestInvokeCustomWithConcurrentThreads;)
3232      name          : 'called'
3233      type          : '[Ljava/util/concurrent/atomic/AtomicInteger;'
3234      access        : 0x001a (PRIVATE STATIC FINAL)
3235    #3              : (in LTestInvokeCustomWithConcurrentThreads;)
3236      name          : 'instantiated'
3237      type          : '[Ljava/lang/invoke/CallSite;'
3238      access        : 0x001a (PRIVATE STATIC FINAL)
3239    #4              : (in LTestInvokeCustomWithConcurrentThreads;)
3240      name          : 'nextIndex'
3241      type          : 'Ljava/util/concurrent/atomic/AtomicInteger;'
3242      access        : 0x001a (PRIVATE STATIC FINAL)
3243    #5              : (in LTestInvokeCustomWithConcurrentThreads;)
3244      name          : 'targetted'
3245      type          : '[Ljava/util/concurrent/atomic/AtomicInteger;'
3246      access        : 0x001a (PRIVATE STATIC FINAL)
3247    #6              : (in LTestInvokeCustomWithConcurrentThreads;)
3248      name          : 'threadIndex'
3249      type          : 'Ljava/lang/ThreadLocal;'
3250      access        : 0x001a (PRIVATE STATIC FINAL)
3251  Instance fields   -
3252  Direct methods    -
3253    #0              : (in LTestInvokeCustomWithConcurrentThreads;)
3254      name          : '<clinit>'
3255      type          : '()V'
3256      access        : 0x10008 (STATIC CONSTRUCTOR)
3257      method_idx    : 99
3258      code          -
3259      registers     : 2
3260      ins           : 0
3261      outs          : 2
3262      insns size    : 37 16-bit code units
3263003064:                                        |[003064] TestInvokeCustomWithConcurrentThreads.<clinit>:()V
3264003074: 2200 3e00                              |0000: new-instance v0, Ljava/util/concurrent/atomic/AtomicInteger; // type@003e
3265003078: 1201                                   |0002: const/4 v1, #int 0 // #0
326600307a: 7020 ef00 1000                         |0003: invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.<init>:(I)V // method@00ef
3267003080: 6900 0800                              |0006: sput-object v0, LTestInvokeCustomWithConcurrentThreads;.nextIndex:Ljava/util/concurrent/atomic/AtomicInteger; // field@0008
3268003084: 2200 0d00                              |0008: new-instance v0, LTestInvokeCustomWithConcurrentThreads$1; // type@000d
3269003088: 7010 6000 0000                         |000a: invoke-direct {v0}, LTestInvokeCustomWithConcurrentThreads$1;.<init>:()V // method@0060
327000308e: 6900 0a00                              |000d: sput-object v0, LTestInvokeCustomWithConcurrentThreads;.threadIndex:Ljava/lang/ThreadLocal; // field@000a
3271003092: 1300 1000                              |000f: const/16 v0, #int 16 // #10
3272003096: 2301 4b00                              |0011: new-array v1, v0, [Ljava/lang/invoke/CallSite; // type@004b
327300309a: 6901 0700                              |0013: sput-object v1, LTestInvokeCustomWithConcurrentThreads;.instantiated:[Ljava/lang/invoke/CallSite; // field@0007
327400309e: 2301 4c00                              |0015: new-array v1, v0, [Ljava/util/concurrent/atomic/AtomicInteger; // type@004c
32750030a2: 6901 0600                              |0017: sput-object v1, LTestInvokeCustomWithConcurrentThreads;.called:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0006
32760030a6: 2301 4c00                              |0019: new-array v1, v0, [Ljava/util/concurrent/atomic/AtomicInteger; // type@004c
32770030aa: 6901 0900                              |001b: sput-object v1, LTestInvokeCustomWithConcurrentThreads;.targetted:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0009
32780030ae: 2201 3d00                              |001d: new-instance v1, Ljava/util/concurrent/CyclicBarrier; // type@003d
32790030b2: 7020 ed00 0100                         |001f: invoke-direct {v1, v0}, Ljava/util/concurrent/CyclicBarrier;.<init>:(I)V // method@00ed
32800030b8: 6901 0500                              |0022: sput-object v1, LTestInvokeCustomWithConcurrentThreads;.barrier:Ljava/util/concurrent/CyclicBarrier; // field@0005
32810030bc: 0e00                                   |0024: return-void
3282      catches       : (none)
3283      positions     :
3284        0x0000 line=30
3285        0x0008 line=32
3286        0x000f line=41
3287        0x0015 line=44
3288        0x0019 line=47
3289        0x001d line=50
3290      locals        :
3291
3292    #1              : (in LTestInvokeCustomWithConcurrentThreads;)
3293      name          : '<init>'
3294      type          : '()V'
3295      access        : 0x10002 (PRIVATE CONSTRUCTOR)
3296      method_idx    : 100
3297      code          -
3298      registers     : 1
3299      ins           : 1
3300      outs          : 1
3301      insns size    : 4 16-bit code units
33020030c0:                                        |[0030c0] TestInvokeCustomWithConcurrentThreads.<init>:()V
33030030d0: 7010 3200 0000                         |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032
33040030d6: 0e00                                   |0003: return-void
3305      catches       : (none)
3306      positions     :
3307        0x0000 line=52
3308      locals        :
3309        0x0000 - 0x0004 reg=0 this LTestInvokeCustomWithConcurrentThreads;
3310
3311    #2              : (in LTestInvokeCustomWithConcurrentThreads;)
3312      name          : 'access$000'
3313      type          : '()Ljava/util/concurrent/atomic/AtomicInteger;'
3314      access        : 0x1008 (STATIC SYNTHETIC)
3315      method_idx    : 101
3316      code          -
3317      registers     : 1
3318      ins           : 0
3319      outs          : 0
3320      insns size    : 3 16-bit code units
332100304c:                                        |[00304c] TestInvokeCustomWithConcurrentThreads.access$000:()Ljava/util/concurrent/atomic/AtomicInteger;
332200305c: 6200 0800                              |0000: sget-object v0, LTestInvokeCustomWithConcurrentThreads;.nextIndex:Ljava/util/concurrent/atomic/AtomicInteger; // field@0008
3323003060: 1100                                   |0002: return-object v0
3324      catches       : (none)
3325      positions     :
3326        0x0000 line=27
3327      locals        :
3328
3329    #3              : (in LTestInvokeCustomWithConcurrentThreads;)
3330      name          : 'getThreadIndex'
3331      type          : '()I'
3332      access        : 0x000a (PRIVATE STATIC)
3333      method_idx    : 105
3334      code          -
3335      registers     : 1
3336      ins           : 0
3337      outs          : 1
3338      insns size    : 13 16-bit code units
3339002f00:                                        |[002f00] TestInvokeCustomWithConcurrentThreads.getThreadIndex:()I
3340002f10: 6200 0a00                              |0000: sget-object v0, LTestInvokeCustomWithConcurrentThreads;.threadIndex:Ljava/lang/ThreadLocal; // field@000a
3341002f14: 6e10 d000 0000                         |0002: invoke-virtual {v0}, Ljava/lang/ThreadLocal;.get:()Ljava/lang/Object; // method@00d0
3342002f1a: 0c00                                   |0005: move-result-object v0
3343002f1c: 1f00 2700                              |0006: check-cast v0, Ljava/lang/Integer; // type@0027
3344002f20: 6e10 bc00 0000                         |0008: invoke-virtual {v0}, Ljava/lang/Integer;.intValue:()I // method@00bc
3345002f26: 0a00                                   |000b: move-result v0
3346002f28: 0f00                                   |000c: return v0
3347      catches       : (none)
3348      positions     :
3349        0x0000 line=55
3350      locals        :
3351
3352    #4              : (in LTestInvokeCustomWithConcurrentThreads;)
3353      name          : 'linkerMethod'
3354      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;'
3355      access        : 0x000a (PRIVATE STATIC)
3356      method_idx    : 106
3357      code          -
3358      registers     : 8
3359      ins           : 3
3360      outs          : 4
3361      insns size    : 97 16-bit code units
3362002f78:                                        |[002f78] TestInvokeCustomWithConcurrentThreads.linkerMethod:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
3363002f88: 1c00 0e00                              |0000: const-class v0, LTestInvokeCustomWithConcurrentThreads; // type@000e
3364002f8c: 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
3365002f92: 0c00                                   |0005: move-result-object v0
3366002f94: 6e10 d400 0000                         |0006: invoke-virtual {v0}, Ljava/lang/invoke/MethodHandle;.type:()Ljava/lang/invoke/MethodType; // method@00d4
3367002f9a: 0c01                                   |0009: move-result-object v1
3368002f9c: 7120 6700 1700                         |000a: invoke-static {v7, v1}, LTestInvokeCustomWithConcurrentThreads;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@0067
3369002fa2: 6e10 d400 0000                         |000d: invoke-virtual {v0}, Ljava/lang/invoke/MethodHandle;.type:()Ljava/lang/invoke/MethodType; // method@00d4
3370002fa8: 0c01                                   |0010: move-result-object v1
3371002faa: 6e10 e300 0100                         |0011: invoke-virtual {v1}, Ljava/lang/invoke/MethodType;.parameterCount:()I // method@00e3
3372002fb0: 0a01                                   |0014: move-result v1
3373002fb2: 1212                                   |0015: const/4 v2, #int 1 // #1
3374002fb4: 7120 6600 2100                         |0016: invoke-static {v1, v2}, LTestInvokeCustomWithConcurrentThreads;.assertEquals:(II)V // method@0066
3375002fba: 2321 4800                              |0019: new-array v1, v2, [Ljava/lang/Object; // type@0048
3376002fbe: 7100 6900 0000                         |001b: invoke-static {}, LTestInvokeCustomWithConcurrentThreads;.getThreadIndex:()I // method@0069
3377002fc4: 0a03                                   |001e: move-result v3
3378002fc6: 7110 bd00 0300                         |001f: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@00bd
3379002fcc: 0c03                                   |0022: move-result-object v3
3380002fce: 1204                                   |0023: const/4 v4, #int 0 // #0
3381002fd0: 4d03 0104                              |0024: aput-object v3, v1, v4
3382002fd4: 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
3383002fda: 0c00                                   |0029: move-result-object v0
3384002fdc: 2321 4600                              |002a: new-array v1, v2, [Ljava/lang/Class; // type@0046
3385002fe0: 6203 1200                              |002c: sget-object v3, Ljava/lang/Integer;.TYPE:Ljava/lang/Class; // field@0012
3386002fe4: 4d03 0104                              |002e: aput-object v3, v1, v4
3387002fe8: 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
3388002fee: 0c00                                   |0033: move-result-object v0
3389002ff0: 6e10 d400 0000                         |0034: invoke-virtual {v0}, Ljava/lang/invoke/MethodHandle;.type:()Ljava/lang/invoke/MethodType; // method@00d4
3390002ff6: 0c01                                   |0037: move-result-object v1
3391002ff8: 6e10 e300 0100                         |0038: invoke-virtual {v1}, Ljava/lang/invoke/MethodType;.parameterCount:()I // method@00e3
3392002ffe: 0a01                                   |003b: move-result v1
3393003000: 7120 6600 2100                         |003c: invoke-static {v1, v2}, LTestInvokeCustomWithConcurrentThreads;.assertEquals:(II)V // method@0066
3394003006: 6e10 d400 0000                         |003f: invoke-virtual {v0}, Ljava/lang/invoke/MethodHandle;.type:()Ljava/lang/invoke/MethodType; // method@00d4
339500300c: 0c01                                   |0042: move-result-object v1
339600300e: 7120 6700 1700                         |0043: invoke-static {v7, v1}, LTestInvokeCustomWithConcurrentThreads;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@0067
3397003014: 6201 0500                              |0046: sget-object v1, LTestInvokeCustomWithConcurrentThreads;.barrier:Ljava/util/concurrent/CyclicBarrier; // field@0005
3398003018: 6e10 ee00 0100                         |0048: invoke-virtual {v1}, Ljava/util/concurrent/CyclicBarrier;.await:()I // method@00ee
339900301e: 6201 0700                              |004b: sget-object v1, LTestInvokeCustomWithConcurrentThreads;.instantiated:[Ljava/lang/invoke/CallSite; // field@0007
3400003022: 7100 6900 0000                         |004d: invoke-static {}, LTestInvokeCustomWithConcurrentThreads;.getThreadIndex:()I // method@0069
3401003028: 0a02                                   |0050: move-result v2
340200302a: 2203 3400                              |0051: new-instance v3, Ljava/lang/invoke/ConstantCallSite; // type@0034
340300302e: 7020 d200 0300                         |0053: invoke-direct {v3, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
3404003034: 4d03 0102                              |0056: aput-object v3, v1, v2
3405003038: 6201 0700                              |0058: sget-object v1, LTestInvokeCustomWithConcurrentThreads;.instantiated:[Ljava/lang/invoke/CallSite; // field@0007
340600303c: 7100 6900 0000                         |005a: invoke-static {}, LTestInvokeCustomWithConcurrentThreads;.getThreadIndex:()I // method@0069
3407003042: 0a02                                   |005d: move-result v2
3408003044: 4601 0102                              |005e: aget-object v1, v1, v2
3409003048: 1101                                   |0060: return-object v1
3410      catches       : (none)
3411      positions     :
3412        0x0000 line=87
3413        0x0002 line=88
3414        0x0006 line=89
3415        0x000d line=90
3416        0x0019 line=91
3417        0x002a line=92
3418        0x0034 line=93
3419        0x003f line=94
3420        0x0046 line=99
3421        0x004b line=101
3422        0x0058 line=102
3423      locals        :
3424        0x0006 - 0x0061 reg=0 mh Ljava/lang/invoke/MethodHandle;
3425        0x0000 - 0x0061 reg=5 caller Ljava/lang/invoke/MethodHandles$Lookup;
3426        0x0000 - 0x0061 reg=6 name Ljava/lang/String;
3427        0x0000 - 0x0061 reg=7 methodType Ljava/lang/invoke/MethodType;
3428
3429    #5              : (in LTestInvokeCustomWithConcurrentThreads;)
3430      name          : 'notUsed'
3431      type          : '(I)I'
3432      access        : 0x0009 (PUBLIC STATIC)
3433      method_idx    : 107
3434      code          -
3435      registers     : 1
3436      ins           : 1
3437      outs          : 0
3438      insns size    : 1 16-bit code units
3439002f2c:                                        |[002f2c] TestInvokeCustomWithConcurrentThreads.notUsed:(I)I
3440002f3c: 0f00                                   |0000: return v0
3441      catches       : (none)
3442      positions     :
3443        0x0000 line=59
3444      locals        :
3445        0x0000 - 0x0001 reg=0 x I
3446
3447    #6              : (in LTestInvokeCustomWithConcurrentThreads;)
3448      name          : 'setCalled'
3449      type          : '(I)I'
3450      access        : 0x000a (PRIVATE STATIC)
3451      method_idx    : 109
3452      code          -
3453      registers     : 3
3454      ins           : 1
3455      outs          : 2
3456      insns size    : 20 16-bit code units
3457002f40:                                        |[002f40] TestInvokeCustomWithConcurrentThreads.setCalled:(I)I
3458002f50: 6200 0600                              |0000: sget-object v0, LTestInvokeCustomWithConcurrentThreads;.called:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0006
3459002f54: 4600 0002                              |0002: aget-object v0, v0, v2
3460002f58: 6e10 f100 0000                         |0004: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.getAndIncrement:()I // method@00f1
3461002f5e: 6200 0900                              |0007: sget-object v0, LTestInvokeCustomWithConcurrentThreads;.targetted:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0009
3462002f62: 7100 6900 0000                         |0009: invoke-static {}, LTestInvokeCustomWithConcurrentThreads;.getThreadIndex:()I // method@0069
3463002f68: 0a01                                   |000c: move-result v1
3464002f6a: 4600 0001                              |000d: aget-object v0, v0, v1
3465002f6e: 6e20 f200 2000                         |000f: invoke-virtual {v0, v2}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@00f2
3466002f74: 1200                                   |0012: const/4 v0, #int 0 // #0
3467002f76: 0f00                                   |0013: return v0
3468      catches       : (none)
3469      positions     :
3470        0x0000 line=79
3471        0x0007 line=80
3472        0x0012 line=81
3473      locals        :
3474        0x0000 - 0x0014 reg=2 index I
3475
3476    #7              : (in LTestInvokeCustomWithConcurrentThreads;)
3477      name          : 'test'
3478      type          : '()V'
3479      access        : 0x0009 (PUBLIC STATIC)
3480      method_idx    : 110
3481      code          -
3482      registers     : 12
3483      ins           : 0
3484      outs          : 3
3485      insns size    : 229 16-bit code units
34860030fc:                                        |[0030fc] TestInvokeCustomWithConcurrentThreads.test:()V
348700310c: 1200                                   |0000: const/4 v0, #int 0 // #0
348800310e: 0101                                   |0001: move v1, v0
3489003110: 1302 1000                              |0002: const/16 v2, #int 16 // #10
3490003114: 3521 1700                              |0004: if-ge v1, v2, 001b // +0017
3491003118: 6202 0600                              |0006: sget-object v2, LTestInvokeCustomWithConcurrentThreads;.called:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0006
349200311c: 2203 3e00                              |0008: new-instance v3, Ljava/util/concurrent/atomic/AtomicInteger; // type@003e
3493003120: 7020 ef00 0300                         |000a: invoke-direct {v3, v0}, Ljava/util/concurrent/atomic/AtomicInteger;.<init>:(I)V // method@00ef
3494003126: 4d03 0201                              |000d: aput-object v3, v2, v1
349500312a: 6202 0900                              |000f: sget-object v2, LTestInvokeCustomWithConcurrentThreads;.targetted:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0009
349600312e: 2203 3e00                              |0011: new-instance v3, Ljava/util/concurrent/atomic/AtomicInteger; // type@003e
3497003132: 7020 ef00 0300                         |0013: invoke-direct {v3, v0}, Ljava/util/concurrent/atomic/AtomicInteger;.<init>:(I)V // method@00ef
3498003138: 4d03 0201                              |0016: aput-object v3, v2, v1
349900313c: d801 0101                              |0018: add-int/lit8 v1, v1, #int 1 // #01
3500003140: 28e8                                   |001a: goto 0002 // -0018
3501003142: 2321 4a00                              |001b: new-array v1, v2, [Ljava/lang/Thread; // type@004a
3502003146: 0103                                   |001d: move v3, v0
3503003148: 3523 1600                              |001e: if-ge v3, v2, 0034 // +0016
350400314c: 2204 2f00                              |0020: new-instance v4, Ljava/lang/Thread; // type@002f
3505003150: 2205 0e00                              |0022: new-instance v5, LTestInvokeCustomWithConcurrentThreads; // type@000e
3506003154: 7010 6400 0500                         |0024: invoke-direct {v5}, LTestInvokeCustomWithConcurrentThreads;.<init>:()V // method@0064
350700315a: 7020 cb00 5400                         |0027: invoke-direct {v4, v5}, Ljava/lang/Thread;.<init>:(Ljava/lang/Runnable;)V // method@00cb
3508003160: 4d04 0103                              |002a: aput-object v4, v1, v3
3509003164: 4604 0103                              |002c: aget-object v4, v1, v3
3510003168: 6e10 ce00 0400                         |002e: invoke-virtual {v4}, Ljava/lang/Thread;.start:()V // method@00ce
351100316e: d803 0301                              |0031: add-int/lit8 v3, v3, #int 1 // #01
3512003172: 28eb                                   |0033: goto 001e // -0015
3513003174: 0103                                   |0034: move v3, v0
3514003176: 3523 0a00                              |0035: if-ge v3, v2, 003f // +000a
351500317a: 4604 0103                              |0037: aget-object v4, v1, v3
351600317e: 6e10 cd00 0400                         |0039: invoke-virtual {v4}, Ljava/lang/Thread;.join:()V // method@00cd
3517003184: d803 0301                              |003c: add-int/lit8 v3, v3, #int 1 // #01
3518003188: 28f7                                   |003e: goto 0035 // -0009
351900318a: 1203                                   |003f: const/4 v3, #int 0 // #0
352000318c: 1204                                   |0040: const/4 v4, #int 0 // #0
352100318e: 0145                                   |0041: move v5, v4
3522003190: 0134                                   |0042: move v4, v3
3523003192: 0103                                   |0043: move v3, v0
3524003194: 3523 2200                              |0044: if-ge v3, v2, 0066 // +0022
3525003198: 6206 0700                              |0046: sget-object v6, LTestInvokeCustomWithConcurrentThreads;.instantiated:[Ljava/lang/invoke/CallSite; // field@0007
352600319c: 4606 0603                              |0048: aget-object v6, v6, v3
35270031a0: 1207                                   |004a: const/4 v7, #int 0 // #0
35280031a2: 7120 6800 7600                         |004b: invoke-static {v6, v7}, LTestInvokeCustomWithConcurrentThreads;.assertNotEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@0068
35290031a8: 6206 0600                              |004e: sget-object v6, LTestInvokeCustomWithConcurrentThreads;.called:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0006
35300031ac: 4606 0603                              |0050: aget-object v6, v6, v3
35310031b0: 6e10 f000 0600                         |0052: invoke-virtual {v6}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@00f0
35320031b6: 0a06                                   |0055: move-result v6
35330031b8: 3806 0d00                              |0056: if-eqz v6, 0063 // +000d
35340031bc: d804 0401                              |0058: add-int/lit8 v4, v4, #int 1 // #01
35350031c0: 6206 0600                              |005a: sget-object v6, LTestInvokeCustomWithConcurrentThreads;.called:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0006
35360031c4: 4606 0603                              |005c: aget-object v6, v6, v3
35370031c8: 6e10 f000 0600                         |005e: invoke-virtual {v6}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@00f0
35380031ce: 0a06                                   |0061: move-result v6
35390031d0: b065                                   |0062: add-int/2addr v5, v6
35400031d2: d803 0301                              |0063: add-int/lit8 v3, v3, #int 1 // #01
35410031d6: 28df                                   |0065: goto 0044 // -0021
35420031d8: 6203 1300                              |0066: sget-object v3, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
35430031dc: 2206 2d00                              |0068: new-instance v6, Ljava/lang/StringBuilder; // type@002d
35440031e0: 7010 c100 0600                         |006a: invoke-direct {v6}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
35450031e6: 1a07 b800                              |006d: const-string v7, "Winners " // string@00b8
35460031ea: 6e20 c800 7600                         |006f: invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
35470031f0: 6e20 c500 4600                         |0072: invoke-virtual {v6, v4}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5
35480031f6: 1a07 0500                              |0075: const-string v7, " Votes " // string@0005
35490031fa: 6e20 c800 7600                         |0077: invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
3550003200: 6e20 c500 5600                         |007a: invoke-virtual {v6, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5
3551003206: 6e10 ca00 0600                         |007d: invoke-virtual {v6}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
355200320c: 0c06                                   |0080: move-result-object v6
355300320e: 6e20 b300 6300                         |0081: invoke-virtual {v3, v6}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
3554003214: 1223                                   |0084: const/4 v3, #int 2 // #2
3555003216: 1216                                   |0085: const/4 v6, #int 1 // #1
3556003218: 3264 2c00                              |0086: if-eq v4, v6, 00b2 // +002c
355700321c: 6207 1300                              |0088: sget-object v7, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
3558003220: 1a08 9e00                              |008a: const-string v8, "Threads did not the same call-sites:" // string@009e
3559003224: 6e20 b300 8700                         |008c: invoke-virtual {v7, v8}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
356000322a: 0107                                   |008f: move v7, v0
356100322c: 3527 2200                              |0090: if-ge v7, v2, 00b2 // +0022
3562003230: 6208 1300                              |0092: sget-object v8, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
3563003234: 1a09 0400                              |0094: const-string v9, " Thread % 2d invoked call site instance #%02d
3564" // string@0004
3565003238: 233a 4800                              |0096: new-array v10, v3, [Ljava/lang/Object; // type@0048
356600323c: 7110 bd00 0700                         |0098: invoke-static {v7}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@00bd
3567003242: 0c0b                                   |009b: move-result-object v11
3568003244: 4d0b 0a00                              |009c: aput-object v11, v10, v0
3569003248: 620b 0900                              |009e: sget-object v11, LTestInvokeCustomWithConcurrentThreads;.targetted:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0009
357000324c: 460b 0b07                              |00a0: aget-object v11, v11, v7
3571003250: 6e10 f000 0b00                         |00a2: invoke-virtual {v11}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@00f0
3572003256: 0a0b                                   |00a5: move-result v11
3573003258: 7110 bd00 0b00                         |00a6: invoke-static {v11}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@00bd
357400325e: 0c0b                                   |00a9: move-result-object v11
3575003260: 4d0b 0a06                              |00aa: aput-object v11, v10, v6
3576003264: 6e30 ab00 980a                         |00ac: invoke-virtual {v8, v9, v10}, Ljava/io/PrintStream;.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream; // method@00ab
357700326a: d807 0701                              |00af: add-int/lit8 v7, v7, #int 1 // #01
357800326e: 28df                                   |00b1: goto 0090 // -0021
3579003270: 3225 2c00                              |00b2: if-eq v5, v2, 00de // +002c
3580003274: 6207 1300                              |00b4: sget-object v7, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
3581003278: 1a08 2000                              |00b6: const-string v8, "Call-sites invocations :" // string@0020
358200327c: 6e20 b300 8700                         |00b8: invoke-virtual {v7, v8}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
3583003282: 0107                                   |00bb: move v7, v0
3584003284: 3527 2200                              |00bc: if-ge v7, v2, 00de // +0022
3585003288: 6208 1300                              |00be: sget-object v8, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
358600328c: 1a09 0300                              |00c0: const-string v9, " Call site instance #%02d was invoked % 2d times
3587" // string@0003
3588003290: 233a 4800                              |00c2: new-array v10, v3, [Ljava/lang/Object; // type@0048
3589003294: 7110 bd00 0700                         |00c4: invoke-static {v7}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@00bd
359000329a: 0c0b                                   |00c7: move-result-object v11
359100329c: 4d0b 0a00                              |00c8: aput-object v11, v10, v0
35920032a0: 620b 0600                              |00ca: sget-object v11, LTestInvokeCustomWithConcurrentThreads;.called:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0006
35930032a4: 460b 0b07                              |00cc: aget-object v11, v11, v7
35940032a8: 6e10 f000 0b00                         |00ce: invoke-virtual {v11}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@00f0
35950032ae: 0a0b                                   |00d1: move-result v11
35960032b0: 7110 bd00 0b00                         |00d2: invoke-static {v11}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@00bd
35970032b6: 0c0b                                   |00d5: move-result-object v11
35980032b8: 4d0b 0a06                              |00d6: aput-object v11, v10, v6
35990032bc: 6e30 ab00 980a                         |00d8: invoke-virtual {v8, v9, v10}, Ljava/io/PrintStream;.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream; // method@00ab
36000032c2: d807 0701                              |00db: add-int/lit8 v7, v7, #int 1 // #01
36010032c6: 28df                                   |00dd: goto 00bc // -0021
36020032c8: 7120 6600 6400                         |00de: invoke-static {v4, v6}, LTestInvokeCustomWithConcurrentThreads;.assertEquals:(II)V // method@0066
36030032ce: 7120 6600 2500                         |00e1: invoke-static {v5, v2}, LTestInvokeCustomWithConcurrentThreads;.assertEquals:(II)V // method@0066
36040032d4: 0e00                                   |00e4: return-void
3605      catches       : (none)
3606      positions     :
3607        0x0000 line=107
3608        0x0006 line=108
3609        0x000f line=109
3610        0x0018 line=107
3611        0x001b line=113
3612        0x001d line=114
3613        0x0020 line=115
3614        0x002c line=116
3615        0x0031 line=114
3616        0x0034 line=120
3617        0x0037 line=121
3618        0x003c line=120
3619        0x003f line=125
3620        0x0040 line=126
3621        0x0041 line=127
3622        0x0046 line=128
3623        0x004e line=129
3624        0x0058 line=130
3625        0x005a line=131
3626        0x0063 line=127
3627        0x0066 line=135
3628        0x0084 line=139
3629        0x0088 line=140
3630        0x008f line=141
3631        0x0092 line=142
3632        0x0098 line=143
3633        0x00ac line=142
3634        0x00af line=141
3635        0x00b2 line=149
3636        0x00b4 line=150
3637        0x00bb line=151
3638        0x00be line=152
3639        0x00c4 line=153
3640        0x00d8 line=152
3641        0x00db line=151
3642        0x00de line=157
3643        0x00e1 line=158
3644        0x00e4 line=159
3645      locals        :
3646        0x0002 - 0x001b reg=1 i I
3647        0x001e - 0x0034 reg=3 i I
3648        0x0035 - 0x003f reg=3 i I
3649        0x0040 - 0x0044 reg=3 winners I
3650        0x0041 - 0x0044 reg=4 votes I
3651        0x0044 - 0x0066 reg=3 i I
3652        0x0090 - 0x00b2 reg=7 i I
3653        0x00bc - 0x00de reg=7 i I
3654        0x001d - 0x00e5 reg=1 threads [Ljava/lang/Thread;
3655        0x0044 - 0x00e5 reg=4 winners I
3656        0x0044 - 0x00e5 reg=5 votes I
3657
3658  Virtual methods   -
3659    #0              : (in LTestInvokeCustomWithConcurrentThreads;)
3660      name          : 'run'
3661      type          : '()V'
3662      access        : 0x0001 (PUBLIC)
3663      method_idx    : 108
3664      code          -
3665      registers     : 2
3666      ins           : 1
3667      outs          : 1
3668      insns size    : 9 16-bit code units
36690030d8:                                        |[0030d8] TestInvokeCustomWithConcurrentThreads.run:()V
36700030e8: 12f0                                   |0000: const/4 v0, #int -1 // #ff
36710030ea: fc10 1a00 0000                         |0001: invoke-custom {v0}, call_site@001a
36720030f0: 0a00                                   |0004: move-result v0
36730030f2: 7110 6b00 0000                         |0005: invoke-static {v0}, LTestInvokeCustomWithConcurrentThreads;.notUsed:(I)I // method@006b
36740030f8: 0e00                                   |0008: return-void
3675      catches       : (none)
3676      positions     :
3677        0x0000 line=63
3678        0x0005 line=64
3679        0x0008 line=65
3680      locals        :
3681        0x0005 - 0x0009 reg=0 x I
3682        0x0000 - 0x0009 reg=1 this LTestInvokeCustomWithConcurrentThreads;
3683
3684  source_file_idx   : 149 (TestInvokeCustomWithConcurrentThreads.java)
3685
3686Class #10 header:
3687class_idx           : 15
3688access_flags        : 1 (0x0001)
3689superclass_idx      : 9
3690interfaces_off      : 0 (0x000000)
3691source_file_idx     : 151
3692annotations_off     : 31180 (0x0079cc)
3693class_data_off      : 29403 (0x0072db)
3694static_fields_size  : 5
3695instance_fields_size: 0
3696direct_methods_size : 6
3697virtual_methods_size: 0
3698
3699Class #10 annotations:
3700Annotations on method #114 'add'
3701  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
3702Annotations on method #118 'linkerMethod'
3703  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
3704Annotations on method #119 'test'
3705  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
3706
3707Class #10            -
3708  Class descriptor  : 'LTestLinkerMethodMinimalArguments;'
3709  Access flags      : 0x0001 (PUBLIC)
3710  Superclass        : 'LTestBase;'
3711  Interfaces        -
3712  Static fields     -
3713    #0              : (in LTestLinkerMethodMinimalArguments;)
3714      name          : 'FAILURE_TYPE_LINKER_METHOD_RETURNS_NULL'
3715      type          : 'I'
3716      access        : 0x0018 (STATIC FINAL)
3717      value         : 1
3718    #1              : (in LTestLinkerMethodMinimalArguments;)
3719      name          : 'FAILURE_TYPE_LINKER_METHOD_THROWS'
3720      type          : 'I'
3721      access        : 0x0018 (STATIC FINAL)
3722      value         : 2
3723    #2              : (in LTestLinkerMethodMinimalArguments;)
3724      name          : 'FAILURE_TYPE_NONE'
3725      type          : 'I'
3726      access        : 0x0018 (STATIC FINAL)
3727      value         : 0
3728    #3              : (in LTestLinkerMethodMinimalArguments;)
3729      name          : 'FAILURE_TYPE_TARGET_METHOD_THROWS'
3730      type          : 'I'
3731      access        : 0x0018 (STATIC FINAL)
3732      value         : 3
3733    #4              : (in LTestLinkerMethodMinimalArguments;)
3734      name          : 'forceFailureType'
3735      type          : 'I'
3736      access        : 0x000a (PRIVATE STATIC)
3737  Instance fields   -
3738  Direct methods    -
3739    #0              : (in LTestLinkerMethodMinimalArguments;)
3740      name          : '<clinit>'
3741      type          : '()V'
3742      access        : 0x10008 (STATIC CONSTRUCTOR)
3743      method_idx    : 111
3744      code          -
3745      registers     : 1
3746      ins           : 0
3747      outs          : 0
3748      insns size    : 4 16-bit code units
3749003404:                                        |[003404] TestLinkerMethodMinimalArguments.<clinit>:()V
3750003414: 1200                                   |0000: const/4 v0, #int 0 // #0
3751003416: 6700 0f00                              |0001: sput v0, LTestLinkerMethodMinimalArguments;.forceFailureType:I // field@000f
375200341a: 0e00                                   |0003: return-void
3753      catches       : (none)
3754      positions     :
3755        0x0000 line=26
3756      locals        :
3757
3758    #1              : (in LTestLinkerMethodMinimalArguments;)
3759      name          : '<init>'
3760      type          : '()V'
3761      access        : 0x10001 (PUBLIC CONSTRUCTOR)
3762      method_idx    : 112
3763      code          -
3764      registers     : 1
3765      ins           : 1
3766      outs          : 1
3767      insns size    : 4 16-bit code units
376800341c:                                        |[00341c] TestLinkerMethodMinimalArguments.<init>:()V
376900342c: 7010 3200 0000                         |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032
3770003432: 0e00                                   |0003: return-void
3771      catches       : (none)
3772      positions     :
3773        0x0000 line=25
3774      locals        :
3775        0x0000 - 0x0004 reg=0 this LTestLinkerMethodMinimalArguments;
3776
3777    #2              : (in LTestLinkerMethodMinimalArguments;)
3778      name          : '_add'
3779      type          : '(II)I'
3780      access        : 0x0008 (STATIC)
3781      method_idx    : 113
3782      code          -
3783      registers     : 4
3784      ins           : 2
3785      outs          : 2
3786      insns size    : 23 16-bit code units
37870032d8:                                        |[0032d8] TestLinkerMethodMinimalArguments._add:(II)I
37880032e8: 6000 0f00                              |0000: sget v0, LTestLinkerMethodMinimalArguments;.forceFailureType:I // field@000f
37890032ec: 1231                                   |0002: const/4 v1, #int 3 // #3
37900032ee: 3210 0500                              |0003: if-eq v0, v1, 0008 // +0005
37910032f2: 9000 0203                              |0005: add-int v0, v2, v3
37920032f6: 0f00                                   |0007: return v0
37930032f8: 6200 1300                              |0008: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
37940032fc: 1a01 a000                              |000a: const-string v1, "Throwing ArithmeticException in add()" // string@00a0
3795003300: 6e20 b300 1000                         |000c: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
3796003306: 2200 1d00                              |000f: new-instance v0, Ljava/lang/ArithmeticException; // type@001d
379700330a: 1a01 cc00                              |0011: const-string v1, "add" // string@00cc
379800330e: 7020 b400 1000                         |0013: invoke-direct {v0, v1}, Ljava/lang/ArithmeticException;.<init>:(Ljava/lang/String;)V // method@00b4
3799003314: 2700                                   |0016: throw v0
3800      catches       : (none)
3801      positions     :
3802        0x0000 line=51
3803        0x0005 line=55
3804        0x0008 line=52
3805        0x000f line=53
3806      locals        :
3807        0x0000 - 0x0017 reg=2 a I
3808        0x0000 - 0x0017 reg=3 b I
3809
3810    #3              : (in LTestLinkerMethodMinimalArguments;)
3811      name          : 'add'
3812      type          : '(II)I'
3813      access        : 0x000a (PRIVATE STATIC)
3814      method_idx    : 114
3815      code          -
3816      registers     : 3
3817      ins           : 2
3818      outs          : 0
3819      insns size    : 5 16-bit code units
3820003318:                                        |[003318] TestLinkerMethodMinimalArguments.add:(II)I
3821003328: 7100 7400 0000                         |0000: invoke-static {}, LTestLinkerMethodMinimalArguments;.assertNotReached:()V // method@0074
382200332e: 12f0                                   |0003: const/4 v0, #int -1 // #ff
3823003330: 0f00                                   |0004: return v0
3824      catches       : (none)
3825      positions     :
3826        0x0000 line=45
3827        0x0003 line=46
3828      locals        :
3829        0x0000 - 0x0005 reg=1 a I
3830        0x0000 - 0x0005 reg=2 b I
3831
3832    #4              : (in LTestLinkerMethodMinimalArguments;)
3833      name          : 'linkerMethod'
3834      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;'
3835      access        : 0x000a (PRIVATE STATIC)
3836      method_idx    : 118
3837      code          -
3838      registers     : 7
3839      ins           : 3
3840      outs          : 4
3841      insns size    : 96 16-bit code units
3842003334:                                        |[003334] TestLinkerMethodMinimalArguments.linkerMethod:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
3843003344: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
3844003348: 2201 2d00                              |0002: new-instance v1, Ljava/lang/StringBuilder; // type@002d
384500334c: 7010 c100 0100                         |0004: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
3846003352: 1a02 6701                              |0007: const-string v2, "linkerMethod failure type " // string@0167
3847003356: 6e20 c800 2100                         |0009: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
384800335c: 6002 0f00                              |000c: sget v2, LTestLinkerMethodMinimalArguments;.forceFailureType:I // field@000f
3849003360: 6e20 c500 2100                         |000e: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5
3850003366: 6e10 ca00 0100                         |0011: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
385100336c: 0c01                                   |0014: move-result-object v1
385200336e: 6e20 b300 1000                         |0015: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
3853003374: 1c00 0f00                              |0018: const-class v0, LTestLinkerMethodMinimalArguments; // type@000f
3854003378: 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
385500337e: 0c00                                   |001d: move-result-object v0
3856003380: 6001 0f00                              |001e: sget v1, LTestLinkerMethodMinimalArguments;.forceFailureType:I // field@000f
3857003384: 2b01 3800 0000                         |0020: packed-switch v1, 00000058 // +00000038
385800338a: 2201 3400                              |0023: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
385900338e: 7020 d200 0100                         |0025: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
3860003394: 1101                                   |0028: return-object v1
3861003396: 6201 1300                              |0029: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
386200339a: 1a02 a100                              |002b: const-string v2, "Throwing InstantiationException in linkerMethod()" // string@00a1
386300339e: 6e20 b300 2100                         |002d: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
38640033a4: 2201 2600                              |0030: new-instance v1, Ljava/lang/InstantiationException; // type@0026
38650033a8: 1a02 6601                              |0032: const-string v2, "linkerMethod" // string@0166
38660033ac: 7020 bb00 2100                         |0034: invoke-direct {v1, v2}, Ljava/lang/InstantiationException;.<init>:(Ljava/lang/String;)V // method@00bb
38670033b2: 2701                                   |0037: throw v1
38680033b4: 6201 1300                              |0038: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
38690033b8: 2202 2d00                              |003a: new-instance v2, Ljava/lang/StringBuilder; // type@002d
38700033bc: 7010 c100 0200                         |003c: invoke-direct {v2}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
38710033c2: 1a03 8c00                              |003f: const-string v3, "Returning null instead of CallSite for " // string@008c
38720033c6: 6e20 c800 3200                         |0041: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
38730033cc: 6e20 c800 5200                         |0044: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
38740033d2: 1a03 0000                              |0047: const-string v3, " " // string@0000
38750033d6: 6e20 c800 3200                         |0049: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
38760033dc: 6e20 c700 6200                         |004c: invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@00c7
38770033e2: 6e10 ca00 0200                         |004f: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
38780033e8: 0c02                                   |0052: move-result-object v2
38790033ea: 6e20 b300 2100                         |0053: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
38800033f0: 1201                                   |0056: const/4 v1, #int 0 // #0
38810033f2: 1101                                   |0057: return-object v1
38820033f4: 0001 0200 0100 0000 1800 0000 0900 ... |0058: packed-switch-data (8 units)
3883      catches       : (none)
3884      positions     :
3885        0x0000 line=61
3886        0x0018 line=62
3887        0x001a line=63
3888        0x001e line=64
3889        0x0023 line=73
3890        0x0029 line=70
3891        0x0030 line=71
3892        0x0038 line=66
3893        0x0056 line=68
3894      locals        :
3895        0x001e - 0x0060 reg=0 mh_add Ljava/lang/invoke/MethodHandle;
3896        0x0000 - 0x0060 reg=4 caller Ljava/lang/invoke/MethodHandles$Lookup;
3897        0x0000 - 0x0060 reg=5 name Ljava/lang/String;
3898        0x0000 - 0x0060 reg=6 methodType Ljava/lang/invoke/MethodType;
3899
3900    #5              : (in LTestLinkerMethodMinimalArguments;)
3901      name          : 'test'
3902      type          : '(III)V'
3903      access        : 0x0009 (PUBLIC STATIC)
3904      method_idx    : 119
3905      code          -
3906      registers     : 6
3907      ins           : 3
3908      outs          : 2
3909      insns size    : 68 16-bit code units
3910003434:                                        |[003434] TestLinkerMethodMinimalArguments.test:(III)V
3911003444: 1200                                   |0000: const/4 v0, #int 0 // #0
3912003446: 1211                                   |0001: const/4 v1, #int 1 // #1
3913003448: 3a03 0400                              |0002: if-ltz v3, 0006 // +0004
391400344c: 0112                                   |0004: move v2, v1
391500344e: 2802                                   |0005: goto 0007 // +0002
3916003450: 0102                                   |0006: move v2, v0
3917003452: 7110 7500 0200                         |0007: invoke-static {v2}, LTestLinkerMethodMinimalArguments;.assertTrue:(Z)V // method@0075
3918003458: 1232                                   |000a: const/4 v2, #int 3 // #3
391900345a: 3623 0400                              |000b: if-gt v3, v2, 000f // +0004
392000345e: 0110                                   |000d: move v0, v1
3921003460: 0000                                   |000e: nop // spacer
3922003462: 7110 7500 0000                         |000f: invoke-static {v0}, LTestLinkerMethodMinimalArguments;.assertTrue:(Z)V // method@0075
3923003468: 6703 0f00                              |0012: sput v3, LTestLinkerMethodMinimalArguments;.forceFailureType:I // field@000f
392400346c: 9000 0405                              |0014: add-int v0, v4, v5
3925003470: fc20 1b00 5400                         |0016: invoke-custom {v4, v5}, call_site@001b
3926003476: 0a01                                   |0019: move-result v1
3927003478: 7120 7300 1000                         |001a: invoke-static {v0, v1}, LTestLinkerMethodMinimalArguments;.assertEquals:(II)V // method@0073
392800347e: 6200 1300                              |001d: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
3929003482: 2201 2d00                              |001f: new-instance v1, Ljava/lang/StringBuilder; // type@002d
3930003486: 7010 c100 0100                         |0021: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
393100348c: 1a02 2a00                              |0024: const-string v2, "Failure Type + " // string@002a
3932003490: 6e20 c800 2100                         |0026: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
3933003496: 6e20 c500 3100                         |0029: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5
393400349c: 1a02 0100                              |002c: const-string v2, " (" // string@0001
39350034a0: 6e20 c800 2100                         |002e: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
39360034a6: 6e20 c500 4100                         |0031: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5
39370034ac: 6e20 c500 5100                         |0034: invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5
39380034b2: 1a02 0700                              |0037: const-string v2, ")" // string@0007
39390034b6: 6e20 c800 2100                         |0039: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
39400034bc: 6e10 ca00 0100                         |003c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
39410034c2: 0c01                                   |003f: move-result-object v1
39420034c4: 6e20 b300 1000                         |0040: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
39430034ca: 0e00                                   |0043: return-void
3944      catches       : (none)
3945      positions     :
3946        0x0000 line=78
3947        0x000a line=79
3948        0x0012 line=80
3949        0x0014 line=81
3950        0x001d line=82
3951        0x0043 line=83
3952      locals        :
3953        0x0000 - 0x0044 reg=3 failureType I
3954        0x0000 - 0x0044 reg=4 x I
3955        0x0000 - 0x0044 reg=5 y I
3956
3957  Virtual methods   -
3958  source_file_idx   : 151 (TestLinkerMethodMinimalArguments.java)
3959
3960Class #11 header:
3961class_idx           : 16
3962access_flags        : 1 (0x0001)
3963superclass_idx      : 9
3964interfaces_off      : 0 (0x000000)
3965source_file_idx     : 153
3966annotations_off     : 31220 (0x0079f4)
3967class_data_off      : 29445 (0x007305)
3968static_fields_size  : 1
3969instance_fields_size: 0
3970direct_methods_size : 6
3971virtual_methods_size: 1
3972
3973Class #11 annotations:
3974Annotations on method #124 'add'
3975  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
3976Annotations on method #131 'linkerMethod'
3977  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;" }
3978  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
3979Annotations on method #132 'test'
3980  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
3981
3982Class #11            -
3983  Class descriptor  : 'LTestLinkerMethodMultipleArgumentTypes;'
3984  Access flags      : 0x0001 (PUBLIC)
3985  Superclass        : 'LTestBase;'
3986  Interfaces        -
3987  Static fields     -
3988    #0              : (in LTestLinkerMethodMultipleArgumentTypes;)
3989      name          : 'bootstrapRunCount'
3990      type          : 'I'
3991      access        : 0x000a (PRIVATE STATIC)
3992  Instance fields   -
3993  Direct methods    -
3994    #0              : (in LTestLinkerMethodMultipleArgumentTypes;)
3995      name          : '<clinit>'
3996      type          : '()V'
3997      access        : 0x10008 (STATIC CONSTRUCTOR)
3998      method_idx    : 120
3999      code          -
4000      registers     : 1
4001      ins           : 0
4002      outs          : 0
4003      insns size    : 4 16-bit code units
4004003618:                                        |[003618] TestLinkerMethodMultipleArgumentTypes.<clinit>:()V
4005003628: 1200                                   |0000: const/4 v0, #int 0 // #0
400600362a: 6700 1000                              |0001: sput v0, LTestLinkerMethodMultipleArgumentTypes;.bootstrapRunCount:I // field@0010
400700362e: 0e00                                   |0003: return-void
4008      catches       : (none)
4009      positions     :
4010        0x0000 line=28
4011      locals        :
4012
4013    #1              : (in LTestLinkerMethodMultipleArgumentTypes;)
4014      name          : '<init>'
4015      type          : '()V'
4016      access        : 0x10001 (PUBLIC CONSTRUCTOR)
4017      method_idx    : 121
4018      code          -
4019      registers     : 1
4020      ins           : 1
4021      outs          : 1
4022      insns size    : 4 16-bit code units
4023003630:                                        |[003630] TestLinkerMethodMultipleArgumentTypes.<init>:()V
4024003640: 7010 3200 0000                         |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032
4025003646: 0e00                                   |0003: return-void
4026      catches       : (none)
4027      positions     :
4028        0x0000 line=26
4029      locals        :
4030        0x0000 - 0x0004 reg=0 this LTestLinkerMethodMultipleArgumentTypes;
4031
4032    #2              : (in LTestLinkerMethodMultipleArgumentTypes;)
4033      name          : '_add'
4034      type          : '(II)I'
4035      access        : 0x000a (PRIVATE STATIC)
4036      method_idx    : 123
4037      code          -
4038      registers     : 3
4039      ins           : 2
4040      outs          : 0
4041      insns size    : 3 16-bit code units
40420034e4:                                        |[0034e4] TestLinkerMethodMultipleArgumentTypes._add:(II)I
40430034f4: 9000 0102                              |0000: add-int v0, v1, v2
40440034f8: 0f00                                   |0002: return v0
4045      catches       : (none)
4046      positions     :
4047        0x0000 line=74
4048      locals        :
4049        0x0000 - 0x0003 reg=1 a I
4050        0x0000 - 0x0003 reg=2 b I
4051
4052    #3              : (in LTestLinkerMethodMultipleArgumentTypes;)
4053      name          : 'add'
4054      type          : '(II)I'
4055      access        : 0x000a (PRIVATE STATIC)
4056      method_idx    : 124
4057      code          -
4058      registers     : 3
4059      ins           : 2
4060      outs          : 0
4061      insns size    : 5 16-bit code units
40620034fc:                                        |[0034fc] TestLinkerMethodMultipleArgumentTypes.add:(II)I
406300350c: 7100 8200 0000                         |0000: invoke-static {}, LTestLinkerMethodMultipleArgumentTypes;.assertNotReached:()V // method@0082
4064003512: 12f0                                   |0003: const/4 v0, #int -1 // #ff
4065003514: 0f00                                   |0004: return v0
4066      catches       : (none)
4067      positions     :
4068        0x0000 line=68
4069        0x0003 line=69
4070      locals        :
4071        0x0000 - 0x0005 reg=1 a I
4072        0x0000 - 0x0005 reg=2 b I
4073
4074    #4              : (in LTestLinkerMethodMultipleArgumentTypes;)
4075      name          : 'linkerMethod'
4076      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;IIIIIFDLjava/lang/String;Ljava/lang/Class;J)Ljava/lang/invoke/CallSite;'
4077      access        : 0x000a (PRIVATE STATIC)
4078      method_idx    : 131
4079      code          -
4080      registers     : 31
4081      ins           : 15
4082      outs          : 4
4083      insns size    : 119 16-bit code units
4084003518:                                        |[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;
4085003528: 0800 1100                              |0000: move-object/from16 v0, v17
408600352c: 0801 1200                              |0002: move-object/from16 v1, v18
4087003530: 6202 1300                              |0004: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
4088003534: 2203 2d00                              |0006: new-instance v3, Ljava/lang/StringBuilder; // type@002d
4089003538: 7010 c100 0300                         |0008: invoke-direct {v3}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
409000353e: 1a04 6100                              |000b: const-string v4, "Linking " // string@0061
4091003542: 6e20 c800 4300                         |000d: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
4092003548: 6e20 c800 0300                         |0010: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
409300354e: 1a04 0000                              |0013: const-string v4, " " // string@0000
4094003552: 6e20 c800 4300                         |0015: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
4095003558: 6e20 c700 1300                         |0018: invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@00c7
409600355e: 6e10 ca00 0300                         |001b: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
4097003564: 0c03                                   |001e: move-result-object v3
4098003566: 6e20 b300 3200                         |001f: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
409900356c: 12f2                                   |0022: const/4 v2, #int -1 // #ff
410000356e: 0203 1300                              |0023: move/from16 v3, v19
4101003572: 7120 7f00 3200                         |0025: invoke-static {v2, v3}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(II)V // method@007f
4102003578: 1212                                   |0028: const/4 v2, #int 1 // #1
410300357a: 0204 1400                              |0029: move/from16 v4, v20
410400357e: 7120 7f00 4200                         |002b: invoke-static {v2, v4}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(II)V // method@007f
4105003584: 1305 6100                              |002e: const/16 v5, #int 97 // #61
4106003588: 0206 1500                              |0030: move/from16 v6, v21
410700358c: 7120 7f00 6500                         |0032: invoke-static {v5, v6}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(II)V // method@007f
4108003592: 1305 0004                              |0035: const/16 v5, #int 1024 // #400
4109003596: 0207 1600                              |0037: move/from16 v7, v22
411000359a: 7120 7f00 7500                         |0039: invoke-static {v5, v7}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(II)V // method@007f
41110035a0: 0205 1700                              |003c: move/from16 v5, v23
41120035a4: 7120 7f00 5200                         |003e: invoke-static {v2, v5}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(II)V // method@007f
41130035aa: 1402 9a99 3141                         |0041: const v2, #float 11.1 // #4131999a
41140035b0: 0208 1800                              |0044: move/from16 v8, v24
41150035b4: 7120 7e00 8200                         |0046: invoke-static {v2, v8}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(FF)V // method@007e
41160035ba: 1809 9a99 9999 9999 0140               |0049: const-wide v9, #double 2.2 // #400199999999999a
41170035c4: 050b 1900                              |004e: move-wide/from16 v11, v25
41180035c8: 7140 7d00 a9cb                         |0050: invoke-static {v9, v10, v11, v12}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(DD)V // method@007d
41190035ce: 1a02 2c00                              |0053: const-string v2, "Hello" // string@002c
41200035d2: 0809 1b00                              |0055: move-object/from16 v9, v27
41210035d6: 7120 8100 9200                         |0057: invoke-static {v2, v9}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@0081
41220035dc: 1c02 1000                              |005a: const-class v2, LTestLinkerMethodMultipleArgumentTypes; // type@0010
41230035e0: 080a 1c00                              |005c: move-object/from16 v10, v28
41240035e4: 7120 8100 a200                         |005e: invoke-static {v2, v10}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@0081
41250035ea: 170d 15cd 5b07                         |0061: const-wide/32 v13, #float 1.6536e-34 // #075bcd15
41260035f0: 0502 1d00                              |0064: move-wide/from16 v2, v29
41270035f4: 7140 8000 ed32                         |0066: invoke-static {v13, v14, v2, v3}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(JJ)V // method@0080
41280035fa: 1c0d 1000                              |0069: const-class v13, LTestLinkerMethodMultipleArgumentTypes; // type@0010
41290035fe: 080e 1000                              |006b: move-object/from16 v14, v16
4130003602: 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
4131003608: 0c0d                                   |0070: move-result-object v13
413200360a: 220f 3400                              |0071: new-instance v15, Ljava/lang/invoke/ConstantCallSite; // type@0034
413300360e: 7020 d200 df00                         |0073: invoke-direct {v15, v13}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
4134003614: 110f                                   |0076: return-object v15
4135      catches       : (none)
4136      positions     :
4137        0x0000 line=93
4138        0x0022 line=94
4139        0x0028 line=95
4140        0x002e line=96
4141        0x0035 line=97
4142        0x003c line=98
4143        0x0041 line=99
4144        0x0049 line=100
4145        0x0053 line=101
4146        0x005a line=102
4147        0x0061 line=103
4148        0x0069 line=104
4149        0x006b line=105
4150        0x0071 line=106
4151      locals        :
4152        0x0000 - 0x0000 reg=28 (null) Ljava/lang/Class;
4153        0x0071 - 0x0077 reg=13 mh_add Ljava/lang/invoke/MethodHandle;
4154        0x0000 - 0x0077 reg=16 caller Ljava/lang/invoke/MethodHandles$Lookup;
4155        0x0000 - 0x0077 reg=17 name Ljava/lang/String;
4156        0x0000 - 0x0077 reg=18 methodType Ljava/lang/invoke/MethodType;
4157        0x0000 - 0x0077 reg=19 v1 I
4158        0x0000 - 0x0077 reg=20 v2 I
4159        0x0000 - 0x0077 reg=21 v3 I
4160        0x0000 - 0x0077 reg=22 v4 I
4161        0x0000 - 0x0077 reg=23 v5 I
4162        0x0000 - 0x0077 reg=24 v6 F
4163        0x0000 - 0x0077 reg=25 v7 D
4164        0x0000 - 0x0077 reg=27 v8 Ljava/lang/String;
4165        0x0000 - 0x0077 reg=28 v9 Ljava/lang/Class; Ljava/lang/Class<*>;
4166        0x0000 - 0x0077 reg=29 v10 J
4167
4168    #5              : (in LTestLinkerMethodMultipleArgumentTypes;)
4169      name          : 'test'
4170      type          : '(II)V'
4171      access        : 0x0009 (PUBLIC STATIC)
4172      method_idx    : 132
4173      code          -
4174      registers     : 4
4175      ins           : 2
4176      outs          : 2
4177      insns size    : 17 16-bit code units
4178003648:                                        |[003648] TestLinkerMethodMultipleArgumentTypes.test:(II)V
4179003658: 9000 0203                              |0000: add-int v0, v2, v3
418000365c: fc20 1c00 3200                         |0002: invoke-custom {v2, v3}, call_site@001c
4181003662: 0a01                                   |0005: move-result v1
4182003664: 7120 7f00 1000                         |0006: invoke-static {v0, v1}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(II)V // method@007f
418300366a: 6200 1300                              |0009: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
418400366e: 9001 0203                              |000b: add-int v1, v2, v3
4185003672: 6e20 b100 1000                         |000d: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(I)V // method@00b1
4186003678: 0e00                                   |0010: return-void
4187      catches       : (none)
4188      positions     :
4189        0x0000 line=114
4190        0x0009 line=115
4191        0x0010 line=116
4192      locals        :
4193        0x0000 - 0x0011 reg=2 x I
4194        0x0000 - 0x0011 reg=3 y I
4195
4196  Virtual methods   -
4197    #0              : (in LTestLinkerMethodMultipleArgumentTypes;)
4198      name          : 'GetBootstrapRunCount'
4199      type          : '()I'
4200      access        : 0x0001 (PUBLIC)
4201      method_idx    : 122
4202      code          -
4203      registers     : 2
4204      ins           : 1
4205      outs          : 0
4206      insns size    : 3 16-bit code units
42070034cc:                                        |[0034cc] TestLinkerMethodMultipleArgumentTypes.GetBootstrapRunCount:()I
42080034dc: 6000 1000                              |0000: sget v0, LTestLinkerMethodMultipleArgumentTypes;.bootstrapRunCount:I // field@0010
42090034e0: 0f00                                   |0002: return v0
4210      catches       : (none)
4211      positions     :
4212        0x0000 line=110
4213      locals        :
4214        0x0000 - 0x0003 reg=1 this LTestLinkerMethodMultipleArgumentTypes;
4215
4216  source_file_idx   : 153 (TestLinkerMethodMultipleArgumentTypes.java)
4217
4218Class #12 header:
4219class_idx           : 17
4220access_flags        : 0 (0x0000)
4221superclass_idx      : 9
4222interfaces_off      : 0 (0x000000)
4223source_file_idx     : 154
4224annotations_off     : 31260 (0x007a1c)
4225class_data_off      : 29483 (0x00732b)
4226static_fields_size  : 0
4227instance_fields_size: 0
4228direct_methods_size : 6
4229virtual_methods_size: 0
4230
4231Class #12 annotations:
4232Annotations on method #136 'addf'
4233  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
4234Annotations on method #139 'subf'
4235  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
4236
4237Class #12            -
4238  Class descriptor  : 'LTestLinkerUnrelatedBSM;'
4239  Access flags      : 0x0000 ()
4240  Superclass        : 'LTestBase;'
4241  Interfaces        -
4242  Static fields     -
4243  Instance fields   -
4244  Direct methods    -
4245    #0              : (in LTestLinkerUnrelatedBSM;)
4246      name          : '<init>'
4247      type          : '()V'
4248      access        : 0x10000 (CONSTRUCTOR)
4249      method_idx    : 133
4250      code          -
4251      registers     : 1
4252      ins           : 1
4253      outs          : 1
4254      insns size    : 4 16-bit code units
42550036e4:                                        |[0036e4] TestLinkerUnrelatedBSM.<init>:()V
42560036f4: 7010 3200 0000                         |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032
42570036fa: 0e00                                   |0003: return-void
4258      catches       : (none)
4259      positions     :
4260        0x0000 line=23
4261      locals        :
4262        0x0000 - 0x0004 reg=0 this LTestLinkerUnrelatedBSM;
4263
4264    #1              : (in LTestLinkerUnrelatedBSM;)
4265      name          : '_addf'
4266      type          : '(FF)F'
4267      access        : 0x0009 (PUBLIC STATIC)
4268      method_idx    : 134
4269      code          -
4270      registers     : 3
4271      ins           : 2
4272      outs          : 0
4273      insns size    : 3 16-bit code units
427400367c:                                        |[00367c] TestLinkerUnrelatedBSM._addf:(FF)F
427500368c: a600 0102                              |0000: add-float v0, v1, v2
4276003690: 0f00                                   |0002: return v0
4277      catches       : (none)
4278      positions     :
4279        0x0000 line=47
4280      locals        :
4281        0x0000 - 0x0003 reg=1 a F
4282        0x0000 - 0x0003 reg=2 b F
4283
4284    #2              : (in LTestLinkerUnrelatedBSM;)
4285      name          : '_subf'
4286      type          : '(FF)F'
4287      access        : 0x000a (PRIVATE STATIC)
4288      method_idx    : 135
4289      code          -
4290      registers     : 3
4291      ins           : 2
4292      outs          : 0
4293      insns size    : 3 16-bit code units
4294003694:                                        |[003694] TestLinkerUnrelatedBSM._subf:(FF)F
42950036a4: a700 0102                              |0000: sub-float v0, v1, v2
42960036a8: 0f00                                   |0002: return v0
4297      catches       : (none)
4298      positions     :
4299        0x0000 line=73
4300      locals        :
4301        0x0000 - 0x0003 reg=1 a F
4302        0x0000 - 0x0003 reg=2 b F
4303
4304    #3              : (in LTestLinkerUnrelatedBSM;)
4305      name          : 'addf'
4306      type          : '(FF)F'
4307      access        : 0x000a (PRIVATE STATIC)
4308      method_idx    : 136
4309      code          -
4310      registers     : 3
4311      ins           : 2
4312      outs          : 0
4313      insns size    : 5 16-bit code units
43140036ac:                                        |[0036ac] TestLinkerUnrelatedBSM.addf:(FF)F
43150036bc: 7100 8a00 0000                         |0000: invoke-static {}, LTestLinkerUnrelatedBSM;.assertNotReached:()V // method@008a
43160036c2: 1210                                   |0003: const/4 v0, #int 1 // #1
43170036c4: 0f00                                   |0004: return v0
4318      catches       : (none)
4319      positions     :
4320        0x0000 line=42
4321        0x0003 line=43
4322      locals        :
4323        0x0000 - 0x0005 reg=1 a F
4324        0x0000 - 0x0005 reg=2 b F
4325
4326    #4              : (in LTestLinkerUnrelatedBSM;)
4327      name          : 'subf'
4328      type          : '(FF)F'
4329      access        : 0x000a (PRIVATE STATIC)
4330      method_idx    : 139
4331      code          -
4332      registers     : 3
4333      ins           : 2
4334      outs          : 0
4335      insns size    : 5 16-bit code units
43360036c8:                                        |[0036c8] TestLinkerUnrelatedBSM.subf:(FF)F
43370036d8: 7100 8a00 0000                         |0000: invoke-static {}, LTestLinkerUnrelatedBSM;.assertNotReached:()V // method@008a
43380036de: 1210                                   |0003: const/4 v0, #int 1 // #1
43390036e0: 0f00                                   |0004: return v0
4340      catches       : (none)
4341      positions     :
4342        0x0000 line=68
4343        0x0003 line=69
4344      locals        :
4345        0x0000 - 0x0005 reg=1 a F
4346        0x0000 - 0x0005 reg=2 b F
4347
4348    #5              : (in LTestLinkerUnrelatedBSM;)
4349      name          : 'test'
4350      type          : '()V'
4351      access        : 0x0009 (PUBLIC STATIC)
4352      method_idx    : 140
4353      code          -
4354      registers     : 4
4355      ins           : 0
4356      outs          : 2
4357      insns size    : 34 16-bit code units
43580036fc:                                        |[0036fc] TestLinkerUnrelatedBSM.test:()V
435900370c: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
4360003710: 1c01 1100                              |0002: const-class v1, LTestLinkerUnrelatedBSM; // type@0011
4361003714: 6e10 b700 0100                         |0004: invoke-virtual {v1}, Ljava/lang/Class;.getName:()Ljava/lang/String; // method@00b7
436200371a: 0c01                                   |0007: move-result-object v1
436300371c: 6e20 b300 1000                         |0008: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
4364003722: 1500 003f                              |000b: const/high16 v0, #int 1056964608 // #3f00
4365003726: 1501 0040                              |000d: const/high16 v1, #int 1073741824 // #4000
436600372a: fc20 1d00 0100                         |000f: invoke-custom {v1, v0}, call_site@001d
4367003730: 0a02                                   |0012: move-result v2
4368003732: 1503 2040                              |0013: const/high16 v3, #int 1075838976 // #4020
4369003736: 7120 8900 2300                         |0015: invoke-static {v3, v2}, LTestLinkerUnrelatedBSM;.assertEquals:(FF)V // method@0089
437000373c: fc20 1e00 0100                         |0018: invoke-custom {v1, v0}, call_site@001e
4371003742: 0a00                                   |001b: move-result v0
4372003744: 1501 c03f                              |001c: const/high16 v1, #int 1069547520 // #3fc0
4373003748: 7120 8900 0100                         |001e: invoke-static {v1, v0}, LTestLinkerUnrelatedBSM;.assertEquals:(FF)V // method@0089
437400374e: 0e00                                   |0021: return-void
4375      catches       : (none)
4376      positions     :
4377        0x0000 line=77
4378        0x000b line=78
4379        0x0018 line=79
4380        0x0021 line=80
4381      locals        :
4382
4383  Virtual methods   -
4384  source_file_idx   : 154 (TestLinkerUnrelatedBSM.java)
4385
4386Class #13 header:
4387class_idx           : 18
4388access_flags        : 1 (0x0001)
4389superclass_idx      : 9
4390interfaces_off      : 0 (0x000000)
4391source_file_idx     : 156
4392annotations_off     : 31292 (0x007a3c)
4393class_data_off      : 29514 (0x00734a)
4394static_fields_size  : 0
4395instance_fields_size: 0
4396direct_methods_size : 27
4397virtual_methods_size: 0
4398
4399Class #13 annotations:
4400Annotations on method #143 'bsmWithBoxedArray'
4401  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
4402Annotations on method #144 'bsmWithClassAndFloatArray'
4403  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;" }
4404  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
4405Annotations on method #145 'bsmWithClassArray'
4406  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
4407Annotations on method #146 'bsmWithDoubleArray'
4408  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
4409Annotations on method #147 'bsmWithFloatAndLongArray'
4410  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
4411Annotations on method #148 'bsmWithIntAndStringArray'
4412  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
4413Annotations on method #149 'bsmWithLongAndIntArray'
4414  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
4415Annotations on method #150 'bsmWithStringArray'
4416  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
4417Annotations on method #151 'bsmWithWiderArray'
4418  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
4419Annotations on method #152 'methodA'
4420  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"
4421Annotations on method #153 'methodB'
4422  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"
4423Annotations on method #154 'methodC'
4424  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"
4425Annotations on method #155 'methodD'
4426  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"
4427Annotations on method #156 'methodE'
4428  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"
4429Annotations on method #157 'methodF'
4430  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"
4431Annotations on method #158 'methodG'
4432  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"
4433Annotations on method #159 'methodH'
4434  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"
4435Annotations on method #160 'methodI'
4436  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"
4437Annotations on method #161 'methodJ'
4438  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"
4439Annotations on method #162 'methodK'
4440  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"
4441Annotations on method #163 'methodO'
4442  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"
4443Annotations on method #164 'methodP'
4444  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"
4445Annotations on method #165 'methodQ'
4446  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"
4447Annotations on method #166 'methodR'
4448  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"
4449
4450Class #13            -
4451  Class descriptor  : 'LTestVariableArityLinkerMethod;'
4452  Access flags      : 0x0001 (PUBLIC)
4453  Superclass        : 'LTestBase;'
4454  Interfaces        -
4455  Static fields     -
4456  Instance fields   -
4457  Direct methods    -
4458    #0              : (in LTestVariableArityLinkerMethod;)
4459      name          : '<init>'
4460      type          : '()V'
4461      access        : 0x10001 (PUBLIC CONSTRUCTOR)
4462      method_idx    : 141
4463      code          -
4464      registers     : 1
4465      ins           : 1
4466      outs          : 1
4467      insns size    : 4 16-bit code units
4468003a7c:                                        |[003a7c] TestVariableArityLinkerMethod.<init>:()V
4469003a8c: 7010 3200 0000                         |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032
4470003a92: 0e00                                   |0003: return-void
4471      catches       : (none)
4472      positions     :
4473        0x0000 line=27
4474      locals        :
4475        0x0000 - 0x0004 reg=0 this LTestVariableArityLinkerMethod;
4476
4477    #1              : (in LTestVariableArityLinkerMethod;)
4478      name          : 'bsmWithBoxedArray'
4479      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Integer;)Ljava/lang/invoke/CallSite;'
4480      access        : 0x000a (PRIVATE STATIC)
4481      method_idx    : 143
4482      code          -
4483      registers     : 7
4484      ins           : 4
4485      outs          : 4
4486      insns size    : 34 16-bit code units
4487003750:                                        |[003750] TestVariableArityLinkerMethod.bsmWithBoxedArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Integer;)Ljava/lang/invoke/CallSite;
4488003760: 1a00 f800                              |0000: const-string v0, "bsmWithBoxedArray" // string@00f8
4489003764: 1241                                   |0002: const/4 v1, #int 4 // #4
4490003766: 2311 4800                              |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048
449100376a: 1202                                   |0005: const/4 v2, #int 0 // #0
449200376c: 4d03 0102                              |0006: aput-object v3, v1, v2
4493003770: 1212                                   |0008: const/4 v2, #int 1 // #1
4494003772: 4d04 0102                              |0009: aput-object v4, v1, v2
4495003776: 1222                                   |000b: const/4 v2, #int 2 // #2
4496003778: 4d05 0102                              |000c: aput-object v5, v1, v2
449700377c: 1232                                   |000e: const/4 v2, #int 3 // #3
449800377e: 4d06 0102                              |000f: aput-object v6, v1, v2
4499003782: 7120 a700 1000                         |0011: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7
4500003788: 6e10 dc00 0300                         |0014: invoke-virtual {v3}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
450100378e: 0c00                                   |0017: move-result-object v0
4502003790: 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
4503003796: 0c00                                   |001b: move-result-object v0
4504003798: 2201 3400                              |001c: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
450500379c: 7020 d200 0100                         |001e: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
45060037a2: 1101                                   |0021: return-object v1
4507      catches       : (none)
4508      positions     :
4509        0x0000 line=477
4510        0x0014 line=478
4511        0x001c line=479
4512      locals        :
4513        0x001c - 0x0022 reg=0 mh Ljava/lang/invoke/MethodHandle;
4514        0x0000 - 0x0022 reg=3 lookup Ljava/lang/invoke/MethodHandles$Lookup;
4515        0x0000 - 0x0022 reg=4 methodName Ljava/lang/String;
4516        0x0000 - 0x0022 reg=5 methodType Ljava/lang/invoke/MethodType;
4517        0x0000 - 0x0022 reg=6 extraArgs [Ljava/lang/Integer;
4518
4519    #2              : (in LTestVariableArityLinkerMethod;)
4520      name          : 'bsmWithClassAndFloatArray'
4521      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;[F)Ljava/lang/invoke/CallSite;'
4522      access        : 0x008a (PRIVATE STATIC VARARGS)
4523      method_idx    : 144
4524      code          -
4525      registers     : 8
4526      ins           : 5
4527      outs          : 4
4528      insns size    : 37 16-bit code units
45290037a4:                                        |[0037a4] TestVariableArityLinkerMethod.bsmWithClassAndFloatArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;[F)Ljava/lang/invoke/CallSite;
45300037b4: 1a00 f900                              |0000: const-string v0, "bsmWithClassAndFloatArray" // string@00f9
45310037b8: 1251                                   |0002: const/4 v1, #int 5 // #5
45320037ba: 2311 4800                              |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048
45330037be: 1202                                   |0005: const/4 v2, #int 0 // #0
45340037c0: 4d03 0102                              |0006: aput-object v3, v1, v2
45350037c4: 1212                                   |0008: const/4 v2, #int 1 // #1
45360037c6: 4d04 0102                              |0009: aput-object v4, v1, v2
45370037ca: 1222                                   |000b: const/4 v2, #int 2 // #2
45380037cc: 4d05 0102                              |000c: aput-object v5, v1, v2
45390037d0: 1232                                   |000e: const/4 v2, #int 3 // #3
45400037d2: 4d06 0102                              |000f: aput-object v6, v1, v2
45410037d6: 1242                                   |0011: const/4 v2, #int 4 // #4
45420037d8: 4d07 0102                              |0012: aput-object v7, v1, v2
45430037dc: 7120 a700 1000                         |0014: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7
45440037e2: 6e10 dc00 0300                         |0017: invoke-virtual {v3}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
45450037e8: 0c00                                   |001a: move-result-object v0
45460037ea: 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
45470037f0: 0c00                                   |001e: move-result-object v0
45480037f2: 2201 3400                              |001f: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
45490037f6: 7020 d200 0100                         |0021: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
45500037fc: 1101                                   |0024: return-object v1
4551      catches       : (none)
4552      positions     :
4553        0x0000 line=294
4554        0x0017 line=296
4555        0x001f line=297
4556      locals        :
4557        0x0000 - 0x0000 reg=6 (null) Ljava/lang/Class;
4558        0x001f - 0x0025 reg=0 mh Ljava/lang/invoke/MethodHandle;
4559        0x0000 - 0x0025 reg=3 lookup Ljava/lang/invoke/MethodHandles$Lookup;
4560        0x0000 - 0x0025 reg=4 methodName Ljava/lang/String;
4561        0x0000 - 0x0025 reg=5 methodType Ljava/lang/invoke/MethodType;
4562        0x0000 - 0x0025 reg=6 extraArg Ljava/lang/Class; Ljava/lang/Class<*>;
4563        0x0000 - 0x0025 reg=7 arityArgs [F
4564
4565    #3              : (in LTestVariableArityLinkerMethod;)
4566      name          : 'bsmWithClassArray'
4567      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Class;)Ljava/lang/invoke/CallSite;'
4568      access        : 0x008a (PRIVATE STATIC VARARGS)
4569      method_idx    : 145
4570      code          -
4571      registers     : 7
4572      ins           : 4
4573      outs          : 4
4574      insns size    : 34 16-bit code units
4575003800:                                        |[003800] TestVariableArityLinkerMethod.bsmWithClassArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Class;)Ljava/lang/invoke/CallSite;
4576003810: 1a00 fa00                              |0000: const-string v0, "bsmWithClassArray" // string@00fa
4577003814: 1241                                   |0002: const/4 v1, #int 4 // #4
4578003816: 2311 4800                              |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048
457900381a: 1202                                   |0005: const/4 v2, #int 0 // #0
458000381c: 4d03 0102                              |0006: aput-object v3, v1, v2
4581003820: 1212                                   |0008: const/4 v2, #int 1 // #1
4582003822: 4d04 0102                              |0009: aput-object v4, v1, v2
4583003826: 1222                                   |000b: const/4 v2, #int 2 // #2
4584003828: 4d05 0102                              |000c: aput-object v5, v1, v2
458500382c: 1232                                   |000e: const/4 v2, #int 3 // #3
458600382e: 4d06 0102                              |000f: aput-object v6, v1, v2
4587003832: 7120 a700 1000                         |0011: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7
4588003838: 6e10 dc00 0300                         |0014: invoke-virtual {v3}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
458900383e: 0c00                                   |0017: move-result-object v0
4590003840: 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
4591003846: 0c00                                   |001b: move-result-object v0
4592003848: 2201 3400                              |001c: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
459300384c: 7020 d200 0100                         |001e: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
4594003852: 1101                                   |0021: return-object v1
4595      catches       : (none)
4596      positions     :
4597        0x0000 line=367
4598        0x0014 line=368
4599        0x001c line=369
4600      locals        :
4601        0x001c - 0x0022 reg=0 mh Ljava/lang/invoke/MethodHandle;
4602        0x0000 - 0x0022 reg=3 lookup Ljava/lang/invoke/MethodHandles$Lookup;
4603        0x0000 - 0x0022 reg=4 methodName Ljava/lang/String;
4604        0x0000 - 0x0022 reg=5 methodType Ljava/lang/invoke/MethodType;
4605        0x0000 - 0x0022 reg=6 arityArgs [Ljava/lang/Class;
4606
4607    #4              : (in LTestVariableArityLinkerMethod;)
4608      name          : 'bsmWithDoubleArray'
4609      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[D)Ljava/lang/invoke/CallSite;'
4610      access        : 0x008a (PRIVATE STATIC VARARGS)
4611      method_idx    : 146
4612      code          -
4613      registers     : 7
4614      ins           : 4
4615      outs          : 4
4616      insns size    : 34 16-bit code units
4617003854:                                        |[003854] TestVariableArityLinkerMethod.bsmWithDoubleArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[D)Ljava/lang/invoke/CallSite;
4618003864: 1a00 fb00                              |0000: const-string v0, "bsmWithDoubleArray" // string@00fb
4619003868: 1241                                   |0002: const/4 v1, #int 4 // #4
462000386a: 2311 4800                              |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048
462100386e: 1202                                   |0005: const/4 v2, #int 0 // #0
4622003870: 4d03 0102                              |0006: aput-object v3, v1, v2
4623003874: 1212                                   |0008: const/4 v2, #int 1 // #1
4624003876: 4d04 0102                              |0009: aput-object v4, v1, v2
462500387a: 1222                                   |000b: const/4 v2, #int 2 // #2
462600387c: 4d05 0102                              |000c: aput-object v5, v1, v2
4627003880: 1232                                   |000e: const/4 v2, #int 3 // #3
4628003882: 4d06 0102                              |000f: aput-object v6, v1, v2
4629003886: 7120 a700 1000                         |0011: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7
463000388c: 6e10 dc00 0300                         |0014: invoke-virtual {v3}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
4631003892: 0c00                                   |0017: move-result-object v0
4632003894: 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
463300389a: 0c00                                   |001b: move-result-object v0
463400389c: 2201 3400                              |001c: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
46350038a0: 7020 d200 0100                         |001e: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
46360038a6: 1101                                   |0021: return-object v1
4637      catches       : (none)
4638      positions     :
4639        0x0000 line=332
4640        0x0014 line=333
4641        0x001c line=334
4642      locals        :
4643        0x001c - 0x0022 reg=0 mh Ljava/lang/invoke/MethodHandle;
4644        0x0000 - 0x0022 reg=3 lookup Ljava/lang/invoke/MethodHandles$Lookup;
4645        0x0000 - 0x0022 reg=4 methodName Ljava/lang/String;
4646        0x0000 - 0x0022 reg=5 methodType Ljava/lang/invoke/MethodType;
4647        0x0000 - 0x0022 reg=6 arityArgs [D
4648
4649    #5              : (in LTestVariableArityLinkerMethod;)
4650      name          : 'bsmWithFloatAndLongArray'
4651      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;F[J)Ljava/lang/invoke/CallSite;'
4652      access        : 0x008a (PRIVATE STATIC VARARGS)
4653      method_idx    : 147
4654      code          -
4655      registers     : 9
4656      ins           : 5
4657      outs          : 4
4658      insns size    : 41 16-bit code units
46590038a8:                                        |[0038a8] TestVariableArityLinkerMethod.bsmWithFloatAndLongArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;F[J)Ljava/lang/invoke/CallSite;
46600038b8: 1a00 fc00                              |0000: const-string v0, "bsmWithFloatAndLongArray" // string@00fc
46610038bc: 1251                                   |0002: const/4 v1, #int 5 // #5
46620038be: 2311 4800                              |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048
46630038c2: 1202                                   |0005: const/4 v2, #int 0 // #0
46640038c4: 4d04 0102                              |0006: aput-object v4, v1, v2
46650038c8: 1212                                   |0008: const/4 v2, #int 1 // #1
46660038ca: 4d05 0102                              |0009: aput-object v5, v1, v2
46670038ce: 1222                                   |000b: const/4 v2, #int 2 // #2
46680038d0: 4d06 0102                              |000c: aput-object v6, v1, v2
46690038d4: 7110 ba00 0700                         |000e: invoke-static {v7}, Ljava/lang/Float;.valueOf:(F)Ljava/lang/Float; // method@00ba
46700038da: 0c02                                   |0011: move-result-object v2
46710038dc: 1233                                   |0012: const/4 v3, #int 3 // #3
46720038de: 4d02 0103                              |0013: aput-object v2, v1, v3
46730038e2: 1242                                   |0015: const/4 v2, #int 4 // #4
46740038e4: 4d08 0102                              |0016: aput-object v8, v1, v2
46750038e8: 7120 a700 1000                         |0018: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7
46760038ee: 6e10 dc00 0400                         |001b: invoke-virtual {v4}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
46770038f4: 0c00                                   |001e: move-result-object v0
46780038f6: 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
46790038fc: 0c00                                   |0022: move-result-object v0
46800038fe: 2201 3400                              |0023: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
4681003902: 7020 d200 0100                         |0025: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
4682003908: 1101                                   |0028: return-object v1
4683      catches       : (none)
4684      positions     :
4685        0x0000 line=257
4686        0x000e line=258
4687        0x0018 line=257
4688        0x001b line=259
4689        0x0023 line=260
4690      locals        :
4691        0x0023 - 0x0029 reg=0 mh Ljava/lang/invoke/MethodHandle;
4692        0x0000 - 0x0029 reg=4 lookup Ljava/lang/invoke/MethodHandles$Lookup;
4693        0x0000 - 0x0029 reg=5 methodName Ljava/lang/String;
4694        0x0000 - 0x0029 reg=6 methodType Ljava/lang/invoke/MethodType;
4695        0x0000 - 0x0029 reg=7 extraArg F
4696        0x0000 - 0x0029 reg=8 arityArgs [J
4697
4698    #6              : (in LTestVariableArityLinkerMethod;)
4699      name          : 'bsmWithIntAndStringArray'
4700      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;I[Ljava/lang/String;)Ljava/lang/invoke/CallSite;'
4701      access        : 0x008a (PRIVATE STATIC VARARGS)
4702      method_idx    : 148
4703      code          -
4704      registers     : 9
4705      ins           : 5
4706      outs          : 4
4707      insns size    : 41 16-bit code units
470800390c:                                        |[00390c] TestVariableArityLinkerMethod.bsmWithIntAndStringArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;I[Ljava/lang/String;)Ljava/lang/invoke/CallSite;
470900391c: 1a00 fd00                              |0000: const-string v0, "bsmWithIntAndStringArray" // string@00fd
4710003920: 1251                                   |0002: const/4 v1, #int 5 // #5
4711003922: 2311 4800                              |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048
4712003926: 1202                                   |0005: const/4 v2, #int 0 // #0
4713003928: 4d04 0102                              |0006: aput-object v4, v1, v2
471400392c: 1212                                   |0008: const/4 v2, #int 1 // #1
471500392e: 4d05 0102                              |0009: aput-object v5, v1, v2
4716003932: 1222                                   |000b: const/4 v2, #int 2 // #2
4717003934: 4d06 0102                              |000c: aput-object v6, v1, v2
4718003938: 7110 bd00 0700                         |000e: invoke-static {v7}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@00bd
471900393e: 0c02                                   |0011: move-result-object v2
4720003940: 1233                                   |0012: const/4 v3, #int 3 // #3
4721003942: 4d02 0103                              |0013: aput-object v2, v1, v3
4722003946: 1242                                   |0015: const/4 v2, #int 4 // #4
4723003948: 4d08 0102                              |0016: aput-object v8, v1, v2
472400394c: 7120 a700 1000                         |0018: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7
4725003952: 6e10 dc00 0400                         |001b: invoke-virtual {v4}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
4726003958: 0c00                                   |001e: move-result-object v0
472700395a: 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
4728003960: 0c00                                   |0022: move-result-object v0
4729003962: 2201 3400                              |0023: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
4730003966: 7020 d200 0100                         |0025: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
473100396c: 1101                                   |0028: return-object v1
4732      catches       : (none)
4733      positions     :
4734        0x0000 line=133
4735        0x000e line=138
4736        0x0018 line=133
4737        0x001b line=140
4738        0x0023 line=141
4739      locals        :
4740        0x0023 - 0x0029 reg=0 mh Ljava/lang/invoke/MethodHandle;
4741        0x0000 - 0x0029 reg=4 lookup Ljava/lang/invoke/MethodHandles$Lookup;
4742        0x0000 - 0x0029 reg=5 methodName Ljava/lang/String;
4743        0x0000 - 0x0029 reg=6 methodType Ljava/lang/invoke/MethodType;
4744        0x0000 - 0x0029 reg=7 extraInt I
4745        0x0000 - 0x0029 reg=8 extraArityArgs [Ljava/lang/String;
4746
4747    #7              : (in LTestVariableArityLinkerMethod;)
4748      name          : 'bsmWithLongAndIntArray'
4749      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;J[I)Ljava/lang/invoke/CallSite;'
4750      access        : 0x008a (PRIVATE STATIC VARARGS)
4751      method_idx    : 149
4752      code          -
4753      registers     : 10
4754      ins           : 6
4755      outs          : 4
4756      insns size    : 41 16-bit code units
4757003970:                                        |[003970] TestVariableArityLinkerMethod.bsmWithLongAndIntArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;J[I)Ljava/lang/invoke/CallSite;
4758003980: 1a00 fe00                              |0000: const-string v0, "bsmWithLongAndIntArray" // string@00fe
4759003984: 1251                                   |0002: const/4 v1, #int 5 // #5
4760003986: 2311 4800                              |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048
476100398a: 1202                                   |0005: const/4 v2, #int 0 // #0
476200398c: 4d04 0102                              |0006: aput-object v4, v1, v2
4763003990: 1212                                   |0008: const/4 v2, #int 1 // #1
4764003992: 4d05 0102                              |0009: aput-object v5, v1, v2
4765003996: 1222                                   |000b: const/4 v2, #int 2 // #2
4766003998: 4d06 0102                              |000c: aput-object v6, v1, v2
476700399c: 7120 be00 8700                         |000e: invoke-static {v7, v8}, Ljava/lang/Long;.valueOf:(J)Ljava/lang/Long; // method@00be
47680039a2: 0c02                                   |0011: move-result-object v2
47690039a4: 1233                                   |0012: const/4 v3, #int 3 // #3
47700039a6: 4d02 0103                              |0013: aput-object v2, v1, v3
47710039aa: 1242                                   |0015: const/4 v2, #int 4 // #4
47720039ac: 4d09 0102                              |0016: aput-object v9, v1, v2
47730039b0: 7120 a700 1000                         |0018: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7
47740039b6: 6e10 dc00 0400                         |001b: invoke-virtual {v4}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
47750039bc: 0c00                                   |001e: move-result-object v0
47760039be: 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
47770039c4: 0c00                                   |0022: move-result-object v0
47780039c6: 2201 3400                              |0023: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
47790039ca: 7020 d200 0100                         |0025: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
47800039d0: 1101                                   |0028: return-object v1
4781      catches       : (none)
4782      positions     :
4783        0x0000 line=219
4784        0x001b line=220
4785        0x0023 line=221
4786      locals        :
4787        0x0023 - 0x0029 reg=0 mh Ljava/lang/invoke/MethodHandle;
4788        0x0000 - 0x0029 reg=4 lookup Ljava/lang/invoke/MethodHandles$Lookup;
4789        0x0000 - 0x0029 reg=5 methodName Ljava/lang/String;
4790        0x0000 - 0x0029 reg=6 methodType Ljava/lang/invoke/MethodType;
4791        0x0000 - 0x0029 reg=7 extraArg J
4792        0x0000 - 0x0029 reg=9 arityArgs [I
4793
4794    #8              : (in LTestVariableArityLinkerMethod;)
4795      name          : 'bsmWithStringArray'
4796      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/String;)Ljava/lang/invoke/CallSite;'
4797      access        : 0x008a (PRIVATE STATIC VARARGS)
4798      method_idx    : 150
4799      code          -
4800      registers     : 7
4801      ins           : 4
4802      outs          : 4
4803      insns size    : 34 16-bit code units
48040039d4:                                        |[0039d4] TestVariableArityLinkerMethod.bsmWithStringArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/String;)Ljava/lang/invoke/CallSite;
48050039e4: 1a00 ff00                              |0000: const-string v0, "bsmWithStringArray" // string@00ff
48060039e8: 1241                                   |0002: const/4 v1, #int 4 // #4
48070039ea: 2311 4800                              |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048
48080039ee: 1202                                   |0005: const/4 v2, #int 0 // #0
48090039f0: 4d03 0102                              |0006: aput-object v3, v1, v2
48100039f4: 1212                                   |0008: const/4 v2, #int 1 // #1
48110039f6: 4d04 0102                              |0009: aput-object v4, v1, v2
48120039fa: 1222                                   |000b: const/4 v2, #int 2 // #2
48130039fc: 4d05 0102                              |000c: aput-object v5, v1, v2
4814003a00: 1232                                   |000e: const/4 v2, #int 3 // #3
4815003a02: 4d06 0102                              |000f: aput-object v6, v1, v2
4816003a06: 7120 a700 1000                         |0011: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7
4817003a0c: 6e10 dc00 0300                         |0014: invoke-virtual {v3}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
4818003a12: 0c00                                   |0017: move-result-object v0
4819003a14: 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
4820003a1a: 0c00                                   |001b: move-result-object v0
4821003a1c: 2201 3400                              |001c: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
4822003a20: 7020 d200 0100                         |001e: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
4823003a26: 1101                                   |0021: return-object v1
4824      catches       : (none)
4825      positions     :
4826        0x0000 line=61
4827        0x0014 line=62
4828        0x001c line=63
4829      locals        :
4830        0x001c - 0x0022 reg=0 mh Ljava/lang/invoke/MethodHandle;
4831        0x0000 - 0x0022 reg=3 lookup Ljava/lang/invoke/MethodHandles$Lookup;
4832        0x0000 - 0x0022 reg=4 methodName Ljava/lang/String;
4833        0x0000 - 0x0022 reg=5 methodType Ljava/lang/invoke/MethodType;
4834        0x0000 - 0x0022 reg=6 arityArgs [Ljava/lang/String;
4835
4836    #9              : (in LTestVariableArityLinkerMethod;)
4837      name          : 'bsmWithWiderArray'
4838      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[J)Ljava/lang/invoke/CallSite;'
4839      access        : 0x000a (PRIVATE STATIC)
4840      method_idx    : 151
4841      code          -
4842      registers     : 7
4843      ins           : 4
4844      outs          : 4
4845      insns size    : 34 16-bit code units
4846003a28:                                        |[003a28] TestVariableArityLinkerMethod.bsmWithWiderArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[J)Ljava/lang/invoke/CallSite;
4847003a38: 1a00 0001                              |0000: const-string v0, "bsmWithWiderArray" // string@0100
4848003a3c: 1241                                   |0002: const/4 v1, #int 4 // #4
4849003a3e: 2311 4800                              |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048
4850003a42: 1202                                   |0005: const/4 v2, #int 0 // #0
4851003a44: 4d03 0102                              |0006: aput-object v3, v1, v2
4852003a48: 1212                                   |0008: const/4 v2, #int 1 // #1
4853003a4a: 4d04 0102                              |0009: aput-object v4, v1, v2
4854003a4e: 1222                                   |000b: const/4 v2, #int 2 // #2
4855003a50: 4d05 0102                              |000c: aput-object v5, v1, v2
4856003a54: 1232                                   |000e: const/4 v2, #int 3 // #3
4857003a56: 4d06 0102                              |000f: aput-object v6, v1, v2
4858003a5a: 7120 a700 1000                         |0011: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7
4859003a60: 6e10 dc00 0300                         |0014: invoke-virtual {v3}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
4860003a66: 0c00                                   |0017: move-result-object v0
4861003a68: 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
4862003a6e: 0c00                                   |001b: move-result-object v0
4863003a70: 2201 3400                              |001c: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
4864003a74: 7020 d200 0100                         |001e: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
4865003a7a: 1101                                   |0021: return-object v1
4866      catches       : (none)
4867      positions     :
4868        0x0000 line=447
4869        0x0014 line=448
4870        0x001c line=449
4871      locals        :
4872        0x001c - 0x0022 reg=0 mh Ljava/lang/invoke/MethodHandle;
4873        0x0000 - 0x0022 reg=3 lookup Ljava/lang/invoke/MethodHandles$Lookup;
4874        0x0000 - 0x0022 reg=4 methodName Ljava/lang/String;
4875        0x0000 - 0x0022 reg=5 methodType Ljava/lang/invoke/MethodType;
4876        0x0000 - 0x0022 reg=6 extraArgs [J
4877
4878    #10              : (in LTestVariableArityLinkerMethod;)
4879      name          : 'methodA'
4880      type          : '()V'
4881      access        : 0x000a (PRIVATE STATIC)
4882      method_idx    : 152
4883      code          -
4884      registers     : 2
4885      ins           : 0
4886      outs          : 2
4887      insns size    : 8 16-bit code units
4888003a94:                                        |[003a94] TestVariableArityLinkerMethod.methodA:()V
4889003aa4: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
4890003aa8: 1a01 7501                              |0002: const-string v1, "methodA" // string@0175
4891003aac: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
4892003ab2: 0e00                                   |0007: return-void
4893      catches       : (none)
4894      positions     :
4895        0x0000 line=86
4896        0x0007 line=87
4897      locals        :
4898
4899    #11              : (in LTestVariableArityLinkerMethod;)
4900      name          : 'methodB'
4901      type          : '()V'
4902      access        : 0x000a (PRIVATE STATIC)
4903      method_idx    : 153
4904      code          -
4905      registers     : 2
4906      ins           : 0
4907      outs          : 2
4908      insns size    : 8 16-bit code units
4909003ab4:                                        |[003ab4] TestVariableArityLinkerMethod.methodB:()V
4910003ac4: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
4911003ac8: 1a01 7601                              |0002: const-string v1, "methodB" // string@0176
4912003acc: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
4913003ad2: 0e00                                   |0007: return-void
4914      catches       : (none)
4915      positions     :
4916        0x0000 line=105
4917        0x0007 line=106
4918      locals        :
4919
4920    #12              : (in LTestVariableArityLinkerMethod;)
4921      name          : 'methodC'
4922      type          : '()V'
4923      access        : 0x000a (PRIVATE STATIC)
4924      method_idx    : 154
4925      code          -
4926      registers     : 2
4927      ins           : 0
4928      outs          : 2
4929      insns size    : 8 16-bit code units
4930003ad4:                                        |[003ad4] TestVariableArityLinkerMethod.methodC:()V
4931003ae4: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
4932003ae8: 1a01 7701                              |0002: const-string v1, "methodC" // string@0177
4933003aec: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
4934003af2: 0e00                                   |0007: return-void
4935      catches       : (none)
4936      positions     :
4937        0x0000 line=123
4938        0x0007 line=124
4939      locals        :
4940
4941    #13              : (in LTestVariableArityLinkerMethod;)
4942      name          : 'methodD'
4943      type          : '()V'
4944      access        : 0x000a (PRIVATE STATIC)
4945      method_idx    : 155
4946      code          -
4947      registers     : 2
4948      ins           : 0
4949      outs          : 2
4950      insns size    : 8 16-bit code units
4951003af4:                                        |[003af4] TestVariableArityLinkerMethod.methodD:()V
4952003b04: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
4953003b08: 1a01 7801                              |0002: const-string v1, "methodD" // string@0178
4954003b0c: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
4955003b12: 0e00                                   |0007: return-void
4956      catches       : (none)
4957      positions     :
4958        0x0000 line=166
4959        0x0007 line=167
4960      locals        :
4961
4962    #14              : (in LTestVariableArityLinkerMethod;)
4963      name          : 'methodE'
4964      type          : '()V'
4965      access        : 0x000a (PRIVATE STATIC)
4966      method_idx    : 156
4967      code          -
4968      registers     : 2
4969      ins           : 0
4970      outs          : 2
4971      insns size    : 8 16-bit code units
4972003b14:                                        |[003b14] TestVariableArityLinkerMethod.methodE:()V
4973003b24: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
4974003b28: 1a01 7901                              |0002: const-string v1, "methodE" // string@0179
4975003b2c: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
4976003b32: 0e00                                   |0007: return-void
4977      catches       : (none)
4978      positions     :
4979        0x0000 line=189
4980        0x0007 line=190
4981      locals        :
4982
4983    #15              : (in LTestVariableArityLinkerMethod;)
4984      name          : 'methodF'
4985      type          : '()V'
4986      access        : 0x000a (PRIVATE STATIC)
4987      method_idx    : 157
4988      code          -
4989      registers     : 2
4990      ins           : 0
4991      outs          : 2
4992      insns size    : 8 16-bit code units
4993003b34:                                        |[003b34] TestVariableArityLinkerMethod.methodF:()V
4994003b44: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
4995003b48: 1a01 7a01                              |0002: const-string v1, "methodF" // string@017a
4996003b4c: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
4997003b52: 0e00                                   |0007: return-void
4998      catches       : (none)
4999      positions     :
5000        0x0000 line=209
5001        0x0007 line=210
5002      locals        :
5003
5004    #16              : (in LTestVariableArityLinkerMethod;)
5005      name          : 'methodG'
5006      type          : '()V'
5007      access        : 0x000a (PRIVATE STATIC)
5008      method_idx    : 158
5009      code          -
5010      registers     : 2
5011      ins           : 0
5012      outs          : 2
5013      insns size    : 8 16-bit code units
5014003b54:                                        |[003b54] TestVariableArityLinkerMethod.methodG:()V
5015003b64: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5016003b68: 1a01 7b01                              |0002: const-string v1, "methodG" // string@017b
5017003b6c: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
5018003b72: 0e00                                   |0007: return-void
5019      catches       : (none)
5020      positions     :
5021        0x0000 line=247
5022        0x0007 line=248
5023      locals        :
5024
5025    #17              : (in LTestVariableArityLinkerMethod;)
5026      name          : 'methodH'
5027      type          : '()V'
5028      access        : 0x000a (PRIVATE STATIC)
5029      method_idx    : 159
5030      code          -
5031      registers     : 2
5032      ins           : 0
5033      outs          : 2
5034      insns size    : 8 16-bit code units
5035003b74:                                        |[003b74] TestVariableArityLinkerMethod.methodH:()V
5036003b84: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5037003b88: 1a01 7c01                              |0002: const-string v1, "methodH" // string@017c
5038003b8c: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
5039003b92: 0e00                                   |0007: return-void
5040      catches       : (none)
5041      positions     :
5042        0x0000 line=284
5043        0x0007 line=285
5044      locals        :
5045
5046    #18              : (in LTestVariableArityLinkerMethod;)
5047      name          : 'methodI'
5048      type          : '()V'
5049      access        : 0x000a (PRIVATE STATIC)
5050      method_idx    : 160
5051      code          -
5052      registers     : 2
5053      ins           : 0
5054      outs          : 2
5055      insns size    : 8 16-bit code units
5056003b94:                                        |[003b94] TestVariableArityLinkerMethod.methodI:()V
5057003ba4: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5058003ba8: 1a01 7d01                              |0002: const-string v1, "methodI" // string@017d
5059003bac: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
5060003bb2: 0e00                                   |0007: return-void
5061      catches       : (none)
5062      positions     :
5063        0x0000 line=323
5064        0x0007 line=324
5065      locals        :
5066
5067    #19              : (in LTestVariableArityLinkerMethod;)
5068      name          : 'methodJ'
5069      type          : '()V'
5070      access        : 0x000a (PRIVATE STATIC)
5071      method_idx    : 161
5072      code          -
5073      registers     : 2
5074      ins           : 0
5075      outs          : 2
5076      insns size    : 8 16-bit code units
5077003bb4:                                        |[003bb4] TestVariableArityLinkerMethod.methodJ:()V
5078003bc4: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5079003bc8: 1a01 7e01                              |0002: const-string v1, "methodJ" // string@017e
5080003bcc: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
5081003bd2: 0e00                                   |0007: return-void
5082      catches       : (none)
5083      positions     :
5084        0x0000 line=358
5085        0x0007 line=359
5086      locals        :
5087
5088    #20              : (in LTestVariableArityLinkerMethod;)
5089      name          : 'methodK'
5090      type          : '()V'
5091      access        : 0x000a (PRIVATE STATIC)
5092      method_idx    : 162
5093      code          -
5094      registers     : 2
5095      ins           : 0
5096      outs          : 2
5097      insns size    : 8 16-bit code units
5098003bd4:                                        |[003bd4] TestVariableArityLinkerMethod.methodK:()V
5099003be4: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5100003be8: 1a01 7f01                              |0002: const-string v1, "methodK" // string@017f
5101003bec: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
5102003bf2: 0e00                                   |0007: return-void
5103      catches       : (none)
5104      positions     :
5105        0x0000 line=392
5106        0x0007 line=393
5107      locals        :
5108
5109    #21              : (in LTestVariableArityLinkerMethod;)
5110      name          : 'methodO'
5111      type          : '()V'
5112      access        : 0x000a (PRIVATE STATIC)
5113      method_idx    : 163
5114      code          -
5115      registers     : 0
5116      ins           : 0
5117      outs          : 0
5118      insns size    : 4 16-bit code units
5119003bf4:                                        |[003bf4] TestVariableArityLinkerMethod.methodO:()V
5120003c04: 7100 8e00 0000                         |0000: invoke-static {}, LTestVariableArityLinkerMethod;.assertNotReached:()V // method@008e
5121003c0a: 0e00                                   |0003: return-void
5122      catches       : (none)
5123      positions     :
5124        0x0000 line=413
5125        0x0003 line=414
5126      locals        :
5127
5128    #22              : (in LTestVariableArityLinkerMethod;)
5129      name          : 'methodP'
5130      type          : '()V'
5131      access        : 0x000a (PRIVATE STATIC)
5132      method_idx    : 164
5133      code          -
5134      registers     : 0
5135      ins           : 0
5136      outs          : 0
5137      insns size    : 4 16-bit code units
5138003c0c:                                        |[003c0c] TestVariableArityLinkerMethod.methodP:()V
5139003c1c: 7100 8e00 0000                         |0000: invoke-static {}, LTestVariableArityLinkerMethod;.assertNotReached:()V // method@008e
5140003c22: 0e00                                   |0003: return-void
5141      catches       : (none)
5142      positions     :
5143        0x0000 line=441
5144        0x0003 line=442
5145      locals        :
5146
5147    #23              : (in LTestVariableArityLinkerMethod;)
5148      name          : 'methodQ'
5149      type          : '()V'
5150      access        : 0x000a (PRIVATE STATIC)
5151      method_idx    : 165
5152      code          -
5153      registers     : 0
5154      ins           : 0
5155      outs          : 0
5156      insns size    : 4 16-bit code units
5157003c24:                                        |[003c24] TestVariableArityLinkerMethod.methodQ:()V
5158003c34: 7100 8e00 0000                         |0000: invoke-static {}, LTestVariableArityLinkerMethod;.assertNotReached:()V // method@008e
5159003c3a: 0e00                                   |0003: return-void
5160      catches       : (none)
5161      positions     :
5162        0x0000 line=468
5163        0x0003 line=469
5164      locals        :
5165
5166    #24              : (in LTestVariableArityLinkerMethod;)
5167      name          : 'methodR'
5168      type          : '()V'
5169      access        : 0x000a (PRIVATE STATIC)
5170      method_idx    : 166
5171      code          -
5172      registers     : 0
5173      ins           : 0
5174      outs          : 0
5175      insns size    : 4 16-bit code units
5176003c3c:                                        |[003c3c] TestVariableArityLinkerMethod.methodR:()V
5177003c4c: 7100 8e00 0000                         |0000: invoke-static {}, LTestVariableArityLinkerMethod;.assertNotReached:()V // method@008e
5178003c52: 0e00                                   |0003: return-void
5179      catches       : (none)
5180      positions     :
5181        0x0000 line=501
5182        0x0003 line=502
5183      locals        :
5184
5185    #25              : (in LTestVariableArityLinkerMethod;)
5186      name          : 'printBsmArgs'
5187      type          : '(Ljava/lang/String;[Ljava/lang/Object;)V'
5188      access        : 0x008a (PRIVATE STATIC VARARGS)
5189      method_idx    : 167
5190      code          -
5191      registers     : 6
5192      ins           : 2
5193      outs          : 2
5194      insns size    : 159 16-bit code units
5195003c54:                                        |[003c54] TestVariableArityLinkerMethod.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V
5196003c64: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5197003c68: 6e20 b000 4000                         |0002: invoke-virtual {v0, v4}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
5198003c6e: 6200 1300                              |0005: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5199003c72: 1a01 0600                              |0007: const-string v1, "(" // string@0006
5200003c76: 6e20 b000 1000                         |0009: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
5201003c7c: 1200                                   |000c: const/4 v0, #int 0 // #0
5202003c7e: 2151                                   |000d: array-length v1, v5
5203003c80: 3510 8900                              |000e: if-ge v0, v1, 0097 // +0089
5204003c84: 3800 0900                              |0010: if-eqz v0, 0019 // +0009
5205003c88: 6201 1300                              |0012: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5206003c8c: 1a02 0c00                              |0014: const-string v2, ", " // string@000c
5207003c90: 6e20 b000 2100                         |0016: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
5208003c96: 4601 0500                              |0019: aget-object v1, v5, v0
5209003c9a: 3801 7100                              |001b: if-eqz v1, 008c // +0071
5210003c9e: 4601 0500                              |001d: aget-object v1, v5, v0
5211003ca2: 6e10 c000 0100                         |001f: invoke-virtual {v1}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
5212003ca8: 0c01                                   |0022: move-result-object v1
5213003caa: 6e10 b800 0100                         |0023: invoke-virtual {v1}, Ljava/lang/Class;.isArray:()Z // method@00b8
5214003cb0: 0a01                                   |0026: move-result v1
5215003cb2: 3801 6500                              |0027: if-eqz v1, 008c // +0065
5216003cb6: 4601 0500                              |0029: aget-object v1, v5, v0
5217003cba: 6e10 c000 0100                         |002b: invoke-virtual {v1}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
5218003cc0: 0c02                                   |002e: move-result-object v2
5219003cc2: 1c03 4400                              |002f: const-class v3, [I // type@0044
5220003cc6: 3332 0f00                              |0031: if-ne v2, v3, 0040 // +000f
5221003cca: 6202 1300                              |0033: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5222003cce: 0713                                   |0035: move-object v3, v1
5223003cd0: 1f03 4400                              |0036: check-cast v3, [I // type@0044
5224003cd4: 7110 e900 0300                         |0038: invoke-static {v3}, Ljava/util/Arrays;.toString:([I)Ljava/lang/String; // method@00e9
5225003cda: 0c03                                   |003b: move-result-object v3
5226003cdc: 6e20 b000 3200                         |003c: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
5227003ce2: 284c                                   |003f: goto 008b // +004c
5228003ce4: 6e10 c000 0100                         |0040: invoke-virtual {v1}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
5229003cea: 0c02                                   |0043: move-result-object v2
5230003cec: 1c03 4500                              |0044: const-class v3, [J // type@0045
5231003cf0: 3332 0f00                              |0046: if-ne v2, v3, 0055 // +000f
5232003cf4: 6202 1300                              |0048: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5233003cf8: 0713                                   |004a: move-object v3, v1
5234003cfa: 1f03 4500                              |004b: check-cast v3, [J // type@0045
5235003cfe: 7110 ea00 0300                         |004d: invoke-static {v3}, Ljava/util/Arrays;.toString:([J)Ljava/lang/String; // method@00ea
5236003d04: 0c03                                   |0050: move-result-object v3
5237003d06: 6e20 b000 3200                         |0051: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
5238003d0c: 2837                                   |0054: goto 008b // +0037
5239003d0e: 6e10 c000 0100                         |0055: invoke-virtual {v1}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
5240003d14: 0c02                                   |0058: move-result-object v2
5241003d16: 1c03 4300                              |0059: const-class v3, [F // type@0043
5242003d1a: 3332 0f00                              |005b: if-ne v2, v3, 006a // +000f
5243003d1e: 6202 1300                              |005d: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5244003d22: 0713                                   |005f: move-object v3, v1
5245003d24: 1f03 4300                              |0060: check-cast v3, [F // type@0043
5246003d28: 7110 e800 0300                         |0062: invoke-static {v3}, Ljava/util/Arrays;.toString:([F)Ljava/lang/String; // method@00e8
5247003d2e: 0c03                                   |0065: move-result-object v3
5248003d30: 6e20 b000 3200                         |0066: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
5249003d36: 2822                                   |0069: goto 008b // +0022
5250003d38: 6e10 c000 0100                         |006a: invoke-virtual {v1}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
5251003d3e: 0c02                                   |006d: move-result-object v2
5252003d40: 1c03 4200                              |006e: const-class v3, [D // type@0042
5253003d44: 3332 0f00                              |0070: if-ne v2, v3, 007f // +000f
5254003d48: 6202 1300                              |0072: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5255003d4c: 0713                                   |0074: move-object v3, v1
5256003d4e: 1f03 4200                              |0075: check-cast v3, [D // type@0042
5257003d52: 7110 e700 0300                         |0077: invoke-static {v3}, Ljava/util/Arrays;.toString:([D)Ljava/lang/String; // method@00e7
5258003d58: 0c03                                   |007a: move-result-object v3
5259003d5a: 6e20 b000 3200                         |007b: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
5260003d60: 280d                                   |007e: goto 008b // +000d
5261003d62: 6202 1300                              |007f: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5262003d66: 0713                                   |0081: move-object v3, v1
5263003d68: 1f03 4800                              |0082: check-cast v3, [Ljava/lang/Object; // type@0048
5264003d6c: 7110 eb00 0300                         |0084: invoke-static {v3}, Ljava/util/Arrays;.toString:([Ljava/lang/Object;)Ljava/lang/String; // method@00eb
5265003d72: 0c03                                   |0087: move-result-object v3
5266003d74: 6e20 b000 3200                         |0088: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
5267003d7a: 2808                                   |008b: goto 0093 // +0008
5268003d7c: 6201 1300                              |008c: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5269003d80: 4602 0500                              |008e: aget-object v2, v5, v0
5270003d84: 6e20 af00 2100                         |0090: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
5271003d8a: d800 0001                              |0093: add-int/lit8 v0, v0, #int 1 // #01
5272003d8e: 2900 78ff                              |0095: goto/16 000d // -0088
5273003d92: 6200 1300                              |0097: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5274003d96: 1a01 0800                              |0099: const-string v1, ");" // string@0008
5275003d9a: 6e20 b300 1000                         |009b: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
5276003da0: 0e00                                   |009e: return-void
5277      catches       : (none)
5278      positions     :
5279        0x0000 line=29
5280        0x0005 line=30
5281        0x000c line=31
5282        0x0010 line=32
5283        0x0012 line=33
5284        0x0019 line=35
5285        0x0029 line=36
5286        0x002b line=37
5287        0x0033 line=38
5288        0x0040 line=39
5289        0x0048 line=40
5290        0x0055 line=41
5291        0x005d line=42
5292        0x006a line=43
5293        0x0072 line=44
5294        0x007f line=46
5295        0x008b line=48
5296        0x008c line=49
5297        0x0093 line=31
5298        0x0097 line=52
5299        0x009e line=53
5300      locals        :
5301        0x002b - 0x008b reg=1 array Ljava/lang/Object;
5302        0x000d - 0x0097 reg=0 i I
5303        0x0000 - 0x009f reg=4 method Ljava/lang/String;
5304        0x0000 - 0x009f reg=5 args [Ljava/lang/Object;
5305
5306    #26              : (in LTestVariableArityLinkerMethod;)
5307      name          : 'test'
5308      type          : '()V'
5309      access        : 0x0008 (STATIC)
5310      method_idx    : 168
5311      code          -
5312      registers     : 3
5313      ins           : 0
5314      outs          : 2
5315      insns size    : 224 16-bit code units
5316003da4:                                        |[003da4] TestVariableArityLinkerMethod.test:()V
5317003db4: 1200                                   |0000: const/4 v0, #int 0 // #0
5318003db6: 0101                                   |0001: move v1, v0
5319003db8: 1222                                   |0002: const/4 v2, #int 2 // #2
5320003dba: 3521 0e00                              |0003: if-ge v1, v2, 0011 // +000e
5321003dbe: fc00 1f00 0000                         |0005: invoke-custom {}, call_site@001f
5322003dc4: fc00 2000 0000                         |0008: invoke-custom {}, call_site@0020
5323003dca: fc00 2100 0000                         |000b: invoke-custom {}, call_site@0021
5324003dd0: d801 0101                              |000e: add-int/lit8 v1, v1, #int 1 // #01
5325003dd4: 28f2                                   |0010: goto 0002 // -000e
5326003dd6: 0000                                   |0011: nop // spacer
5327003dd8: 3520 0e00                              |0012: if-ge v0, v2, 0020 // +000e
5328003ddc: fc00 2200 0000                         |0014: invoke-custom {}, call_site@0022
5329003de2: fc00 2300 0000                         |0017: invoke-custom {}, call_site@0023
5330003de8: fc00 2400 0000                         |001a: invoke-custom {}, call_site@0024
5331003dee: d800 0001                              |001d: add-int/lit8 v0, v0, #int 1 // #01
5332003df2: 28f3                                   |001f: goto 0012 // -000d
5333003df4: fc00 2500 0000                         |0020: invoke-custom {}, call_site@0025
5334003dfa: fc00 2600 0000                         |0023: invoke-custom {}, call_site@0026
5335003e00: fc00 2700 0000                         |0026: invoke-custom {}, call_site@0027
5336003e06: fc00 2800 0000                         |0029: invoke-custom {}, call_site@0028
5337003e0c: fc00 2900 0000                         |002c: invoke-custom {}, call_site@0029
5338003e12: fc00 2a00 0000                         |002f: invoke-custom {}, call_site@002a
5339003e18: 7100 8e00 0000                         |0032: invoke-static {}, LTestVariableArityLinkerMethod;.assertNotReached:()V // method@008e
5340003e1e: 2826                                   |0035: goto 005b // +0026
5341003e20: 0d00                                   |0036: move-exception v0
5342003e22: 6201 1300                              |0037: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5343003e26: 1a02 8201                              |0039: const-string v2, "methodO => " // string@0182
5344003e2a: 6e20 b000 2100                         |003b: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
5345003e30: 6201 1300                              |003e: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5346003e34: 6e10 c000 0000                         |0040: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
5347003e3a: 0c02                                   |0043: move-result-object v2
5348003e3c: 6e20 af00 2100                         |0044: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
5349003e42: 6201 1300                              |0047: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5350003e46: 1a02 0200                              |0049: const-string v2, " => " // string@0002
5351003e4a: 6e20 b000 2100                         |004b: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
5352003e50: 6201 1300                              |004e: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5353003e54: 6e10 b600 0000                         |0050: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
5354003e5a: 0c02                                   |0053: move-result-object v2
5355003e5c: 6e10 c000 0200                         |0054: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
5356003e62: 0c02                                   |0057: move-result-object v2
5357003e64: 6e20 b200 2100                         |0058: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
5358003e6a: fc00 2b00 0000                         |005b: invoke-custom {}, call_site@002b
5359003e70: 7100 8e00 0000                         |005e: invoke-static {}, LTestVariableArityLinkerMethod;.assertNotReached:()V // method@008e
5360003e76: 2826                                   |0061: goto 0087 // +0026
5361003e78: 0d00                                   |0062: move-exception v0
5362003e7a: 6201 1300                              |0063: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5363003e7e: 1a02 8401                              |0065: const-string v2, "methodP => " // string@0184
5364003e82: 6e20 b000 2100                         |0067: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
5365003e88: 6201 1300                              |006a: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5366003e8c: 6e10 c000 0000                         |006c: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
5367003e92: 0c02                                   |006f: move-result-object v2
5368003e94: 6e20 af00 2100                         |0070: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
5369003e9a: 6201 1300                              |0073: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5370003e9e: 1a02 0200                              |0075: const-string v2, " => " // string@0002
5371003ea2: 6e20 b000 2100                         |0077: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
5372003ea8: 6201 1300                              |007a: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5373003eac: 6e10 b600 0000                         |007c: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
5374003eb2: 0c02                                   |007f: move-result-object v2
5375003eb4: 6e10 c000 0200                         |0080: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
5376003eba: 0c02                                   |0083: move-result-object v2
5377003ebc: 6e20 b200 2100                         |0084: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
5378003ec2: fc00 2c00 0000                         |0087: invoke-custom {}, call_site@002c
5379003ec8: 7100 8e00 0000                         |008a: invoke-static {}, LTestVariableArityLinkerMethod;.assertNotReached:()V // method@008e
5380003ece: 2826                                   |008d: goto 00b3 // +0026
5381003ed0: 0d00                                   |008e: move-exception v0
5382003ed2: 6201 1300                              |008f: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5383003ed6: 1a02 8601                              |0091: const-string v2, "methodQ => " // string@0186
5384003eda: 6e20 b000 2100                         |0093: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
5385003ee0: 6201 1300                              |0096: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5386003ee4: 6e10 c000 0000                         |0098: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
5387003eea: 0c02                                   |009b: move-result-object v2
5388003eec: 6e20 af00 2100                         |009c: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
5389003ef2: 6201 1300                              |009f: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5390003ef6: 1a02 0200                              |00a1: const-string v2, " => " // string@0002
5391003efa: 6e20 b000 2100                         |00a3: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
5392003f00: 6201 1300                              |00a6: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5393003f04: 6e10 b600 0000                         |00a8: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
5394003f0a: 0c02                                   |00ab: move-result-object v2
5395003f0c: 6e10 c000 0200                         |00ac: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
5396003f12: 0c02                                   |00af: move-result-object v2
5397003f14: 6e20 b200 2100                         |00b0: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
5398003f1a: fc00 2d00 0000                         |00b3: invoke-custom {}, call_site@002d
5399003f20: 7100 8e00 0000                         |00b6: invoke-static {}, LTestVariableArityLinkerMethod;.assertNotReached:()V // method@008e
5400003f26: 2826                                   |00b9: goto 00df // +0026
5401003f28: 0d00                                   |00ba: move-exception v0
5402003f2a: 6201 1300                              |00bb: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5403003f2e: 1a02 8801                              |00bd: const-string v2, "methodR => " // string@0188
5404003f32: 6e20 b000 2100                         |00bf: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
5405003f38: 6201 1300                              |00c2: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5406003f3c: 6e10 c000 0000                         |00c4: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
5407003f42: 0c02                                   |00c7: move-result-object v2
5408003f44: 6e20 af00 2100                         |00c8: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
5409003f4a: 6201 1300                              |00cb: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5410003f4e: 1a02 0200                              |00cd: const-string v2, " => " // string@0002
5411003f52: 6e20 b000 2100                         |00cf: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
5412003f58: 6201 1300                              |00d2: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
5413003f5c: 6e10 b600 0000                         |00d4: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
5414003f62: 0c02                                   |00d7: move-result-object v2
5415003f64: 6e10 c000 0200                         |00d8: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
5416003f6a: 0c02                                   |00db: move-result-object v2
5417003f6c: 6e20 b200 2100                         |00dc: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
5418003f72: 0e00                                   |00df: return-void
5419      catches       : 4
5420        0x002f - 0x0035
5421          Ljava/lang/BootstrapMethodError; -> 0x0036
5422        0x005b - 0x0061
5423          Ljava/lang/BootstrapMethodError; -> 0x0062
5424        0x0087 - 0x008d
5425          Ljava/lang/BootstrapMethodError; -> 0x008e
5426        0x00b3 - 0x00b9
5427          Ljava/lang/BootstrapMethodError; -> 0x00ba
5428      positions     :
5429        0x0000 line=506
5430        0x0005 line=507
5431        0x0008 line=508
5432        0x000b line=509
5433        0x000e line=506
5434        0x0011 line=511
5435        0x0014 line=512
5436        0x0017 line=513
5437        0x001a line=514
5438        0x001d line=511
5439        0x0020 line=516
5440        0x0023 line=517
5441        0x0026 line=518
5442        0x0029 line=519
5443        0x002c line=520
5444        0x002f line=527
5445        0x0032 line=528
5446        0x0035 line=534
5447        0x0036 line=529
5448        0x0037 line=530
5449        0x003e line=531
5450        0x0047 line=532
5451        0x004e line=533
5452        0x005b line=538
5453        0x005e line=539
5454        0x0061 line=545
5455        0x0062 line=540
5456        0x0063 line=541
5457        0x006a line=542
5458        0x0073 line=543
5459        0x007a line=544
5460        0x0087 line=549
5461        0x008a line=550
5462        0x008d line=556
5463        0x008e line=551
5464        0x008f line=552
5465        0x0096 line=553
5466        0x009f line=554
5467        0x00a6 line=555
5468        0x00b3 line=560
5469        0x00b6 line=561
5470        0x00b9 line=567
5471        0x00ba line=562
5472        0x00bb line=563
5473        0x00c2 line=564
5474        0x00cb line=565
5475        0x00d2 line=566
5476        0x00df line=568
5477      locals        :
5478        0x0002 - 0x0011 reg=1 i I
5479        0x0012 - 0x0020 reg=0 i I
5480        0x0037 - 0x005b reg=0 expected Ljava/lang/BootstrapMethodError;
5481        0x0063 - 0x0087 reg=0 expected Ljava/lang/BootstrapMethodError;
5482        0x008f - 0x00b3 reg=0 expected Ljava/lang/BootstrapMethodError;
5483        0x00bb - 0x00df reg=0 expected Ljava/lang/BootstrapMethodError;
5484
5485  Virtual methods   -
5486  source_file_idx   : 156 (TestVariableArityLinkerMethod.java)
5487
5488Method handle #0:
5489  type        : invoke-static
5490  target      : LTestBadBootstrapArguments; bsm
5491  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;ID)Ljava/lang/invoke/CallSite;
5492Method handle #1:
5493  type        : invoke-static
5494  target      : LTestBadBootstrapArguments; bsm
5495  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;ILjava/lang/String;)Ljava/lang/invoke/CallSite;
5496Method handle #2:
5497  type        : invoke-static
5498  target      : LTestBadBootstrapArguments; bsmDJ
5499  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;DJ)Ljava/lang/invoke/CallSite;
5500Method handle #3:
5501  type        : invoke-static
5502  target      : LTestBadBootstrapArguments; bsmDoubleLong
5503  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Double;Ljava/lang/Long;)Ljava/lang/invoke/CallSite;
5504Method handle #4:
5505  type        : invoke-static
5506  target      : LTestBadBootstrapArguments; bsmReturningInteger
5507  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/Integer;
5508Method handle #5:
5509  type        : invoke-static
5510  target      : LTestBadBootstrapArguments; bsmReturningObject
5511  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/Object;
5512Method handle #6:
5513  type        : invoke-static
5514  target      : LTestBadBootstrapArguments; bsmReturningTestersConstantCallsite
5515  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)LTestBadBootstrapArguments$TestersConstantCallSite;
5516Method handle #7:
5517  type        : invoke-static
5518  target      : LTestBadBootstrapArguments; bsmReturningVoid
5519  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)V
5520Method handle #8:
5521  type        : invoke-static
5522  target      : LTestBadBootstrapArguments; bsmZBCS
5523  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;ZBCS)Ljava/lang/invoke/CallSite;
5524Method handle #9:
5525  type        : invoke-static
5526  target      : LTestDynamicBootstrapArguments; bsm
5527  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;J)Ljava/lang/invoke/CallSite;
5528Method handle #10:
5529  type        : invoke-static
5530  target      : LTestInvocationKinds; lookupConstructor
5531  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
5532Method handle #11:
5533  type        : invoke-static
5534  target      : LTestInvocationKinds; lookupInstanceFieldGetter
5535  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
5536Method handle #12:
5537  type        : invoke-static
5538  target      : LTestInvocationKinds; lookupInstanceFieldSetter
5539  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
5540Method handle #13:
5541  type        : invoke-static
5542  target      : LTestInvocationKinds; lookupStaticFieldGetter
5543  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
5544Method handle #14:
5545  type        : invoke-static
5546  target      : LTestInvocationKinds; lookupStaticFieldSetter
5547  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
5548Method handle #15:
5549  type        : invoke-static
5550  target      : LTestInvocationKinds; lookupVirtual
5551  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
5552Method handle #16:
5553  type        : invoke-static
5554  target      : LTestInvokeCustomWithConcurrentThreads; linkerMethod
5555  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
5556Method handle #17:
5557  type        : invoke-static
5558  target      : LTestLinkerMethodMinimalArguments; linkerMethod
5559  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
5560Method handle #18:
5561  type        : invoke-static
5562  target      : LTestLinkerMethodMultipleArgumentTypes; linkerMethod
5563  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;
5564Method handle #19:
5565  type        : invoke-static
5566  target      : LTestVariableArityLinkerMethod; bsmWithBoxedArray
5567  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Integer;)Ljava/lang/invoke/CallSite;
5568Method handle #20:
5569  type        : invoke-static
5570  target      : LTestVariableArityLinkerMethod; bsmWithClassAndFloatArray
5571  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;[F)Ljava/lang/invoke/CallSite;
5572Method handle #21:
5573  type        : invoke-static
5574  target      : LTestVariableArityLinkerMethod; bsmWithClassArray
5575  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Class;)Ljava/lang/invoke/CallSite;
5576Method handle #22:
5577  type        : invoke-static
5578  target      : LTestVariableArityLinkerMethod; bsmWithDoubleArray
5579  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[D)Ljava/lang/invoke/CallSite;
5580Method handle #23:
5581  type        : invoke-static
5582  target      : LTestVariableArityLinkerMethod; bsmWithFloatAndLongArray
5583  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;F[J)Ljava/lang/invoke/CallSite;
5584Method handle #24:
5585  type        : invoke-static
5586  target      : LTestVariableArityLinkerMethod; bsmWithIntAndStringArray
5587  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;I[Ljava/lang/String;)Ljava/lang/invoke/CallSite;
5588Method handle #25:
5589  type        : invoke-static
5590  target      : LTestVariableArityLinkerMethod; bsmWithLongAndIntArray
5591  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;J[I)Ljava/lang/invoke/CallSite;
5592Method handle #26:
5593  type        : invoke-static
5594  target      : LTestVariableArityLinkerMethod; bsmWithStringArray
5595  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/String;)Ljava/lang/invoke/CallSite;
5596Method handle #27:
5597  type        : invoke-static
5598  target      : LTestVariableArityLinkerMethod; bsmWithWiderArray
5599  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[J)Ljava/lang/invoke/CallSite;
5600Method handle #28:
5601  type        : invoke-static
5602  target      : LUnrelatedBSM; bsm
5603  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;)Ljava/lang/invoke/CallSite;
5604Call site #0: // offset 29649
5605  link_argument[0] : 1 (MethodHandle)
5606  link_argument[1] : happy (String)
5607  link_argument[2] : ()V (MethodType)
5608  link_argument[3] : -1 (int)
5609  link_argument[4] : very (String)
5610Call site #1: // offset 29662
5611  link_argument[0] : 0 (MethodHandle)
5612  link_argument[1] : wrongParameterTypes (String)
5613  link_argument[2] : ()V (MethodType)
5614  link_argument[3] : -1 (int)
5615  link_argument[4] : very (String)
5616Call site #2: // offset 29675
5617  link_argument[0] : 0 (MethodHandle)
5618  link_argument[1] : missingParameterTypes (String)
5619  link_argument[2] : ()V (MethodType)
5620Call site #3: // offset 29683
5621  link_argument[0] : 1 (MethodHandle)
5622  link_argument[1] : extraArguments (String)
5623  link_argument[2] : ()V (MethodType)
5624  link_argument[3] : 1 (int)
5625  link_argument[4] : 2 (String)
5626  link_argument[5] : 3 (int)
5627Call site #4: // offset 29697
5628  link_argument[0] : 1 (MethodHandle)
5629  link_argument[1] : wrongArguments (String)
5630  link_argument[2] : ()V (MethodType)
5631  link_argument[3] : 1 (String)
5632  link_argument[4] : 3.14159 (double)
5633Call site #5: // offset 29697
5634  link_argument[0] : 1 (MethodHandle)
5635  link_argument[1] : wrongArguments (String)
5636  link_argument[2] : ()V (MethodType)
5637  link_argument[3] : 1 (String)
5638  link_argument[4] : 3.14159 (double)
5639Call site #6: // offset 29716
5640  link_argument[0] : 1 (MethodHandle)
5641  link_argument[1] : wrongArgumentsAgain (String)
5642  link_argument[2] : ()V (MethodType)
5643  link_argument[3] : 3.14159 (double)
5644  link_argument[4] : pie (String)
5645Call site #7: // offset 29736
5646  link_argument[0] : 8 (MethodHandle)
5647  link_argument[1] : narrowArguments (String)
5648  link_argument[2] : ()V (MethodType)
5649  link_argument[3] : 1 (int)
5650  link_argument[4] : 127 (int)
5651  link_argument[5] : 65 (int)
5652  link_argument[6] : -32768 (int)
5653Call site #8: // offset 29753
5654  link_argument[0] : 2 (MethodHandle)
5655  link_argument[1] : wideningArguments (String)
5656  link_argument[2] : ()V (MethodType)
5657  link_argument[3] : 1.79769e+308 (double)
5658  link_argument[4] : 2147483647 (int)
5659Call site #9: // offset 29775
5660  link_argument[0] : 3 (MethodHandle)
5661  link_argument[1] : boxingArguments (String)
5662  link_argument[2] : ()V (MethodType)
5663  link_argument[3] : 1.79769e+308 (double)
5664  link_argument[4] : 9223372036854775807 (long)
5665Call site #10: // offset 29800
5666  link_argument[0] : 3 (MethodHandle)
5667  link_argument[1] : wideningBoxingArguments (String)
5668  link_argument[2] : ()V (MethodType)
5669  link_argument[3] : 3.40282e+38 (float)
5670  link_argument[4] : 2147483647 (long)
5671Call site #11: // offset 29818
5672  link_argument[0] : 7 (MethodHandle)
5673  link_argument[1] : voidReturnType (String)
5674  link_argument[2] : ()V (MethodType)
5675Call site #12: // offset 29826
5676  link_argument[0] : 5 (MethodHandle)
5677  link_argument[1] : ObjectReturnType (String)
5678  link_argument[2] : ()V (MethodType)
5679Call site #13: // offset 29833
5680  link_argument[0] : 4 (MethodHandle)
5681  link_argument[1] : integerReturnType (String)
5682  link_argument[2] : ()V (MethodType)
5683Call site #14: // offset 29841
5684  link_argument[0] : 6 (MethodHandle)
5685  link_argument[1] : sayHello (String)
5686  link_argument[2] : ()V (MethodType)
5687Call site #15: // offset 29849
5688  link_argument[0] : 9 (MethodHandle)
5689  link_argument[1] : target (String)
5690  link_argument[2] : (ILjava/lang/String;Ljava/lang/Double;)I (MethodType)
5691  link_argument[3] : A (String)
5692  link_argument[4] : 100000000 (long)
5693Call site #16: // offset 29849
5694  link_argument[0] : 9 (MethodHandle)
5695  link_argument[1] : target (String)
5696  link_argument[2] : (ILjava/lang/String;Ljava/lang/Double;)I (MethodType)
5697  link_argument[3] : A (String)
5698  link_argument[4] : 100000000 (long)
5699Call site #17: // offset 29849
5700  link_argument[0] : 9 (MethodHandle)
5701  link_argument[1] : target (String)
5702  link_argument[2] : (ILjava/lang/String;Ljava/lang/Double;)I (MethodType)
5703  link_argument[3] : A (String)
5704  link_argument[4] : 100000000 (long)
5705Call site #18: // offset 29864
5706  link_argument[0] : 10 (MethodHandle)
5707  link_argument[1] : unused (String)
5708  link_argument[2] : (I)LTestInvocationKinds$Widget; (MethodType)
5709Call site #19: // offset 29872
5710  link_argument[0] : 12 (MethodHandle)
5711  link_argument[1] : instance_field (String)
5712  link_argument[2] : (LTestInvocationKinds;D)V (MethodType)
5713Call site #20: // offset 29880
5714  link_argument[0] : 11 (MethodHandle)
5715  link_argument[1] : instance_field (String)
5716  link_argument[2] : (LTestInvocationKinds;)D (MethodType)
5717Call site #21: // offset 29888
5718  link_argument[0] : 15 (MethodHandle)
5719  link_argument[1] : getMaxIntegerValue (String)
5720  link_argument[2] : (LTestInvocationKinds;II)I (MethodType)
5721Call site #22: // offset 29896
5722  link_argument[0] : 14 (MethodHandle)
5723  link_argument[1] : static_field (String)
5724  link_argument[2] : (I)V (MethodType)
5725Call site #23: // offset 29896
5726  link_argument[0] : 14 (MethodHandle)
5727  link_argument[1] : static_field (String)
5728  link_argument[2] : (I)V (MethodType)
5729Call site #24: // offset 29904
5730  link_argument[0] : 13 (MethodHandle)
5731  link_argument[1] : static_field (String)
5732  link_argument[2] : ()I (MethodType)
5733Call site #25: // offset 29904
5734  link_argument[0] : 13 (MethodHandle)
5735  link_argument[1] : static_field (String)
5736  link_argument[2] : ()I (MethodType)
5737Call site #26: // offset 29912
5738  link_argument[0] : 16 (MethodHandle)
5739  link_argument[1] : setCalled (String)
5740  link_argument[2] : (I)I (MethodType)
5741Call site #27: // offset 29920
5742  link_argument[0] : 17 (MethodHandle)
5743  link_argument[1] : _add (String)
5744  link_argument[2] : (II)I (MethodType)
5745Call site #28: // offset 29927
5746  link_argument[0] : 18 (MethodHandle)
5747  link_argument[1] : _add (String)
5748  link_argument[2] : (II)I (MethodType)
5749  link_argument[3] : -1 (int)
5750  link_argument[4] : 1 (int)
5751  link_argument[5] : 97 (int)
5752  link_argument[6] : 1024 (int)
5753  link_argument[7] : 1 (int)
5754  link_argument[8] : 11.1 (float)
5755  link_argument[9] : 2.2 (double)
5756  link_argument[10] : Hello (String)
5757  link_argument[11] : LTestLinkerMethodMultipleArgumentTypes; (Class)
5758  link_argument[12] : 123456789 (long)
5759Call site #29: // offset 29968
5760  link_argument[0] : 28 (MethodHandle)
5761  link_argument[1] : _addf (String)
5762  link_argument[2] : (FF)F (MethodType)
5763  link_argument[3] : LTestLinkerUnrelatedBSM; (Class)
5764Call site #30: // offset 29977
5765  link_argument[0] : 28 (MethodHandle)
5766  link_argument[1] : _subf (String)
5767  link_argument[2] : (FF)F (MethodType)
5768  link_argument[3] : LTestLinkerUnrelatedBSM; (Class)
5769Call site #31: // offset 29986
5770  link_argument[0] : 26 (MethodHandle)
5771  link_argument[1] : methodA (String)
5772  link_argument[2] : ()V (MethodType)
5773  link_argument[3] : Aachen (String)
5774  link_argument[4] : Aalborg (String)
5775  link_argument[5] : Aalto (String)
5776Call site #32: // offset 30000
5777  link_argument[0] : 26 (MethodHandle)
5778  link_argument[1] : methodB (String)
5779  link_argument[2] : ()V (MethodType)
5780  link_argument[3] : barium (String)
5781Call site #33: // offset 30010
5782  link_argument[0] : 26 (MethodHandle)
5783  link_argument[1] : methodC (String)
5784  link_argument[2] : ()V (MethodType)
5785Call site #34: // offset 30018
5786  link_argument[0] : 24 (MethodHandle)
5787  link_argument[1] : methodD (String)
5788  link_argument[2] : ()V (MethodType)
5789  link_argument[3] : 101 (int)
5790  link_argument[4] : zoo (String)
5791  link_argument[5] : zoogene (String)
5792  link_argument[6] : zoogenic (String)
5793Call site #35: // offset 30037
5794  link_argument[0] : 24 (MethodHandle)
5795  link_argument[1] : methodE (String)
5796  link_argument[2] : ()V (MethodType)
5797  link_argument[3] : 102 (int)
5798  link_argument[4] : zonic (String)
5799Call site #36: // offset 30050
5800  link_argument[0] : 24 (MethodHandle)
5801  link_argument[1] : methodF (String)
5802  link_argument[2] : ()V (MethodType)
5803  link_argument[3] : 103 (int)
5804Call site #37: // offset 30060
5805  link_argument[0] : 25 (MethodHandle)
5806  link_argument[1] : methodG (String)
5807  link_argument[2] : ()V (MethodType)
5808  link_argument[3] : 81985529216486895 (long)
5809  link_argument[4] : 1 (int)
5810  link_argument[5] : -1 (int)
5811  link_argument[6] : 2 (int)
5812  link_argument[7] : -2 (int)
5813Call site #38: // offset 30085
5814  link_argument[0] : 23 (MethodHandle)
5815  link_argument[1] : methodH (String)
5816  link_argument[2] : ()V (MethodType)
5817  link_argument[3] : -2.71828 (float)
5818  link_argument[4] : 999999999999 (long)
5819  link_argument[5] : -8888888888888 (long)
5820Call site #39: // offset 30112
5821  link_argument[0] : 20 (MethodHandle)
5822  link_argument[1] : methodI (String)
5823  link_argument[2] : ()V (MethodType)
5824  link_argument[3] : Ljava/lang/Throwable; (Class)
5825  link_argument[4] : 3.40282e+38 (float)
5826  link_argument[5] : 1.4013e-45 (float)
5827  link_argument[6] : 3.14159 (float)
5828  link_argument[7] : -3.14159 (float)
5829Call site #40: // offset 30142
5830  link_argument[0] : 22 (MethodHandle)
5831  link_argument[1] : methodJ (String)
5832  link_argument[2] : ()V (MethodType)
5833  link_argument[3] : 1.79769e+308 (double)
5834  link_argument[4] : 4.94066e-324 (double)
5835  link_argument[5] : 2.71828 (double)
5836  link_argument[6] : -3.14159 (double)
5837Call site #41: // offset 30186
5838  link_argument[0] : 21 (MethodHandle)
5839  link_argument[1] : methodK (String)
5840  link_argument[2] : ()V (MethodType)
5841  link_argument[3] : Ljava/lang/Integer; (Class)
5842  link_argument[4] : Ljava/lang/invoke/MethodHandles; (Class)
5843  link_argument[5] : Ljava/util/Arrays; (Class)
5844Call site #42: // offset 30200
5845  link_argument[0] : 24 (MethodHandle)
5846  link_argument[1] : methodO (String)
5847  link_argument[2] : ()V (MethodType)
5848  link_argument[3] : 103 (int)
5849  link_argument[4] : 104 (int)
5850Call site #43: // offset 30212
5851  link_argument[0] : 24 (MethodHandle)
5852  link_argument[1] : methodP (String)
5853  link_argument[2] : ()V (MethodType)
5854  link_argument[3] : 103 (int)
5855  link_argument[4] : A (String)
5856  link_argument[5] : B (String)
5857  link_argument[6] : 42 (int)
5858Call site #44: // offset 30228
5859  link_argument[0] : 27 (MethodHandle)
5860  link_argument[1] : methodQ (String)
5861  link_argument[2] : ()V (MethodType)
5862  link_argument[3] : 103 (int)
5863  link_argument[4] : 42 (int)
5864Call site #45: // offset 30240
5865  link_argument[0] : 19 (MethodHandle)
5866  link_argument[1] : methodR (String)
5867  link_argument[2] : ()V (MethodType)
5868  link_argument[3] : 1030 (int)
5869  link_argument[4] : 420 (int)
5870