• 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            : d11a9e29
6signature           : 5b54...15c3
7file_size           : 8984
8header_size         : 112
9link_size           : 0
10link_off            : 0 (0x000000)
11string_ids_size     : 165
12string_ids_off      : 112 (0x000070)
13type_ids_size       : 38
14type_ids_off        : 772 (0x000304)
15proto_ids_size      : 51
16proto_ids_off       : 924 (0x00039c)
17field_ids_size      : 3
18field_ids_off       : 1536 (0x000600)
19method_ids_size     : 78
20method_ids_off      : 1560 (0x000618)
21class_defs_size     : 2
22class_defs_off      : 2184 (0x000888)
23data_size           : 6552
24data_off            : 2432 (0x000980)
25
26Class #0 header:
27class_idx           : 8
28access_flags        : 1024 (0x0400)
29superclass_idx      : 13
30interfaces_off      : 0 (0x000000)
31source_file_idx     : 27
32annotations_off     : 0 (0x000000)
33class_data_off      : 8589 (0x00218d)
34static_fields_size  : 0
35instance_fields_size: 0
36direct_methods_size : 1
37virtual_methods_size: 2
38
39Class #0            -
40  Class descriptor  : 'Linvokecustom/Super;'
41  Access flags      : 0x0400 (ABSTRACT)
42  Superclass        : 'Ljava/lang/Object;'
43  Interfaces        -
44  Static fields     -
45  Instance fields   -
46  Direct methods    -
47    #0              : (in Linvokecustom/Super;)
48      name          : '<init>'
49      type          : '()V'
50      access        : 0x10000 (CONSTRUCTOR)
51      code          -
52      registers     : 1
53      ins           : 1
54      outs          : 1
55      insns size    : 4 16-bit code units
56000990:                                        |[000990] invokecustom.Super.<init>:()V
570009a0: 7010 2b00 0000                         |0000: invoke-direct {v0}, Ljava/lang/Object;.<init>:()V // method@002b
580009a6: 0e00                                   |0003: return-void
59      catches       : (none)
60      positions     :
61        0x0000 line=29
62      locals        :
63        0x0000 - 0x0004 reg=0 this Linvokecustom/Super;
64
65  Virtual methods   -
66    #0              : (in Linvokecustom/Super;)
67      name          : 'helperMethodTest9'
68      type          : '()V'
69      access        : 0x0401 (PUBLIC ABSTRACT)
70      code          : (none)
71
72    #1              : (in Linvokecustom/Super;)
73      name          : 'targetMethodTest4'
74      type          : '()V'
75      access        : 0x0001 (PUBLIC)
76      code          -
77      registers     : 3
78      ins           : 1
79      outs          : 2
80      insns size    : 8 16-bit code units
810009a8:                                        |[0009a8] invokecustom.Super.targetMethodTest4:()V
820009b8: 6200 0200                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
830009bc: 1a01 8b00                              |0002: const-string v1, "targetMethodTest4 from Super" // string@008b
840009c0: 6e20 2900 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
850009c6: 0e00                                   |0007: return-void
86      catches       : (none)
87      positions     :
88        0x0000 line=31
89        0x0007 line=32
90      locals        :
91        0x0000 - 0x0008 reg=2 this Linvokecustom/Super;
92
93  source_file_idx   : 27 (InvokeCustom.java)
94
95Class #1 header:
96class_idx           : 7
97access_flags        : 1 (0x0001)
98superclass_idx      : 8
99interfaces_off      : 5460 (0x001554)
100source_file_idx     : 27
101annotations_off     : 5396 (0x001514)
102class_data_off      : 8607 (0x00219f)
103static_fields_size  : 1
104instance_fields_size: 1
105direct_methods_size : 29
106virtual_methods_size: 3
107
108Class #1 annotations:
109Annotations on method #3 'bsmCreateCallSite'
110  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
111Annotations on method #4 'bsmLookupStatic'
112  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/NoSuchMethodException; Ljava/lang/IllegalAccessException; }
113Annotations on method #5 'bsmLookupStaticWithExtraArgs'
114  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/NoSuchMethodException; Ljava/lang/IllegalAccessException; }
115Annotations on method #6 'bsmLookupTest9'
116  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
117Annotations on method #7 'checkFieldTest9'
118  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
119Annotations on method #8 'checkStaticFieldTest9'
120  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
121
122Class #1            -
123  Class descriptor  : 'Linvokecustom/InvokeCustom;'
124  Access flags      : 0x0001 (PUBLIC)
125  Superclass        : 'Linvokecustom/Super;'
126  Interfaces        -
127    #0              : 'Ljava/lang/Runnable;'
128  Static fields     -
129    #0              : (in Linvokecustom/InvokeCustom;)
130      name          : 'staticFieldTest9'
131      type          : 'I'
132      access        : 0x000a (PRIVATE STATIC)
133  Instance fields   -
134    #0              : (in Linvokecustom/InvokeCustom;)
135      name          : 'fieldTest9'
136      type          : 'F'
137      access        : 0x0002 (PRIVATE)
138  Direct methods    -
139    #0              : (in Linvokecustom/InvokeCustom;)
140      name          : '<clinit>'
141      type          : '()V'
142      access        : 0x10008 (STATIC CONSTRUCTOR)
143      code          -
144      registers     : 1
145      ins           : 0
146      outs          : 0
147      insns size    : 4 16-bit code units
1480009c8:                                        |[0009c8] invokecustom.InvokeCustom.<clinit>:()V
1490009d8: 1200                                   |0000: const/4 v0, #int 0 // #0
1500009da: 6700 0100                              |0001: sput v0, Linvokecustom/InvokeCustom;.staticFieldTest9:I // field@0001
1510009de: 0e00                                   |0003: return-void
152      catches       : (none)
153      positions     :
154        0x0000 line=102
155      locals        :
156
157    #1              : (in Linvokecustom/InvokeCustom;)
158      name          : '<init>'
159      type          : '()V'
160      access        : 0x10001 (PUBLIC CONSTRUCTOR)
161      code          -
162      registers     : 2
163      ins           : 1
164      outs          : 1
165      insns size    : 7 16-bit code units
1660009e0:                                        |[0009e0] invokecustom.InvokeCustom.<init>:()V
1670009f0: 7010 2000 0100                         |0000: invoke-direct {v1}, Linvokecustom/Super;.<init>:()V // method@0020
1680009f6: 1200                                   |0003: const/4 v0, #int 0 // #0
1690009f8: 5910 0000                              |0004: iput v0, v1, Linvokecustom/InvokeCustom;.fieldTest9:F // field@0000
1700009fc: 0e00                                   |0006: return-void
171      catches       : (none)
172      positions     :
173        0x0000 line=39
174        0x0003 line=115
175        0x0006 line=39
176      locals        :
177        0x0000 - 0x0007 reg=1 this Linvokecustom/InvokeCustom;
178
179    #2              : (in Linvokecustom/InvokeCustom;)
180      name          : '<init>'
181      type          : '(I)V'
182      access        : 0x10001 (PUBLIC CONSTRUCTOR)
183      code          -
184      registers     : 5
185      ins           : 2
186      outs          : 2
187      insns size    : 37 16-bit code units
188000a00:                                        |[000a00] invokecustom.InvokeCustom.<init>:(I)V
189000a10: 7010 2000 0300                         |0000: invoke-direct {v3}, Linvokecustom/Super;.<init>:()V // method@0020
190000a16: 1200                                   |0003: const/4 v0, #int 0 // #0
191000a18: 5930 0000                              |0004: iput v0, v3, Linvokecustom/InvokeCustom;.fieldTest9:F // field@0000
192000a1c: 6200 0200                              |0006: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
193000a20: 2201 1000                              |0008: new-instance v1, Ljava/lang/StringBuilder; // type@0010
194000a24: 7010 3000 0100                         |000a: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@0030
195000a2a: 1a02 1a00                              |000d: const-string v2, "InvokeCustom.<init>(" // string@001a
196000a2e: 6e20 3600 2100                         |000f: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
197000a34: 0c01                                   |0012: move-result-object v1
198000a36: 6e20 3300 4100                         |0013: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0033
199000a3c: 0c01                                   |0016: move-result-object v1
200000a3e: 1a02 0800                              |0017: const-string v2, ")" // string@0008
201000a42: 6e20 3600 2100                         |0019: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
202000a48: 0c01                                   |001c: move-result-object v1
203000a4a: 6e10 3700 0100                         |001d: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0037
204000a50: 0c01                                   |0020: move-result-object v1
205000a52: 6e20 2900 1000                         |0021: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
206000a58: 0e00                                   |0024: return-void
207      catches       : (none)
208      positions     :
209        0x0000 line=40
210        0x0003 line=115
211        0x0006 line=41
212        0x0024 line=42
213      locals        :
214        0x0000 - 0x0025 reg=3 this Linvokecustom/InvokeCustom;
215        0x0000 - 0x0025 reg=4 (null) I
216
217    #3              : (in Linvokecustom/InvokeCustom;)
218      name          : 'bsmCreateCallSite'
219      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/CallSite;'
220      access        : 0x0009 (PUBLIC STATIC)
221      code          -
222      registers     : 7
223      ins           : 4
224      outs          : 2
225      insns size    : 36 16-bit code units
226000a5c:                                        |[000a5c] invokecustom.InvokeCustom.bsmCreateCallSite:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/CallSite;
227000a6c: 6200 0200                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
228000a70: 2201 1000                              |0002: new-instance v1, Ljava/lang/StringBuilder; // type@0010
229000a74: 7010 3000 0100                         |0004: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@0030
230000a7a: 1a02 6000                              |0007: const-string v2, "bsmCreateCallSite [" // string@0060
231000a7e: 6e20 3600 2100                         |0009: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
232000a84: 0c01                                   |000c: move-result-object v1
233000a86: 6e20 3500 6100                         |000d: invoke-virtual {v1, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@0035
234000a8c: 0c01                                   |0010: move-result-object v1
235000a8e: 1a02 5900                              |0011: const-string v2, "]" // string@0059
236000a92: 6e20 3600 2100                         |0013: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
237000a98: 0c01                                   |0016: move-result-object v1
238000a9a: 6e10 3700 0100                         |0017: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0037
239000aa0: 0c01                                   |001a: move-result-object v1
240000aa2: 6e20 2900 1000                         |001b: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
241000aa8: 2200 1400                              |001e: new-instance v0, Ljava/lang/invoke/ConstantCallSite; // type@0014
242000aac: 7020 3800 6000                         |0020: invoke-direct {v0, v6}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@0038
243000ab2: 1100                                   |0023: return-object v0
244      catches       : (none)
245      positions     :
246        0x0000 line=160
247        0x001e line=161
248      locals        :
249        0x0000 - 0x0024 reg=3 (null) Ljava/lang/invoke/MethodHandles$Lookup;
250        0x0000 - 0x0024 reg=4 (null) Ljava/lang/String;
251        0x0000 - 0x0024 reg=5 (null) Ljava/lang/invoke/MethodType;
252        0x0000 - 0x0024 reg=6 (null) Ljava/lang/invoke/MethodHandle;
253
254    #4              : (in Linvokecustom/InvokeCustom;)
255      name          : 'bsmLookupStatic'
256      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;'
257      access        : 0x0009 (PUBLIC STATIC)
258      code          -
259      registers     : 5
260      ins           : 3
261      outs          : 4
262      insns size    : 29 16-bit code units
263000ab4:                                        |[000ab4] invokecustom.InvokeCustom.bsmLookupStatic:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
264000ac4: 6200 0200                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
265000ac8: 1a01 6200                              |0002: const-string v1, "bsmLookupStatic []" // string@0062
266000acc: 6e20 2900 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
267000ad2: 7100 4600 0000                         |0007: invoke-static {}, Ljava/lang/invoke/MethodHandles;.lookup:()Ljava/lang/invoke/MethodHandles$Lookup; // method@0046
268000ad8: 0c00                                   |000a: move-result-object v0
269000ada: 6e10 4500 0000                         |000b: invoke-virtual {v0}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@0045
270000ae0: 0c01                                   |000e: move-result-object v1
271000ae2: 6e40 4400 1043                         |000f: invoke-virtual {v0, v1, v3, v4}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@0044
272000ae8: 0c00                                   |0012: move-result-object v0
273000aea: 2201 1400                              |0013: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0014
274000aee: 6e20 3a00 4000                         |0015: invoke-virtual {v0, v4}, Ljava/lang/invoke/MethodHandle;.asType:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@003a
275000af4: 0c00                                   |0018: move-result-object v0
276000af6: 7020 3800 0100                         |0019: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@0038
277000afc: 1101                                   |001c: return-object v1
278      catches       : (none)
279      positions     :
280        0x0000 line=142
281        0x0007 line=143
282        0x000b line=144
283        0x0013 line=145
284      locals        :
285        0x0000 - 0x001d reg=2 (null) Ljava/lang/invoke/MethodHandles$Lookup;
286        0x0000 - 0x001d reg=3 (null) Ljava/lang/String;
287        0x0000 - 0x001d reg=4 (null) Ljava/lang/invoke/MethodType;
288
289    #5              : (in Linvokecustom/InvokeCustom;)
290      name          : 'bsmLookupStaticWithExtraArgs'
291      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;IJFD)Ljava/lang/invoke/CallSite;'
292      access        : 0x0009 (PUBLIC STATIC)
293      code          -
294      registers     : 12
295      ins           : 9
296      outs          : 4
297      insns size    : 82 16-bit code units
298000b00:                                        |[000b00] invokecustom.InvokeCustom.bsmLookupStaticWithExtraArgs:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;IJFD)Ljava/lang/invoke/CallSite;
299000b10: 6200 0200                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
300000b14: 2201 1000                              |0002: new-instance v1, Ljava/lang/StringBuilder; // type@0010
301000b18: 7010 3000 0100                         |0004: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@0030
302000b1e: 1a02 6400                              |0007: const-string v2, "bsmLookupStaticWithExtraArgs [" // string@0064
303000b22: 6e20 3600 2100                         |0009: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
304000b28: 0c01                                   |000c: move-result-object v1
305000b2a: 6e20 3300 6100                         |000d: invoke-virtual {v1, v6}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0033
306000b30: 0c01                                   |0010: move-result-object v1
307000b32: 1a02 0900                              |0011: const-string v2, ", " // string@0009
308000b36: 6e20 3600 2100                         |0013: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
309000b3c: 0c01                                   |0016: move-result-object v1
310000b3e: 6e30 3400 7108                         |0017: invoke-virtual {v1, v7, v8}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@0034
311000b44: 0c01                                   |001a: move-result-object v1
312000b46: 1a02 0900                              |001b: const-string v2, ", " // string@0009
313000b4a: 6e20 3600 2100                         |001d: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
314000b50: 0c01                                   |0020: move-result-object v1
315000b52: 6e20 3200 9100                         |0021: invoke-virtual {v1, v9}, Ljava/lang/StringBuilder;.append:(F)Ljava/lang/StringBuilder; // method@0032
316000b58: 0c01                                   |0024: move-result-object v1
317000b5a: 1a02 0900                              |0025: const-string v2, ", " // string@0009
318000b5e: 6e20 3600 2100                         |0027: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
319000b64: 0c01                                   |002a: move-result-object v1
320000b66: 6e30 3100 a10b                         |002b: invoke-virtual {v1, v10, v11}, Ljava/lang/StringBuilder;.append:(D)Ljava/lang/StringBuilder; // method@0031
321000b6c: 0c01                                   |002e: move-result-object v1
322000b6e: 1a02 5900                              |002f: const-string v2, "]" // string@0059
323000b72: 6e20 3600 2100                         |0031: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
324000b78: 0c01                                   |0034: move-result-object v1
325000b7a: 6e10 3700 0100                         |0035: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0037
326000b80: 0c01                                   |0038: move-result-object v1
327000b82: 6e20 2900 1000                         |0039: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
328000b88: 7100 4600 0000                         |003c: invoke-static {}, Ljava/lang/invoke/MethodHandles;.lookup:()Ljava/lang/invoke/MethodHandles$Lookup; // method@0046
329000b8e: 0c00                                   |003f: move-result-object v0
330000b90: 6e10 4500 0000                         |0040: invoke-virtual {v0}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@0045
331000b96: 0c01                                   |0043: move-result-object v1
332000b98: 6e40 4400 1054                         |0044: invoke-virtual {v0, v1, v4, v5}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@0044
333000b9e: 0c00                                   |0047: move-result-object v0
334000ba0: 2201 1400                              |0048: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0014
335000ba4: 6e20 3a00 5000                         |004a: invoke-virtual {v0, v5}, Ljava/lang/invoke/MethodHandle;.asType:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@003a
336000baa: 0c00                                   |004d: move-result-object v0
337000bac: 7020 3800 0100                         |004e: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@0038
338000bb2: 1101                                   |0051: return-object v1
339      catches       : (none)
340      positions     :
341        0x0000 line=151
342        0x003c line=152
343        0x0040 line=153
344        0x0048 line=154
345      locals        :
346        0x0000 - 0x0052 reg=3 (null) Ljava/lang/invoke/MethodHandles$Lookup;
347        0x0000 - 0x0052 reg=4 (null) Ljava/lang/String;
348        0x0000 - 0x0052 reg=5 (null) Ljava/lang/invoke/MethodType;
349        0x0000 - 0x0052 reg=6 (null) I
350        0x0000 - 0x0052 reg=7 (null) J
351        0x0000 - 0x0052 reg=9 (null) F
352        0x0000 - 0x0052 reg=10 (null) D
353
354    #6              : (in Linvokecustom/InvokeCustom;)
355      name          : 'bsmLookupTest9'
356      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/CallSite;'
357      access        : 0x0009 (PUBLIC STATIC)
358      code          -
359      registers     : 13
360      ins           : 10
361      outs          : 4
362      insns size    : 135 16-bit code units
363000bb4:                                        |[000bb4] invokecustom.InvokeCustom.bsmLookupTest9:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/CallSite;
364000bc4: 6200 0200                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
365000bc8: 2201 1000                              |0002: new-instance v1, Ljava/lang/StringBuilder; // type@0010
366000bcc: 7010 3000 0100                         |0004: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@0030
367000bd2: 1a02 6600                              |0007: const-string v2, "bsmLookupTest9 [" // string@0066
368000bd6: 6e20 3600 2100                         |0009: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
369000bdc: 0c01                                   |000c: move-result-object v1
370000bde: 6e20 3500 6100                         |000d: invoke-virtual {v1, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@0035
371000be4: 0c01                                   |0010: move-result-object v1
372000be6: 1a02 0900                              |0011: const-string v2, ", " // string@0009
373000bea: 6e20 3600 2100                         |0013: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
374000bf0: 0c01                                   |0016: move-result-object v1
375000bf2: 6e20 3500 7100                         |0017: invoke-virtual {v1, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@0035
376000bf8: 0c01                                   |001a: move-result-object v1
377000bfa: 1a02 0900                              |001b: const-string v2, ", " // string@0009
378000bfe: 6e20 3600 2100                         |001d: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
379000c04: 0c01                                   |0020: move-result-object v1
380000c06: 6e20 3500 8100                         |0021: invoke-virtual {v1, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@0035
381000c0c: 0c01                                   |0024: move-result-object v1
382000c0e: 1a02 0900                              |0025: const-string v2, ", " // string@0009
383000c12: 6e20 3600 2100                         |0027: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
384000c18: 0c01                                   |002a: move-result-object v1
385000c1a: 6e20 3500 9100                         |002b: invoke-virtual {v1, v9}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@0035
386000c20: 0c01                                   |002e: move-result-object v1
387000c22: 1a02 5900                              |002f: const-string v2, "]" // string@0059
388000c26: 6e20 3600 2100                         |0031: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
389000c2c: 0c01                                   |0034: move-result-object v1
390000c2e: 6e10 3700 0100                         |0035: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0037
391000c34: 0c01                                   |0038: move-result-object v1
392000c36: 6e20 2900 1000                         |0039: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
393000c3c: 6200 0200                              |003c: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
394000c40: 2201 1000                              |003e: new-instance v1, Ljava/lang/StringBuilder; // type@0010
395000c44: 7010 3000 0100                         |0040: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@0030
396000c4a: 6e20 3600 4100                         |0043: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
397000c50: 0c01                                   |0046: move-result-object v1
398000c52: 1a02 0100                              |0047: const-string v2, " " // string@0001
399000c56: 6e20 3600 2100                         |0049: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
400000c5c: 0c01                                   |004c: move-result-object v1
401000c5e: 6e20 3500 5100                         |004d: invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@0035
402000c64: 0c01                                   |0050: move-result-object v1
403000c66: 6e10 3700 0100                         |0051: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0037
404000c6c: 0c01                                   |0054: move-result-object v1
405000c6e: 6e20 2900 1000                         |0055: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
406000c74: 7120 0800 7600                         |0058: invoke-static {v6, v7}, Linvokecustom/InvokeCustom;.checkStaticFieldTest9:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)V // method@0008
407000c7a: 2200 0700                              |005b: new-instance v0, Linvokecustom/InvokeCustom; // type@0007
408000c7e: 7010 0100 0000                         |005d: invoke-direct {v0}, Linvokecustom/InvokeCustom;.<init>:()V // method@0001
409000c84: 7030 0700 8009                         |0060: invoke-direct {v0, v8, v9}, Linvokecustom/InvokeCustom;.checkFieldTest9:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)V // method@0007
410000c8a: fa20 4000 0a00 2700                    |0063: invoke-polymorphic {v10, v0}, Ljava/lang/invoke/MethodHandle;.invokeExact:([Ljava/lang/Object;)Ljava/lang/Object;, (Linvokecustom/InvokeCustom;)V // method@0040, proto@0027
411000c92: 1230                                   |0067: const/4 v0, #int 3 // #3
412000c94: fa20 4000 0b00 0500                    |0068: invoke-polymorphic {v11, v0}, Ljava/lang/invoke/MethodHandle;.invokeExact:([Ljava/lang/Object;)Ljava/lang/Object;, (I)Linvokecustom/InvokeCustom; // method@0040, proto@0005
413000c9c: 0c00                                   |006c: move-result-object v0
414000c9e: fa20 3b00 0c00 2700                    |006d: invoke-polymorphic {v12, v0}, Ljava/lang/invoke/MethodHandle;.invoke:([Ljava/lang/Object;)Ljava/lang/Object;, (Linvokecustom/InvokeCustom;)V // method@003b, proto@0027
415000ca6: 7100 4600 0000                         |0071: invoke-static {}, Ljava/lang/invoke/MethodHandles;.lookup:()Ljava/lang/invoke/MethodHandles$Lookup; // method@0046
416000cac: 0c00                                   |0074: move-result-object v0
417000cae: 6e10 4500 0000                         |0075: invoke-virtual {v0}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@0045
418000cb4: 0c01                                   |0078: move-result-object v1
419000cb6: 6e40 4400 1054                         |0079: invoke-virtual {v0, v1, v4, v5}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@0044
420000cbc: 0c00                                   |007c: move-result-object v0
421000cbe: 2201 1400                              |007d: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0014
422000cc2: 6e20 3a00 5000                         |007f: invoke-virtual {v0, v5}, Ljava/lang/invoke/MethodHandle;.asType:(Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@003a
423000cc8: 0c00                                   |0082: move-result-object v0
424000cca: 7020 3800 0100                         |0083: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@0038
425000cd0: 1101                                   |0086: return-object v1
426      catches       : (none)
427      positions     :
428        0x0000 line=170
429        0x003c line=172
430        0x0058 line=175
431        0x005b line=176
432        0x0060 line=177
433        0x0063 line=180
434        0x0067 line=182
435        0x006d line=183
436        0x0071 line=185
437        0x0075 line=186
438        0x007d line=187
439      locals        :
440        0x0000 - 0x0087 reg=3 (null) Ljava/lang/invoke/MethodHandles$Lookup;
441        0x0000 - 0x0087 reg=4 (null) Ljava/lang/String;
442        0x0000 - 0x0087 reg=5 (null) Ljava/lang/invoke/MethodType;
443        0x0000 - 0x0087 reg=6 (null) Ljava/lang/invoke/MethodHandle;
444        0x0000 - 0x0087 reg=7 (null) Ljava/lang/invoke/MethodHandle;
445        0x0000 - 0x0087 reg=8 (null) Ljava/lang/invoke/MethodHandle;
446        0x0000 - 0x0087 reg=9 (null) Ljava/lang/invoke/MethodHandle;
447        0x0000 - 0x0087 reg=10 (null) Ljava/lang/invoke/MethodHandle;
448        0x0000 - 0x0087 reg=11 (null) Ljava/lang/invoke/MethodHandle;
449        0x0000 - 0x0087 reg=12 (null) Ljava/lang/invoke/MethodHandle;
450
451    #7              : (in Linvokecustom/InvokeCustom;)
452      name          : 'checkFieldTest9'
453      type          : '(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)V'
454      access        : 0x0002 (PRIVATE)
455      code          -
456      registers     : 9
457      ins           : 3
458      outs          : 3
459      insns size    : 82 16-bit code units
460000cd4:                                        |[000cd4] invokecustom.InvokeCustom.checkFieldTest9:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)V
461000ce4: 1405 0ff0 6a20                         |0000: const v5, #float 1.99e-19 // #206af00f
462000cea: fa20 4000 6700 0100                    |0003: invoke-polymorphic {v7, v6}, Ljava/lang/invoke/MethodHandle;.invokeExact:([Ljava/lang/Object;)Ljava/lang/Object;, (Linvokecustom/InvokeCustom;)F // method@0040, proto@0001
463000cf2: 0a00                                   |0007: move-result v0
464000cf4: fa30 4000 6805 2800                    |0008: invoke-polymorphic {v8, v6, v5}, Ljava/lang/invoke/MethodHandle;.invokeExact:([Ljava/lang/Object;)Ljava/lang/Object;, (Linvokecustom/InvokeCustom;F)V // method@0040, proto@0028
465000cfc: fa20 4000 6700 0100                    |000c: invoke-polymorphic {v7, v6}, Ljava/lang/invoke/MethodHandle;.invokeExact:([Ljava/lang/Object;)Ljava/lang/Object;, (Linvokecustom/InvokeCustom;)F // method@0040, proto@0001
466000d04: 0a01                                   |0010: move-result v1
467000d06: 6202 0200                              |0011: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
468000d0a: 2203 1000                              |0013: new-instance v3, Ljava/lang/StringBuilder; // type@0010
469000d0e: 7010 3000 0300                         |0015: invoke-direct {v3}, Ljava/lang/StringBuilder;.<init>:()V // method@0030
470000d14: 1a04 6800                              |0018: const-string v4, "checkFieldTest9: old " // string@0068
471000d18: 6e20 3600 4300                         |001a: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
472000d1e: 0c03                                   |001d: move-result-object v3
473000d20: 6e20 3200 0300                         |001e: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(F)Ljava/lang/StringBuilder; // method@0032
474000d26: 0c00                                   |0021: move-result-object v0
475000d28: 1a03 0700                              |0022: const-string v3, " new " // string@0007
476000d2c: 6e20 3600 3000                         |0024: invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
477000d32: 0c00                                   |0027: move-result-object v0
478000d34: 6e20 3200 1000                         |0028: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(F)Ljava/lang/StringBuilder; // method@0032
479000d3a: 0c00                                   |002b: move-result-object v0
480000d3c: 1a03 0600                              |002c: const-string v3, " expected " // string@0006
481000d40: 6e20 3600 3000                         |002e: invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
482000d46: 0c00                                   |0031: move-result-object v0
483000d48: 6e20 3200 5000                         |0032: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(F)Ljava/lang/StringBuilder; // method@0032
484000d4e: 0c00                                   |0035: move-result-object v0
485000d50: 1a03 0100                              |0036: const-string v3, " " // string@0001
486000d54: 6e20 3600 3000                         |0038: invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
487000d5a: 0c00                                   |003b: move-result-object v0
488000d5c: 6e10 3700 0000                         |003c: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0037
489000d62: 0c00                                   |003f: move-result-object v0
490000d64: 6e20 2300 0200                         |0040: invoke-virtual {v2, v0}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@0023
491000d6a: 6202 0200                              |0043: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
492000d6e: 2d00 0105                              |0045: cmpl-float v0, v1, v5
493000d72: 3900 0800                              |0047: if-nez v0, 004f // +0008
494000d76: 1a00 4400                              |0049: const-string v0, "OK" // string@0044
495000d7a: 6e20 2900 0200                         |004b: invoke-virtual {v2, v0}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
496000d80: 0e00                                   |004e: return-void
497000d82: 1a00 1100                              |004f: const-string v0, "ERROR" // string@0011
498000d86: 28fa                                   |0051: goto 004b // -0006
499      catches       : (none)
500      positions     :
501        0x0003 line=120
502        0x0008 line=121
503        0x000c line=122
504        0x0011 line=123
505        0x0043 line=125
506        0x004e line=126
507        0x004f line=125
508      locals        :
509        0x0000 - 0x0052 reg=6 this Linvokecustom/InvokeCustom;
510        0x0000 - 0x0052 reg=7 (null) Ljava/lang/invoke/MethodHandle;
511        0x0000 - 0x0052 reg=8 (null) Ljava/lang/invoke/MethodHandle;
512
513    #8              : (in Linvokecustom/InvokeCustom;)
514      name          : 'checkStaticFieldTest9'
515      type          : '(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)V'
516      access        : 0x000a (PRIVATE STATIC)
517      code          -
518      registers     : 8
519      ins           : 2
520      outs          : 2
521      insns size    : 80 16-bit code units
522000d88:                                        |[000d88] invokecustom.InvokeCustom.checkStaticFieldTest9:(Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)V
523000d98: 1405 1032 5476                         |0000: const v5, #float 1.07596e+33 // #76543210
524000d9e: fa10 4000 0600 0200                    |0003: invoke-polymorphic {v6}, Ljava/lang/invoke/MethodHandle;.invokeExact:([Ljava/lang/Object;)Ljava/lang/Object;, ()I // method@0040, proto@0002
525000da6: 0a00                                   |0007: move-result v0
526000da8: fa20 4000 5700 2500                    |0008: invoke-polymorphic {v7, v5}, Ljava/lang/invoke/MethodHandle;.invokeExact:([Ljava/lang/Object;)Ljava/lang/Object;, (I)V // method@0040, proto@0025
527000db0: fa10 4000 0600 0200                    |000c: invoke-polymorphic {v6}, Ljava/lang/invoke/MethodHandle;.invokeExact:([Ljava/lang/Object;)Ljava/lang/Object;, ()I // method@0040, proto@0002
528000db8: 0a01                                   |0010: move-result v1
529000dba: 6202 0200                              |0011: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
530000dbe: 2203 1000                              |0013: new-instance v3, Ljava/lang/StringBuilder; // type@0010
531000dc2: 7010 3000 0300                         |0015: invoke-direct {v3}, Ljava/lang/StringBuilder;.<init>:()V // method@0030
532000dc8: 1a04 6a00                              |0018: const-string v4, "checkStaticFieldTest9: old " // string@006a
533000dcc: 6e20 3600 4300                         |001a: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
534000dd2: 0c03                                   |001d: move-result-object v3
535000dd4: 6e20 3300 0300                         |001e: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0033
536000dda: 0c00                                   |0021: move-result-object v0
537000ddc: 1a03 0700                              |0022: const-string v3, " new " // string@0007
538000de0: 6e20 3600 3000                         |0024: invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
539000de6: 0c00                                   |0027: move-result-object v0
540000de8: 6e20 3300 1000                         |0028: invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0033
541000dee: 0c00                                   |002b: move-result-object v0
542000df0: 1a03 0600                              |002c: const-string v3, " expected " // string@0006
543000df4: 6e20 3600 3000                         |002e: invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
544000dfa: 0c00                                   |0031: move-result-object v0
545000dfc: 6e20 3300 5000                         |0032: invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0033
546000e02: 0c00                                   |0035: move-result-object v0
547000e04: 1a03 0100                              |0036: const-string v3, " " // string@0001
548000e08: 6e20 3600 3000                         |0038: invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
549000e0e: 0c00                                   |003b: move-result-object v0
550000e10: 6e10 3700 0000                         |003c: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0037
551000e16: 0c00                                   |003f: move-result-object v0
552000e18: 6e20 2300 0200                         |0040: invoke-virtual {v2, v0}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@0023
553000e1e: 6202 0200                              |0043: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
554000e22: 3351 0800                              |0045: if-ne v1, v5, 004d // +0008
555000e26: 1a00 4400                              |0047: const-string v0, "OK" // string@0044
556000e2a: 6e20 2900 0200                         |0049: invoke-virtual {v2, v0}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
557000e30: 0e00                                   |004c: return-void
558000e32: 1a00 1100                              |004d: const-string v0, "ERROR" // string@0011
559000e36: 28fa                                   |004f: goto 0049 // -0006
560      catches       : (none)
561      positions     :
562        0x0003 line=107
563        0x0008 line=108
564        0x000c line=109
565        0x0011 line=110
566        0x0043 line=112
567        0x004c line=113
568        0x004d line=112
569      locals        :
570        0x0000 - 0x0050 reg=6 (null) Ljava/lang/invoke/MethodHandle;
571        0x0000 - 0x0050 reg=7 (null) Ljava/lang/invoke/MethodHandle;
572
573    #9              : (in Linvokecustom/InvokeCustom;)
574      name          : 'lambda$lambdaTest$0'
575      type          : '(Ljava/lang/String;)Z'
576      access        : 0x100a (PRIVATE STATIC SYNTHETIC)
577      code          -
578      registers     : 3
579      ins           : 1
580      outs          : 2
581      insns size    : 11 16-bit code units
582000e38:                                        |[000e38] invokecustom.InvokeCustom.lambda$lambdaTest$0:(Ljava/lang/String;)Z
583000e48: 1a00 4500                              |0000: const-string v0, "One" // string@0045
584000e4c: 6e10 2f00 0200                         |0002: invoke-virtual {v2}, Ljava/lang/String;.trim:()Ljava/lang/String; // method@002f
585000e52: 0c01                                   |0005: move-result-object v1
586000e54: 6e20 2e00 1000                         |0006: invoke-virtual {v0, v1}, Ljava/lang/String;.equals:(Ljava/lang/Object;)Z // method@002e
587000e5a: 0a00                                   |0009: move-result v0
588000e5c: 0f00                                   |000a: return v0
589      catches       : (none)
590      positions     :
591        0x0000 line=192
592      locals        :
593        0x0000 - 0x000b reg=2 (null) Ljava/lang/String;
594
595    #10              : (in Linvokecustom/InvokeCustom;)
596      name          : 'lambdaTest'
597      type          : '()V'
598      access        : 0x0009 (PUBLIC STATIC)
599      code          -
600      registers     : 3
601      ins           : 0
602      outs          : 2
603      insns size    : 71 16-bit code units
604000e60:                                        |[000e60] invokecustom.InvokeCustom.lambdaTest:()V
605000e70: 1230                                   |0000: const/4 v0, #int 3 // #3
606000e72: 2300 2500                              |0001: new-array v0, v0, [Ljava/lang/String; // type@0025
607000e76: 1201                                   |0003: const/4 v1, #int 0 // #0
608000e78: 1a02 4900                              |0004: const-string v2, "Three" // string@0049
609000e7c: 4d02 0001                              |0006: aput-object v2, v0, v1
610000e80: 1211                                   |0008: const/4 v1, #int 1 // #1
611000e82: 1a02 4500                              |0009: const-string v2, "One" // string@0045
612000e86: 4d02 0001                              |000b: aput-object v2, v0, v1
613000e8a: 1221                                   |000d: const/4 v1, #int 2 // #2
614000e8c: 1a02 1600                              |000e: const-string v2, "FortyTwo" // string@0016
615000e90: 4d02 0001                              |0010: aput-object v2, v0, v1
616000e94: 7110 4700 0000                         |0012: invoke-static {v0}, Ljava/util/Arrays;.asList:([Ljava/lang/Object;)Ljava/util/List; // method@0047
617000e9a: 0c01                                   |0015: move-result-object v1
618000e9c: 7210 4800 0100                         |0016: invoke-interface {v1}, Ljava/util/List;.stream:()Ljava/util/stream/Stream; // method@0048
619000ea2: 0c00                                   |0019: move-result-object v0
620000ea4: fc00 0000 0000                         |001a: invoke-custom {}, call_site@0000
621000eaa: 0c02                                   |001d: move-result-object v2
622000eac: 7220 4a00 2000                         |001e: invoke-interface {v0, v2}, Ljava/util/stream/Stream;.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream; // method@004a
623000eb2: 0c00                                   |0021: move-result-object v0
624000eb4: fc00 0100 0000                         |0022: invoke-custom {}, call_site@0001
625000eba: 0c02                                   |0025: move-result-object v2
626000ebc: 7220 4d00 2000                         |0026: invoke-interface {v0, v2}, Ljava/util/stream/Stream;.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream; // method@004d
627000ec2: 0c00                                   |0029: move-result-object v0
628000ec4: 7210 4b00 0000                         |002a: invoke-interface {v0}, Ljava/util/stream/Stream;.findAny:()Ljava/util/Optional; // method@004b
629000eca: 0c00                                   |002d: move-result-object v0
630000ecc: 1a02 0000                              |002e: const-string v2, "" // string@0000
631000ed0: 6e20 4900 2000                         |0030: invoke-virtual {v0, v2}, Ljava/util/Optional;.orElse:(Ljava/lang/Object;)Ljava/lang/Object; // method@0049
632000ed6: 0c00                                   |0033: move-result-object v0
633000ed8: 1f00 0f00                              |0034: check-cast v0, Ljava/lang/String; // type@000f
634000edc: 7210 4800 0100                         |0036: invoke-interface {v1}, Ljava/util/List;.stream:()Ljava/util/stream/Stream; // method@0048
635000ee2: 0c00                                   |0039: move-result-object v0
636000ee4: 6201 0200                              |003a: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
637000ee8: 6e10 2c00 0100                         |003c: invoke-virtual {v1}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@002c
638000eee: fc10 0200 0100                         |003f: invoke-custom {v1}, call_site@0002
639000ef4: 0c01                                   |0042: move-result-object v1
640000ef6: 7220 4c00 1000                         |0043: invoke-interface {v0, v1}, Ljava/util/stream/Stream;.forEach:(Ljava/util/function/Consumer;)V // method@004c
641000efc: 0e00                                   |0046: return-void
642      catches       : (none)
643      positions     :
644        0x0000 line=191
645        0x0016 line=192
646        0x0026 line=193
647        0x0036 line=194
648        0x0046 line=195
649      locals        :
650
651    #11              : (in Linvokecustom/InvokeCustom;)
652      name          : 'main'
653      type          : '([Ljava/lang/String;)V'
654      access        : 0x0009 (PUBLIC STATIC)
655      code          -
656      registers     : 1
657      ins           : 1
658      outs          : 0
659      insns size    : 28 16-bit code units
660000f00:                                        |[000f00] invokecustom.InvokeCustom.main:([Ljava/lang/String;)V
661000f10: 7100 1700 0000                         |0000: invoke-static {}, Linvokecustom/InvokeCustom;.test1:()V // method@0017
662000f16: 7100 1800 0000                         |0003: invoke-static {}, Linvokecustom/InvokeCustom;.test2:()V // method@0018
663000f1c: 7100 1900 0000                         |0006: invoke-static {}, Linvokecustom/InvokeCustom;.test3:()V // method@0019
664000f22: 7100 1a00 0000                         |0009: invoke-static {}, Linvokecustom/InvokeCustom;.test4:()V // method@001a
665000f28: 7100 1b00 0000                         |000c: invoke-static {}, Linvokecustom/InvokeCustom;.test5:()V // method@001b
666000f2e: 7100 1c00 0000                         |000f: invoke-static {}, Linvokecustom/InvokeCustom;.test6:()V // method@001c
667000f34: 7100 1d00 0000                         |0012: invoke-static {}, Linvokecustom/InvokeCustom;.test7:()V // method@001d
668000f3a: 7100 1e00 0000                         |0015: invoke-static {}, Linvokecustom/InvokeCustom;.test8:()V // method@001e
669000f40: 7100 1f00 0000                         |0018: invoke-static {}, Linvokecustom/InvokeCustom;.test9:()V // method@001f
670000f46: 0e00                                   |001b: return-void
671      catches       : (none)
672      positions     :
673      locals        :
674
675    #12              : (in Linvokecustom/InvokeCustom;)
676      name          : 'targetMethodTest1'
677      type          : '()V'
678      access        : 0x000a (PRIVATE STATIC)
679      code          -
680      registers     : 2
681      ins           : 0
682      outs          : 2
683      insns size    : 8 16-bit code units
684000f48:                                        |[000f48] invokecustom.InvokeCustom.targetMethodTest1:()V
685000f58: 6200 0200                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
686000f5c: 1a01 1700                              |0002: const-string v1, "Hello World!" // string@0017
687000f60: 6e20 2900 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
688000f66: 0e00                                   |0007: return-void
689      catches       : (none)
690      positions     :
691        0x0000 line=45
692        0x0007 line=46
693      locals        :
694
695    #13              : (in Linvokecustom/InvokeCustom;)
696      name          : 'targetMethodTest2'
697      type          : '(ZBCSIFJDLjava/lang/String;)V'
698      access        : 0x000a (PRIVATE STATIC)
699      code          -
700      registers     : 13
701      ins           : 11
702      outs          : 3
703      insns size    : 46 16-bit code units
704000f68:                                        |[000f68] invokecustom.InvokeCustom.targetMethodTest2:(ZBCSIFJDLjava/lang/String;)V
705000f78: 6200 0200                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
706000f7c: 6e20 2a00 2000                         |0002: invoke-virtual {v0, v2}, Ljava/io/PrintStream;.println:(Z)V // method@002a
707000f82: 6200 0200                              |0005: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
708000f86: 6e20 2700 3000                         |0007: invoke-virtual {v0, v3}, Ljava/io/PrintStream;.println:(I)V // method@0027
709000f8c: 6200 0200                              |000a: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
710000f90: 6e20 2400 4000                         |000c: invoke-virtual {v0, v4}, Ljava/io/PrintStream;.println:(C)V // method@0024
711000f96: 6200 0200                              |000f: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
712000f9a: 6e20 2700 5000                         |0011: invoke-virtual {v0, v5}, Ljava/io/PrintStream;.println:(I)V // method@0027
713000fa0: 6200 0200                              |0014: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
714000fa4: 6e20 2700 6000                         |0016: invoke-virtual {v0, v6}, Ljava/io/PrintStream;.println:(I)V // method@0027
715000faa: 6200 0200                              |0019: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
716000fae: 6e20 2600 7000                         |001b: invoke-virtual {v0, v7}, Ljava/io/PrintStream;.println:(F)V // method@0026
717000fb4: 6200 0200                              |001e: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
718000fb8: 6e30 2800 8009                         |0020: invoke-virtual {v0, v8, v9}, Ljava/io/PrintStream;.println:(J)V // method@0028
719000fbe: 6200 0200                              |0023: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
720000fc2: 6e30 2500 a00b                         |0025: invoke-virtual {v0, v10, v11}, Ljava/io/PrintStream;.println:(D)V // method@0025
721000fc8: 6200 0200                              |0028: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
722000fcc: 6e20 2900 c000                         |002a: invoke-virtual {v0, v12}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
723000fd2: 0e00                                   |002d: return-void
724      catches       : (none)
725      positions     :
726        0x0000 line=50
727        0x0005 line=51
728        0x000a line=52
729        0x000f line=53
730        0x0014 line=54
731        0x0019 line=55
732        0x001e line=56
733        0x0023 line=57
734        0x0028 line=58
735        0x002d line=59
736      locals        :
737        0x0000 - 0x002e reg=2 (null) Z
738        0x0000 - 0x002e reg=3 (null) B
739        0x0000 - 0x002e reg=4 (null) C
740        0x0000 - 0x002e reg=5 (null) S
741        0x0000 - 0x002e reg=6 (null) I
742        0x0000 - 0x002e reg=7 (null) F
743        0x0000 - 0x002e reg=8 (null) J
744        0x0000 - 0x002e reg=10 (null) D
745        0x0000 - 0x002e reg=12 (null) Ljava/lang/String;
746
747    #14              : (in Linvokecustom/InvokeCustom;)
748      name          : 'targetMethodTest3'
749      type          : '()V'
750      access        : 0x000a (PRIVATE STATIC)
751      code          -
752      registers     : 2
753      ins           : 0
754      outs          : 2
755      insns size    : 8 16-bit code units
756000fd4:                                        |[000fd4] invokecustom.InvokeCustom.targetMethodTest3:()V
757000fe4: 6200 0200                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
758000fe8: 1a01 8800                              |0002: const-string v1, "targetMethodTest3 from InvokeCustom" // string@0088
759000fec: 6e20 2900 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
760000ff2: 0e00                                   |0007: return-void
761      catches       : (none)
762      positions     :
763        0x0000 line=62
764        0x0007 line=63
765      locals        :
766
767    #15              : (in Linvokecustom/InvokeCustom;)
768      name          : 'targetMethodTest5'
769      type          : '(III)I'
770      access        : 0x0009 (PUBLIC STATIC)
771      code          -
772      registers     : 7
773      ins           : 3
774      outs          : 2
775      insns size    : 83 16-bit code units
776000ff4:                                        |[000ff4] invokecustom.InvokeCustom.targetMethodTest5:(III)I
777001004: 9000 0405                              |0000: add-int v0, v4, v5
778001008: 6201 0200                              |0002: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
77900100c: 2202 1000                              |0004: new-instance v2, Ljava/lang/StringBuilder; // type@0010
780001010: 7010 3000 0200                         |0006: invoke-direct {v2}, Ljava/lang/StringBuilder;.<init>:()V // method@0030
781001016: 1a03 8d00                              |0009: const-string v3, "targetMethodTest5 " // string@008d
78200101a: 6e20 3600 3200                         |000b: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
783001020: 0c02                                   |000e: move-result-object v2
784001022: 6e20 3300 4200                         |000f: invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0033
785001028: 0c02                                   |0012: move-result-object v2
78600102a: 1a03 0400                              |0013: const-string v3, " + " // string@0004
78700102e: 6e20 3600 3200                         |0015: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
788001034: 0c02                                   |0018: move-result-object v2
789001036: 6e20 3300 5200                         |0019: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0033
79000103c: 0c02                                   |001c: move-result-object v2
79100103e: 1a03 0500                              |001d: const-string v3, " = " // string@0005
792001042: 6e20 3600 3200                         |001f: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
793001048: 0c02                                   |0022: move-result-object v2
79400104a: 6e20 3300 0200                         |0023: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0033
795001050: 0c02                                   |0026: move-result-object v2
796001052: 6e10 3700 0200                         |0027: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0037
797001058: 0c02                                   |002a: move-result-object v2
79800105a: 6e20 2900 2100                         |002b: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
799001060: 3260 2400                              |002e: if-eq v0, v6, 0052 // +0024
800001064: 6201 0200                              |0030: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
801001068: 2202 1000                              |0032: new-instance v2, Ljava/lang/StringBuilder; // type@0010
80200106c: 7010 3000 0200                         |0034: invoke-direct {v2}, Ljava/lang/StringBuilder;.<init>:()V // method@0030
803001072: 1a03 1400                              |0037: const-string v3, "Failed " // string@0014
804001076: 6e20 3600 3200                         |0039: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
80500107c: 0c02                                   |003c: move-result-object v2
80600107e: 6e20 3300 0200                         |003d: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0033
807001084: 0c02                                   |0040: move-result-object v2
808001086: 1a03 0200                              |0041: const-string v3, " != " // string@0002
80900108a: 6e20 3600 3200                         |0043: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
810001090: 0c02                                   |0046: move-result-object v2
811001092: 6e20 3300 6200                         |0047: invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0033
812001098: 0c02                                   |004a: move-result-object v2
81300109a: 6e10 3700 0200                         |004b: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0037
8140010a0: 0c02                                   |004e: move-result-object v2
8150010a2: 6e20 2900 2100                         |004f: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
8160010a8: 0f00                                   |0052: return v0
817      catches       : (none)
818      positions     :
819        0x0000 line=72
820        0x0002 line=73
821        0x002e line=74
822        0x0030 line=75
823        0x0052 line=77
824      locals        :
825        0x0000 - 0x0053 reg=4 (null) I
826        0x0000 - 0x0053 reg=5 (null) I
827        0x0000 - 0x0053 reg=6 (null) I
828
829    #16              : (in Linvokecustom/InvokeCustom;)
830      name          : 'targetMethodTest6'
831      type          : '(JJJ)J'
832      access        : 0x0009 (PUBLIC STATIC)
833      code          -
834      registers     : 12
835      ins           : 6
836      outs          : 3
837      insns size    : 85 16-bit code units
8380010ac:                                        |[0010ac] invokecustom.InvokeCustom.targetMethodTest6:(JJJ)J
8390010bc: 9b00 0608                              |0000: add-long v0, v6, v8
8400010c0: 6202 0200                              |0002: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
8410010c4: 2203 1000                              |0004: new-instance v3, Ljava/lang/StringBuilder; // type@0010
8420010c8: 7010 3000 0300                         |0006: invoke-direct {v3}, Ljava/lang/StringBuilder;.<init>:()V // method@0030
8430010ce: 1a04 9000                              |0009: const-string v4, "targetMethodTest6 " // string@0090
8440010d2: 6e20 3600 4300                         |000b: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
8450010d8: 0c03                                   |000e: move-result-object v3
8460010da: 6e30 3400 6307                         |000f: invoke-virtual {v3, v6, v7}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@0034
8470010e0: 0c03                                   |0012: move-result-object v3
8480010e2: 1a04 0400                              |0013: const-string v4, " + " // string@0004
8490010e6: 6e20 3600 4300                         |0015: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
8500010ec: 0c03                                   |0018: move-result-object v3
8510010ee: 6e30 3400 8309                         |0019: invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@0034
8520010f4: 0c03                                   |001c: move-result-object v3
8530010f6: 1a04 0500                              |001d: const-string v4, " = " // string@0005
8540010fa: 6e20 3600 4300                         |001f: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
855001100: 0c03                                   |0022: move-result-object v3
856001102: 6e30 3400 0301                         |0023: invoke-virtual {v3, v0, v1}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@0034
857001108: 0c03                                   |0026: move-result-object v3
85800110a: 6e10 3700 0300                         |0027: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0037
859001110: 0c03                                   |002a: move-result-object v3
860001112: 6e20 2900 3200                         |002b: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
861001118: 3102 000a                              |002e: cmp-long v2, v0, v10
86200111c: 3802 2400                              |0030: if-eqz v2, 0054 // +0024
863001120: 6202 0200                              |0032: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
864001124: 2203 1000                              |0034: new-instance v3, Ljava/lang/StringBuilder; // type@0010
865001128: 7010 3000 0300                         |0036: invoke-direct {v3}, Ljava/lang/StringBuilder;.<init>:()V // method@0030
86600112e: 1a04 1400                              |0039: const-string v4, "Failed " // string@0014
867001132: 6e20 3600 4300                         |003b: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
868001138: 0c03                                   |003e: move-result-object v3
86900113a: 6e30 3400 0301                         |003f: invoke-virtual {v3, v0, v1}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@0034
870001140: 0c03                                   |0042: move-result-object v3
871001142: 1a04 0200                              |0043: const-string v4, " != " // string@0002
872001146: 6e20 3600 4300                         |0045: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
87300114c: 0c03                                   |0048: move-result-object v3
87400114e: 6e30 3400 a30b                         |0049: invoke-virtual {v3, v10, v11}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@0034
875001154: 0c03                                   |004c: move-result-object v3
876001156: 6e10 3700 0300                         |004d: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0037
87700115c: 0c03                                   |0050: move-result-object v3
87800115e: 6e20 2900 3200                         |0051: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
879001164: 1000                                   |0054: return-wide v0
880      catches       : (none)
881      positions     :
882        0x0000 line=81
883        0x0002 line=82
884        0x002e line=83
885        0x0032 line=84
886        0x0054 line=86
887      locals        :
888        0x0000 - 0x0055 reg=6 (null) J
889        0x0000 - 0x0055 reg=8 (null) J
890        0x0000 - 0x0055 reg=10 (null) J
891
892    #17              : (in Linvokecustom/InvokeCustom;)
893      name          : 'targetMethodTest7'
894      type          : '(FFD)D'
895      access        : 0x0009 (PUBLIC STATIC)
896      code          -
897      registers     : 10
898      ins           : 4
899      outs          : 3
900      insns size    : 86 16-bit code units
901001168:                                        |[001168] invokecustom.InvokeCustom.targetMethodTest7:(FFD)D
902001178: a800 0607                              |0000: mul-float v0, v6, v7
90300117c: 8900                                   |0002: float-to-double v0, v0
90400117e: 6202 0200                              |0003: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
905001182: 2203 1000                              |0005: new-instance v3, Ljava/lang/StringBuilder; // type@0010
906001186: 7010 3000 0300                         |0007: invoke-direct {v3}, Ljava/lang/StringBuilder;.<init>:()V // method@0030
90700118c: 1a04 9300                              |000a: const-string v4, "targetMethodTest7 " // string@0093
908001190: 6e20 3600 4300                         |000c: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
909001196: 0c03                                   |000f: move-result-object v3
910001198: 6e20 3200 6300                         |0010: invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;.append:(F)Ljava/lang/StringBuilder; // method@0032
91100119e: 0c03                                   |0013: move-result-object v3
9120011a0: 1a04 0300                              |0014: const-string v4, " * " // string@0003
9130011a4: 6e20 3600 4300                         |0016: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
9140011aa: 0c03                                   |0019: move-result-object v3
9150011ac: 6e20 3200 7300                         |001a: invoke-virtual {v3, v7}, Ljava/lang/StringBuilder;.append:(F)Ljava/lang/StringBuilder; // method@0032
9160011b2: 0c03                                   |001d: move-result-object v3
9170011b4: 1a04 0500                              |001e: const-string v4, " = " // string@0005
9180011b8: 6e20 3600 4300                         |0020: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
9190011be: 0c03                                   |0023: move-result-object v3
9200011c0: 6e30 3100 0301                         |0024: invoke-virtual {v3, v0, v1}, Ljava/lang/StringBuilder;.append:(D)Ljava/lang/StringBuilder; // method@0031
9210011c6: 0c03                                   |0027: move-result-object v3
9220011c8: 6e10 3700 0300                         |0028: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0037
9230011ce: 0c03                                   |002b: move-result-object v3
9240011d0: 6e20 2900 3200                         |002c: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
9250011d6: 2f02 0008                              |002f: cmpl-double v2, v0, v8
9260011da: 3802 2400                              |0031: if-eqz v2, 0055 // +0024
9270011de: 6202 0200                              |0033: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
9280011e2: 2203 1000                              |0035: new-instance v3, Ljava/lang/StringBuilder; // type@0010
9290011e6: 7010 3000 0300                         |0037: invoke-direct {v3}, Ljava/lang/StringBuilder;.<init>:()V // method@0030
9300011ec: 1a04 1400                              |003a: const-string v4, "Failed " // string@0014
9310011f0: 6e20 3600 4300                         |003c: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
9320011f6: 0c03                                   |003f: move-result-object v3
9330011f8: 6e30 3100 0301                         |0040: invoke-virtual {v3, v0, v1}, Ljava/lang/StringBuilder;.append:(D)Ljava/lang/StringBuilder; // method@0031
9340011fe: 0c03                                   |0043: move-result-object v3
935001200: 1a04 0200                              |0044: const-string v4, " != " // string@0002
936001204: 6e20 3600 4300                         |0046: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
93700120a: 0c03                                   |0049: move-result-object v3
93800120c: 6e30 3100 8309                         |004a: invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;.append:(D)Ljava/lang/StringBuilder; // method@0031
939001212: 0c03                                   |004d: move-result-object v3
940001214: 6e10 3700 0300                         |004e: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0037
94100121a: 0c03                                   |0051: move-result-object v3
94200121c: 6e20 2900 3200                         |0052: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
943001222: 1000                                   |0055: return-wide v0
944      catches       : (none)
945      positions     :
946        0x0000 line=90
947        0x0003 line=91
948        0x002f line=92
949        0x0033 line=93
950        0x0055 line=95
951      locals        :
952        0x0000 - 0x0056 reg=6 (null) F
953        0x0000 - 0x0056 reg=7 (null) F
954        0x0000 - 0x0056 reg=8 (null) D
955
956    #18              : (in Linvokecustom/InvokeCustom;)
957      name          : 'targetMethodTest8'
958      type          : '(Ljava/lang/String;)V'
959      access        : 0x0009 (PUBLIC STATIC)
960      code          -
961      registers     : 4
962      ins           : 1
963      outs          : 2
964      insns size    : 25 16-bit code units
965001224:                                        |[001224] invokecustom.InvokeCustom.targetMethodTest8:(Ljava/lang/String;)V
966001234: 6200 0200                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
967001238: 2201 1000                              |0002: new-instance v1, Ljava/lang/StringBuilder; // type@0010
96800123c: 7010 3000 0100                         |0004: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@0030
969001242: 1a02 9500                              |0007: const-string v2, "targetMethodTest8 " // string@0095
970001246: 6e20 3600 2100                         |0009: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
97100124c: 0c01                                   |000c: move-result-object v1
97200124e: 6e20 3600 3100                         |000d: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
973001254: 0c01                                   |0010: move-result-object v1
974001256: 6e10 3700 0100                         |0011: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0037
97500125c: 0c01                                   |0014: move-result-object v1
97600125e: 6e20 2900 1000                         |0015: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
977001264: 0e00                                   |0018: return-void
978      catches       : (none)
979      positions     :
980        0x0000 line=99
981        0x0018 line=100
982      locals        :
983        0x0000 - 0x0019 reg=3 (null) Ljava/lang/String;
984
985    #19              : (in Linvokecustom/InvokeCustom;)
986      name          : 'targetMethodTest9'
987      type          : '()V'
988      access        : 0x000a (PRIVATE STATIC)
989      code          -
990      registers     : 2
991      ins           : 0
992      outs          : 2
993      insns size    : 8 16-bit code units
994001268:                                        |[001268] invokecustom.InvokeCustom.targetMethodTest9:()V
995001278: 6200 0200                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
99600127c: 1a01 9700                              |0002: const-string v1, "targetMethodTest9()" // string@0097
997001280: 6e20 2900 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
998001286: 0e00                                   |0007: return-void
999      catches       : (none)
1000      positions     :
1001        0x0000 line=133
1002        0x0007 line=134
1003      locals        :
1004
1005    #20              : (in Linvokecustom/InvokeCustom;)
1006      name          : 'test1'
1007      type          : '()V'
1008      access        : 0x0009 (PUBLIC STATIC)
1009      code          -
1010      registers     : 0
1011      ins           : 0
1012      outs          : 0
1013      insns size    : 4 16-bit code units
1014001288:                                        |[001288] invokecustom.InvokeCustom.test1:()V
1015001298: fc00 0300 0000                         |0000: invoke-custom {}, call_site@0003
101600129e: 0e00                                   |0003: return-void
1017      catches       : (none)
1018      positions     :
1019      locals        :
1020
1021    #21              : (in Linvokecustom/InvokeCustom;)
1022      name          : 'test2'
1023      type          : '()V'
1024      access        : 0x0009 (PUBLIC STATIC)
1025      code          -
1026      registers     : 11
1027      ins           : 0
1028      outs          : 11
1029      insns size    : 27 16-bit code units
10300012a0:                                        |[0012a0] invokecustom.InvokeCustom.test2:()V
10310012b0: 1210                                   |0000: const/4 v0, #int 1 // #1
10320012b2: 1301 7f00                              |0001: const/16 v1, #int 127 // #7f
10330012b6: 1302 6300                              |0003: const/16 v2, #int 99 // #63
10340012ba: 1303 0004                              |0005: const/16 v3, #int 1024 // #400
10350012be: 1404 40e2 0100                         |0007: const v4, #float 1.72999e-40 // #0001e240
10360012c4: 1405 9a99 993f                         |000a: const v5, #float 1.2 // #3f99999a
10370012ca: 1706 15cd 5b07                         |000d: const-wide/32 v6, #float 1.6536e-34 // #075bcd15
10380012d0: 1808 b6fa f8b0 4819 0c40               |0010: const-wide v8, #double 3.51235 // #400c1948b0f8fab6
10390012da: 1a0a 4800                              |0015: const-string v10, "String" // string@0048
10400012de: fd0b 0400 0000                         |0017: invoke-custom/range {v0, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10}, call_site@0004
10410012e4: 0e00                                   |001a: return-void
1042      catches       : (none)
1043      positions     :
1044      locals        :
1045
1046    #22              : (in Linvokecustom/InvokeCustom;)
1047      name          : 'test3'
1048      type          : '()V'
1049      access        : 0x0009 (PUBLIC STATIC)
1050      code          -
1051      registers     : 0
1052      ins           : 0
1053      outs          : 0
1054      insns size    : 4 16-bit code units
10550012e8:                                        |[0012e8] invokecustom.InvokeCustom.test3:()V
10560012f8: fc00 0b00 0000                         |0000: invoke-custom {}, call_site@000b
10570012fe: 0e00                                   |0003: return-void
1058      catches       : (none)
1059      positions     :
1060      locals        :
1061
1062    #23              : (in Linvokecustom/InvokeCustom;)
1063      name          : 'test4'
1064      type          : '()V'
1065      access        : 0x0009 (PUBLIC STATIC)
1066      code          -
1067      registers     : 1
1068      ins           : 0
1069      outs          : 1
1070      insns size    : 9 16-bit code units
1071001300:                                        |[001300] invokecustom.InvokeCustom.test4:()V
1072001310: 2200 0700                              |0000: new-instance v0, Linvokecustom/InvokeCustom; // type@0007
1073001314: 7010 0100 0000                         |0002: invoke-direct {v0}, Linvokecustom/InvokeCustom;.<init>:()V // method@0001
107400131a: fc10 0c00 0000                         |0005: invoke-custom {v0}, call_site@000c
1075001320: 0e00                                   |0008: return-void
1076      catches       : (none)
1077      positions     :
1078      locals        :
1079
1080    #24              : (in Linvokecustom/InvokeCustom;)
1081      name          : 'test5'
1082      type          : '()V'
1083      access        : 0x0009 (PUBLIC STATIC)
1084      code          -
1085      registers     : 4
1086      ins           : 0
1087      outs          : 3
1088      insns size    : 35 16-bit code units
1089001324:                                        |[001324] invokecustom.InvokeCustom.test5:()V
1090001334: 1300 e803                              |0000: const/16 v0, #int 1000 // #3e8
1091001338: 1301 65fc                              |0002: const/16 v1, #int -923 // #fc65
109200133c: 1302 4d00                              |0004: const/16 v2, #int 77 // #4d
1093001340: fc30 0500 1002                         |0006: invoke-custom {v0, v1, v2}, call_site@0005
1094001346: 0a00                                   |0009: move-result v0
1095001348: 6201 0200                              |000a: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
109600134c: 2202 1000                              |000c: new-instance v2, Ljava/lang/StringBuilder; // type@0010
1097001350: 7010 3000 0200                         |000e: invoke-direct {v2}, Ljava/lang/StringBuilder;.<init>:()V // method@0030
1098001356: 1a03 8e00                              |0011: const-string v3, "targetMethodTest5 returned: " // string@008e
109900135a: 6e20 3600 3200                         |0013: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
1100001360: 0c02                                   |0016: move-result-object v2
1101001362: 6e20 3300 0200                         |0017: invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@0033
1102001368: 0c00                                   |001a: move-result-object v0
110300136a: 6e10 3700 0000                         |001b: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0037
1104001370: 0c00                                   |001e: move-result-object v0
1105001372: 6e20 2900 0100                         |001f: invoke-virtual {v1, v0}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
1106001378: 0e00                                   |0022: return-void
1107      catches       : (none)
1108      positions     :
1109      locals        :
1110
1111    #25              : (in Linvokecustom/InvokeCustom;)
1112      name          : 'test6'
1113      type          : '()V'
1114      access        : 0x0009 (PUBLIC STATIC)
1115      code          -
1116      registers     : 6
1117      ins           : 0
1118      outs          : 6
1119      insns size    : 44 16-bit code units
112000137c:                                        |[00137c] invokecustom.InvokeCustom.test6:()V
112100138c: 1800 7777 7777 7707 0000               |0000: const-wide v0, #double 4.05612e-311 // #0000077777777777
1122001396: 1802 efee eeee eefe ffff               |0005: const-wide v2, #double -nan // #fffffeeeeeeeeeef
11230013a0: 1804 6666 6666 6606 0000               |000a: const-wide v4, #double 3.47668e-311 // #0000066666666666
11240013aa: fd06 0600 0000                         |000f: invoke-custom/range {v0, v1, v2, v3, v4, v5}, call_site@0006
11250013b0: 0b00                                   |0012: move-result-wide v0
11260013b2: 6202 0200                              |0013: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
11270013b6: 2203 1000                              |0015: new-instance v3, Ljava/lang/StringBuilder; // type@0010
11280013ba: 7010 3000 0300                         |0017: invoke-direct {v3}, Ljava/lang/StringBuilder;.<init>:()V // method@0030
11290013c0: 1a04 9100                              |001a: const-string v4, "targetMethodTest6 returned: " // string@0091
11300013c4: 6e20 3600 4300                         |001c: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
11310013ca: 0c03                                   |001f: move-result-object v3
11320013cc: 6e30 3400 0301                         |0020: invoke-virtual {v3, v0, v1}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@0034
11330013d2: 0c00                                   |0023: move-result-object v0
11340013d4: 6e10 3700 0000                         |0024: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0037
11350013da: 0c00                                   |0027: move-result-object v0
11360013dc: 6e20 2900 0200                         |0028: invoke-virtual {v2, v0}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
11370013e2: 0e00                                   |002b: return-void
1138      catches       : (none)
1139      positions     :
1140      locals        :
1141
1142    #26              : (in Linvokecustom/InvokeCustom;)
1143      name          : 'test7'
1144      type          : '()V'
1145      access        : 0x0009 (PUBLIC STATIC)
1146      code          -
1147      registers     : 5
1148      ins           : 0
1149      outs          : 4
1150      insns size    : 40 16-bit code units
11510013e4:                                        |[0013e4] invokecustom.InvokeCustom.test7:()V
11520013f4: 1400 0040 003f                         |0000: const v0, #float 0.500977 // #3f004000
11530013fa: 1401 0040 00bf                         |0003: const v1, #float -0.500977 // #bf004000
1154001400: 1802 0000 0000 0410 d0bf               |0006: const-wide v2, #double -0.250978 // #bfd0100400000000
115500140a: fc40 0700 1032                         |000b: invoke-custom {v0, v1, v2, v3}, call_site@0007
1156001410: 0b00                                   |000e: move-result-wide v0
1157001412: 6202 0200                              |000f: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
1158001416: 2203 1000                              |0011: new-instance v3, Ljava/lang/StringBuilder; // type@0010
115900141a: 7010 3000 0300                         |0013: invoke-direct {v3}, Ljava/lang/StringBuilder;.<init>:()V // method@0030
1160001420: 1a04 9100                              |0016: const-string v4, "targetMethodTest6 returned: " // string@0091
1161001424: 6e20 3600 4300                         |0018: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
116200142a: 0c03                                   |001b: move-result-object v3
116300142c: 6e30 3100 0301                         |001c: invoke-virtual {v3, v0, v1}, Ljava/lang/StringBuilder;.append:(D)Ljava/lang/StringBuilder; // method@0031
1164001432: 0c00                                   |001f: move-result-object v0
1165001434: 6e10 3700 0000                         |0020: invoke-virtual {v0}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0037
116600143a: 0c00                                   |0023: move-result-object v0
116700143c: 6e20 2900 0200                         |0024: invoke-virtual {v2, v0}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
1168001442: 0e00                                   |0027: return-void
1169      catches       : (none)
1170      positions     :
1171      locals        :
1172
1173    #27              : (in Linvokecustom/InvokeCustom;)
1174      name          : 'test8'
1175      type          : '()V'
1176      access        : 0x0009 (PUBLIC STATIC)
1177      code          -
1178      registers     : 1
1179      ins           : 0
1180      outs          : 1
1181      insns size    : 16 16-bit code units
1182001444:                                        |[001444] invokecustom.InvokeCustom.test8:()V
1183001454: 1a00 1500                              |0000: const-string v0, "First invokedynamic invocation" // string@0015
1184001458: fc10 0800 0000                         |0002: invoke-custom {v0}, call_site@0008
118500145e: 1a00 4700                              |0005: const-string v0, "Second invokedynamic invocation" // string@0047
1186001462: fc10 0900 0000                         |0007: invoke-custom {v0}, call_site@0009
1187001468: 1a00 1000                              |000a: const-string v0, "Dupe first invokedynamic invocation" // string@0010
118800146c: fc10 0a00 0000                         |000c: invoke-custom {v0}, call_site@000a
1189001472: 0e00                                   |000f: return-void
1190      catches       : (none)
1191      positions     :
1192      locals        :
1193
1194    #28              : (in Linvokecustom/InvokeCustom;)
1195      name          : 'test9'
1196      type          : '()V'
1197      access        : 0x0009 (PUBLIC STATIC)
1198      code          -
1199      registers     : 0
1200      ins           : 0
1201      outs          : 0
1202      insns size    : 4 16-bit code units
1203001474:                                        |[001474] invokecustom.InvokeCustom.test9:()V
1204001484: fc00 0d00 0000                         |0000: invoke-custom {}, call_site@000d
120500148a: 0e00                                   |0003: return-void
1206      catches       : (none)
1207      positions     :
1208      locals        :
1209
1210  Virtual methods   -
1211    #0              : (in Linvokecustom/InvokeCustom;)
1212      name          : 'helperMethodTest9'
1213      type          : '()V'
1214      access        : 0x0001 (PUBLIC)
1215      code          -
1216      registers     : 4
1217      ins           : 1
1218      outs          : 2
1219      insns size    : 27 16-bit code units
122000148c:                                        |[00148c] invokecustom.InvokeCustom.helperMethodTest9:()V
122100149c: 6200 0200                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
12220014a0: 2201 1000                              |0002: new-instance v1, Ljava/lang/StringBuilder; // type@0010
12230014a4: 7010 3000 0100                         |0004: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@0030
12240014aa: 1a02 7300                              |0007: const-string v2, "helperMethodTest9 in " // string@0073
12250014ae: 6e20 3600 2100                         |0009: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@0036
12260014b4: 0c01                                   |000c: move-result-object v1
12270014b6: 1c02 0700                              |000d: const-class v2, Linvokecustom/InvokeCustom; // type@0007
12280014ba: 6e20 3500 2100                         |000f: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@0035
12290014c0: 0c01                                   |0012: move-result-object v1
12300014c2: 6e10 3700 0100                         |0013: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@0037
12310014c8: 0c01                                   |0016: move-result-object v1
12320014ca: 6e20 2900 1000                         |0017: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
12330014d0: 0e00                                   |001a: return-void
1234      catches       : (none)
1235      positions     :
1236        0x0000 line=129
1237        0x001a line=130
1238      locals        :
1239        0x0000 - 0x001b reg=3 this Linvokecustom/InvokeCustom;
1240
1241    #1              : (in Linvokecustom/InvokeCustom;)
1242      name          : 'run'
1243      type          : '()V'
1244      access        : 0x0001 (PUBLIC)
1245      code          -
1246      registers     : 3
1247      ins           : 1
1248      outs          : 2
1249      insns size    : 8 16-bit code units
12500014d4:                                        |[0014d4] invokecustom.InvokeCustom.run:()V
12510014e4: 6200 0200                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
12520014e8: 1a01 8200                              |0002: const-string v1, "run() for Test9" // string@0082
12530014ec: 6e20 2900 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
12540014f2: 0e00                                   |0007: return-void
1255      catches       : (none)
1256      positions     :
1257        0x0000 line=137
1258        0x0007 line=138
1259      locals        :
1260        0x0000 - 0x0008 reg=2 this Linvokecustom/InvokeCustom;
1261
1262    #2              : (in Linvokecustom/InvokeCustom;)
1263      name          : 'targetMethodTest4'
1264      type          : '()V'
1265      access        : 0x0001 (PUBLIC)
1266      code          -
1267      registers     : 3
1268      ins           : 1
1269      outs          : 2
1270      insns size    : 8 16-bit code units
12710014f4:                                        |[0014f4] invokecustom.InvokeCustom.targetMethodTest4:()V
1272001504: 6200 0200                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0002
1273001508: 1a01 8a00                              |0002: const-string v1, "targetMethodTest4 from InvokeCustom (oops!)" // string@008a
127400150c: 6e20 2900 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@0029
1275001512: 0e00                                   |0007: return-void
1276      catches       : (none)
1277      positions     :
1278        0x0000 line=68
1279        0x0007 line=69
1280      locals        :
1281        0x0000 - 0x0008 reg=2 this Linvokecustom/InvokeCustom;
1282
1283  source_file_idx   : 27 (InvokeCustom.java)
1284
1285Method handle #0:
1286  type        : put-static
1287  target      : Linvokecustom/InvokeCustom; staticFieldTest9
1288  target_type : I
1289Method handle #1:
1290  type        : get-static
1291  target      : Linvokecustom/InvokeCustom; staticFieldTest9
1292  target_type : I
1293Method handle #2:
1294  type        : put-instance
1295  target      : Linvokecustom/InvokeCustom; fieldTest9
1296  target_type : (Linvokecustom/InvokeCustom;
1297Method handle #3:
1298  type        : get-instance
1299  target      : Linvokecustom/InvokeCustom; fieldTest9
1300  target_type : (Linvokecustom/InvokeCustom;
1301Method handle #4:
1302  type        : invoke-static
1303  target      : Linvokecustom/InvokeCustom; bsmCreateCallSite
1304  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/CallSite;
1305Method handle #5:
1306  type        : invoke-static
1307  target      : Linvokecustom/InvokeCustom; bsmLookupStatic
1308  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
1309Method handle #6:
1310  type        : invoke-static
1311  target      : Linvokecustom/InvokeCustom; bsmLookupStaticWithExtraArgs
1312  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;IJFD)Ljava/lang/invoke/CallSite;
1313Method handle #7:
1314  type        : invoke-static
1315  target      : Linvokecustom/InvokeCustom; bsmLookupTest9
1316  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/CallSite;
1317Method handle #8:
1318  type        : invoke-static
1319  target      : Linvokecustom/InvokeCustom; lambda$lambdaTest$0
1320  target_type : (Ljava/lang/String;)Z
1321Method handle #9:
1322  type        : invoke-static
1323  target      : Ljava/lang/invoke/LambdaMetafactory; metafactory
1324  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
1325Method handle #10:
1326  type        : invoke-instance
1327  target      : Linvokecustom/InvokeCustom; helperMethodTest9
1328  target_type : (Linvokecustom/InvokeCustom;)V
1329Method handle #11:
1330  type        : invoke-instance
1331  target      : Ljava/io/PrintStream; println
1332  target_type : (Ljava/io/PrintStream;Ljava/lang/String;)V
1333Method handle #12:
1334  type        : invoke-instance
1335  target      : Ljava/lang/String; trim
1336  target_type : (Ljava/lang/String;)Ljava/lang/String;
1337Method handle #13:
1338  type        : invoke-constructor
1339  target      : Linvokecustom/InvokeCustom; <init>
1340  target_type : (Linvokecustom/InvokeCustom;I)V
1341Method handle #14:
1342  type        : invoke-direct
1343  target      : Linvokecustom/Super; targetMethodTest4
1344  target_type : (Linvokecustom/Super;)V
1345Method handle #15:
1346  type        : invoke-interface
1347  target      : Ljava/lang/Runnable; run
1348  target_type : (Ljava/lang/Runnable;)V
1349Call site #0: // offset 8450
1350  link_argument[0] : 9 (MethodHandle)
1351  link_argument[1] : test (String)
1352  link_argument[2] : ()Ljava/util/function/Predicate; (MethodType)
1353  link_argument[3] : (Ljava/lang/Object;)Z (MethodType)
1354  link_argument[4] : 8 (MethodHandle)
1355  link_argument[5] : (Ljava/lang/String;)Z (MethodType)
1356Call site #1: // offset 8463
1357  link_argument[0] : 9 (MethodHandle)
1358  link_argument[1] : apply (String)
1359  link_argument[2] : ()Ljava/util/function/Function; (MethodType)
1360  link_argument[3] : (Ljava/lang/Object;)Ljava/lang/Object; (MethodType)
1361  link_argument[4] : 12 (MethodHandle)
1362  link_argument[5] : (Ljava/lang/String;)Ljava/lang/String; (MethodType)
1363Call site #2: // offset 8476
1364  link_argument[0] : 9 (MethodHandle)
1365  link_argument[1] : accept (String)
1366  link_argument[2] : (Ljava/io/PrintStream;)Ljava/util/function/Consumer; (MethodType)
1367  link_argument[3] : (Ljava/lang/Object;)V (MethodType)
1368  link_argument[4] : 11 (MethodHandle)
1369  link_argument[5] : (Ljava/lang/String;)V (MethodType)
1370Call site #3: // offset 8489
1371  link_argument[0] : 5 (MethodHandle)
1372  link_argument[1] : targetMethodTest1 (String)
1373  link_argument[2] : ()V (MethodType)
1374Call site #4: // offset 8496
1375  link_argument[0] : 5 (MethodHandle)
1376  link_argument[1] : targetMethodTest2 (String)
1377  link_argument[2] : (ZBCSIFJDLjava/lang/String;)V (MethodType)
1378Call site #5: // offset 8503
1379  link_argument[0] : 5 (MethodHandle)
1380  link_argument[1] : targetMethodTest5 (String)
1381  link_argument[2] : (III)I (MethodType)
1382Call site #6: // offset 8510
1383  link_argument[0] : 5 (MethodHandle)
1384  link_argument[1] : targetMethodTest6 (String)
1385  link_argument[2] : (JJJ)J (MethodType)
1386Call site #7: // offset 8517
1387  link_argument[0] : 5 (MethodHandle)
1388  link_argument[1] : targetMethodTest7 (String)
1389  link_argument[2] : (FFD)D (MethodType)
1390Call site #8: // offset 8524
1391  link_argument[0] : 5 (MethodHandle)
1392  link_argument[1] : targetMethodTest8 (String)
1393  link_argument[2] : (Ljava/lang/String;)V (MethodType)
1394Call site #9: // offset 8524
1395  link_argument[0] : 5 (MethodHandle)
1396  link_argument[1] : targetMethodTest8 (String)
1397  link_argument[2] : (Ljava/lang/String;)V (MethodType)
1398Call site #10: // offset 8524
1399  link_argument[0] : 5 (MethodHandle)
1400  link_argument[1] : targetMethodTest8 (String)
1401  link_argument[2] : (Ljava/lang/String;)V (MethodType)
1402Call site #11: // offset 8531
1403  link_argument[0] : 6 (MethodHandle)
1404  link_argument[1] : targetMethodTest3 (String)
1405  link_argument[2] : ()V (MethodType)
1406  link_argument[3] : 1 (int)
1407  link_argument[4] : 123456789 (long)
1408  link_argument[5] : 123.456 (float)
1409  link_argument[6] : 123457 (double)
1410Call site #12: // offset 8559
1411  link_argument[0] : 4 (MethodHandle)
1412  link_argument[1] : targetMethodTest4 (String)
1413  link_argument[2] : (Linvokecustom/InvokeCustom;)V (MethodType)
1414  link_argument[3] : 14 (MethodHandle)
1415Call site #13: // offset 8568
1416  link_argument[0] : 7 (MethodHandle)
1417  link_argument[1] : targetMethodTest9 (String)
1418  link_argument[2] : ()V (MethodType)
1419  link_argument[3] : 1 (MethodHandle)
1420  link_argument[4] : 0 (MethodHandle)
1421  link_argument[5] : 3 (MethodHandle)
1422  link_argument[6] : 2 (MethodHandle)
1423  link_argument[7] : 10 (MethodHandle)
1424  link_argument[8] : 13 (MethodHandle)
1425  link_argument[9] : 15 (MethodHandle)
1426