Eine aufbereitete Darstellung der Quelle

 
     
 
 
Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 

Benutzer

Impressum invoke-custom.txt

  Sprache: Text
 

Processing 'invoke-custom.dex'...
Opened 'invoke-custom.dex', DEX version '038'
DEX file header:
magic               : 'dex\n038\0'
checksum            : dc722174
signature           : b59a...f803
file_size           : 31732
header_size         : 112
link_size           : 0
link_off            : 0 (0x000000)
string_ids_size     : 478
string_ids_off      : 112 (0x000070)
type_ids_size       : 77
type_ids_off        : 2024 (0x0007e8)
proto_ids_size      : 91
proto_ids_off       : 2332 (0x00091c)
field_ids_size      : 21
field_ids_off       : 3424 (0x000d60)
method_ids_size     : 243
method_ids_off      : 3592 (0x000e08)
class_defs_size     : 14
class_defs_off      : 5536 (0x0015a0)
data_size           : 25332
data_off            : 6400 (0x001900)

Class #0 header:
class_idx           : 7
access_flags        : 0 (0x0000)
superclass_idx      : 52
interfaces_off      : 0 (0x000000)
source_file_idx     : 144
annotations_off     : 30700 (0x0077ec)
class_data_off      : 28922 (0x0070fa)
static_fields_size  : 0
instance_fields_size: 0
direct_methods_size : 1
virtual_methods_size: 0

Class #0 annotations:
Annotations on class
  VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=LTestBadBootstrapArguments;
  VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=8 name="TestersConstantCallSite"

Class #0            -
  Class descriptor  : 'LTestBadBootstrapArguments$TestersConstantCallSite;'
  Access flags      : 0x0000 ()
  Superclass        : 'Ljava/lang/invoke/ConstantCallSite;'
  Interfaces        -
  Static fields     -
  Instance fields   -
  Direct methods    -
    #0              : (in LTestBadBootstrapArguments$TestersConstantCallSite;)
      name          : '<init>'
      type          : '(Ljava/lang/invoke/MethodHandle;)V'
      access        : 0x10001 (PUBLIC CONSTRUCTOR)
      method_idx    : 8
      code          -
      registers     : 2
      ins           : 2
      outs          : 2
      insns size    : 4 16-bit code units
001b18:                                        |[001b18] TestBadBootstrapArguments$TestersConstantCallSite.<init>:(Ljava/lang/invoke/MethodHandle;)V
001b28: 7020 d200 1000                         |0000: invoke-direct {v0, v1}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
001b2e: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=449
        0x0003 line=450
      locals        :
        0x0000 - 0x0004 reg=0 this LTestBadBootstrapArguments$TestersConstantCallSite;
        0x0000 - 0x0004 reg=1 mh Ljava/lang/invoke/MethodHandle;

  Virtual methods   -
  source_file_idx   : 144 (TestBadBootstrapArguments.java)

Class #1 header:
class_idx           : 9
access_flags        : 1024 (0x0400)
superclass_idx      : 42
interfaces_off      : 0 (0x000000)
source_file_idx     : 145
annotations_off     : 0 (0x000000)
class_data_off      : 28932 (0x007104)
static_fields_size  : 0
instance_fields_size: 0
direct_methods_size : 13
virtual_methods_size: 0

Class #1            -
  Class descriptor  : 'LTestBase;'
  Access flags      : 0x0400 (ABSTRACT)
  Superclass        : 'Ljava/lang/Object;'
  Interfaces        -
  Static fields     -
  Instance fields   -
  Direct methods    -
    #0              : (in LTestBase;)
      name          : '<init>'
      type          : '()V'
      access        : 0x10000 (CONSTRUCTOR)
      method_idx    : 50
      code          -
      registers     : 1
      ins           : 1
      outs          : 1
      insns size    : 4 16-bit code units
002544:                                        |[002544] TestBase.<init>:()V
0025547010 bf00 0000                         |0000: invoke-direct {v0}, Ljava/lang/Object;.<init>:()V // method@00bf
00255a: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=19
      locals        :
        0x0000 - 0x0004 reg=0 this LTestBase;

    #1              : (in LTestBase;)
      name          : 'assertEquals'
      type          : '(BB)V'
      access        : 0x0008 (STATIC)
      method_idx    : 51
      code          -
      registers     : 5
      ins           : 2
      outs          : 2
      insns size    : 34 16-bit code units
00255c:                                        |[00255c] TestBase.assertEquals:(BB)V
00256c: 3343 0300                              |0000: if-ne v3, v4, 0003 // +0003
0025700e00                                   |0002: return-void
0025722200 1e00                              |0003: new-instance v0, Ljava/lang/AssertionError; // type@001e
0025762201 2d00                              |0005: new-instance v1, Ljava/lang/StringBuilder; // type@002d
00257a: 7010 c100 0100                         |0007: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
0025801a02 d300                              |000a: const-string v2, "assertEquals b1: " // string@00d3
0025846e20 c800 2100                         |000c: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
00258a: 6e20 c500 3100                         |000f: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5
0025901a02 0d00                              |0012: const-string v2, ", b2: " // string@000d
0025946e20 c800 2100                         |0014: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
00259a: 6e20 c500 4100                         |0017: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5
0025a0: 6e10 ca00 0100                         |001a: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
0025a6: 0c01                                   |001d: move-result-object v1
0025a8: 7020 b500 1000                         |001e: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5
0025ae: 2700                                   |0021: throw v0
      catches       : (none)
      positions     :
        0x0000 line=27
        0x0002 line=28
        0x0003 line=30
      locals        :
        0x0000 - 0x0022 reg=3 b1 B
        0x0000 - 0x0022 reg=4 b2 B

    #2              : (in LTestBase;)
      name          : 'assertEquals'
      type          : '(CC)V'
      access        : 0x0008 (STATIC)
      method_idx    : 52
      code          -
      registers     : 5
      ins           : 2
      outs          : 2
      insns size    : 34 16-bit code units
0025b0:                                        |[0025b0] TestBase.assertEquals:(CC)V
0025c0: 3343 0300                              |0000: if-ne v3, v4, 0003 // +0003
0025c4: 0e00                                   |0002: return-void
0025c6: 2200 1e00                              |0003: new-instance v0, Ljava/lang/AssertionError; // type@001e
0025ca: 2201 2d00                              |0005: new-instance v1, Ljava/lang/StringBuilder; // type@002d
0025ce: 7010 c100 0100                         |0007: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
0025d4: 1a02 d400                              |000a: const-string v2, "assertEquals c1: " // string@00d4
0025d8: 6e20 c800 2100                         |000c: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0025de: 6e20 c200 3100                         |000f: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@00c2
0025e4: 1a02 0e00                              |0012: const-string v2, ", c2: " // string@000e
0025e8: 6e20 c800 2100                         |0014: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0025ee: 6e20 c200 4100                         |0017: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(C)Ljava/lang/StringBuilder; // method@00c2
0025f4: 6e10 ca00 0100                         |001a: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
0025fa: 0c01                                   |001d: move-result-object v1
0025fc: 7020 b500 1000                         |001e: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5
0026022700                                   |0021: throw v0
      catches       : (none)
      positions     :
        0x0000 line=34
        0x0002 line=35
        0x0003 line=37
      locals        :
        0x0000 - 0x0022 reg=3 c1 C
        0x0000 - 0x0022 reg=4 c2 C

    #3              : (in LTestBase;)
      name          : 'assertEquals'
      type          : '(DD)V'
      access        : 0x0008 (STATIC)
      method_idx    : 53
      code          -
      registers     : 7
      ins           : 4
      outs          : 3
      insns size    : 36 16-bit code units
002604:                                        |[002604] TestBase.assertEquals:(DD)V
0026142f00 0305                              |0000: cmpl-double v0, v3, v5
0026183900 0300                              |0002: if-nez v0, 0005 // +0003
00261c: 0e00                                   |0004: return-void
00261e: 2200 1e00                              |0005: new-instance v0, Ljava/lang/AssertionError; // type@001e
0026222201 2d00                              |0007: new-instance v1, Ljava/lang/StringBuilder; // type@002d
0026267010 c100 0100                         |0009: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
00262c: 1a02 d500                              |000c: const-string v2, "assertEquals d1: " // string@00d5
0026306e20 c800 2100                         |000e: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0026366e30 c300 3104                         |0011: invoke-virtual {v1, v3, v4}, Ljava/lang/StringBuilder;.append:(D)Ljava/lang/StringBuilder; // method@00c3
00263c: 1a02 0f00                              |0014: const-string v2, ", d2: " // string@000f
0026406e20 c800 2100                         |0016: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0026466e30 c300 5106                         |0019: invoke-virtual {v1, v5, v6}, Ljava/lang/StringBuilder;.append:(D)Ljava/lang/StringBuilder; // method@00c3
00264c: 6e10 ca00 0100                         |001c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
0026520c01                                   |001f: move-result-object v1
0026547020 b500 1000                         |0020: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5
00265a: 2700                                   |0023: throw v0
      catches       : (none)
      positions     :
        0x0000 line=69
        0x0004 line=70
        0x0005 line=72
      locals        :
        0x0000 - 0x0024 reg=3 d1 D
        0x0000 - 0x0024 reg=5 d2 D

    #4              : (in LTestBase;)
      name          : 'assertEquals'
      type          : '(FF)V'
      access        : 0x0008 (STATIC)
      method_idx    : 54
      code          -
      registers     : 5
      ins           : 2
      outs          : 2
      insns size    : 36 16-bit code units
00265c:                                        |[00265c] TestBase.assertEquals:(FF)V
00266c: 2d00 0304                              |0000: cmpl-float v0, v3, v4
0026703900 0300                              |0002: if-nez v0, 0005 // +0003
0026740e00                                   |0004: return-void
0026762200 1e00                              |0005: new-instance v0, Ljava/lang/AssertionError; // type@001e
00267a: 2201 2d00                              |0007: new-instance v1, Ljava/lang/StringBuilder; // type@002d
00267e: 7010 c100 0100                         |0009: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
0026841a02 d600                              |000c: const-string v2, "assertEquals f1: " // string@00d6
0026886e20 c800 2100                         |000e: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
00268e: 6e20 c400 3100                         |0011: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(F)Ljava/lang/StringBuilder; // method@00c4
0026941a02 1000                              |0014: const-string v2, ", f2: " // string@0010
0026986e20 c800 2100                         |0016: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
00269e: 6e20 c400 4100                         |0019: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(F)Ljava/lang/StringBuilder; // method@00c4
0026a4: 6e10 ca00 0100                         |001c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
0026aa: 0c01                                   |001f: move-result-object v1
0026ac: 7020 b500 1000                         |0020: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5
0026b2: 2700                                   |0023: throw v0
      catches       : (none)
      positions     :
        0x0000 line=62
        0x0004 line=63
        0x0005 line=65
      locals        :
        0x0000 - 0x0024 reg=3 f1 F
        0x0000 - 0x0024 reg=4 f2 F

    #5              : (in LTestBase;)
      name          : 'assertEquals'
      type          : '(II)V'
      access        : 0x0008 (STATIC)
      method_idx    : 55
      code          -
      registers     : 5
      ins           : 2
      outs          : 2
      insns size    : 34 16-bit code units
0026b4:                                        |[0026b4] TestBase.assertEquals:(II)V
0026c4: 3343 0300                              |0000: if-ne v3, v4, 0003 // +0003
0026c8: 0e00                                   |0002: return-void
0026ca: 2200 1e00                              |0003: new-instance v0, Ljava/lang/AssertionError; // type@001e
0026ce: 2201 2d00                              |0005: new-instance v1, Ljava/lang/StringBuilder; // type@002d
0026d2: 7010 c100 0100                         |0007: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
0026d8: 1a02 d700                              |000a: const-string v2, "assertEquals i1: " // string@00d7
0026dc: 6e20 c800 2100                         |000c: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0026e2: 6e20 c500 3100                         |000f: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5
0026e8: 1a02 1100                              |0012: const-string v2, ", i2: " // string@0011
0026ec: 6e20 c800 2100                         |0014: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0026f2: 6e20 c500 4100                         |0017: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5
0026f8: 6e10 ca00 0100                         |001a: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
0026fe: 0c01                                   |001d: move-result-object v1
0027007020 b500 1000                         |001e: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5
0027062700                                   |0021: throw v0
      catches       : (none)
      positions     :
        0x0000 line=48
        0x0002 line=49
        0x0003 line=51
      locals        :
        0x0000 - 0x0022 reg=3 i1 I
        0x0000 - 0x0022 reg=4 i2 I

    #6              : (in LTestBase;)
      name          : 'assertEquals'
      type          : '(JJ)V'
      access        : 0x0008 (STATIC)
      method_idx    : 56
      code          -
      registers     : 7
      ins           : 4
      outs          : 3
      insns size    : 36 16-bit code units
002764:                                        |[002764] TestBase.assertEquals:(JJ)V
0027743100 0305                              |0000: cmp-long v0, v3, v5
0027783900 0300                              |0002: if-nez v0, 0005 // +0003
00277c: 0e00                                   |0004: return-void
00277e: 2200 1e00                              |0005: new-instance v0, Ljava/lang/AssertionError; // type@001e
0027822201 2d00                              |0007: new-instance v1, Ljava/lang/StringBuilder; // type@002d
0027867010 c100 0100                         |0009: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
00278c: 1a02 d800                              |000c: const-string v2, "assertEquals l1: " // string@00d8
0027906e20 c800 2100                         |000e: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0027966e30 c600 3104                         |0011: invoke-virtual {v1, v3, v4}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@00c6
00279c: 1a02 1200                              |0014: const-string v2, ", l2: " // string@0012
0027a0: 6e20 c800 2100                         |0016: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0027a6: 6e30 c600 5106                         |0019: invoke-virtual {v1, v5, v6}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@00c6
0027ac: 6e10 ca00 0100                         |001c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
0027b2: 0c01                                   |001f: move-result-object v1
0027b4: 7020 b500 1000                         |0020: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5
0027ba: 2700                                   |0023: throw v0
      catches       : (none)
      positions     :
        0x0000 line=55
        0x0004 line=56
        0x0005 line=58
      locals        :
        0x0000 - 0x0024 reg=3 l1 J
        0x0000 - 0x0024 reg=5 l2 J

    #7              : (in LTestBase;)
      name          : 'assertEquals'
      type          : '(Ljava/lang/Object;Ljava/lang/Object;)V'
      access        : 0x0008 (STATIC)
      method_idx    : 57
      code          -
      registers     : 5
      ins           : 2
      outs          : 2
      insns size    : 38 16-bit code units
002708:                                        |[002708] TestBase.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
0027187120 ec00 4300                         |0000: invoke-static {v3, v4}, Ljava/util/Objects;.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z // method@00ec
00271e: 0a00                                   |0003: move-result v0
0027203800 0300                              |0004: if-eqz v0, 0007 // +0003
0027240e00                                   |0006: return-void
0027262200 1e00                              |0007: new-instance v0, Ljava/lang/AssertionError; // type@001e
00272a: 2201 2d00                              |0009: new-instance v1, Ljava/lang/StringBuilder; // type@002d
00272e: 7010 c100 0100                         |000b: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
0027341a02 da00                              |000e: const-string v2, "assertEquals: o1: " // string@00da
0027386e20 c800 2100                         |0010: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
00273e: 6e20 c700 3100                         |0013: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@00c7
0027441a02 1300                              |0016: const-string v2, ", o2: " // string@0013
0027486e20 c800 2100                         |0018: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
00274e: 6e20 c700 4100                         |001b: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@00c7
0027546e10 ca00 0100                         |001e: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
00275a: 0c01                                   |0021: move-result-object v1
00275c: 7020 b500 1000                         |0022: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5
0027622700                                   |0025: throw v0
      catches       : (none)
      positions     :
        0x0000 line=76
        0x0006 line=79
        0x0007 line=77
      locals        :
        0x0000 - 0x0026 reg=3 o Ljava/lang/Object;
        0x0000 - 0x0026 reg=4 p Ljava/lang/Object;

    #8              : (in LTestBase;)
      name          : 'assertEquals'
      type          : '(SS)V'
      access        : 0x0008 (STATIC)
      method_idx    : 58
      code          -
      registers     : 5
      ins           : 2
      outs          : 2
      insns size    : 34 16-bit code units
0027bc:                                        |[0027bc] TestBase.assertEquals:(SS)V
0027cc: 3343 0300                              |0000: if-ne v3, v4, 0003 // +0003
0027d0: 0e00                                   |0002: return-void
0027d2: 2200 1e00                              |0003: new-instance v0, Ljava/lang/AssertionError; // type@001e
0027d6: 2201 2d00                              |0005: new-instance v1, Ljava/lang/StringBuilder; // type@002d
0027da: 7010 c100 0100                         |0007: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
0027e0: 1a02 d900                              |000a: const-string v2, "assertEquals s1: " // string@00d9
0027e4: 6e20 c800 2100                         |000c: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0027ea: 6e20 c500 3100                         |000f: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5
0027f0: 1a02 1400                              |0012: const-string v2, ", s2: " // string@0014
0027f4: 6e20 c800 2100                         |0014: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0027fa: 6e20 c500 4100                         |0017: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5
0028006e10 ca00 0100                         |001a: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
0028060c01                                   |001d: move-result-object v1
0028087020 b500 1000                         |001e: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5
00280e: 2700                                   |0021: throw v0
      catches       : (none)
      positions     :
        0x0000 line=41
        0x0002 line=42
        0x0003 line=44
      locals        :
        0x0000 - 0x0022 reg=3 s1 S
        0x0000 - 0x0022 reg=4 s2 S

    #9              : (in LTestBase;)
      name          : 'assertNotEquals'
      type          : '(Ljava/lang/Object;Ljava/lang/Object;)V'
      access        : 0x0008 (STATIC)
      method_idx    : 59
      code          -
      registers     : 5
      ins           : 2
      outs          : 2
      insns size    : 38 16-bit code units
002810:                                        |[002810] TestBase.assertNotEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
0028207120 ec00 4300                         |0000: invoke-static {v3, v4}, Ljava/util/Objects;.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z // method@00ec
0028260a00                                   |0003: move-result v0
0028283900 0300                              |0004: if-nez v0, 0007 // +0003
00282c: 0e00                                   |0006: return-void
00282e: 2200 1e00                              |0007: new-instance v0, Ljava/lang/AssertionError; // type@001e
0028322201 2d00                              |0009: new-instance v1, Ljava/lang/StringBuilder; // type@002d
0028367010 c100 0100                         |000b: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
00283c: 1a02 dc00                              |000e: const-string v2, "assertNotEquals: o1: " // string@00dc
0028406e20 c800 2100                         |0010: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0028466e20 c700 3100                         |0013: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@00c7
00284c: 1a02 1300                              |0016: const-string v2, ", o2: " // string@0013
0028506e20 c800 2100                         |0018: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0028566e20 c700 4100                         |001b: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@00c7
00285c: 6e10 ca00 0100                         |001e: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
0028620c01                                   |0021: move-result-object v1
0028647020 b500 1000                         |0022: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5
00286a: 2700                                   |0025: throw v0
      catches       : (none)
      positions     :
        0x0000 line=82
        0x0006 line=85
        0x0007 line=83
      locals        :
        0x0000 - 0x0026 reg=3 o Ljava/lang/Object;
        0x0000 - 0x0026 reg=4 p Ljava/lang/Object;

    #10              : (in LTestBase;)
      name          : 'assertNotReached'
      type          : '()V'
      access        : 0x0008 (STATIC)
      method_idx    : 60
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 8 16-bit code units
00286c:                                        |[00286c] TestBase.assertNotReached:()V
00287c: 2200 1e00                              |0000: new-instance v0, Ljava/lang/AssertionError; // type@001e
0028801a01 a300                              |0002: const-string v1, "Unreachable" // string@00a3
0028847020 b500 1000                         |0004: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5
00288a: 2700                                   |0007: throw v0
      catches       : (none)
      positions     :
        0x0000 line=88
      locals        :

    #11              : (in LTestBase;)
      name          : 'assertTrue'
      type          : '(Z)V'
      access        : 0x0008 (STATIC)
      method_idx    : 61
      code          -
      registers     : 4
      ins           : 1
      outs          : 2
      insns size    : 26 16-bit code units
00288c:                                        |[00288c] TestBase.assertTrue:(Z)V
00289c: 3803 0300                              |0000: if-eqz v3, 0003 // +0003
0028a0: 0e00                                   |0002: return-void
0028a2: 2200 1e00                              |0003: new-instance v0, Ljava/lang/AssertionError; // type@001e
0028a6: 2201 2d00                              |0005: new-instance v1, Ljava/lang/StringBuilder; // type@002d
0028aa: 7010 c100 0100                         |0007: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
0028b0: 1a02 df00                              |000a: const-string v2, "assertTrue value: " // string@00df
0028b4: 6e20 c800 2100                         |000c: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0028ba: 6e20 c900 3100                         |000f: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(Z)Ljava/lang/StringBuilder; // method@00c9
0028c0: 6e10 ca00 0100                         |0012: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
0028c6: 0c01                                   |0015: move-result-object v1
0028c8: 7020 b500 1000                         |0016: invoke-direct {v0, v1}, Ljava/lang/AssertionError;.<init>:(Ljava/lang/Object;)V // method@00b5
0028ce: 2700                                   |0019: throw v0
      catches       : (none)
      positions     :
        0x0000 line=21
        0x0002 line=24
        0x0003 line=22
      locals        :
        0x0000 - 0x001a reg=3 value Z

    #12              : (in LTestBase;)
      name          : 'fail'
      type          : '()V'
      access        : 0x0008 (STATIC)
      method_idx    : 62
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 11 16-bit code units
0028d0:                                        |[0028d0] TestBase.fail:()V
0028e0: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0028e4: 1a01 2601                              |0002: const-string v1, "fail" // string@0126
0028e8: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
0028ee: 7100 cc00 0000                         |0007: invoke-static {}, Ljava/lang/Thread;.dumpStack:()V // method@00cc
0028f4: 0e00                                   |000a: return-void
      catches       : (none)
      positions     :
        0x0000 line=92
        0x0007 line=93
        0x000a line=94
      locals        :

  Virtual methods   -
  source_file_idx   : 145 (TestBase.java)

Class #2 header:
class_idx           : 11
access_flags        : 0 (0x0000)
superclass_idx      : 42
interfaces_off      : 0 (0x000000)
source_file_idx     : 148
annotations_off     : 30716 (0x0077fc)
class_data_off      : 28990 (0x00713e)
static_fields_size  : 0
instance_fields_size: 1
direct_methods_size : 1
virtual_methods_size: 0

Class #2 annotations:
Annotations on class
  VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=LTestInvocationKinds;
  VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=8 name="Widget"

Class #2            -
  Class descriptor  : 'LTestInvocationKinds$Widget;'
  Access flags      : 0x0000 ()
  Superclass        : 'Ljava/lang/Object;'
  Interfaces        -
  Static fields     -
  Instance fields   -
    #0              : (in LTestInvocationKinds$Widget;)
      name          : 'value'
      type          : 'I'
      access        : 0x0000 ()
  Direct methods    -
    #0              : (in LTestInvocationKinds$Widget;)
      name          : '<init>'
      type          : '(I)V'
      access        : 0x10001 (PUBLIC CONSTRUCTOR)
      method_idx    : 72
      code          -
      registers     : 2
      ins           : 2
      outs          : 1
      insns size    : 4 16-bit code units
002abc:                                        |[002abc] TestInvocationKinds$Widget.<init>:(I)V
002acc: 7010 bf00 0000                         |0000: invoke-direct {v0}, Ljava/lang/Object;.<init>:()V // method@00bf
002ad2: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=177
      locals        :
        0x0000 - 0x0004 reg=0 this LTestInvocationKinds$Widget;
        0x0000 - 0x0004 reg=1 value I

  Virtual methods   -
  source_file_idx   : 148 (TestInvocationKinds.java)

Class #3 header:
class_idx           : 13
access_flags        : 0 (0x0000)
superclass_idx      : 48
interfaces_off      : 0 (0x000000)
source_file_idx     : 149
annotations_off     : 30732 (0x00780c)
class_data_off      : 29002 (0x00714a)
static_fields_size  : 0
instance_fields_size: 0
direct_methods_size : 1
virtual_methods_size: 2

Class #3 annotations:
Annotations on class
  VISIBILITY_SYSTEM Ldalvik/annotation/EnclosingClass; value=LTestInvokeCustomWithConcurrentThreads;
  VISIBILITY_SYSTEM Ldalvik/annotation/InnerClass; accessFlags=0 name=null
  VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "Ljava/lang/ThreadLocal<" "Ljava/lang/Integer;" ">;" }

Class #3            -
  Class descriptor  : 'LTestInvokeCustomWithConcurrentThreads$1;'
  Access flags      : 0x0000 ()
  Superclass        : 'Ljava/lang/ThreadLocal;'
  Interfaces        -
  Static fields     -
  Instance fields   -
  Direct methods    -
    #0              : (in LTestInvokeCustomWithConcurrentThreads$1;)
      name          : '<init>'
      type          : '()V'
      access        : 0x10000 (CONSTRUCTOR)
      method_idx    : 96
      code          -
      registers     : 1
      ins           : 1
      outs          : 1
      insns size    : 4 16-bit code units
002ee8:                                        |[002ee8] TestInvokeCustomWithConcurrentThreads$1.<init>:()V
002ef8: 7010 cf00 0000                         |0000: invoke-direct {v0}, Ljava/lang/ThreadLocal;.<init>:()V // method@00cf
002efe: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=33
      locals        :
        0x0000 - 0x0004 reg=0 this LTestInvokeCustomWithConcurrentThreads$1;

  Virtual methods   -
    #0              : (in LTestInvokeCustomWithConcurrentThreads$1;)
      name          : 'initialValue'
      type          : '()Ljava/lang/Integer;'
      access        : 0x0004 (PROTECTED)
      method_idx    : 97
      code          -
      registers     : 2
      ins           : 1
      outs          : 1
      insns size    : 13 16-bit code units
002ea0:                                        |[002ea0] TestInvokeCustomWithConcurrentThreads$1.initialValue:()Ljava/lang/Integer;
002eb0: 7100 6500 0000                         |0000: invoke-static {}, LTestInvokeCustomWithConcurrentThreads;.access$000:()Ljava/util/concurrent/atomic/AtomicInteger; // method@0065
002eb6: 0c00                                   |0003: move-result-object v0
002eb8: 6e10 f100 0000                         |0004: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.getAndIncrement:()I // method@00f1
002ebe: 0a00                                   |0007: move-result v0
002ec0: 7110 bd00 0000                         |0008: invoke-static {v0}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@00bd
002ec6: 0c00                                   |000b: move-result-object v0
002ec8: 1100                                   |000c: return-object v0
      catches       : (none)
      positions     :
        0x0000 line=36
      locals        :
        0x0000 - 0x000d reg=1 this LTestInvokeCustomWithConcurrentThreads$1;

    #1              : (in LTestInvokeCustomWithConcurrentThreads$1;)
      name          : 'initialValue'
      type          : '()Ljava/lang/Object;'
      access        : 0x1044 (PROTECTED BRIDGE SYNTHETIC)
      method_idx    : 98
      code          -
      registers     : 2
      ins           : 1
      outs          : 1
      insns size    : 5 16-bit code units
002ecc:                                        |[002ecc] TestInvokeCustomWithConcurrentThreads$1.initialValue:()Ljava/lang/Object;
002edc: 6e10 6100 0100                         |0000: invoke-virtual {v1}, LTestInvokeCustomWithConcurrentThreads$1;.initialValue:()Ljava/lang/Integer; // method@0061
002ee2: 0c00                                   |0003: move-result-object v0
002ee4: 1100                                   |0004: return-object v0
      catches       : (none)
      positions     :
        0x0000 line=33
      locals        :
        0x0000 - 0x0005 reg=1 this LTestInvokeCustomWithConcurrentThreads$1;

  source_file_idx   : 149 (TestInvokeCustomWithConcurrentThreads.java)

Class #4 header:
class_idx           : 19
access_flags        : 0 (0x0000)
superclass_idx      : 42
interfaces_off      : 0 (0x000000)
source_file_idx     : 164
annotations_off     : 30748 (0x00781c)
class_data_off      : 29021 (0x00715d)
static_fields_size  : 0
instance_fields_size: 0
direct_methods_size : 2
virtual_methods_size: 0

Class #4 annotations:
Annotations on method #170 'bsm'
  VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "(" "Ljava/lang/invoke/MethodHandles$Lookup;" "Ljava/lang/String;" "Ljava/lang/invoke/MethodType;" "Ljava/lang/Class<" "*>;)" "Ljava/lang/invoke/CallSite;" }
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }

Class #4            -
  Class descriptor  : 'LUnrelatedBSM;'
  Access flags      : 0x0000 ()
  Superclass        : 'Ljava/lang/Object;'
  Interfaces        -
  Static fields     -
  Instance fields   -
  Direct methods    -
    #0              : (in LUnrelatedBSM;)
      name          : '<init>'
      type          : '()V'
      access        : 0x10000 (CONSTRUCTOR)
      method_idx    : 169
      code          -
      registers     : 1
      ins           : 1
      outs          : 1
      insns size    : 4 16-bit code units
003fc8:                                        |[003fc8] UnrelatedBSM.<init>:()V
003fd8: 7010 bf00 0000                         |0000: invoke-direct {v0}, Ljava/lang/Object;.<init>:()V // method@00bf
003fde: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=23
      locals        :
        0x0000 - 0x0004 reg=0 this LUnrelatedBSM;

    #1              : (in LUnrelatedBSM;)
      name          : 'bsm'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;)Ljava/lang/invoke/CallSite;'
      access        : 0x0008 (STATIC)
      method_idx    : 170
      code          -
      registers     : 6
      ins           : 4
      outs          : 4
      insns size    : 10 16-bit code units
003fa4:                                        |[003fa4] UnrelatedBSM.bsm:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;)Ljava/lang/invoke/CallSite;
003fb4: 6e40 d800 5243                         |0000: invoke-virtual {v2, v5, v3, v4}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8
003fba: 0c00                                   |0003: move-result-object v0
003fbc: 2201 3400                              |0004: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
003fc0: 7020 d200 0100                         |0006: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
003fc6: 1101                                   |0009: return-object v1
      catches       : (none)
      positions     :
        0x0000 line=27
        0x0004 line=28
      locals        :
        0x0004 - 0x000a reg=0 mh Ljava/lang/invoke/MethodHandle;
        0x0000 - 0x000a reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x000a reg=3 name Ljava/lang/String;
        0x0000 - 0x000a reg=4 methodType Ljava/lang/invoke/MethodType;
        0x0000 - 0x000a reg=5 target Ljava/lang/Class; Ljava/lang/Class<*>;

  Virtual methods   -
  source_file_idx   : 164 (UnrelatedBSM.java)

Class #5 header:
class_idx           : 6
access_flags        : 1 (0x0001)
superclass_idx      : 9
interfaces_off      : 0 (0x000000)
source_file_idx     : 136
annotations_off     : 30772 (0x007834)
class_data_off      : 29036 (0x00716c)
static_fields_size  : 0
instance_fields_size: 0
direct_methods_size : 5
virtual_methods_size: 0

Class #5 annotations:
Annotations on method #1 'TestLinkerMethodMinimalArguments'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #2 'TestLinkerMethodMultipleArgumentTypes'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #3 'TestUninitializedCallSite'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #7 'main'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }

Class #5            -
  Class descriptor  : 'LMain;'
  Access flags      : 0x0001 (PUBLIC)
  Superclass        : 'LTestBase;'
  Interfaces        -
  Static fields     -
  Instance fields   -
  Direct methods    -
    #0              : (in LMain;)
      name          : '<init>'
      type          : '()V'
      access        : 0x10001 (PUBLIC CONSTRUCTOR)
      method_idx    : 0
      code          -
      registers     : 1
      ins           : 1
      outs          : 1
      insns size    : 4 16-bit code units
001900:                                        |[001900] Main.<init>:()V
0019107010 3200 0000                         |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032
0019160e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=21
      locals        :
        0x0000 - 0x0004 reg=0 this LMain;

    #1              : (in LMain;)
      name          : 'TestLinkerMethodMinimalArguments'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 1
      code          -
      registers     : 4
      ins           : 0
      outs          : 3
      insns size    : 66 16-bit code units
001918:                                        |[001918] Main.TestLinkerMethodMinimalArguments:()V
0019281210                                   |0000: const/4 v0, #int 1 // #1
00192a: 1301 0a00                              |0001: const/16 v1, #int 10 // #a
00192e: 7130 7700 1001                         |0003: invoke-static {v0, v1, v1}, LTestLinkerMethodMinimalArguments;.test:(III)V // method@0077
0019347100 0500 0000                         |0006: invoke-static {}, LMain;.assertNotReached:()V // method@0005
00193a: 280f                                   |0009: goto 0018 // +000f
00193c: 0d00                                   |000a: move-exception v0
00193e: 6e10 b600 0000                         |000b: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
0019440c02                                   |000e: move-result-object v2
0019466e10 c000 0200                         |000f: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
00194c: 0c02                                   |0012: move-result-object v2
00194e: 1c03 2200                              |0013: const-class v3, Ljava/lang/ClassCastException; // type@0022
0019527120 0400 3200                         |0015: invoke-static {v2, v3}, LMain;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@0004
0019581220                                   |0018: const/4 v0, #int 2 // #2
00195a: 1302 0b00                              |0019: const/16 v2, #int 11 // #b
00195e: 7130 7700 1002                         |001b: invoke-static {v0, v1, v2}, LTestLinkerMethodMinimalArguments;.test:(III)V // method@0077
0019647100 0500 0000                         |001e: invoke-static {}, LMain;.assertNotReached:()V // method@0005
00196a: 280f                                   |0021: goto 0030 // +000f
00196c: 0d00                                   |0022: move-exception v0
00196e: 6e10 b600 0000                         |0023: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
0019740c02                                   |0026: move-result-object v2
0019766e10 c000 0200                         |0027: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
00197c: 0c02                                   |002a: move-result-object v2
00197e: 1c03 2600                              |002b: const-class v3, Ljava/lang/InstantiationException; // type@0026
0019827120 0400 3200                         |002d: invoke-static {v2, v3}, LMain;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@0004
0019881230                                   |0030: const/4 v0, #int 3 // #3
00198a: 1302 0c00                              |0031: const/16 v2, #int 12 // #c
00198e: 7130 7700 1002                         |0033: invoke-static {v0, v1, v2}, LTestLinkerMethodMinimalArguments;.test:(III)V // method@0077
0019947100 0500 0000                         |0036: invoke-static {}, LMain;.assertNotReached:()V // method@0005
00199a: 2802                                   |0039: goto 003b // +0002
00199c: 0d00                                   |003a: move-exception v0
00199e: 1200                                   |003b: const/4 v0, #int 0 // #0
0019a0: 1302 0d00                              |003c: const/16 v2, #int 13 // #d
0019a4: 7130 7700 1002                         |003e: invoke-static {v0, v1, v2}, LTestLinkerMethodMinimalArguments;.test:(III)V // method@0077
0019aa: 0e00                                   |0041: return-void
      catches       : 3
        0x0003 - 0x0009
          Ljava/lang/BootstrapMethodError; -> 0x000a
        0x001b - 0x0021
          Ljava/lang/BootstrapMethodError; -> 0x0022
        0x0033 - 0x0039
          Ljava/lang/ArithmeticException; -> 0x003a
      positions     :
        0x0000 line=49
        0x0006 line=53
        0x0009 line=56
        0x000a line=54
        0x000b line=55
        0x0018 line=59
        0x001e line=61
        0x0021 line=64
        0x0022 line=62
        0x0023 line=63
        0x0030 line=67
        0x0036 line=69
        0x0039 line=71
        0x003a line=70
        0x003b line=73
        0x0041 line=75
      locals        :
        0x000b - 0x0018 reg=0 e Ljava/lang/BootstrapMethodError;
        0x0023 - 0x0030 reg=0 e Ljava/lang/BootstrapMethodError;

    #2              : (in LMain;)
      name          : 'TestLinkerMethodMultipleArgumentTypes'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 2
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 22 16-bit code units
0019d0:                                        |[0019d0] Main.TestLinkerMethodMultipleArgumentTypes:()V
0019e0: 1300 2100                              |0000: const/16 v0, #int 33 // #21
0019e4: 1301 4300                              |0002: const/16 v1, #int 67 // #43
0019e8: 7120 8400 1000                         |0004: invoke-static {v0, v1}, LTestLinkerMethodMultipleArgumentTypes;.test:(II)V // method@0084
0019ee: 1300 f0d8                              |0007: const/16 v0, #int -10000 // #d8f0
0019f2: 1301 e803                              |0009: const/16 v1, #int 1000 // #3e8
0019f6: 7120 8400 1000                         |000b: invoke-static {v0, v1}, LTestLinkerMethodMultipleArgumentTypes;.test:(II)V // method@0084
0019fc: 1300 18fc                              |000e: const/16 v0, #int -1000 // #fc18
001a00: 1301 1027                              |0010: const/16 v1, #int 10000 // #2710
001a04: 7120 8400 1000                         |0012: invoke-static {v0, v1}, LTestLinkerMethodMultipleArgumentTypes;.test:(II)V // method@0084
001a0a: 0e00                                   |0015: return-void
      catches       : (none)
      positions     :
        0x0000 line=42
        0x0007 line=43
        0x000e line=44
        0x0015 line=45
      locals        :

    #3              : (in LMain;)
      name          : 'TestUninitializedCallSite'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 3
      code          -
      registers     : 7
      ins           : 0
      outs          : 3
      insns size    : 78 16-bit code units
001a0c:                                        |[001a0c] Main.TestUninitializedCallSite:()V
001a1c: 2200 3900                              |0000: new-instance v0, Ljava/lang/invoke/MutableCallSite; // type@0039
001a20: 6201 1200                              |0002: sget-object v1, Ljava/lang/Integer;.TYPE:Ljava/lang/Class; // field@0012
001a24: 7110 e100 0100                         |0004: invoke-static {v1}, Ljava/lang/invoke/MethodType;.methodType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType; // method@00e1
001a2a: 0c01                                   |0007: move-result-object v1
001a2c: 7020 e600 1000                         |0008: invoke-direct {v0, v1}, Ljava/lang/invoke/MutableCallSite;.<init>:(Ljava/lang/invoke/MethodType;)V // method@00e6
001a32: 6e10 d100 0000                         |000b: invoke-virtual {v0}, Ljava/lang/invoke/CallSite;.getTarget:()Ljava/lang/invoke/MethodHandle; // method@00d1
001a38: 0c01                                   |000e: move-result-object v1
001a3a: fa10 d300 0100 4100                    |000f: invoke-polymorphic {v1}, Ljava/lang/invoke/MethodHandle;.invoke:([Ljava/lang/Object;)Ljava/lang/Object;, ()V // method@00d3, proto@0041
001a42: 7100 0600 0000                         |0013: invoke-static {}, LMain;.fail:()V // method@0006
001a48: 2809                                   |0016: goto 001f // +0009
001a4a: 0d01                                   |0017: move-exception v1
001a4c: 6202 1300                              |0018: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001a50: 1a03 2100                              |001a: const-string v3, "Caught exception from uninitialized call site" // string@0021
001a54: 6e20 b300 3200                         |001c: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
001a5a: 2201 3900                              |001f: new-instance v1, Ljava/lang/invoke/MutableCallSite; // type@0039
001a5e: 1c02 2c00                              |0021: const-class v2, Ljava/lang/String; // type@002c
001a62: 6203 1200                              |0023: sget-object v3, Ljava/lang/Integer;.TYPE:Ljava/lang/Class; // field@0012
001a66: 1214                                   |0025: const/4 v4, #int 1 // #1
001a68: 2344 4600                              |0026: new-array v4, v4, [Ljava/lang/Class; // type@0046
001a6c: 1205                                   |0028: const/4 v5, #int 0 // #0
001a6e: 6206 1100                              |0029: sget-object v6, Ljava/lang/Character;.TYPE:Ljava/lang/Class; // field@0011
001a72: 4d06 0405                              |002b: aput-object v6, v4, v5
001a76: 7130 e200 3204                         |002d: invoke-static {v2, v3, v4}, Ljava/lang/invoke/MethodType;.methodType:(Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodType; // method@00e2
001a7c: 0c02                                   |0030: move-result-object v2
001a7e: 7020 e600 2100                         |0031: invoke-direct {v1, v2}, Ljava/lang/invoke/MutableCallSite;.<init>:(Ljava/lang/invoke/MethodType;)V // method@00e6
001a84: 0710                                   |0034: move-object v0, v1
001a86: 6e10 d100 0000                         |0035: invoke-virtual {v0}, Ljava/lang/invoke/CallSite;.getTarget:()Ljava/lang/invoke/MethodHandle; // method@00d1
001a8c: 0c01                                   |0038: move-result-object v1
001a8e: 1302 ff05                              |0039: const/16 v2, #int 1535 // #5ff
001a92: 1303 6400                              |003b: const/16 v3, #int 100 // #64
001a96: fa30 d300 2103 4800                    |003d: invoke-polymorphic {v1, v2, v3}, Ljava/lang/invoke/MethodHandle;.invoke:([Ljava/lang/Object;)Ljava/lang/Object;, (IC)V // method@00d3, proto@0048
001a9e: 7100 0600 0000                         |0041: invoke-static {}, LMain;.fail:()V // method@0006
001aa4: 2809                                   |0044: goto 004d // +0009
001aa6: 0d01                                   |0045: move-exception v1
001aa8: 6202 1300                              |0046: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001aac: 1a03 2100                              |0048: const-string v3, "Caught exception from uninitialized call site" // string@0021
001ab0: 6e20 b300 3200                         |004a: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
001ab6: 0e00                                   |004d: return-void
      catches       : 2
        0x000b - 0x0016
          Ljava/lang/IllegalStateException; -> 0x0017
        0x0035 - 0x0044
          Ljava/lang/IllegalStateException; -> 0x0045
      positions     :
        0x0000 line=24
        0x000b line=26
        0x0013 line=27
        0x0016 line=30
        0x0017 line=28
        0x0018 line=29
        0x001f line=32
        0x0035 line=34
        0x0041 line=35
        0x0044 line=38
        0x0045 line=36
        0x0046 line=37
        0x004d line=39
      locals        :
        0x0018 - 0x001f reg=1 e Ljava/lang/IllegalStateException;
        0x0046 - 0x004d reg=1 e Ljava/lang/IllegalStateException;
        0x000b - 0x004e reg=0 callSite Ljava/lang/invoke/CallSite;

    #4              : (in LMain;)
      name          : 'main'
      type          : '([Ljava/lang/String;)V'
      access        : 0x0009 (PUBLIC STATIC)
      method_idx    : 7
      code          -
      registers     : 1
      ins           : 1
      outs          : 0
      insns size    : 28 16-bit code units
001ad0:                                        |[001ad0] Main.main:([Ljava/lang/String;)V
001ae0: 7100 0300 0000                         |0000: invoke-static {}, LMain;.TestUninitializedCallSite:()V // method@0003
001ae6: 7100 0100 0000                         |0003: invoke-static {}, LMain;.TestLinkerMethodMinimalArguments:()V // method@0001
001aec: 7100 0200 0000                         |0006: invoke-static {}, LMain;.TestLinkerMethodMultipleArgumentTypes:()V // method@0002
001af2: 7100 8c00 0000                         |0009: invoke-static {}, LTestLinkerUnrelatedBSM;.test:()V // method@008c
001af8: 7100 6e00 0000                         |000c: invoke-static {}, LTestInvokeCustomWithConcurrentThreads;.test:()V // method@006e
001afe: 7100 5b00 0000                         |000f: invoke-static {}, LTestInvocationKinds;.test:()V // method@005b
001b04: 7100 4500 0000                         |0012: invoke-static {}, LTestDynamicBootstrapArguments;.test:()V // method@0045
001b0a: 7100 2b00 0000                         |0015: invoke-static {}, LTestBadBootstrapArguments;.test:()V // method@002b
001b10: 7100 a800 0000                         |0018: invoke-static {}, LTestVariableArityLinkerMethod;.test:()V // method@00a8
001b16: 0e00                                   |001b: return-void
      catches       : (none)
      positions     :
        0x0000 line=78
        0x0003 line=79
        0x0006 line=80
        0x0009 line=81
        0x000c line=82
        0x000f line=83
        0x0012 line=84
        0x0015 line=85
        0x0018 line=86
        0x001b line=87
      locals        :
        0x0000 - 0x001c reg=0 args [Ljava/lang/String;

  Virtual methods   -
  source_file_idx   : 136 (Main.java)

Class #6 header:
class_idx           : 8
access_flags        : 1 (0x0001)
superclass_idx      : 9
interfaces_off      : 0 (0x000000)
source_file_idx     : 144
annotations_off     : 30820 (0x007864)
class_data_off      : 29062 (0x007186)
static_fields_size  : 0
instance_fields_size: 0
direct_methods_size : 38
virtual_methods_size: 0

Class #6 annotations:
Annotations on class
  VISIBILITY_SYSTEM Ldalvik/annotation/MemberClasses; value={ LTestBadBootstrapArguments$TestersConstantCallSite; }
Annotations on method #14 'bsm'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #15 'bsmDJ'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #16 'bsmDoubleLong'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #19 'bsmReturningTestersConstantCallsite'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #21 'bsmZBCS'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #25 'invokeBoxingArguments'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsmDoubleLong" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; Ljava/lang/Double; Ljava/lang/Long; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; doubleValue={ 1.79769e+308 } Lannotations/Constant; longValue={ 9223372036854775807 } } fieldOrMethodName="boxingArguments"
Annotations on method #26 'invokeExtraArguments'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsm" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; I Ljava/lang/String; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; intValue={ 1 } Lannotations/Constant; stringValue={ "2" } Lannotations/Constant; intValue={ 3 } } fieldOrMethodName="extraArguments"
Annotations on method #27 'invokeHappy'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsm" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; I Ljava/lang/String; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; intValue={ -1 } Lannotations/Constant; stringValue={ "very" } } fieldOrMethodName="happy"
Annotations on method #28 'invokeIntegerReturnType'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsmReturningInteger" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; } returnType=Ljava/lang/Integer; } fieldOrMethodName="integerReturnType"
Annotations on method #29 'invokeMissingParameterTypes'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsm" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; I D } } constantArgumentsForBootstrapMethod={ } fieldOrMethodName="missingParameterTypes"
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/NoSuchMethodError; }
Annotations on method #30 'invokeNarrowArguments'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsmZBCS" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; Z B C S } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; booleanValue={ true } Lannotations/Constant; byteValue={ 127 } Lannotations/Constant; charValue={ 65 } Lannotations/Constant; shortValue={ -32768 } } fieldOrMethodName="narrowArguments"
Annotations on method #31 'invokeObjectReturnType'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsmReturningObject" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; } returnType=Ljava/lang/Object; } fieldOrMethodName="ObjectReturnType"
Annotations on method #32 'invokeViaCustomCallSiteClass'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsmReturningTestersConstantCallsite" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; } returnType=LTestBadBootstrapArguments$TestersConstantCallSite; } fieldOrMethodName="sayHello"
Annotations on method #33 'invokeVoidReturnType'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsmReturningVoid" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; } returnType=V } fieldOrMethodName="voidReturnType"
Annotations on method #34 'invokeWideningArguments'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsmDJ" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; D J } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; doubleValue={ 1.79769e+308 } Lannotations/Constant; intValue={ 2147483647 } } fieldOrMethodName="wideningArguments"
Annotations on method #35 'invokeWideningBoxingArguments'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsmDoubleLong" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; Ljava/lang/Double; Ljava/lang/Long; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; floatValue={ 3.40282e+38 } Lannotations/Constant; longValue=2147483647 } } fieldOrMethodName="wideningBoxingArguments"
Annotations on method #36 'invokeWrongArguments'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsm" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; I Ljava/lang/String; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; stringValue={ "1" } Lannotations/Constant; doubleValue={ 3.14159 } } fieldOrMethodName="wrongArguments"
Annotations on method #37 'invokeWrongArgumentsAgain'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsm" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; I Ljava/lang/String; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; doubleValue={ 3.14159 } Lannotations/Constant; stringValue={ "pie" } } fieldOrMethodName="wrongArgumentsAgain"
Annotations on method #38 'invokeWrongParameterTypes'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestBadBootstrapArguments; name="bsm" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; I D } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; intValue={ -1 } Lannotations/Constant; stringValue={ "very" } } fieldOrMethodName="wrongParameterTypes"
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/NoSuchMethodError; }

Class #6            -
  Class descriptor  : 'LTestBadBootstrapArguments;'
  Access flags      : 0x0001 (PUBLIC)
  Superclass        : 'LTestBase;'
  Interfaces        -
  Static fields     -
  Instance fields   -
  Direct methods    -
    #0              : (in LTestBadBootstrapArguments;)
      name          : '<init>'
      type          : '()V'
      access        : 0x10001 (PUBLIC CONSTRUCTOR)
      method_idx    : 9
      code          -
      registers     : 1
      ins           : 1
      outs          : 1
      insns size    : 4 16-bit code units
001d64:                                        |[001d64] TestBadBootstrapArguments.<init>:()V
001d74: 7010 3200 0000                         |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032
001d7a: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=27
      locals        :
        0x0000 - 0x0004 reg=0 this LTestBadBootstrapArguments;

    #1              : (in LTestBadBootstrapArguments;)
      name          : 'boxingArguments'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 12
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 8 16-bit code units
001d7c:                                        |[001d7c] TestBadBootstrapArguments.boxingArguments:()V
001d8c: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001d90: 1a01 e900                              |0002: const-string v1, "boxingArguments" // string@00e9
001d94: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
001d9a: 0e00                                   |0007: return-void
      catches       : (none)
      positions     :
        0x0000 line=348
        0x0007 line=349
      locals        :

    #2              : (in LTestBadBootstrapArguments;)
      name          : 'bsm'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;ILjava/lang/String;)Ljava/lang/invoke/CallSite;'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 14
      code          -
      registers     : 7
      ins           : 5
      outs          : 4
      insns size    : 85 16-bit code units
001bb4:                                        |[001bb4] TestBadBootstrapArguments.bsm:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;ILjava/lang/String;)Ljava/lang/invoke/CallSite;
001bc4: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001bc8: 1a01 ee00                              |0002: const-string v1, "bsm(" // string@00ee
001bcc: 6e20 b000 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
001bd2: 6200 1300                              |0007: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001bd6: 6e10 dc00 0200                         |0009: invoke-virtual {v2}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
001bdc: 0c01                                   |000c: move-result-object v1
001bde: 6e20 af00 1000                         |000d: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
001be4: 6200 1300                              |0010: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001be8: 1a01 0c00                              |0012: const-string v1, ", " // string@000c
001bec: 6e20 b000 1000                         |0014: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
001bf2: 6200 1300                              |0017: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001bf6: 6e20 b000 3000                         |0019: invoke-virtual {v0, v3}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
001bfc: 6200 1300                              |001c: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001c00: 1a01 0c00                              |001e: const-string v1, ", " // string@000c
001c04: 6e20 b000 1000                         |0020: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
001c0a: 6200 1300                              |0023: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001c0e: 6e20 af00 4000                         |0025: invoke-virtual {v0, v4}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
001c14: 6200 1300                              |0028: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001c18: 1a01 0c00                              |002a: const-string v1, ", " // string@000c
001c1c: 6e20 b000 1000                         |002c: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
001c22: 6200 1300                              |002f: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001c26: 6e20 ad00 5000                         |0031: invoke-virtual {v0, v5}, Ljava/io/PrintStream;.print:(I)V // method@00ad
001c2c: 6200 1300                              |0034: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001c30: 1a01 0c00                              |0036: const-string v1, ", " // string@000c
001c34: 6e20 b000 1000                         |0038: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
001c3a: 6200 1300                              |003b: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001c3e: 6e20 b000 6000                         |003d: invoke-virtual {v0, v6}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
001c44: 6200 1300                              |0040: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001c48: 1a01 0700                              |0042: const-string v1, ")" // string@0007
001c4c: 6e20 b300 1000                         |0044: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
001c52: 6e10 dc00 0200                         |0047: invoke-virtual {v2}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
001c58: 0c00                                   |004a: move-result-object v0
001c5a: 6e40 d800 0243                         |004b: invoke-virtual {v2, v0, v3, v4}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8
001c60: 0c00                                   |004e: move-result-object v0
001c62: 2201 3400                              |004f: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
001c66: 7020 d200 0100                         |0051: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
001c6c: 1101                                   |0054: return-object v1
      catches       : (none)
      positions     :
        0x0000 line=35
        0x0007 line=36
        0x0010 line=37
        0x0017 line=38
        0x001c line=39
        0x0023 line=40
        0x0028 line=41
        0x002f line=42
        0x0034 line=43
        0x003b line=44
        0x0040 line=45
        0x0047 line=46
        0x004f line=47
      locals        :
        0x004f - 0x0055 reg=0 mh Ljava/lang/invoke/MethodHandle;
        0x0000 - 0x0055 reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x0055 reg=3 methodName Ljava/lang/String;
        0x0000 - 0x0055 reg=4 methodType Ljava/lang/invoke/MethodType;
        0x0000 - 0x0055 reg=5 extraInt I
        0x0000 - 0x0055 reg=6 extraString Ljava/lang/String;

    #3              : (in LTestBadBootstrapArguments;)
      name          : 'bsmDJ'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;DJ)Ljava/lang/invoke/CallSite;'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 15
      code          -
      registers     : 9
      ins           : 7
      outs          : 4
      insns size    : 45 16-bit code units
001c70:                                        |[001c70] TestBadBootstrapArguments.bsmDJ:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;DJ)Ljava/lang/invoke/CallSite;
001c80: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001c84: 1a01 f100                              |0002: const-string v1, "bsmDJ(..., " // string@00f1
001c88: 6e20 b000 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
001c8e: 6200 1300                              |0007: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001c92: 6e30 ac00 5006                         |0009: invoke-virtual {v0, v5, v6}, Ljava/io/PrintStream;.print:(D)V // method@00ac
001c98: 6200 1300                              |000c: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001c9c: 1a01 0c00                              |000e: const-string v1, ", " // string@000c
001ca0: 6e20 b000 1000                         |0010: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
001ca6: 6200 1300                              |0013: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001caa: 6e30 ae00 7008                         |0015: invoke-virtual {v0, v7, v8}, Ljava/io/PrintStream;.print:(J)V // method@00ae
001cb0: 6200 1300                              |0018: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001cb4: 1a01 0700                              |001a: const-string v1, ")" // string@0007
001cb8: 6e20 b300 1000                         |001c: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
001cbe: 6e10 dc00 0200                         |001f: invoke-virtual {v2}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
001cc4: 0c00                                   |0022: move-result-object v0
001cc6: 6e40 d800 0243                         |0023: invoke-virtual {v2, v0, v3, v4}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8
001ccc: 0c00                                   |0026: move-result-object v0
001cce: 2201 3400                              |0027: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
001cd2: 7020 d200 0100                         |0029: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
001cd8: 1101                                   |002c: return-object v1
      catches       : (none)
      positions     :
        0x0000 line=270
        0x0007 line=271
        0x000c line=272
        0x0013 line=273
        0x0018 line=274
        0x001f line=275
        0x0027 line=276
      locals        :
        0x0027 - 0x002d reg=0 mh Ljava/lang/invoke/MethodHandle;
        0x0000 - 0x002d reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x002d reg=3 methodName Ljava/lang/String;
        0x0000 - 0x002d reg=4 methodType Ljava/lang/invoke/MethodType;
        0x0000 - 0x002d reg=5 extraArg0 D
        0x0000 - 0x002d reg=7 extraArg1 J

    #4              : (in LTestBadBootstrapArguments;)
      name          : 'bsmDoubleLong'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Double;Ljava/lang/Long;)Ljava/lang/invoke/CallSite;'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 16
      code          -
      registers     : 7
      ins           : 5
      outs          : 4
      insns size    : 45 16-bit code units
001cdc:                                        |[001cdc] TestBadBootstrapArguments.bsmDoubleLong:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Double;Ljava/lang/Long;)Ljava/lang/invoke/CallSite;
001cec: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001cf0: 1a01 f300                              |0002: const-string v1, "bsmDoubleLong(..., " // string@00f3
001cf4: 6e20 b000 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
001cfa: 6200 1300                              |0007: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001cfe: 6e20 af00 5000                         |0009: invoke-virtual {v0, v5}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
001d04: 6200 1300                              |000c: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001d08: 1a01 0c00                              |000e: const-string v1, ", " // string@000c
001d0c: 6e20 b000 1000                         |0010: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
001d12: 6200 1300                              |0013: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001d16: 6e20 af00 6000                         |0015: invoke-virtual {v0, v6}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
001d1c: 6200 1300                              |0018: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001d20: 1a01 0700                              |001a: const-string v1, ")" // string@0007
001d24: 6e20 b300 1000                         |001c: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
001d2a: 6e10 dc00 0200                         |001f: invoke-virtual {v2}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
001d30: 0c00                                   |0022: move-result-object v0
001d32: 6e40 d800 0243                         |0023: invoke-virtual {v2, v0, v3, v4}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8
001d38: 0c00                                   |0026: move-result-object v0
001d3a: 2201 3400                              |0027: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
001d3e: 7020 d200 0100                         |0029: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
001d44: 1101                                   |002c: return-object v1
      catches       : (none)
      positions     :
        0x0000 line=314
        0x0007 line=315
        0x000c line=316
        0x0013 line=317
        0x0018 line=318
        0x001f line=319
        0x0027 line=320
      locals        :
        0x0027 - 0x002d reg=0 mh Ljava/lang/invoke/MethodHandle;
        0x0000 - 0x002d reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x002d reg=3 methodName Ljava/lang/String;
        0x0000 - 0x002d reg=4 methodType Ljava/lang/invoke/MethodType;
        0x0000 - 0x002d reg=5 extraArg0 Ljava/lang/Double;
        0x0000 - 0x002d reg=6 extraArg1 Ljava/lang/Long;

    #5              : (in LTestBadBootstrapArguments;)
      name          : 'bsmReturningInteger'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/Integer;'
      access        : 0x0008 (STATIC)
      method_idx    : 17
      code          -
      registers     : 5
      ins           : 3
      outs          : 2
      insns size    : 13 16-bit code units
001b5c:                                        |[001b5c] TestBadBootstrapArguments.bsmReturningInteger:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/Integer;
001b6c: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001b70: 1a01 eb00                              |0002: const-string v1, "bsm returning Integer value." // string@00eb
001b74: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
001b7a: 1230                                   |0007: const/4 v0, #int 3 // #3
001b7c: 7110 bd00 0000                         |0008: invoke-static {v0}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@00bd
001b82: 0c00                                   |000b: move-result-object v0
001b84: 1100                                   |000c: return-object v0
      catches       : (none)
      positions     :
        0x0000 line=425
        0x0007 line=426
      locals        :
        0x0000 - 0x000d reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x000d reg=3 name Ljava/lang/String;
        0x0000 - 0x000d reg=4 type Ljava/lang/invoke/MethodType;

    #6              : (in LTestBadBootstrapArguments;)
      name          : 'bsmReturningObject'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/Object;'
      access        : 0x0008 (STATIC)
      method_idx    : 18
      code          -
      registers     : 5
      ins           : 3
      outs          : 2
      insns size    : 13 16-bit code units
001b88:                                        |[001b88] TestBadBootstrapArguments.bsmReturningObject:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/Object;
001b98: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001b9c: 1a01 ec00                              |0002: const-string v1, "bsm returning Object value." // string@00ec
001ba0: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
001ba6: 2200 2a00                              |0007: new-instance v0, Ljava/lang/Object; // type@002a
001baa: 7010 bf00 0000                         |0009: invoke-direct {v0}, Ljava/lang/Object;.<init>:()V // method@00bf
001bb0: 1100                                   |000c: return-object v0
      catches       : (none)
      positions     :
        0x0000 line=402
        0x0007 line=403
      locals        :
        0x0000 - 0x000d reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x000d reg=3 name Ljava/lang/String;
        0x0000 - 0x000d reg=4 type Ljava/lang/invoke/MethodType;

    #7              : (in LTestBadBootstrapArguments;)
      name          : 'bsmReturningTestersConstantCallsite'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)LTestBadBootstrapArguments$TestersConstantCallSite;'
      access        : 0x0008 (STATIC)
      method_idx    : 19
      code          -
      registers     : 5
      ins           : 3
      outs          : 4
      insns size    : 14 16-bit code units
001b30:                                        |[001b30] TestBadBootstrapArguments.bsmReturningTestersConstantCallsite:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)LTestBadBootstrapArguments$TestersConstantCallSite;
001b40: 2200 0700                              |0000: new-instance v0, LTestBadBootstrapArguments$TestersConstantCallSite; // type@0007
001b44: 6e10 dc00 0200                         |0002: invoke-virtual {v2}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
001b4a: 0c01                                   |0005: move-result-object v1
001b4c: 6e40 d800 1243                         |0006: invoke-virtual {v2, v1, v3, v4}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8
001b52: 0c01                                   |0009: move-result-object v1
001b54: 7020 0800 1000                         |000a: invoke-direct {v0, v1}, LTestBadBootstrapArguments$TestersConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@0008
001b5a: 1100                                   |000d: return-object v0
      catches       : (none)
      positions     :
        0x0000 line=455
      locals        :
        0x0000 - 0x000e reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x000e reg=3 name Ljava/lang/String;
        0x0000 - 0x000e reg=4 type Ljava/lang/invoke/MethodType;

    #8              : (in LTestBadBootstrapArguments;)
      name          : 'bsmReturningVoid'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)V'
      access        : 0x0008 (STATIC)
      method_idx    : 20
      code          -
      registers     : 5
      ins           : 3
      outs          : 2
      insns size    : 8 16-bit code units
001d9c:                                        |[001d9c] TestBadBootstrapArguments.bsmReturningVoid:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)V
001dac: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001db0: 1a01 ed00                              |0002: const-string v1, "bsm returning void value." // string@00ed
001db4: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
001dba: 0e00                                   |0007: return-void
      catches       : (none)
      positions     :
        0x0000 line=380
        0x0007 line=381
      locals        :
        0x0000 - 0x0008 reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x0008 reg=3 name Ljava/lang/String;
        0x0000 - 0x0008 reg=4 type Ljava/lang/invoke/MethodType;

    #9              : (in LTestBadBootstrapArguments;)
      name          : 'bsmZBCS'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;ZBCS)Ljava/lang/invoke/CallSite;'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 21
      code          -
      registers     : 8
      ins           : 7
      outs          : 0
      insns size    : 5 16-bit code units
001d48:                                        |[001d48] TestBadBootstrapArguments.bsmZBCS:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;ZBCS)Ljava/lang/invoke/CallSite;
001d58: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
001d5e: 1200                                   |0003: const/4 v0, #int 0 // #0
001d60: 1100                                   |0004: return-object v0
      catches       : (none)
      positions     :
        0x0000 line=227
        0x0003 line=228
      locals        :
        0x0000 - 0x0005 reg=1 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x0005 reg=2 methodName Ljava/lang/String;
        0x0000 - 0x0005 reg=3 methodType Ljava/lang/invoke/MethodType;
        0x0000 - 0x0005 reg=4 extraArg0 Z
        0x0000 - 0x0005 reg=5 extraArg1 B
        0x0000 - 0x0005 reg=6 extraArg2 C
        0x0000 - 0x0005 reg=7 extraArg3 S

    #10              : (in LTestBadBootstrapArguments;)
      name          : 'extraArguments'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 22
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 8 16-bit code units
001dbc:                                        |[001dbc] TestBadBootstrapArguments.extraArguments:()V
001dcc: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001dd0: 1a01 2001                              |0002: const-string v1, "extraArguments" // string@0120
001dd4: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
001dda: 0e00                                   |0007: return-void
      catches       : (none)
      positions     :
        0x0000 line=158
        0x0007 line=159
      locals        :

    #11              : (in LTestBadBootstrapArguments;)
      name          : 'happy'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 23
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 8 16-bit code units
001ddc:                                        |[001ddc] TestBadBootstrapArguments.happy:()V
001dec: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001df0: 1a01 3d01                              |0002: const-string v1, "happy" // string@013d
001df4: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
001dfa: 0e00                                   |0007: return-void
      catches       : (none)
      positions     :
        0x0000 line=74
        0x0007 line=75
      locals        :

    #12              : (in LTestBadBootstrapArguments;)
      name          : 'integerReturnType'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 24
      code          -
      registers     : 0
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
001dfc:                                        |[001dfc] TestBadBootstrapArguments.integerReturnType:()V
001e0c: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
001e12: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=444
        0x0003 line=445
      locals        :

    #13              : (in LTestBadBootstrapArguments;)
      name          : 'invokeBoxingArguments'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 25
      code          -
      registers     : 0
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
001e14:                                        |[001e14] TestBadBootstrapArguments.invokeBoxingArguments:()V
001e24: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
001e2a: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=344
        0x0003 line=345
      locals        :

    #14              : (in LTestBadBootstrapArguments;)
      name          : 'invokeExtraArguments'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 26
      code          -
      registers     : 0
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
001e2c:                                        |[001e2c] TestBadBootstrapArguments.invokeExtraArguments:()V
001e3c: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
001e42: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=154
        0x0003 line=155
      locals        :

    #15              : (in LTestBadBootstrapArguments;)
      name          : 'invokeHappy'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 27
      code          -
      registers     : 0
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
001e44:                                        |[001e44] TestBadBootstrapArguments.invokeHappy:()V
001e54: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
001e5a: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=70
        0x0003 line=71
      locals        :

    #16              : (in LTestBadBootstrapArguments;)
      name          : 'invokeIntegerReturnType'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 28
      code          -
      registers     : 0
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
001e5c:                                        |[001e5c] TestBadBootstrapArguments.invokeIntegerReturnType:()V
001e6c: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
001e72: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=440
        0x0003 line=441
      locals        :

    #17              : (in LTestBadBootstrapArguments;)
      name          : 'invokeMissingParameterTypes'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 29
      code          -
      registers     : 0
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
001e74:                                        |[001e74] TestBadBootstrapArguments.invokeMissingParameterTypes:()V
001e84: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
001e8a: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=124
        0x0003 line=125
      locals        :

    #18              : (in LTestBadBootstrapArguments;)
      name          : 'invokeNarrowArguments'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 30
      code          -
      registers     : 0
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
001e8c:                                        |[001e8c] TestBadBootstrapArguments.invokeNarrowArguments:()V
001e9c: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
001ea2: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=256
        0x0003 line=257
      locals        :

    #19              : (in LTestBadBootstrapArguments;)
      name          : 'invokeObjectReturnType'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 31
      code          -
      registers     : 0
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
001ea4:                                        |[001ea4] TestBadBootstrapArguments.invokeObjectReturnType:()V
001eb4: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
001eba: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=417
        0x0003 line=418
      locals        :

    #20              : (in LTestBadBootstrapArguments;)
      name          : 'invokeViaCustomCallSiteClass'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 32
      code          -
      registers     : 0
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
001ebc:                                        |[001ebc] TestBadBootstrapArguments.invokeViaCustomCallSiteClass:()V
001ecc: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
001ed2: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=469
        0x0003 line=470
      locals        :

    #21              : (in LTestBadBootstrapArguments;)
      name          : 'invokeVoidReturnType'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 33
      code          -
      registers     : 0
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
001ed4:                                        |[001ed4] TestBadBootstrapArguments.invokeVoidReturnType:()V
001ee4: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
001eea: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=394
        0x0003 line=395
      locals        :

    #22              : (in LTestBadBootstrapArguments;)
      name          : 'invokeWideningArguments'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 34
      code          -
      registers     : 0
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
001eec:                                        |[001eec] TestBadBootstrapArguments.invokeWideningArguments:()V
001efc: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
001f02: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=300
        0x0003 line=301
      locals        :

    #23              : (in LTestBadBootstrapArguments;)
      name          : 'invokeWideningBoxingArguments'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 35
      code          -
      registers     : 0
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
001f04:                                        |[001f04] TestBadBootstrapArguments.invokeWideningBoxingArguments:()V
001f14: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
001f1a: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=372
        0x0003 line=373
      locals        :

    #24              : (in LTestBadBootstrapArguments;)
      name          : 'invokeWrongArguments'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 36
      code          -
      registers     : 0
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
001f1c:                                        |[001f1c] TestBadBootstrapArguments.invokeWrongArguments:()V
001f2c: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
001f32: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=182
        0x0003 line=183
      locals        :

    #25              : (in LTestBadBootstrapArguments;)
      name          : 'invokeWrongArgumentsAgain'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 37
      code          -
      registers     : 0
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
001f34:                                        |[001f34] TestBadBootstrapArguments.invokeWrongArgumentsAgain:()V
001f44: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
001f4a: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=210
        0x0003 line=211
      locals        :

    #26              : (in LTestBadBootstrapArguments;)
      name          : 'invokeWrongParameterTypes'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 38
      code          -
      registers     : 0
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
001f4c:                                        |[001f4c] TestBadBootstrapArguments.invokeWrongParameterTypes:()V
001f5c: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
001f62: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=98
        0x0003 line=99
      locals        :

    #27              : (in LTestBadBootstrapArguments;)
      name          : 'missingParameterTypes'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 39
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 8 16-bit code units
001f64:                                        |[001f64] TestBadBootstrapArguments.missingParameterTypes:()V
001f74: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001f78: 1a01 8c01                              |0002: const-string v1, "missingParameterTypes" // string@018c
001f7c: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
001f82: 0e00                                   |0007: return-void
      catches       : (none)
      positions     :
        0x0000 line=128
        0x0007 line=129
      locals        :

    #28              : (in LTestBadBootstrapArguments;)
      name          : 'narrowArguments'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 40
      code          -
      registers     : 0
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
001f84:                                        |[001f84] TestBadBootstrapArguments.narrowArguments:()V
001f94: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
001f9a: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=260
        0x0003 line=261
      locals        :

    #29              : (in LTestBadBootstrapArguments;)
      name          : 'objectReturnType'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 41
      code          -
      registers     : 0
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
001f9c:                                        |[001f9c] TestBadBootstrapArguments.objectReturnType:()V
001fac: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
001fb2: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=421
        0x0003 line=422
      locals        :

    #30              : (in LTestBadBootstrapArguments;)
      name          : 'sayHello'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 42
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 8 16-bit code units
001fb4:                                        |[001fb4] TestBadBootstrapArguments.sayHello:()V
001fc4: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001fc8: 1a01 2d00                              |0002: const-string v1, "Hello!" // string@002d
001fcc: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
001fd2: 0e00                                   |0007: return-void
      catches       : (none)
      positions     :
        0x0000 line=473
        0x0007 line=474
      locals        :

    #31              : (in LTestBadBootstrapArguments;)
      name          : 'test'
      type          : '()V'
      access        : 0x0008 (STATIC)
      method_idx    : 43
      code          -
      registers     : 3
      ins           : 0
      outs          : 2
      insns size    : 529 16-bit code units
001fd4:                                        |[001fd4] TestBadBootstrapArguments.test:()V
001fe4: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
001fe8: 1a01 8f00                              |0002: const-string v1, "TestBadBootstrapArguments" // string@008f
001fec: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
001ff2: fc00 0000 0000                         |0007: invoke-custom {}, call_site@0000
001ff8: fc00 0100 0000                         |000a: invoke-custom {}, call_site@0001
001ffe: 7100 0b00 0000                         |000d: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
0020042812                                   |0010: goto 0022 // +0012
0020060d00                                   |0011: move-exception v0
0020086201 1300                              |0012: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
00200c: 1a02 6101                              |0014: const-string v2, "invokeWrongParameterTypes => " // string@0161
0020106e20 b000 2100                         |0016: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
0020166201 1300                              |0019: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
00201a: 6e10 c000 0000                         |001b: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
0020200c02                                   |001e: move-result-object v2
0020226e20 b200 2100                         |001f: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
002028: fc00 0200 0000                         |0022: invoke-custom {}, call_site@0002
00202e: 7100 0b00 0000                         |0025: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
0020342812                                   |0028: goto 003a // +0012
0020360d00                                   |0029: move-exception v0
0020386201 1300                              |002a: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
00203c: 1a02 5101                              |002c: const-string v2, "invokeMissingParameterTypes => " // string@0151
0020406e20 b000 2100                         |002e: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
0020466201 1300                              |0031: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
00204a: 6e10 c000 0000                         |0033: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
0020500c02                                   |0036: move-result-object v2
0020526e20 b200 2100                         |0037: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
002058: fc00 0300 0000                         |003a: invoke-custom {}, call_site@0003
00205e: 7100 0b00 0000                         |003d: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
0020642833                                   |0040: goto 0073 // +0033
0020660d00                                   |0041: move-exception v0
0020681c01 3a00                              |0042: const-class v1, Ljava/lang/invoke/WrongMethodTypeException; // type@003a
00206c: 6e10 b600 0000                         |0044: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
0020720c02                                   |0047: move-result-object v2
0020746e10 c000 0200                         |0048: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
00207a: 0c02                                   |004b: move-result-object v2
00207c: 7120 0a00 2100                         |004c: invoke-static {v1, v2}, LTestBadBootstrapArguments;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@000a
0020826201 1300                              |004f: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0020861a02 4c01                              |0051: const-string v2, "invokeExtraArguments => " // string@014c
00208a: 6e20 b000 2100                         |0053: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
0020906201 1300                              |0056: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0020946e10 c000 0000                         |0058: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
00209a: 0c02                                   |005b: move-result-object v2
00209c: 6e20 af00 2100                         |005c: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
0020a2: 6201 1300                              |005f: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0020a6: 1a02 0200                              |0061: const-string v2, " => " // string@0002
0020aa: 6e20 b000 2100                         |0063: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
0020b0: 6201 1300                              |0066: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0020b4: 6e10 b600 0000                         |0068: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
0020ba: 0c02                                   |006b: move-result-object v2
0020bc: 6e10 c000 0200                         |006c: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
0020c2: 0c02                                   |006f: move-result-object v2
0020c4: 6e20 b200 2100                         |0070: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
0020ca: fc00 0400 0000                         |0073: invoke-custom {}, call_site@0004
0020d0: 7100 0b00 0000                         |0076: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
0020d6: 2833                                   |0079: goto 00ac // +0033
0020d8: 0d00                                   |007a: move-exception v0
0020da: 1c01 2200                              |007b: const-class v1, Ljava/lang/ClassCastException; // type@0022
0020de: 6e10 b600 0000                         |007d: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
0020e4: 0c02                                   |0080: move-result-object v2
0020e6: 6e10 c000 0200                         |0081: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
0020ec: 0c02                                   |0084: move-result-object v2
0020ee: 7120 0a00 2100                         |0085: invoke-static {v1, v2}, LTestBadBootstrapArguments;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@000a
0020f4: 6201 1300                              |0088: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0020f8: 1a02 5d01                              |008a: const-string v2, "invokeWrongArguments => " // string@015d
0020fc: 6e20 b000 2100                         |008c: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
0021026201 1300                              |008f: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0021066e10 c000 0000                         |0091: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
00210c: 0c02                                   |0094: move-result-object v2
00210e: 6e20 af00 2100                         |0095: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
0021146201 1300                              |0098: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0021181a02 0200                              |009a: const-string v2, " => " // string@0002
00211c: 6e20 b000 2100                         |009c: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
0021226201 1300                              |009f: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0021266e10 b600 0000                         |00a1: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
00212c: 0c02                                   |00a4: move-result-object v2
00212e: 6e10 c000 0200                         |00a5: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
0021340c02                                   |00a8: move-result-object v2
0021366e20 b200 2100                         |00a9: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
00213c: fc00 0500 0000                         |00ac: invoke-custom {}, call_site@0005
0021427100 0b00 0000                         |00af: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
0021482833                                   |00b2: goto 00e5 // +0033
00214a: 0d00                                   |00b3: move-exception v0
00214c: 1c01 2200                              |00b4: const-class v1, Ljava/lang/ClassCastException; // type@0022
0021506e10 b600 0000                         |00b6: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
0021560c02                                   |00b9: move-result-object v2
0021586e10 c000 0200                         |00ba: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
00215e: 0c02                                   |00bd: move-result-object v2
0021607120 0a00 2100                         |00be: invoke-static {v1, v2}, LTestBadBootstrapArguments;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@000a
0021666201 1300                              |00c1: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
00216a: 1a02 5d01                              |00c3: const-string v2, "invokeWrongArguments => " // string@015d
00216e: 6e20 b000 2100                         |00c5: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
0021746201 1300                              |00c8: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0021786e10 c000 0000                         |00ca: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
00217e: 0c02                                   |00cd: move-result-object v2
0021806e20 af00 2100                         |00ce: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
0021866201 1300                              |00d1: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
00218a: 1a02 0200                              |00d3: const-string v2, " => " // string@0002
00218e: 6e20 b000 2100                         |00d5: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
0021946201 1300                              |00d8: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0021986e10 b600 0000                         |00da: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
00219e: 0c02                                   |00dd: move-result-object v2
0021a0: 6e10 c000 0200                         |00de: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
0021a6: 0c02                                   |00e1: move-result-object v2
0021a8: 6e20 b200 2100                         |00e2: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
0021ae: fc00 0600 0000                         |00e5: invoke-custom {}, call_site@0006
0021b4: 7100 0b00 0000                         |00e8: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
0021ba: 2833                                   |00eb: goto 011e // +0033
0021bc: 0d00                                   |00ec: move-exception v0
0021be: 1c01 2200                              |00ed: const-class v1, Ljava/lang/ClassCastException; // type@0022
0021c2: 6e10 b600 0000                         |00ef: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
0021c8: 0c02                                   |00f2: move-result-object v2
0021ca: 6e10 c000 0200                         |00f3: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
0021d0: 0c02                                   |00f6: move-result-object v2
0021d2: 7120 0a00 2100                         |00f7: invoke-static {v1, v2}, LTestBadBootstrapArguments;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@000a
0021d8: 6201 1300                              |00fa: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0021dc: 1a02 5f01                              |00fc: const-string v2, "invokeWrongArgumentsAgain => " // string@015f
0021e0: 6e20 b000 2100                         |00fe: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
0021e6: 6201 1300                              |0101: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0021ea: 6e10 c000 0000                         |0103: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
0021f0: 0c02                                   |0106: move-result-object v2
0021f2: 6e20 af00 2100                         |0107: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
0021f8: 6201 1300                              |010a: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0021fc: 1a02 0200                              |010c: const-string v2, " => " // string@0002
0022006e20 b000 2100                         |010e: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
0022066201 1300                              |0111: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
00220a: 6e10 b600 0000                         |0113: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
0022100c02                                   |0116: move-result-object v2
0022126e10 c000 0200                         |0117: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
0022180c02                                   |011a: move-result-object v2
00221a: 6e20 b200 2100                         |011b: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
002220: fc00 0700 0000                         |011e: invoke-custom {}, call_site@0007
0022267100 0b00 0000                         |0121: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
00222c: 2833                                   |0124: goto 0157 // +0033
00222e: 0d00                                   |0125: move-exception v0
0022301c01 2200                              |0126: const-class v1, Ljava/lang/ClassCastException; // type@0022
0022346e10 b600 0000                         |0128: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
00223a: 0c02                                   |012b: move-result-object v2
00223c: 6e10 c000 0200                         |012c: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
0022420c02                                   |012f: move-result-object v2
0022447120 0a00 2100                         |0130: invoke-static {v1, v2}, LTestBadBootstrapArguments;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@000a
00224a: 6201 1300                              |0133: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
00224e: 1a02 5301                              |0135: const-string v2, "invokeNarrowArguments => " // string@0153
0022526e20 b000 2100                         |0137: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
0022586201 1300                              |013a: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
00225c: 6e10 c000 0000                         |013c: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
0022620c02                                   |013f: move-result-object v2
0022646e20 af00 2100                         |0140: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
00226a: 6201 1300                              |0143: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
00226e: 1a02 0200                              |0145: const-string v2, " => " // string@0002
0022726e20 b000 2100                         |0147: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
0022786201 1300                              |014a: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
00227c: 6e10 b600 0000                         |014c: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
0022820c02                                   |014f: move-result-object v2
0022846e10 c000 0200                         |0150: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
00228a: 0c02                                   |0153: move-result-object v2
00228c: 6e20 b200 2100                         |0154: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
002292: fc00 0800 0000                         |0157: invoke-custom {}, call_site@0008
002298: fc00 0900 0000                         |015a: invoke-custom {}, call_site@0009
00229e: fc00 0a00 0000                         |015d: invoke-custom {}, call_site@000a
0022a4: 7100 0b00 0000                         |0160: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
0022aa: 2826                                   |0163: goto 0189 // +0026
0022ac: 0d00                                   |0164: move-exception v0
0022ae: 6201 1300                              |0165: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0022b2: 1a02 5b01                              |0167: const-string v2, "invokeWideningBoxingArguments => " // string@015b
0022b6: 6e20 b000 2100                         |0169: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
0022bc: 6201 1300                              |016c: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0022c0: 6e10 c000 0000                         |016e: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
0022c6: 0c02                                   |0171: move-result-object v2
0022c8: 6e20 af00 2100                         |0172: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
0022ce: 6201 1300                              |0175: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0022d2: 1a02 0200                              |0177: const-string v2, " => " // string@0002
0022d6: 6e20 b000 2100                         |0179: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
0022dc: 6201 1300                              |017c: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0022e0: 6e10 b600 0000                         |017e: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
0022e6: 0c02                                   |0181: move-result-object v2
0022e8: 6e10 c000 0200                         |0182: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
0022ee: 0c02                                   |0185: move-result-object v2
0022f0: 6e20 b200 2100                         |0186: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
0022f6: fc00 0b00 0000                         |0189: invoke-custom {}, call_site@000b
0022fc: 7100 0b00 0000                         |018c: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
0023022826                                   |018f: goto 01b5 // +0026
0023040d00                                   |0190: move-exception v0
0023066201 1300                              |0191: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
00230a: 1a02 5801                              |0193: const-string v2, "invokeVoidReturnType() => " // string@0158
00230e: 6e20 b000 2100                         |0195: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
0023146201 1300                              |0198: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0023186e10 c000 0000                         |019a: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
00231e: 0c02                                   |019d: move-result-object v2
0023206e20 af00 2100                         |019e: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
0023266201 1300                              |01a1: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
00232a: 1a02 0200                              |01a3: const-string v2, " => " // string@0002
00232e: 6e20 b000 2100                         |01a5: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
0023346201 1300                              |01a8: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0023386e10 b600 0000                         |01aa: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
00233e: 0c02                                   |01ad: move-result-object v2
0023406e10 c000 0200                         |01ae: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
0023460c02                                   |01b1: move-result-object v2
0023486e20 b200 2100                         |01b2: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
00234e: fc00 0c00 0000                         |01b5: invoke-custom {}, call_site@000c
0023547100 0b00 0000                         |01b8: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
00235a: 2826                                   |01bb: goto 01e1 // +0026
00235c: 0d00                                   |01bc: move-exception v0
00235e: 6201 1300                              |01bd: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0023621a02 5501                              |01bf: const-string v2, "invokeObjectReturnType() => " // string@0155
0023666e20 b000 2100                         |01c1: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
00236c: 6201 1300                              |01c4: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0023706e10 c000 0000                         |01c6: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
0023760c02                                   |01c9: move-result-object v2
0023786e20 af00 2100                         |01ca: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
00237e: 6201 1300                              |01cd: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0023821a02 0200                              |01cf: const-string v2, " => " // string@0002
0023866e20 b000 2100                         |01d1: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
00238c: 6201 1300                              |01d4: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0023906e10 b600 0000                         |01d6: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
0023960c02                                   |01d9: move-result-object v2
0023986e10 c000 0200                         |01da: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
00239e: 0c02                                   |01dd: move-result-object v2
0023a0: 6e20 b200 2100                         |01de: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
0023a6: fc00 0d00 0000                         |01e1: invoke-custom {}, call_site@000d
0023ac: 7100 0b00 0000                         |01e4: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
0023b2: 2826                                   |01e7: goto 020d // +0026
0023b4: 0d00                                   |01e8: move-exception v0
0023b6: 6201 1300                              |01e9: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0023ba: 1a02 4f01                              |01eb: const-string v2, "invokeIntegerReturnType() => " // string@014f
0023be: 6e20 b000 2100                         |01ed: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
0023c4: 6201 1300                              |01f0: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0023c8: 6e10 c000 0000                         |01f2: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
0023ce: 0c02                                   |01f5: move-result-object v2
0023d0: 6e20 af00 2100                         |01f6: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
0023d6: 6201 1300                              |01f9: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0023da: 1a02 0200                              |01fb: const-string v2, " => " // string@0002
0023de: 6e20 b000 2100                         |01fd: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
0023e4: 6201 1300                              |0200: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0023e8: 6e10 b600 0000                         |0202: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
0023ee: 0c02                                   |0205: move-result-object v2
0023f0: 6e10 c000 0200                         |0206: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
0023f6: 0c02                                   |0209: move-result-object v2
0023f8: 6e20 b200 2100                         |020a: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
0023fe: fc00 0e00 0000                         |020d: invoke-custom {}, call_site@000e
0024040e00                                   |0210: return-void
      catches       : 11
        0x000a - 0x0010
          Ljava/lang/NoSuchMethodError; -> 0x0011
        0x0022 - 0x0028
          Ljava/lang/NoSuchMethodError; -> 0x0029
        0x003a - 0x0040
          Ljava/lang/BootstrapMethodError; -> 0x0041
        0x0073 - 0x0079
          Ljava/lang/BootstrapMethodError; -> 0x007a
        0x00ac - 0x00b2
          Ljava/lang/BootstrapMethodError; -> 0x00b3
        0x00e5 - 0x00eb
          Ljava/lang/BootstrapMethodError; -> 0x00ec
        0x011e - 0x0124
          Ljava/lang/BootstrapMethodError; -> 0x0125
        0x015d - 0x0163
          Ljava/lang/BootstrapMethodError; -> 0x0164
        0x0189 - 0x018f
          Ljava/lang/BootstrapMethodError; -> 0x0190
        0x01b5 - 0x01bb
          Ljava/lang/BootstrapMethodError; -> 0x01bc
        0x01e1 - 0x01e7
          Ljava/lang/BootstrapMethodError; -> 0x01e8
      positions     :
        0x0000 line=477
        0x0007 line=478
        0x000a line=480
        0x000d line=481
        0x0010 line=485
        0x0011 line=482
        0x0012 line=483
        0x0019 line=484
        0x0022 line=487
        0x0025 line=488
        0x0028 line=492
        0x0029 line=489
        0x002a line=490
        0x0031 line=491
        0x003a line=494
        0x003d line=495
        0x0040 line=502
        0x0041 line=496
        0x0042 line=497
        0x004f line=498
        0x0056 line=499
        0x005f line=500
        0x0066 line=501
        0x0073 line=504
        0x0076 line=505
        0x0079 line=512
        0x007a line=506
        0x007b line=507
        0x0088 line=508
        0x008f line=509
        0x0098 line=510
        0x009f line=511
        0x00ac line=514
        0x00af line=515
        0x00b2 line=522
        0x00b3 line=516
        0x00b4 line=517
        0x00c1 line=518
        0x00c8 line=519
        0x00d1 line=520
        0x00d8 line=521
        0x00e5 line=524
        0x00e8 line=525
        0x00eb line=532
        0x00ec line=526
        0x00ed line=527
        0x00fa line=528
        0x0101 line=529
        0x010a line=530
        0x0111 line=531
        0x011e line=534
        0x0121 line=535
        0x0124 line=542
        0x0125 line=536
        0x0126 line=537
        0x0133 line=538
        0x013a line=539
        0x0143 line=540
        0x014a line=541
        0x0157 line=543
        0x015a line=544
        0x015d line=546
        0x0160 line=547
        0x0163 line=553
        0x0164 line=548
        0x0165 line=549
        0x016c line=550
        0x0175 line=551
        0x017c line=552
        0x0189 line=555
        0x018c line=556
        0x018f line=562
        0x0190 line=557
        0x0191 line=558
        0x0198 line=559
        0x01a1 line=560
        0x01a8 line=561
        0x01b5 line=564
        0x01b8 line=565
        0x01bb line=571
        0x01bc line=566
        0x01bd line=567
        0x01c4 line=568
        0x01cd line=569
        0x01d4 line=570
        0x01e1 line=573
        0x01e4 line=574
        0x01e7 line=580
        0x01e8 line=575
        0x01e9 line=576
        0x01f0 line=577
        0x01f9 line=578
        0x0200 line=579
        0x020d line=581
        0x0210 line=582
      locals        :
        0x0012 - 0x0022 reg=0 expected Ljava/lang/NoSuchMethodError;
        0x002a - 0x003a reg=0 expected Ljava/lang/NoSuchMethodError;
        0x0042 - 0x0073 reg=0 expected Ljava/lang/BootstrapMethodError;
        0x007b - 0x00ac reg=0 expected Ljava/lang/BootstrapMethodError;
        0x00b4 - 0x00e5 reg=0 expected Ljava/lang/BootstrapMethodError;
        0x00ed - 0x011e reg=0 expected Ljava/lang/BootstrapMethodError;
        0x0126 - 0x0157 reg=0 expected Ljava/lang/BootstrapMethodError;
        0x0165 - 0x0189 reg=0 expected Ljava/lang/BootstrapMethodError;
        0x0191 - 0x01b5 reg=0 expected Ljava/lang/BootstrapMethodError;
        0x01bd - 0x01e1 reg=0 expected Ljava/lang/BootstrapMethodError;
        0x01e9 - 0x020d reg=0 expected Ljava/lang/BootstrapMethodError;

    #32              : (in LTestBadBootstrapArguments;)
      name          : 'voidReturnType'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 44
      code          -
      registers     : 0
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
00248c:                                        |[00248c] TestBadBootstrapArguments.voidReturnType:()V
00249c: 7100 0b00 0000                         |0000: invoke-static {}, LTestBadBootstrapArguments;.assertNotReached:()V // method@000b
0024a2: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=398
        0x0003 line=399
      locals        :

    #33              : (in LTestBadBootstrapArguments;)
      name          : 'wideningArguments'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 45
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 8 16-bit code units
0024a4:                                        |[0024a4] TestBadBootstrapArguments.wideningArguments:()V
0024b4: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0024b8: 1a01 d101                              |0002: const-string v1, "wideningArguments" // string@01d1
0024bc: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
0024c2: 0e00                                   |0007: return-void
      catches       : (none)
      positions     :
        0x0000 line=304
        0x0007 line=305
      locals        :

    #34              : (in LTestBadBootstrapArguments;)
      name          : 'wideningBoxingArguments'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 46
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 8 16-bit code units
0024c4:                                        |[0024c4] TestBadBootstrapArguments.wideningBoxingArguments:()V
0024d4: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0024d8: 1a01 d201                              |0002: const-string v1, "wideningBoxingArguments" // string@01d2
0024dc: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
0024e2: 0e00                                   |0007: return-void
      catches       : (none)
      positions     :
        0x0000 line=376
        0x0007 line=377
      locals        :

    #35              : (in LTestBadBootstrapArguments;)
      name          : 'wrongArguments'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 47
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 8 16-bit code units
0024e4:                                        |[0024e4] TestBadBootstrapArguments.wrongArguments:()V
0024f4: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0024f8: 1a01 d401                              |0002: const-string v1, "wrongArguments" // string@01d4
0024fc: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
0025020e00                                   |0007: return-void
      catches       : (none)
      positions     :
        0x0000 line=186
        0x0007 line=187
      locals        :

    #36              : (in LTestBadBootstrapArguments;)
      name          : 'wrongArgumentsAgain'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 48
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 8 16-bit code units
002504:                                        |[002504] TestBadBootstrapArguments.wrongArgumentsAgain:()V
0025146200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0025181a01 d501                              |0002: const-string v1, "wrongArgumentsAgain" // string@01d5
00251c: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
0025220e00                                   |0007: return-void
      catches       : (none)
      positions     :
        0x0000 line=214
        0x0007 line=215
      locals        :

    #37              : (in LTestBadBootstrapArguments;)
      name          : 'wrongParameterTypes'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 49
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 8 16-bit code units
002524:                                        |[002524] TestBadBootstrapArguments.wrongParameterTypes:()V
0025346200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0025381a01 d601                              |0002: const-string v1, "wrongParameterTypes" // string@01d6
00253c: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
0025420e00                                   |0007: return-void
      catches       : (none)
      positions     :
        0x0000 line=102
        0x0007 line=103
      locals        :

  Virtual methods   -
  source_file_idx   : 144 (TestBadBootstrapArguments.java)

Class #7 header:
class_idx           : 10
access_flags        : 0 (0x0000)
superclass_idx      : 9
interfaces_off      : 0 (0x000000)
source_file_idx     : 147
annotations_off     : 30988 (0x00790c)
class_data_off      : 29220 (0x007224)
static_fields_size  : 1
instance_fields_size: 0
direct_methods_size : 7
virtual_methods_size: 0

Class #7 annotations:
Annotations on method #67 'bsm'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #71 'testDynamic'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestDynamicBootstrapArguments; name="bsm" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; Ljava/lang/String; J } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; stringValue={ "A" } Lannotations/Constant; longValue={ 100000000 } } fieldOrMethodName="target" parameterTypes={ I Ljava/lang/String; D } returnType=I

Class #7            -
  Class descriptor  : 'LTestDynamicBootstrapArguments;'
  Access flags      : 0x0000 ()
  Superclass        : 'LTestBase;'
  Interfaces        -
  Static fields     -
    #0              : (in LTestDynamicBootstrapArguments;)
      name          : 'bsmCalls'
      type          : 'I'
      access        : 0x000a (PRIVATE STATIC)
  Instance fields   -
  Direct methods    -
    #0              : (in LTestDynamicBootstrapArguments;)
      name          : '<clinit>'
      type          : '()V'
      access        : 0x10008 (STATIC CONSTRUCTOR)
      method_idx    : 63
      code          -
      registers     : 1
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
0029c8:                                        |[0029c8] TestDynamicBootstrapArguments.<clinit>:()V
0029d8: 1200                                   |0000: const/4 v0, #int 0 // #0
0029da: 6700 0000                              |0001: sput v0, LTestDynamicBootstrapArguments;.bsmCalls:I // field@0000
0029de: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=27
      locals        :

    #1              : (in LTestDynamicBootstrapArguments;)
      name          : '<init>'
      type          : '()V'
      access        : 0x10000 (CONSTRUCTOR)
      method_idx    : 64
      code          -
      registers     : 1
      ins           : 1
      outs          : 1
      insns size    : 4 16-bit code units
0029e0:                                        |[0029e0] TestDynamicBootstrapArguments.<init>:()V
0029f0: 7010 3200 0000                         |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032
0029f6: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=26
      locals        :
        0x0000 - 0x0004 reg=0 this LTestDynamicBootstrapArguments;

    #2              : (in LTestDynamicBootstrapArguments;)
      name          : 'bsm'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;J)Ljava/lang/invoke/CallSite;'
      access        : 0x0008 (STATIC)
      method_idx    : 67
      code          -
      registers     : 11
      ins           : 6
      outs          : 4
      insns size    : 43 16-bit code units
002960:                                        |[002960] TestDynamicBootstrapArguments.bsm:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;J)Ljava/lang/invoke/CallSite;
0029706000 0000                              |0000: sget v0, LTestDynamicBootstrapArguments;.bsmCalls:I // field@0000
002974: d800 0001                              |0002: add-int/lit8 v0, v0, #int 1 // #01
0029786700 0000                              |0004: sput v0, LTestDynamicBootstrapArguments;.bsmCalls:I // field@0000
00297c: 1c00 0a00                              |0006: const-class v0, LTestDynamicBootstrapArguments; // type@000a
0029802201 2d00                              |0008: new-instance v1, Ljava/lang/StringBuilder; // type@002d
0029847010 c100 0100                         |000a: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
00298a: 6e20 c800 6100                         |000d: invoke-virtual {v1, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0029906e20 c800 8100                         |0010: invoke-virtual {v1, v8}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0029966e30 c600 910a                         |0013: invoke-virtual {v1, v9, v10}, Ljava/lang/StringBuilder;.append:(J)Ljava/lang/StringBuilder; // method@00c6
00299c: 6e10 ca00 0100                         |0016: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
0029a2: 0c01                                   |0019: move-result-object v1
0029a4: 6e40 d800 0571                         |001a: invoke-virtual {v5, v0, v1, v7}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8
0029aa: 0c02                                   |001d: move-result-object v2
0029ac: 6203 1300                              |001e: sget-object v3, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0029b0: 1a04 ea00                              |0020: const-string v4, "bsm" // string@00ea
0029b4: 6e20 b300 4300                         |0022: invoke-virtual {v3, v4}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
0029ba: 2203 3400                              |0025: new-instance v3, Ljava/lang/invoke/ConstantCallSite; // type@0034
0029be: 7020 d200 2300                         |0027: invoke-direct {v3, v2}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
0029c4: 1103                                   |002a: return-object v3
      catches       : (none)
      positions     :
        0x0000 line=36
        0x0006 line=37
        0x0008 line=38
        0x001a line=39
        0x001e line=40
        0x0025 line=41
      locals        :
        0x0008 - 0x002b reg=0 definingClass Ljava/lang/Class; Ljava/lang/Class<*>;
        0x001a - 0x002b reg=1 methodName Ljava/lang/String;
        0x001e - 0x002b reg=2 mh Ljava/lang/invoke/MethodHandle;
        0x0000 - 0x002b reg=5 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x002b reg=6 name Ljava/lang/String;
        0x0000 - 0x002b reg=7 methodType Ljava/lang/invoke/MethodType;
        0x0000 - 0x002b reg=8 otherNameComponent Ljava/lang/String;
        0x0000 - 0x002b reg=9 nameSuffix J

    #3              : (in LTestDynamicBootstrapArguments;)
      name          : 'targetA100000000'
      type          : '(ILjava/lang/String;Ljava/lang/Double;)I'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 68
      code          -
      registers     : 5
      ins           : 3
      outs          : 2
      insns size    : 30 16-bit code units
0028f8:                                        |[0028f8] TestDynamicBootstrapArguments.targetA100000000:(ILjava/lang/String;Ljava/lang/Double;)I
0029086200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
00290c: 6e20 ad00 2000                         |0002: invoke-virtual {v0, v2}, Ljava/io/PrintStream;.print:(I)V // method@00ad
0029126200 1300                              |0005: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0029161a01 0c00                              |0007: const-string v1, ", " // string@000c
00291a: 6e20 b000 1000                         |0009: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
0029206200 1300                              |000c: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0029246e20 b000 3000                         |000e: invoke-virtual {v0, v3}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
00292a: 6200 1300                              |0011: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
00292e: 1a01 0c00                              |0013: const-string v1, ", " // string@000c
0029326e20 b000 1000                         |0015: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
0029386200 1300                              |0018: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
00293c: 6e20 b200 4000                         |001a: invoke-virtual {v0, v4}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
0029420f02                                   |001d: return v2
      catches       : (none)
      positions     :
        0x0000 line=71
        0x0005 line=72
        0x000c line=73
        0x0011 line=74
        0x0018 line=75
        0x001d line=76
      locals        :
        0x0000 - 0x001e reg=2 i I
        0x0000 - 0x001e reg=3 s Ljava/lang/String;
        0x0000 - 0x001e reg=4 d Ljava/lang/Double;

    #4              : (in LTestDynamicBootstrapArguments;)
      name          : 'test'
      type          : '()V'
      access        : 0x0008 (STATIC)
      method_idx    : 69
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 25 16-bit code units
0029f8:                                        |[0029f8] TestDynamicBootstrapArguments.test:()V
002a08: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
002a0c: 1a01 9200                              |0002: const-string v1, "TestDynamicArguments" // string@0092
002a10: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
002a16: 7100 4600 0000                         |0007: invoke-static {}, LTestDynamicBootstrapArguments;.testCallSites:()V // method@0046
002a1c: 6000 0000                              |000a: sget v0, LTestDynamicBootstrapArguments;.bsmCalls:I // field@0000
002a20: 1231                                   |000c: const/4 v1, #int 3 // #3
002a22: 7120 4100 0100                         |000d: invoke-static {v1, v0}, LTestDynamicBootstrapArguments;.assertEquals:(II)V // method@0041
002a28: 7100 4600 0000                         |0010: invoke-static {}, LTestDynamicBootstrapArguments;.testCallSites:()V // method@0046
002a2e: 6000 0000                              |0013: sget v0, LTestDynamicBootstrapArguments;.bsmCalls:I // field@0000
002a32: 7120 4100 0100                         |0015: invoke-static {v1, v0}, LTestDynamicBootstrapArguments;.assertEquals:(II)V // method@0041
002a38: 0e00                                   |0018: return-void
      catches       : (none)
      positions     :
        0x0000 line=86
        0x0007 line=87
        0x000a line=88
        0x0010 line=89
        0x0013 line=90
        0x0018 line=91
      locals        :

    #5              : (in LTestDynamicBootstrapArguments;)
      name          : 'testCallSites'
      type          : '()V'
      access        : 0x0008 (STATIC)
      method_idx    : 70
      code          -
      registers     : 3
      ins           : 0
      outs          : 3
      insns size    : 55 16-bit code units
002a3c:                                        |[002a3c] TestDynamicBootstrapArguments.testCallSites:()V
002a4c: 1a00 8b00                              |0000: const-string v0, "One" // string@008b
002a50: 1801 1824454 fb21 0940               |0002: const-wide v1, #double 3.14159 // #400921fb54442d18
002a5a: 7120 b900 2100                         |0007: invoke-static {v1, v2}, Ljava/lang/Double;.valueOf:(D)Ljava/lang/Double; // method@00b9
002a60: 0c01                                   |000a: move-result-object v1
002a62: 1202                                   |000b: const/4 v2, #int 0 // #0
002a64: fc30 0f00 0201                         |000c: invoke-custom {v2, v0, v1}, call_site@000f
002a6a: 0a00                                   |000f: move-result v0
002a6c: 7120 4100 0200                         |0010: invoke-static {v2, v0}, LTestDynamicBootstrapArguments;.assertEquals:(II)V // method@0041
002a72: 1a00 a200                              |0013: const-string v0, "Two" // string@00a2
002a76: 1801 6957 1480abf 0540               |0015: const-wide v1, #double 2.71828 // #4005bf0a8b145769
002a80: 7120 b900 2100                         |001a: invoke-static {v1, v2}, Ljava/lang/Double;.valueOf:(D)Ljava/lang/Double; // method@00b9
002a86: 0c01                                   |001d: move-result-object v1
002a88: 1212                                   |001e: const/4 v2, #int 1 // #1
002a8a: fc30 1000 0201                         |001f: invoke-custom {v2, v0, v1}, call_site@0010
002a90: 0a00                                   |0022: move-result v0
002a92: 7120 4100 0200                         |0023: invoke-static {v2, v0}, LTestDynamicBootstrapArguments;.assertEquals:(II)V // method@0041
002a98: 1a00 9f00                              |0026: const-string v0, "Three" // string@009f
002a9c: 1601 0000                              |0028: const-wide/16 v1, #int 0 // #0
002aa0: 7120 b900 2100                         |002a: invoke-static {v1, v2}, Ljava/lang/Double;.valueOf:(D)Ljava/lang/Double; // method@00b9
002aa6: 0c01                                   |002d: move-result-object v1
002aa8: 1222                                   |002e: const/4 v2, #int 2 // #2
002aaa: fc30 1100 0201                         |002f: invoke-custom {v2, v0, v1}, call_site@0011
002ab0: 0a00                                   |0032: move-result v0
002ab2: 7120 4100 0200                         |0033: invoke-static {v2, v0}, LTestDynamicBootstrapArguments;.assertEquals:(II)V // method@0041
002ab8: 0e00                                   |0036: return-void
      catches       : (none)
      positions     :
        0x0000 line=80
        0x0013 line=81
        0x0026 line=82
        0x0036 line=83
      locals        :

    #6              : (in LTestDynamicBootstrapArguments;)
      name          : 'testDynamic'
      type          : '(ILjava/lang/String;Ljava/lang/Double;)I'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 71
      code          -
      registers     : 4
      ins           : 3
      outs          : 0
      insns size    : 5 16-bit code units
002944:                                        |[002944] TestDynamicBootstrapArguments.testDynamic:(ILjava/lang/String;Ljava/lang/Double;)I
0029547100 4200 0000                         |0000: invoke-static {}, LTestDynamicBootstrapArguments;.assertNotReached:()V // method@0042
00295a: 1200                                   |0003: const/4 v0, #int 0 // #0
00295c: 0f00                                   |0004: return v0
      catches       : (none)
      positions     :
        0x0000 line=66
        0x0003 line=67
      locals        :
        0x0000 - 0x0005 reg=1 i I
        0x0000 - 0x0005 reg=2 s Ljava/lang/String;
        0x0000 - 0x0005 reg=3 d Ljava/lang/Double;

  Virtual methods   -
  source_file_idx   : 147 (TestDynamicBootstrapArguments.java)

Class #8 header:
class_idx           : 12
access_flags        : 0 (0x0000)
superclass_idx      : 9
interfaces_off      : 0 (0x000000)
source_file_idx     : 148
annotations_off     : 31020 (0x00792c)
class_data_off      : 29258 (0x00724a)
static_fields_size  : 1
instance_fields_size: 1
direct_methods_size : 18
virtual_methods_size: 1

Class #8 annotations:
Annotations on class
  VISIBILITY_SYSTEM Ldalvik/annotation/MemberClasses; value={ LTestInvocationKinds$Widget; }
Annotations on method #78 'getInstanceField'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestInvocationKinds; name="lookupInstanceFieldGetter" } fieldOrMethodName="instance_field" parameterTypes={ LTestInvocationKinds; } returnType=D
Annotations on method #80 'getStaticField'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestInvocationKinds; name="lookupStaticFieldGetter" } fieldOrMethodName="static_field" parameterTypes={ } returnType=I
Annotations on method #81 'lookupConstructor'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #82 'lookupInstanceFieldGetter'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #83 'lookupInstanceFieldSetter'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #84 'lookupStaticFieldGetter'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #85 'lookupStaticFieldSetter'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #86 'lookupVirtual'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #87 'makeWidget'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestInvocationKinds; name="lookupConstructor" } fieldOrMethodName="unused" parameterTypes={ I } returnType=LTestInvocationKinds$Widget;
Annotations on method #88 'maxIntegerValue'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestInvocationKinds; name="lookupVirtual" } fieldOrMethodName="getMaxIntegerValue" parameterTypes={ LTestInvocationKinds; I I } returnType=I
Annotations on method #89 'setInstanceField'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestInvocationKinds; name="lookupInstanceFieldSetter" } fieldOrMethodName="instance_field" parameterTypes={ LTestInvocationKinds; D } returnType=V
Annotations on method #90 'setStaticField'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestInvocationKinds; name="lookupStaticFieldSetter" } fieldOrMethodName="static_field" parameterTypes={ I } returnType=V

Class #8            -
  Class descriptor  : 'LTestInvocationKinds;'
  Access flags      : 0x0000 ()
  Superclass        : 'LTestBase;'
  Interfaces        -
  Static fields     -
    #0              : (in LTestInvocationKinds;)
      name          : 'static_field'
      type          : 'I'
      access        : 0x000a (PRIVATE STATIC)
  Instance fields   -
    #0              : (in LTestInvocationKinds;)
      name          : 'instance_field'
      type          : 'D'
      access        : 0x0002 (PRIVATE)
  Direct methods    -
    #0              : (in LTestInvocationKinds;)
      name          : '<init>'
      type          : '()V'
      access        : 0x10000 (CONSTRUCTOR)
      method_idx    : 73
      code          -
      registers     : 1
      ins           : 1
      outs          : 1
      insns size    : 4 16-bit code units
002ca4:                                        |[002ca4] TestInvocationKinds.<init>:()V
002cb4: 7010 3200 0000                         |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032
002cba: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=25
      locals        :
        0x0000 - 0x0004 reg=0 this LTestInvocationKinds;

    #1              : (in LTestInvocationKinds;)
      name          : 'getInstanceField'
      type          : '(LTestInvocationKinds;)D'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 78
      code          -
      registers     : 3
      ins           : 1
      outs          : 0
      insns size    : 6 16-bit code units
002af0:                                        |[002af0] TestInvocationKinds.getInstanceField:(LTestInvocationKinds;)D
002b00: 7100 4d00 0000                         |0000: invoke-static {}, LTestInvocationKinds;.assertNotReached:()V // method@004d
002b06: 1900 f87f                              |0003: const-wide/high16 v0, #long 9221120237041090560 // #7ff8
002b0a: 1000                                   |0005: return-wide v0
      catches       : (none)
      positions     :
        0x0000 line=117
        0x0003 line=118
      locals        :
        0x0000 - 0x0006 reg=2 instance LTestInvocationKinds;

    #2              : (in LTestInvocationKinds;)
      name          : 'getStaticField'
      type          : '()I'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 80
      code          -
      registers     : 1
      ins           : 0
      outs          : 0
      insns size    : 5 16-bit code units
002b28:                                        |[002b28] TestInvocationKinds.getStaticField:()I
002b38: 7100 4d00 0000                         |0000: invoke-static {}, LTestInvocationKinds;.assertNotReached:()V // method@004d
002b3e: 1200                                   |0003: const/4 v0, #int 0 // #0
002b40: 0f00                                   |0004: return v0
      catches       : (none)
      positions     :
        0x0000 line=71
        0x0003 line=72
      locals        :

    #3              : (in LTestInvocationKinds;)
      name          : 'lookupConstructor'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 81
      code          -
      registers     : 7
      ins           : 3
      outs          : 3
      insns size    : 20 16-bit code units
002b60:                                        |[002b60] TestInvocationKinds.lookupConstructor:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
002b70: 6e10 e500 0600                         |0000: invoke-virtual {v6}, Ljava/lang/invoke/MethodType;.returnType:()Ljava/lang/Class; // method@00e5
002b76: 0c00                                   |0003: move-result-object v0
002b78: 6201 1400                              |0004: sget-object v1, Ljava/lang/Void;.TYPE:Ljava/lang/Class; // field@0014
002b7c: 6e20 df00 1600                         |0006: invoke-virtual {v6, v1}, Ljava/lang/invoke/MethodType;.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType; // method@00df
002b82: 0c01                                   |0009: move-result-object v1
002b84: 6e30 d500 0401                         |000a: invoke-virtual {v4, v0, v1}, Ljava/lang/invoke/MethodHandles$Lookup;.findConstructor:(Ljava/lang/Class;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d5
002b8a: 0c02                                   |000d: move-result-object v2
002b8c: 2203 3400                              |000e: new-instance v3, Ljava/lang/invoke/ConstantCallSite; // type@0034
002b90: 7020 d200 2300                         |0010: invoke-direct {v3, v2}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
002b96: 1103                                   |0013: return-object v3
      catches       : (none)
      positions     :
        0x0000 line=183
        0x0004 line=184
        0x000a line=185
        0x000e line=186
      locals        :
        0x0004 - 0x0014 reg=0 cls Ljava/lang/Class; Ljava/lang/Class<*>;
        0x000a - 0x0014 reg=1 constructorMethodType Ljava/lang/invoke/MethodType;
        0x000e - 0x0014 reg=2 mh Ljava/lang/invoke/MethodHandle;
        0x0000 - 0x0014 reg=4 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x0014 reg=5 name Ljava/lang/String;
        0x0000 - 0x0014 reg=6 methodType Ljava/lang/invoke/MethodType;

    #4              : (in LTestInvocationKinds;)
      name          : 'lookupInstanceFieldGetter'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;'
      access        : 0x0008 (STATIC)
      method_idx    : 82
      code          -
      registers     : 5
      ins           : 3
      outs          : 4
      insns size    : 20 16-bit code units
002b98:                                        |[002b98] TestInvocationKinds.lookupInstanceFieldGetter:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
002ba8: 0000                                   |0000: nop // spacer
002baa: 1200                                   |0001: const/4 v0, #int 0 // #0
002bac: 6e20 e400 0400                         |0002: invoke-virtual {v4, v0}, Ljava/lang/invoke/MethodType;.parameterType:(I)Ljava/lang/Class; // method@00e4
002bb2: 0c00                                   |0005: move-result-object v0
002bb4: 6e10 e500 0400                         |0006: invoke-virtual {v4}, Ljava/lang/invoke/MethodType;.returnType:()Ljava/lang/Class; // method@00e5
002bba: 0c01                                   |0009: move-result-object v1
002bbc: 6e40 d600 0213                         |000a: invoke-virtual {v2, v0, v3, v1}, Ljava/lang/invoke/MethodHandles$Lookup;.findGetter:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle; // method@00d6
002bc2: 0c00                                   |000d: move-result-object v0
002bc4: 2201 3400                              |000e: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
002bc8: 7020 d200 0100                         |0010: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
002bce: 1101                                   |0013: return-object v1
      catches       : (none)
      positions     :
        0x0000 line=101
        0x0001 line=102
        0x000e line=103
      locals        :
        0x000e - 0x0014 reg=0 mh Ljava/lang/invoke/MethodHandle;
        0x0000 - 0x0014 reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x0014 reg=3 name Ljava/lang/String;
        0x0000 - 0x0014 reg=4 methodType Ljava/lang/invoke/MethodType;

    #5              : (in LTestInvocationKinds;)
      name          : 'lookupInstanceFieldSetter'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;'
      access        : 0x0008 (STATIC)
      method_idx    : 83
      code          -
      registers     : 5
      ins           : 3
      outs          : 4
      insns size    : 21 16-bit code units
002bd0:                                        |[002bd0] TestInvocationKinds.lookupInstanceFieldSetter:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
002be0: 0000                                   |0000: nop // spacer
002be2: 1200                                   |0001: const/4 v0, #int 0 // #0
002be4: 6e20 e400 0400                         |0002: invoke-virtual {v4, v0}, Ljava/lang/invoke/MethodType;.parameterType:(I)Ljava/lang/Class; // method@00e4
002bea: 0c00                                   |0005: move-result-object v0
002bec: 1211                                   |0006: const/4 v1, #int 1 // #1
002bee: 6e20 e400 1400                         |0007: invoke-virtual {v4, v1}, Ljava/lang/invoke/MethodType;.parameterType:(I)Ljava/lang/Class; // method@00e4
002bf4: 0c01                                   |000a: move-result-object v1
002bf6: 6e40 d700 0213                         |000b: invoke-virtual {v2, v0, v3, v1}, Ljava/lang/invoke/MethodHandles$Lookup;.findSetter:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle; // method@00d7
002bfc: 0c00                                   |000e: move-result-object v0
002bfe: 2201 3400                              |000f: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
002c02: 7020 d200 0100                         |0011: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
002c08: 1101                                   |0014: return-object v1
      catches       : (none)
      positions     :
        0x0000 line=78
        0x0001 line=79
        0x000f line=80
      locals        :
        0x000f - 0x0015 reg=0 mh Ljava/lang/invoke/MethodHandle;
        0x0000 - 0x0015 reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x0015 reg=3 name Ljava/lang/String;
        0x0000 - 0x0015 reg=4 methodType Ljava/lang/invoke/MethodType;

    #6              : (in LTestInvocationKinds;)
      name          : 'lookupStaticFieldGetter'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;'
      access        : 0x0008 (STATIC)
      method_idx    : 84
      code          -
      registers     : 5
      ins           : 3
      outs          : 4
      insns size    : 16 16-bit code units
002c0c:                                        |[002c0c] TestInvocationKinds.lookupStaticFieldGetter:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
002c1c: 1c00 0c00                              |0000: const-class v0, LTestInvocationKinds; // type@000c
002c20: 6e10 e500 0400                         |0002: invoke-virtual {v4}, Ljava/lang/invoke/MethodType;.returnType:()Ljava/lang/Class; // method@00e5
002c26: 0c01                                   |0005: move-result-object v1
002c28: 6e40 d900 0213                         |0006: invoke-virtual {v2, v0, v3, v1}, Ljava/lang/invoke/MethodHandles$Lookup;.findStaticGetter:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle; // method@00d9
002c2e: 0c00                                   |0009: move-result-object v0
002c30: 2201 3400                              |000a: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
002c34: 7020 d200 0100                         |000c: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
002c3a: 1101                                   |000f: return-object v1
      catches       : (none)
      positions     :
        0x0000 line=32
        0x0002 line=33
        0x000a line=34
      locals        :
        0x000a - 0x0010 reg=0 mh Ljava/lang/invoke/MethodHandle;
        0x0000 - 0x0010 reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x0010 reg=3 name Ljava/lang/String;
        0x0000 - 0x0010 reg=4 methodType Ljava/lang/invoke/MethodType;

    #7              : (in LTestInvocationKinds;)
      name          : 'lookupStaticFieldSetter'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;'
      access        : 0x0008 (STATIC)
      method_idx    : 85
      code          -
      registers     : 5
      ins           : 3
      outs          : 4
      insns size    : 17 16-bit code units
002c3c:                                        |[002c3c] TestInvocationKinds.lookupStaticFieldSetter:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
002c4c: 1c00 0c00                              |0000: const-class v0, LTestInvocationKinds; // type@000c
002c50: 1201                                   |0002: const/4 v1, #int 0 // #0
002c52: 6e20 e400 1400                         |0003: invoke-virtual {v4, v1}, Ljava/lang/invoke/MethodType;.parameterType:(I)Ljava/lang/Class; // method@00e4
002c58: 0c01                                   |0006: move-result-object v1
002c5a: 6e40 da00 0213                         |0007: invoke-virtual {v2, v0, v3, v1}, Ljava/lang/invoke/MethodHandles$Lookup;.findStaticSetter:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle; // method@00da
002c60: 0c00                                   |000a: move-result-object v0
002c62: 2201 3400                              |000b: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
002c66: 7020 d200 0100                         |000d: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
002c6c: 1101                                   |0010: return-object v1
      catches       : (none)
      positions     :
        0x0000 line=54
        0x0002 line=56
        0x0007 line=55
        0x000b line=57
      locals        :
        0x000b - 0x0011 reg=0 mh Ljava/lang/invoke/MethodHandle;
        0x0000 - 0x0011 reg=2 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x0011 reg=3 name Ljava/lang/String;
        0x0000 - 0x0011 reg=4 methodType Ljava/lang/invoke/MethodType;

    #8              : (in LTestInvocationKinds;)
      name          : 'lookupVirtual'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 86
      code          -
      registers     : 6
      ins           : 3
      outs          : 4
      insns size    : 18 16-bit code units
002c70:                                        |[002c70] TestInvocationKinds.lookupVirtual:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
002c80: 1200                                   |0000: const/4 v0, #int 0 // #0
002c82: 1211                                   |0001: const/4 v1, #int 1 // #1
002c84: 6e30 e000 0501                         |0002: invoke-virtual {v5, v0, v1}, Ljava/lang/invoke/MethodType;.dropParameterTypes:(II)Ljava/lang/invoke/MethodType; // method@00e0
002c8a: 0c00                                   |0005: move-result-object v0
002c8c: 1c01 0c00                              |0006: const-class v1, LTestInvocationKinds; // type@000c
002c90: 6e40 db00 1304                         |0008: invoke-virtual {v3, v1, v4, v0}, Ljava/lang/invoke/MethodHandles$Lookup;.findVirtual:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00db
002c96: 0c01                                   |000b: move-result-object v1
002c98: 2202 3400                              |000c: new-instance v2, Ljava/lang/invoke/ConstantCallSite; // type@0034
002c9c: 7020 d200 1200                         |000e: invoke-direct {v2, v1}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
002ca2: 1102                                   |0011: return-object v2
      catches       : (none)
      positions     :
        0x0000 line=146
        0x0006 line=147
        0x000c line=148
      locals        :
        0x0006 - 0x0012 reg=0 mt Ljava/lang/invoke/MethodType;
        0x000c - 0x0012 reg=1 mh Ljava/lang/invoke/MethodHandle;
        0x0000 - 0x0012 reg=3 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x0012 reg=4 name Ljava/lang/String;
        0x0000 - 0x0012 reg=5 methodType Ljava/lang/invoke/MethodType;

    #9              : (in LTestInvocationKinds;)
      name          : 'makeWidget'
      type          : '(I)LTestInvocationKinds$Widget;'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 87
      code          -
      registers     : 2
      ins           : 1
      outs          : 0
      insns size    : 5 16-bit code units
002ad4:                                        |[002ad4] TestInvocationKinds.makeWidget:(I)LTestInvocationKinds$Widget;
002ae4: 7100 4d00 0000                         |0000: invoke-static {}, LTestInvocationKinds;.assertNotReached:()V // method@004d
002aea: 1200                                   |0003: const/4 v0, #int 0 // #0
002aec: 1100                                   |0004: return-object v0
      catches       : (none)
      positions     :
        0x0000 line=200
        0x0003 line=201
      locals        :
        0x0000 - 0x0005 reg=1 v I

    #10              : (in LTestInvocationKinds;)
      name          : 'maxIntegerValue'
      type          : '(LTestInvocationKinds;II)I'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 88
      code          -
      registers     : 4
      ins           : 3
      outs          : 0
      insns size    : 5 16-bit code units
002b44:                                        |[002b44] TestInvocationKinds.maxIntegerValue:(LTestInvocationKinds;II)I
002b54: 7100 4d00 0000                         |0000: invoke-static {}, LTestInvocationKinds;.assertNotReached:()V // method@004d
002b5a: 1200                                   |0003: const/4 v0, #int 0 // #0
002b5c: 0f00                                   |0004: return v0
      catches       : (none)
      positions     :
        0x0000 line=159
        0x0003 line=160
      locals        :
        0x0000 - 0x0005 reg=1 receiver LTestInvocationKinds;
        0x0000 - 0x0005 reg=2 x I
        0x0000 - 0x0005 reg=3 y I

    #11              : (in LTestInvocationKinds;)
      name          : 'setInstanceField'
      type          : '(LTestInvocationKinds;D)V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 89
      code          -
      registers     : 5
      ins           : 3
      outs          : 0
      insns size    : 8 16-bit code units
002cbc:                                        |[002cbc] TestInvocationKinds.setInstanceField:(LTestInvocationKinds;D)V
002ccc: 7100 4d00 0000                         |0000: invoke-static {}, LTestInvocationKinds;.assertNotReached:()V // method@004d
002cd2: 1900 f87f                              |0003: const-wide/high16 v0, #long 9221120237041090560 // #7ff8
002cd6: 5a20 0200                              |0005: iput-wide v0, v2, LTestInvocationKinds;.instance_field:D // field@0002
002cda: 0e00                                   |0007: return-void
      catches       : (none)
      positions     :
        0x0000 line=94
        0x0003 line=95
        0x0007 line=96
      locals        :
        0x0000 - 0x0008 reg=2 instance LTestInvocationKinds;
        0x0000 - 0x0008 reg=3 value D

    #12              : (in LTestInvocationKinds;)
      name          : 'setStaticField'
      type          : '(I)V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 90
      code          -
      registers     : 1
      ins           : 1
      outs          : 0
      insns size    : 4 16-bit code units
002cdc:                                        |[002cdc] TestInvocationKinds.setStaticField:(I)V
002cec: 7100 4d00 0000                         |0000: invoke-static {}, LTestInvocationKinds;.assertNotReached:()V // method@004d
002cf2: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=48
        0x0003 line=49
      locals        :
        0x0000 - 0x0004 reg=0 value I

    #13              : (in LTestInvocationKinds;)
      name          : 'test'
      type          : '()V'
      access        : 0x0009 (PUBLIC STATIC)
      method_idx    : 91
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 24 16-bit code units
002cf4:                                        |[002cf4] TestInvocationKinds.test:()V
002d04: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
002d08: 1c01 0c00                              |0002: const-class v1, LTestInvocationKinds; // type@000c
002d0c: 6e10 b700 0100                         |0004: invoke-virtual {v1}, Ljava/lang/Class;.getName:()Ljava/lang/String; // method@00b7
002d12: 0c01                                   |0007: move-result-object v1
002d14: 6e20 b300 1000                         |0008: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
002d1a: 7100 5f00 0000                         |000b: invoke-static {}, LTestInvocationKinds;.testStaticFieldAccessors:()V // method@005f
002d20: 7100 5d00 0000                         |000e: invoke-static {}, LTestInvocationKinds;.testInstanceFieldAccessors:()V // method@005d
002d26: 7100 5e00 0000                         |0011: invoke-static {}, LTestInvocationKinds;.testInvokeVirtual:()V // method@005e
002d2c: 7100 5c00 0000                         |0014: invoke-static {}, LTestInvocationKinds;.testConstructor:()V // method@005c
002d32: 0e00                                   |0017: return-void
      catches       : (none)
      positions     :
        0x0000 line=212
        0x000b line=213
        0x000e line=214
        0x0011 line=215
        0x0014 line=216
        0x0017 line=217
      locals        :

    #14              : (in LTestInvocationKinds;)
      name          : 'testConstructor'
      type          : '()V'
      access        : 0x0008 (STATIC)
      method_idx    : 92
      code          -
      registers     : 3
      ins           : 0
      outs          : 2
      insns size    : 31 16-bit code units
002d34:                                        |[002d34] TestInvocationKinds.testConstructor:()V
002d44: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
002d48: 1a01 b601                              |0002: const-string v1, "testConstructor => " // string@01b6
002d4c: 6e20 b000 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
002d52: 1230                                   |0007: const/4 v0, #int 3 // #3
002d54: fc10 1200 0000                         |0008: invoke-custom {v0}, call_site@0012
002d5a: 0c00                                   |000b: move-result-object v0
002d5c: 1c01 0b00                              |000c: const-class v1, LTestInvocationKinds$Widget; // type@000b
002d60: 6e10 c000 0000                         |000e: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
002d66: 0c02                                   |0011: move-result-object v2
002d68: 7120 4c00 2100                         |0012: invoke-static {v1, v2}, LTestInvocationKinds;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@004c
002d6e: 6201 1300                              |0015: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
002d72: 6e10 c000 0000                         |0017: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
002d78: 0c02                                   |001a: move-result-object v2
002d7a: 6e20 b200 2100                         |001b: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
002d80: 0e00                                   |001e: return-void
      catches       : (none)
      positions     :
        0x0000 line=205
        0x0007 line=206
        0x000c line=207
        0x0015 line=208
        0x001e line=209
      locals        :
        0x000c - 0x001f reg=0 receiver LTestInvocationKinds$Widget;

    #15              : (in LTestInvocationKinds;)
      name          : 'testInstanceFieldAccessors'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 93
      code          -
      registers     : 5
      ins           : 0
      outs          : 4
      insns size    : 44 16-bit code units
002d84:                                        |[002d84] TestInvocationKinds.testInstanceFieldAccessors:()V
002d94: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
002d98: 1a01 b801                              |0002: const-string v1, "testInstanceFieldAccessors" // string@01b8
002d9c: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
002da2: 2200 0c00                              |0007: new-instance v0, LTestInvocationKinds; // type@000c
002da6: 7010 4900 0000                         |0009: invoke-direct {v0}, LTestInvocationKinds;.<init>:()V // method@0049
002dac: 1601 0100                              |000c: const-wide/16 v1, #int 1 // #1
002db0: 5a01 0200                              |000e: iput-wide v1, v0, LTestInvocationKinds;.instance_field:D // field@0002
002db4: 1801 1824454 fb21 0940               |0010: const-wide v1, #double 3.14159 // #400921fb54442d18
002dbe: fc30 1300 1002                         |0015: invoke-custom {v0, v1, v2}, call_site@0013
002dc4: 5303 0200                              |0018: iget-wide v3, v0, LTestInvocationKinds;.instance_field:D // field@0002
002dc8: 7140 4a00 2143                         |001a: invoke-static {v1, v2, v3, v4}, LTestInvocationKinds;.assertEquals:(DD)V // method@004a
002dce: 1801 6957 1480abf 0540               |001d: const-wide v1, #double 2.71828 // #4005bf0a8b145769
002dd8: 5a01 0200                              |0022: iput-wide v1, v0, LTestInvocationKinds;.instance_field:D // field@0002
002ddc: fc10 1400 0000                         |0024: invoke-custom {v0}, call_site@0014
002de2: 0b03                                   |0027: move-result-wide v3
002de4: 7140 4a00 2143                         |0028: invoke-static {v1, v2, v3, v4}, LTestInvocationKinds;.assertEquals:(DD)V // method@004a
002dea: 0e00                                   |002b: return-void
      catches       : (none)
      positions     :
        0x0000 line=133
        0x0007 line=134
        0x000c line=135
        0x0010 line=136
        0x0018 line=137
        0x001d line=138
        0x0024 line=139
        0x002b line=140
      locals        :
        0x000c - 0x002c reg=0 instance LTestInvocationKinds;

    #16              : (in LTestInvocationKinds;)
      name          : 'testInvokeVirtual'
      type          : '()V'
      access        : 0x0008 (STATIC)
      method_idx    : 94
      code          -
      registers     : 3
      ins           : 0
      outs          : 3
      insns size    : 25 16-bit code units
002dec:                                        |[002dec] TestInvocationKinds.testInvokeVirtual:()V
002dfc: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
002e00: 1a01 ba01                              |0002: const-string v1, "testInvokeVirtual => max(77, -3) = " // string@01ba
002e04: 6e20 b000 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
002e0a: 2200 0c00                              |0007: new-instance v0, LTestInvocationKinds; // type@000c
002e0e: 7010 4900 0000                         |0009: invoke-direct {v0}, LTestInvocationKinds;.<init>:()V // method@0049
002e14: 1301 4d00                              |000c: const/16 v1, #int 77 // #4d
002e18: 12d2                                   |000e: const/4 v2, #int -3 // #fd
002e1a: fc30 1500 1002                         |000f: invoke-custom {v0, v1, v2}, call_site@0015
002e20: 0a01                                   |0012: move-result v1
002e22: 6202 1300                              |0013: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
002e26: 6e20 b100 1200                         |0015: invoke-virtual {v2, v1}, Ljava/io/PrintStream;.println:(I)V // method@00b1
002e2c: 0e00                                   |0018: return-void
      catches       : (none)
      positions     :
        0x0000 line=168
        0x0007 line=169
        0x000c line=170
        0x0013 line=171
        0x0018 line=172
      locals        :
        0x000c - 0x0019 reg=0 receiver LTestInvocationKinds;
        0x0013 - 0x0019 reg=1 result I

    #17              : (in LTestInvocationKinds;)
      name          : 'testStaticFieldAccessors'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 95
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 47 16-bit code units
002e30:                                        |[002e30] TestInvocationKinds.testStaticFieldAccessors:()V
002e40: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
002e44: 1a01 bb01                              |0002: const-string v1, "testStaticFieldAccessors" // string@01bb
002e48: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
002e4e: 1230                                   |0007: const/4 v0, #int 3 // #3
002e50: fc10 1600 0000                         |0008: invoke-custom {v0}, call_site@0016
002e56: 6001 0300                              |000b: sget v1, LTestInvocationKinds;.static_field:I // field@0003
002e5a: 7120 4b00 0100                         |000d: invoke-static {v1, v0}, LTestInvocationKinds;.assertEquals:(II)V // method@004b
002e60: 1240                                   |0010: const/4 v0, #int 4 // #4
002e62: fc10 1700 0000                         |0011: invoke-custom {v0}, call_site@0017
002e68: 6001 0300                              |0014: sget v1, LTestInvocationKinds;.static_field:I // field@0003
002e6c: 7120 4b00 0100                         |0016: invoke-static {v1, v0}, LTestInvocationKinds;.assertEquals:(II)V // method@004b
002e72: 6000 0300                              |0019: sget v0, LTestInvocationKinds;.static_field:I // field@0003
002e76: fc00 1800 0000                         |001b: invoke-custom {}, call_site@0018
002e7c: 0a01                                   |001e: move-result v1
002e7e: 7120 4b00 1000                         |001f: invoke-static {v0, v1}, LTestInvocationKinds;.assertEquals:(II)V // method@004b
002e84: 1400 ffff ff7f                         |0022: const v0, #float nan // #7fffffff
002e8a: 6700 0300                              |0025: sput v0, LTestInvocationKinds;.static_field:I // field@0003
002e8e: fc00 1900 0000                         |0027: invoke-custom {}, call_site@0019
002e94: 0a01                                   |002a: move-result v1
002e96: 7120 4b00 1000                         |002b: invoke-static {v0, v1}, LTestInvocationKinds;.assertEquals:(II)V // method@004b
002e9c: 0e00                                   |002e: return-void
      catches       : (none)
      positions     :
        0x0000 line=122
        0x0007 line=123
        0x000b line=124
        0x0010 line=125
        0x0014 line=126
        0x0019 line=127
        0x0022 line=128
        0x0027 line=129
        0x002e line=130
      locals        :

  Virtual methods   -
    #0              : (in LTestInvocationKinds;)
      name          : 'getMaxIntegerValue'
      type          : '(II)I'
      access        : 0x0001 (PUBLIC)
      method_idx    : 79
      code          -
      registers     : 4
      ins           : 3
      outs          : 0
      insns size    : 6 16-bit code units
002b0c:                                        |[002b0c] TestInvocationKinds.getMaxIntegerValue:(II)I
002b1c: 3732 0400                              |0000: if-le v2, v3, 0004 // +0004
002b20: 0120                                   |0002: move v0, v2
002b22: 2802                                   |0003: goto 0005 // +0002
002b24: 0130                                   |0004: move v0, v3
002b26: 0f00                                   |0005: return v0
      catches       : (none)
      positions     :
        0x0000 line=164
      locals        :
        0x0000 - 0x0006 reg=1 this LTestInvocationKinds;
        0x0000 - 0x0006 reg=2 x I
        0x0000 - 0x0006 reg=3 y I

  source_file_idx   : 148 (TestInvocationKinds.java)

Class #9 header:
class_idx           : 14
access_flags        : 1 (0x0001)
superclass_idx      : 9
interfaces_off      : 18256 (0x004750)
source_file_idx     : 149
annotations_off     : 31132 (0x00799c)
class_data_off      : 29344 (0x0072a0)
static_fields_size  : 7
instance_fields_size: 0
direct_methods_size : 8
virtual_methods_size: 1

Class #9 annotations:
Annotations on field #10 'threadIndex'
  VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "Ljava/lang/ThreadLocal<" "Ljava/lang/Integer;" ">;" }
Annotations on method #106 'linkerMethod'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #109 'setCalled'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestInvokeCustomWithConcurrentThreads; name="linkerMethod" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; } } fieldOrMethodName="setCalled" parameterTypes={ I } returnType=I
Annotations on method #110 'test'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }

Class #9            -
  Class descriptor  : 'LTestInvokeCustomWithConcurrentThreads;'
  Access flags      : 0x0001 (PUBLIC)
  Superclass        : 'LTestBase;'
  Interfaces        -
    #0              : 'Ljava/lang/Runnable;'
  Static fields     -
    #0              : (in LTestInvokeCustomWithConcurrentThreads;)
      name          : 'NUMBER_OF_THREADS'
      type          : 'I'
      access        : 0x001a (PRIVATE STATIC FINAL)
      value         : 16
    #1              : (in LTestInvokeCustomWithConcurrentThreads;)
      name          : 'barrier'
      type          : 'Ljava/util/concurrent/CyclicBarrier;'
      access        : 0x001a (PRIVATE STATIC FINAL)
    #2              : (in LTestInvokeCustomWithConcurrentThreads;)
      name          : 'called'
      type          : '[Ljava/util/concurrent/atomic/AtomicInteger;'
      access        : 0x001a (PRIVATE STATIC FINAL)
    #3              : (in LTestInvokeCustomWithConcurrentThreads;)
      name          : 'instantiated'
      type          : '[Ljava/lang/invoke/CallSite;'
      access        : 0x001a (PRIVATE STATIC FINAL)
    #4              : (in LTestInvokeCustomWithConcurrentThreads;)
      name          : 'nextIndex'
      type          : 'Ljava/util/concurrent/atomic/AtomicInteger;'
      access        : 0x001a (PRIVATE STATIC FINAL)
    #5              : (in LTestInvokeCustomWithConcurrentThreads;)
      name          : 'targetted'
      type          : '[Ljava/util/concurrent/atomic/AtomicInteger;'
      access        : 0x001a (PRIVATE STATIC FINAL)
    #6              : (in LTestInvokeCustomWithConcurrentThreads;)
      name          : 'threadIndex'
      type          : 'Ljava/lang/ThreadLocal;'
      access        : 0x001a (PRIVATE STATIC FINAL)
  Instance fields   -
  Direct methods    -
    #0              : (in LTestInvokeCustomWithConcurrentThreads;)
      name          : '<clinit>'
      type          : '()V'
      access        : 0x10008 (STATIC CONSTRUCTOR)
      method_idx    : 99
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 37 16-bit code units
003064:                                        |[003064] TestInvokeCustomWithConcurrentThreads.<clinit>:()V
0030742200 3e00                              |0000: new-instance v0, Ljava/util/concurrent/atomic/AtomicInteger; // type@003e
0030781201                                   |0002: const/4 v1, #int 0 // #0
00307a: 7020 ef00 1000                         |0003: invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicInteger;.<init>:(I)V // method@00ef
0030806900 0800                              |0006: sput-object v0, LTestInvokeCustomWithConcurrentThreads;.nextIndex:Ljava/util/concurrent/atomic/AtomicInteger; // field@0008
0030842200 0d00                              |0008: new-instance v0, LTestInvokeCustomWithConcurrentThreads$1; // type@000d
0030887010 6000 0000                         |000a: invoke-direct {v0}, LTestInvokeCustomWithConcurrentThreads$1;.<init>:()V // method@0060
00308e: 6900 0a00                              |000d: sput-object v0, LTestInvokeCustomWithConcurrentThreads;.threadIndex:Ljava/lang/ThreadLocal; // field@000a
0030921300 1000                              |000f: const/16 v0, #int 16 // #10
0030962301 4b00                              |0011: new-array v1, v0, [Ljava/lang/invoke/CallSite; // type@004b
00309a: 6901 0700                              |0013: sput-object v1, LTestInvokeCustomWithConcurrentThreads;.instantiated:[Ljava/lang/invoke/CallSite; // field@0007
00309e: 2301 4c00                              |0015: new-array v1, v0, [Ljava/util/concurrent/atomic/AtomicInteger; // type@004c
0030a2: 6901 0600                              |0017: sput-object v1, LTestInvokeCustomWithConcurrentThreads;.called:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0006
0030a6: 2301 4c00                              |0019: new-array v1, v0, [Ljava/util/concurrent/atomic/AtomicInteger; // type@004c
0030aa: 6901 0900                              |001b: sput-object v1, LTestInvokeCustomWithConcurrentThreads;.targetted:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0009
0030ae: 2201 3d00                              |001d: new-instance v1, Ljava/util/concurrent/CyclicBarrier; // type@003d
0030b2: 7020 ed00 0100                         |001f: invoke-direct {v1, v0}, Ljava/util/concurrent/CyclicBarrier;.<init>:(I)V // method@00ed
0030b8: 6901 0500                              |0022: sput-object v1, LTestInvokeCustomWithConcurrentThreads;.barrier:Ljava/util/concurrent/CyclicBarrier; // field@0005
0030bc: 0e00                                   |0024: return-void
      catches       : (none)
      positions     :
        0x0000 line=30
        0x0008 line=32
        0x000f line=41
        0x0015 line=44
        0x0019 line=47
        0x001d line=50
      locals        :

    #1              : (in LTestInvokeCustomWithConcurrentThreads;)
      name          : '<init>'
      type          : '()V'
      access        : 0x10002 (PRIVATE CONSTRUCTOR)
      method_idx    : 100
      code          -
      registers     : 1
      ins           : 1
      outs          : 1
      insns size    : 4 16-bit code units
0030c0:                                        |[0030c0] TestInvokeCustomWithConcurrentThreads.<init>:()V
0030d0: 7010 3200 0000                         |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032
0030d6: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=52
      locals        :
        0x0000 - 0x0004 reg=0 this LTestInvokeCustomWithConcurrentThreads;

    #2              : (in LTestInvokeCustomWithConcurrentThreads;)
      name          : 'access$000'
      type          : '()Ljava/util/concurrent/atomic/AtomicInteger;'
      access        : 0x1008 (STATIC SYNTHETIC)
      method_idx    : 101
      code          -
      registers     : 1
      ins           : 0
      outs          : 0
      insns size    : 3 16-bit code units
00304c:                                        |[00304c] TestInvokeCustomWithConcurrentThreads.access$000:()Ljava/util/concurrent/atomic/AtomicInteger;
00305c: 6200 0800                              |0000: sget-object v0, LTestInvokeCustomWithConcurrentThreads;.nextIndex:Ljava/util/concurrent/atomic/AtomicInteger; // field@0008
0030601100                                   |0002: return-object v0
      catches       : (none)
      positions     :
        0x0000 line=27
      locals        :

    #3              : (in LTestInvokeCustomWithConcurrentThreads;)
      name          : 'getThreadIndex'
      type          : '()I'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 105
      code          -
      registers     : 1
      ins           : 0
      outs          : 1
      insns size    : 13 16-bit code units
002f00:                                        |[002f00] TestInvokeCustomWithConcurrentThreads.getThreadIndex:()I
002f10: 6200 0a00                              |0000: sget-object v0, LTestInvokeCustomWithConcurrentThreads;.threadIndex:Ljava/lang/ThreadLocal; // field@000a
002f14: 6e10 d000 0000                         |0002: invoke-virtual {v0}, Ljava/lang/ThreadLocal;.get:()Ljava/lang/Object; // method@00d0
002f1a: 0c00                                   |0005: move-result-object v0
002f1c: 1f00 2700                              |0006: check-cast v0, Ljava/lang/Integer; // type@0027
002f20: 6e10 bc00 0000                         |0008: invoke-virtual {v0}, Ljava/lang/Integer;.intValue:()I // method@00bc
002f26: 0a00                                   |000b: move-result v0
002f28: 0f00                                   |000c: return v0
      catches       : (none)
      positions     :
        0x0000 line=55
      locals        :

    #4              : (in LTestInvokeCustomWithConcurrentThreads;)
      name          : 'linkerMethod'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 106
      code          -
      registers     : 8
      ins           : 3
      outs          : 4
      insns size    : 97 16-bit code units
002f78:                                        |[002f78] TestInvokeCustomWithConcurrentThreads.linkerMethod:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
002f88: 1c00 0e00                              |0000: const-class v0, LTestInvokeCustomWithConcurrentThreads; // type@000e
002f8c: 6e40 d800 0576                         |0002: invoke-virtual {v5, v0, v6, v7}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8
002f92: 0c00                                   |0005: move-result-object v0
002f94: 6e10 d400 0000                         |0006: invoke-virtual {v0}, Ljava/lang/invoke/MethodHandle;.type:()Ljava/lang/invoke/MethodType; // method@00d4
002f9a: 0c01                                   |0009: move-result-object v1
002f9c: 7120 6700 1700                         |000a: invoke-static {v7, v1}, LTestInvokeCustomWithConcurrentThreads;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@0067
002fa2: 6e10 d400 0000                         |000d: invoke-virtual {v0}, Ljava/lang/invoke/MethodHandle;.type:()Ljava/lang/invoke/MethodType; // method@00d4
002fa8: 0c01                                   |0010: move-result-object v1
002faa: 6e10 e300 0100                         |0011: invoke-virtual {v1}, Ljava/lang/invoke/MethodType;.parameterCount:()I // method@00e3
002fb0: 0a01                                   |0014: move-result v1
002fb2: 1212                                   |0015: const/4 v2, #int 1 // #1
002fb4: 7120 6600 2100                         |0016: invoke-static {v1, v2}, LTestInvokeCustomWithConcurrentThreads;.assertEquals:(II)V // method@0066
002fba: 2321 4800                              |0019: new-array v1, v2, [Ljava/lang/Object; // type@0048
002fbe: 7100 6900 0000                         |001b: invoke-static {}, LTestInvokeCustomWithConcurrentThreads;.getThreadIndex:()I // method@0069
002fc4: 0a03                                   |001e: move-result v3
002fc6: 7110 bd00 0300                         |001f: invoke-static {v3}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@00bd
002fcc: 0c03                                   |0022: move-result-object v3
002fce: 1204                                   |0023: const/4 v4, #int 0 // #0
002fd0: 4d03 0104                              |0024: aput-object v3, v1, v4
002fd4: 7130 de00 4001                         |0026: invoke-static {v0, v4, v1}, Ljava/lang/invoke/MethodHandles;.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle; // method@00de
002fda: 0c00                                   |0029: move-result-object v0
002fdc: 2321 4600                              |002a: new-array v1, v2, [Ljava/lang/Class; // type@0046
002fe0: 6203 1200                              |002c: sget-object v3, Ljava/lang/Integer;.TYPE:Ljava/lang/Class; // field@0012
002fe4: 4d03 0104                              |002e: aput-object v3, v1, v4
002fe8: 7130 dd00 4001                         |0030: invoke-static {v0, v4, v1}, Ljava/lang/invoke/MethodHandles;.dropArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Class;)Ljava/lang/invoke/MethodHandle; // method@00dd
002fee: 0c00                                   |0033: move-result-object v0
002ff0: 6e10 d400 0000                         |0034: invoke-virtual {v0}, Ljava/lang/invoke/MethodHandle;.type:()Ljava/lang/invoke/MethodType; // method@00d4
002ff6: 0c01                                   |0037: move-result-object v1
002ff8: 6e10 e300 0100                         |0038: invoke-virtual {v1}, Ljava/lang/invoke/MethodType;.parameterCount:()I // method@00e3
002ffe: 0a01                                   |003b: move-result v1
0030007120 6600 2100                         |003c: invoke-static {v1, v2}, LTestInvokeCustomWithConcurrentThreads;.assertEquals:(II)V // method@0066
0030066e10 d400 0000                         |003f: invoke-virtual {v0}, Ljava/lang/invoke/MethodHandle;.type:()Ljava/lang/invoke/MethodType; // method@00d4
00300c: 0c01                                   |0042: move-result-object v1
00300e: 7120 6700 1700                         |0043: invoke-static {v7, v1}, LTestInvokeCustomWithConcurrentThreads;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@0067
0030146201 0500                              |0046: sget-object v1, LTestInvokeCustomWithConcurrentThreads;.barrier:Ljava/util/concurrent/CyclicBarrier; // field@0005
0030186e10 ee00 0100                         |0048: invoke-virtual {v1}, Ljava/util/concurrent/CyclicBarrier;.await:()I // method@00ee
00301e: 6201 0700                              |004b: sget-object v1, LTestInvokeCustomWithConcurrentThreads;.instantiated:[Ljava/lang/invoke/CallSite; // field@0007
0030227100 6900 0000                         |004d: invoke-static {}, LTestInvokeCustomWithConcurrentThreads;.getThreadIndex:()I // method@0069
0030280a02                                   |0050: move-result v2
00302a: 2203 3400                              |0051: new-instance v3, Ljava/lang/invoke/ConstantCallSite; // type@0034
00302e: 7020 d200 0300                         |0053: invoke-direct {v3, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
0030344d03 0102                              |0056: aput-object v3, v1, v2
0030386201 0700                              |0058: sget-object v1, LTestInvokeCustomWithConcurrentThreads;.instantiated:[Ljava/lang/invoke/CallSite; // field@0007
00303c: 7100 6900 0000                         |005a: invoke-static {}, LTestInvokeCustomWithConcurrentThreads;.getThreadIndex:()I // method@0069
0030420a02                                   |005d: move-result v2
0030444601 0102                              |005e: aget-object v1, v1, v2
0030481101                                   |0060: return-object v1
      catches       : (none)
      positions     :
        0x0000 line=87
        0x0002 line=88
        0x0006 line=89
        0x000d line=90
        0x0019 line=91
        0x002a line=92
        0x0034 line=93
        0x003f line=94
        0x0046 line=99
        0x004b line=101
        0x0058 line=102
      locals        :
        0x0006 - 0x0061 reg=0 mh Ljava/lang/invoke/MethodHandle;
        0x0000 - 0x0061 reg=5 caller Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x0061 reg=6 name Ljava/lang/String;
        0x0000 - 0x0061 reg=7 methodType Ljava/lang/invoke/MethodType;

    #5              : (in LTestInvokeCustomWithConcurrentThreads;)
      name          : 'notUsed'
      type          : '(I)I'
      access        : 0x0009 (PUBLIC STATIC)
      method_idx    : 107
      code          -
      registers     : 1
      ins           : 1
      outs          : 0
      insns size    : 1 16-bit code units
002f2c:                                        |[002f2c] TestInvokeCustomWithConcurrentThreads.notUsed:(I)I
002f3c: 0f00                                   |0000: return v0
      catches       : (none)
      positions     :
        0x0000 line=59
      locals        :
        0x0000 - 0x0001 reg=0 x I

    #6              : (in LTestInvokeCustomWithConcurrentThreads;)
      name          : 'setCalled'
      type          : '(I)I'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 109
      code          -
      registers     : 3
      ins           : 1
      outs          : 2
      insns size    : 20 16-bit code units
002f40:                                        |[002f40] TestInvokeCustomWithConcurrentThreads.setCalled:(I)I
002f50: 6200 0600                              |0000: sget-object v0, LTestInvokeCustomWithConcurrentThreads;.called:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0006
002f54: 4600 0002                              |0002: aget-object v0, v0, v2
002f58: 6e10 f100 0000                         |0004: invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicInteger;.getAndIncrement:()I // method@00f1
002f5e: 6200 0900                              |0007: sget-object v0, LTestInvokeCustomWithConcurrentThreads;.targetted:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0009
002f62: 7100 6900 0000                         |0009: invoke-static {}, LTestInvokeCustomWithConcurrentThreads;.getThreadIndex:()I // method@0069
002f68: 0a01                                   |000c: move-result v1
002f6a: 4600 0001                              |000d: aget-object v0, v0, v1
002f6e: 6e20 f200 2000                         |000f: invoke-virtual {v0, v2}, Ljava/util/concurrent/atomic/AtomicInteger;.set:(I)V // method@00f2
002f74: 1200                                   |0012: const/4 v0, #int 0 // #0
002f76: 0f00                                   |0013: return v0
      catches       : (none)
      positions     :
        0x0000 line=79
        0x0007 line=80
        0x0012 line=81
      locals        :
        0x0000 - 0x0014 reg=2 index I

    #7              : (in LTestInvokeCustomWithConcurrentThreads;)
      name          : 'test'
      type          : '()V'
      access        : 0x0009 (PUBLIC STATIC)
      method_idx    : 110
      code          -
      registers     : 12
      ins           : 0
      outs          : 3
      insns size    : 229 16-bit code units
0030fc:                                        |[0030fc] TestInvokeCustomWithConcurrentThreads.test:()V
00310c: 1200                                   |0000: const/4 v0, #int 0 // #0
00310e: 0101                                   |0001: move v1, v0
0031101302 1000                              |0002: const/16 v2, #int 16 // #10
0031143521 1700                              |0004: if-ge v1, v2, 001b // +0017
0031186202 0600                              |0006: sget-object v2, LTestInvokeCustomWithConcurrentThreads;.called:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0006
00311c: 2203 3e00                              |0008: new-instance v3, Ljava/util/concurrent/atomic/AtomicInteger; // type@003e
0031207020 ef00 0300                         |000a: invoke-direct {v3, v0}, Ljava/util/concurrent/atomic/AtomicInteger;.<init>:(I)V // method@00ef
0031264d03 0201                              |000d: aput-object v3, v2, v1
00312a: 6202 0900                              |000f: sget-object v2, LTestInvokeCustomWithConcurrentThreads;.targetted:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0009
00312e: 2203 3e00                              |0011: new-instance v3, Ljava/util/concurrent/atomic/AtomicInteger; // type@003e
0031327020 ef00 0300                         |0013: invoke-direct {v3, v0}, Ljava/util/concurrent/atomic/AtomicInteger;.<init>:(I)V // method@00ef
0031384d03 0201                              |0016: aput-object v3, v2, v1
00313c: d801 0101                              |0018: add-int/lit8 v1, v1, #int 1 // #01
00314028e8                                   |001a: goto 0002 // -0018
0031422321 4a00                              |001b: new-array v1, v2, [Ljava/lang/Thread; // type@004a
0031460103                                   |001d: move v3, v0
0031483523 1600                              |001e: if-ge v3, v2, 0034 // +0016
00314c: 2204 2f00                              |0020: new-instance v4, Ljava/lang/Thread; // type@002f
0031502205 0e00                              |0022: new-instance v5, LTestInvokeCustomWithConcurrentThreads; // type@000e
0031547010 6400 0500                         |0024: invoke-direct {v5}, LTestInvokeCustomWithConcurrentThreads;.<init>:()V // method@0064
00315a: 7020 cb00 5400                         |0027: invoke-direct {v4, v5}, Ljava/lang/Thread;.<init>:(Ljava/lang/Runnable;)V // method@00cb
0031604d04 0103                              |002a: aput-object v4, v1, v3
0031644604 0103                              |002c: aget-object v4, v1, v3
0031686e10 ce00 0400                         |002e: invoke-virtual {v4}, Ljava/lang/Thread;.start:()V // method@00ce
00316e: d803 0301                              |0031: add-int/lit8 v3, v3, #int 1 // #01
00317228eb                                   |0033: goto 001e // -0015
0031740103                                   |0034: move v3, v0
0031763523 0a00                              |0035: if-ge v3, v2, 003f // +000a
00317a: 4604 0103                              |0037: aget-object v4, v1, v3
00317e: 6e10 cd00 0400                         |0039: invoke-virtual {v4}, Ljava/lang/Thread;.join:()V // method@00cd
003184: d803 0301                              |003c: add-int/lit8 v3, v3, #int 1 // #01
00318828f7                                   |003e: goto 0035 // -0009
00318a: 1203                                   |003f: const/4 v3, #int 0 // #0
00318c: 1204                                   |0040: const/4 v4, #int 0 // #0
00318e: 0145                                   |0041: move v5, v4
0031900134                                   |0042: move v4, v3
0031920103                                   |0043: move v3, v0
0031943523 2200                              |0044: if-ge v3, v2, 0066 // +0022
0031986206 0700                              |0046: sget-object v6, LTestInvokeCustomWithConcurrentThreads;.instantiated:[Ljava/lang/invoke/CallSite; // field@0007
00319c: 4606 0603                              |0048: aget-object v6, v6, v3
0031a0: 1207                                   |004a: const/4 v7, #int 0 // #0
0031a2: 7120 6800 7600                         |004b: invoke-static {v6, v7}, LTestInvokeCustomWithConcurrentThreads;.assertNotEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@0068
0031a8: 6206 0600                              |004e: sget-object v6, LTestInvokeCustomWithConcurrentThreads;.called:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0006
0031ac: 4606 0603                              |0050: aget-object v6, v6, v3
0031b0: 6e10 f000 0600                         |0052: invoke-virtual {v6}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@00f0
0031b6: 0a06                                   |0055: move-result v6
0031b8: 3806 0d00                              |0056: if-eqz v6, 0063 // +000d
0031bc: d804 0401                              |0058: add-int/lit8 v4, v4, #int 1 // #01
0031c0: 6206 0600                              |005a: sget-object v6, LTestInvokeCustomWithConcurrentThreads;.called:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0006
0031c4: 4606 0603                              |005c: aget-object v6, v6, v3
0031c8: 6e10 f000 0600                         |005e: invoke-virtual {v6}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@00f0
0031ce: 0a06                                   |0061: move-result v6
0031d0: b065                                   |0062: add-int/2addr v5, v6
0031d2: d803 0301                              |0063: add-int/lit8 v3, v3, #int 1 // #01
0031d6: 28df                                   |0065: goto 0044 // -0021
0031d8: 6203 1300                              |0066: sget-object v3, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0031dc: 2206 2d00                              |0068: new-instance v6, Ljava/lang/StringBuilder; // type@002d
0031e0: 7010 c100 0600                         |006a: invoke-direct {v6}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
0031e6: 1a07 b800                              |006d: const-string v7, "Winners " // string@00b8
0031ea: 6e20 c800 7600                         |006f: invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0031f0: 6e20 c500 4600                         |0072: invoke-virtual {v6, v4}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5
0031f6: 1a07 0500                              |0075: const-string v7, " Votes " // string@0005
0031fa: 6e20 c800 7600                         |0077: invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0032006e20 c500 5600                         |007a: invoke-virtual {v6, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5
0032066e10 ca00 0600                         |007d: invoke-virtual {v6}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
00320c: 0c06                                   |0080: move-result-object v6
00320e: 6e20 b300 6300                         |0081: invoke-virtual {v3, v6}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
0032141223                                   |0084: const/4 v3, #int 2 // #2
0032161216                                   |0085: const/4 v6, #int 1 // #1
0032183264 2c00                              |0086: if-eq v4, v6, 00b2 // +002c
00321c: 6207 1300                              |0088: sget-object v7, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0032201a08 9e00                              |008a: const-string v8, "Threads did not the same call-sites:" // string@009e
0032246e20 b300 8700                         |008c: invoke-virtual {v7, v8}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
00322a: 0107                                   |008f: move v7, v0
00322c: 3527 2200                              |0090: if-ge v7, v2, 00b2 // +0022
0032306208 1300                              |0092: sget-object v8, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0032341a09 0400                              |0094: const-string v9, " Thread % 2d invoked call site instance #%02d\n" // string@0004
0032382334800                              |0096: new-array v10, v3, [Ljava/lang/Object; // type@0048
00323c: 7110 bd00 0700                         |0098: invoke-static {v7}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@00bd
0032420c0b                                   |009b: move-result-object v11
0032444d0b 0a00                              |009c: aput-object v11, v10, v0
0032486200900                              |009e: sget-object v11, LTestInvokeCustomWithConcurrentThreads;.targetted:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0009
00324c: 4600b07                              |00a0: aget-object v11, v11, v7
0032506e10 f000 0b00                         |00a2: invoke-virtual {v11}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@00f0
0032560a0b                                   |00a5: move-result v11
0032587110 bd00 0b00                         |00a6: invoke-static {v11}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@00bd
00325e: 0c0b                                   |00a9: move-result-object v11
0032604d0b 0a06                              |00aa: aput-object v11, v10, v6
0032646e30 ab00 980a                         |00ac: invoke-virtual {v8, v9, v10}, Ljava/io/PrintStream;.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream; // method@00ab
00326a: d807 0701                              |00af: add-int/lit8 v7, v7, #int 1 // #01
00326e: 28df                                   |00b1: goto 0090 // -0021
0032703225 2c00                              |00b2: if-eq v5, v2, 00de // +002c
0032746207 1300                              |00b4: sget-object v7, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0032781a08 2000                              |00b6: const-string v8, "Call-sites invocations :" // string@0020
00327c: 6e20 b300 8700                         |00b8: invoke-virtual {v7, v8}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
0032820107                                   |00bb: move v7, v0
0032843527 2200                              |00bc: if-ge v7, v2, 00de // +0022
0032886208 1300                              |00be: sget-object v8, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
00328c: 1a09 0300                              |00c0: const-string v9, " Call site instance #%02d was invoked % 2d times\n" // string@0003
0032902334800                              |00c2: new-array v10, v3, [Ljava/lang/Object; // type@0048
0032947110 bd00 0700                         |00c4: invoke-static {v7}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@00bd
00329a: 0c0b                                   |00c7: move-result-object v11
00329c: 4d0b 0a00                              |00c8: aput-object v11, v10, v0
0032a0: 6200600                              |00ca: sget-object v11, LTestInvokeCustomWithConcurrentThreads;.called:[Ljava/util/concurrent/atomic/AtomicInteger; // field@0006
0032a4: 4600b07                              |00cc: aget-object v11, v11, v7
0032a8: 6e10 f000 0b00                         |00ce: invoke-virtual {v11}, Ljava/util/concurrent/atomic/AtomicInteger;.get:()I // method@00f0
0032ae: 0a0b                                   |00d1: move-result v11
0032b0: 7110 bd00 0b00                         |00d2: invoke-static {v11}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@00bd
0032b6: 0c0b                                   |00d5: move-result-object v11
0032b8: 4d0b 0a06                              |00d6: aput-object v11, v10, v6
0032bc: 6e30 ab00 980a                         |00d8: invoke-virtual {v8, v9, v10}, Ljava/io/PrintStream;.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintStream; // method@00ab
0032c2: d807 0701                              |00db: add-int/lit8 v7, v7, #int 1 // #01
0032c6: 28df                                   |00dd: goto 00bc // -0021
0032c8: 7120 6600 6400                         |00de: invoke-static {v4, v6}, LTestInvokeCustomWithConcurrentThreads;.assertEquals:(II)V // method@0066
0032ce: 7120 6600 2500                         |00e1: invoke-static {v5, v2}, LTestInvokeCustomWithConcurrentThreads;.assertEquals:(II)V // method@0066
0032d4: 0e00                                   |00e4: return-void
      catches       : (none)
      positions     :
        0x0000 line=107
        0x0006 line=108
        0x000f line=109
        0x0018 line=107
        0x001b line=113
        0x001d line=114
        0x0020 line=115
        0x002c line=116
        0x0031 line=114
        0x0034 line=120
        0x0037 line=121
        0x003c line=120
        0x003f line=125
        0x0040 line=126
        0x0041 line=127
        0x0046 line=128
        0x004e line=129
        0x0058 line=130
        0x005a line=131
        0x0063 line=127
        0x0066 line=135
        0x0084 line=139
        0x0088 line=140
        0x008f line=141
        0x0092 line=142
        0x0098 line=143
        0x00ac line=142
        0x00af line=141
        0x00b2 line=149
        0x00b4 line=150
        0x00bb line=151
        0x00be line=152
        0x00c4 line=153
        0x00d8 line=152
        0x00db line=151
        0x00de line=157
        0x00e1 line=158
        0x00e4 line=159
      locals        :
        0x0002 - 0x001b reg=1 i I
        0x001e - 0x0034 reg=3 i I
        0x0035 - 0x003f reg=3 i I
        0x0040 - 0x0044 reg=3 winners I
        0x0041 - 0x0044 reg=4 votes I
        0x0044 - 0x0066 reg=3 i I
        0x0090 - 0x00b2 reg=7 i I
        0x00bc - 0x00de reg=7 i I
        0x001d - 0x00e5 reg=1 threads [Ljava/lang/Thread;
        0x0044 - 0x00e5 reg=4 winners I
        0x0044 - 0x00e5 reg=5 votes I

  Virtual methods   -
    #0              : (in LTestInvokeCustomWithConcurrentThreads;)
      name          : 'run'
      type          : '()V'
      access        : 0x0001 (PUBLIC)
      method_idx    : 108
      code          -
      registers     : 2
      ins           : 1
      outs          : 1
      insns size    : 9 16-bit code units
0030d8:                                        |[0030d8] TestInvokeCustomWithConcurrentThreads.run:()V
0030e8: 12f0                                   |0000: const/4 v0, #int -1 // #ff
0030ea: fc10 1a00 0000                         |0001: invoke-custom {v0}, call_site@001a
0030f0: 0a00                                   |0004: move-result v0
0030f2: 7110 6b00 0000                         |0005: invoke-static {v0}, LTestInvokeCustomWithConcurrentThreads;.notUsed:(I)I // method@006b
0030f8: 0e00                                   |0008: return-void
      catches       : (none)
      positions     :
        0x0000 line=63
        0x0005 line=64
        0x0008 line=65
      locals        :
        0x0005 - 0x0009 reg=0 x I
        0x0000 - 0x0009 reg=1 this LTestInvokeCustomWithConcurrentThreads;

  source_file_idx   : 149 (TestInvokeCustomWithConcurrentThreads.java)

Class #10 header:
class_idx           : 15
access_flags        : 1 (0x0001)
superclass_idx      : 9
interfaces_off      : 0 (0x000000)
source_file_idx     : 151
annotations_off     : 31180 (0x0079cc)
class_data_off      : 29403 (0x0072db)
static_fields_size  : 5
instance_fields_size: 0
direct_methods_size : 6
virtual_methods_size: 0

Class #10 annotations:
Annotations on method #114 'add'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestLinkerMethodMinimalArguments; name="linkerMethod" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; } } fieldOrMethodName="_add" parameterTypes={ I I } returnType=I
Annotations on method #118 'linkerMethod'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #119 'test'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }

Class #10            -
  Class descriptor  : 'LTestLinkerMethodMinimalArguments;'
  Access flags      : 0x0001 (PUBLIC)
  Superclass        : 'LTestBase;'
  Interfaces        -
  Static fields     -
    #0              : (in LTestLinkerMethodMinimalArguments;)
      name          : 'FAILURE_TYPE_LINKER_METHOD_RETURNS_NULL'
      type          : 'I'
      access        : 0x0018 (STATIC FINAL)
      value         : 1
    #1              : (in LTestLinkerMethodMinimalArguments;)
      name          : 'FAILURE_TYPE_LINKER_METHOD_THROWS'
      type          : 'I'
      access        : 0x0018 (STATIC FINAL)
      value         : 2
    #2              : (in LTestLinkerMethodMinimalArguments;)
      name          : 'FAILURE_TYPE_NONE'
      type          : 'I'
      access        : 0x0018 (STATIC FINAL)
      value         : 0
    #3              : (in LTestLinkerMethodMinimalArguments;)
      name          : 'FAILURE_TYPE_TARGET_METHOD_THROWS'
      type          : 'I'
      access        : 0x0018 (STATIC FINAL)
      value         : 3
    #4              : (in LTestLinkerMethodMinimalArguments;)
      name          : 'forceFailureType'
      type          : 'I'
      access        : 0x000a (PRIVATE STATIC)
  Instance fields   -
  Direct methods    -
    #0              : (in LTestLinkerMethodMinimalArguments;)
      name          : '<clinit>'
      type          : '()V'
      access        : 0x10008 (STATIC CONSTRUCTOR)
      method_idx    : 111
      code          -
      registers     : 1
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
003404:                                        |[003404] TestLinkerMethodMinimalArguments.<clinit>:()V
0034141200                                   |0000: const/4 v0, #int 0 // #0
0034166700 0f00                              |0001: sput v0, LTestLinkerMethodMinimalArguments;.forceFailureType:I // field@000f
00341a: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=26
      locals        :

    #1              : (in LTestLinkerMethodMinimalArguments;)
      name          : '<init>'
      type          : '()V'
      access        : 0x10001 (PUBLIC CONSTRUCTOR)
      method_idx    : 112
      code          -
      registers     : 1
      ins           : 1
      outs          : 1
      insns size    : 4 16-bit code units
00341c:                                        |[00341c] TestLinkerMethodMinimalArguments.<init>:()V
00342c: 7010 3200 0000                         |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032
0034320e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=25
      locals        :
        0x0000 - 0x0004 reg=0 this LTestLinkerMethodMinimalArguments;

    #2              : (in LTestLinkerMethodMinimalArguments;)
      name          : '_add'
      type          : '(II)I'
      access        : 0x0008 (STATIC)
      method_idx    : 113
      code          -
      registers     : 4
      ins           : 2
      outs          : 2
      insns size    : 23 16-bit code units
0032d8:                                        |[0032d8] TestLinkerMethodMinimalArguments._add:(II)I
0032e8: 6000 0f00                              |0000: sget v0, LTestLinkerMethodMinimalArguments;.forceFailureType:I // field@000f
0032ec: 1231                                   |0002: const/4 v1, #int 3 // #3
0032ee: 3210 0500                              |0003: if-eq v0, v1, 0008 // +0005
0032f2: 9000 0203                              |0005: add-int v0, v2, v3
0032f6: 0f00                                   |0007: return v0
0032f8: 6200 1300                              |0008: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0032fc: 1a01 a000                              |000a: const-string v1, "Throwing ArithmeticException in add()" // string@00a0
0033006e20 b300 1000                         |000c: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
0033062200 1d00                              |000f: new-instance v0, Ljava/lang/ArithmeticException; // type@001d
00330a: 1a01 cc00                              |0011: const-string v1, "add" // string@00cc
00330e: 7020 b400 1000                         |0013: invoke-direct {v0, v1}, Ljava/lang/ArithmeticException;.<init>:(Ljava/lang/String;)V // method@00b4
0033142700                                   |0016: throw v0
      catches       : (none)
      positions     :
        0x0000 line=51
        0x0005 line=55
        0x0008 line=52
        0x000f line=53
      locals        :
        0x0000 - 0x0017 reg=2 a I
        0x0000 - 0x0017 reg=3 b I

    #3              : (in LTestLinkerMethodMinimalArguments;)
      name          : 'add'
      type          : '(II)I'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 114
      code          -
      registers     : 3
      ins           : 2
      outs          : 0
      insns size    : 5 16-bit code units
003318:                                        |[003318] TestLinkerMethodMinimalArguments.add:(II)I
0033287100 7400 0000                         |0000: invoke-static {}, LTestLinkerMethodMinimalArguments;.assertNotReached:()V // method@0074
00332e: 12f0                                   |0003: const/4 v0, #int -1 // #ff
0033300f00                                   |0004: return v0
      catches       : (none)
      positions     :
        0x0000 line=45
        0x0003 line=46
      locals        :
        0x0000 - 0x0005 reg=1 a I
        0x0000 - 0x0005 reg=2 b I

    #4              : (in LTestLinkerMethodMinimalArguments;)
      name          : 'linkerMethod'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 118
      code          -
      registers     : 7
      ins           : 3
      outs          : 4
      insns size    : 96 16-bit code units
003334:                                        |[003334] TestLinkerMethodMinimalArguments.linkerMethod:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
0033446200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0033482201 2d00                              |0002: new-instance v1, Ljava/lang/StringBuilder; // type@002d
00334c: 7010 c100 0100                         |0004: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
0033521a02 6701                              |0007: const-string v2, "linkerMethod failure type " // string@0167
0033566e20 c800 2100                         |0009: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
00335c: 6002 0f00                              |000c: sget v2, LTestLinkerMethodMinimalArguments;.forceFailureType:I // field@000f
0033606e20 c500 2100                         |000e: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5
0033666e10 ca00 0100                         |0011: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
00336c: 0c01                                   |0014: move-result-object v1
00336e: 6e20 b300 1000                         |0015: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
0033741c00 0f00                              |0018: const-class v0, LTestLinkerMethodMinimalArguments; // type@000f
0033786e40 d800 0465                         |001a: invoke-virtual {v4, v0, v5, v6}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8
00337e: 0c00                                   |001d: move-result-object v0
0033806001 0f00                              |001e: sget v1, LTestLinkerMethodMinimalArguments;.forceFailureType:I // field@000f
0033842b01 3800 0000                         |0020: packed-switch v1, 00000058 // +00000038
00338a: 2201 3400                              |0023: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
00338e: 7020 d200 0100                         |0025: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
0033941101                                   |0028: return-object v1
0033966201 1300                              |0029: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
00339a: 1a02 a100                              |002b: const-string v2, "Throwing InstantiationException in linkerMethod()" // string@00a1
00339e: 6e20 b300 2100                         |002d: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
0033a4: 2201 2600                              |0030: new-instance v1, Ljava/lang/InstantiationException; // type@0026
0033a8: 1a02 6601                              |0032: const-string v2, "linkerMethod" // string@0166
0033ac: 7020 bb00 2100                         |0034: invoke-direct {v1, v2}, Ljava/lang/InstantiationException;.<init>:(Ljava/lang/String;)V // method@00bb
0033b2: 2701                                   |0037: throw v1
0033b4: 6201 1300                              |0038: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0033b8: 2202 2d00                              |003a: new-instance v2, Ljava/lang/StringBuilder; // type@002d
0033bc: 7010 c100 0200                         |003c: invoke-direct {v2}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
0033c2: 1a03 8c00                              |003f: const-string v3, "Returning null instead of CallSite for " // string@008c
0033c6: 6e20 c800 3200                         |0041: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0033cc: 6e20 c800 5200                         |0044: invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0033d2: 1a03 0000                              |0047: const-string v3, " " // string@0000
0033d6: 6e20 c800 3200                         |0049: invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0033dc: 6e20 c700 6200                         |004c: invoke-virtual {v2, v6}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@00c7
0033e2: 6e10 ca00 0200                         |004f: invoke-virtual {v2}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
0033e8: 0c02                                   |0052: move-result-object v2
0033ea: 6e20 b300 2100                         |0053: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
0033f0: 1201                                   |0056: const/4 v1, #int 0 // #0
0033f2: 1101                                   |0057: return-object v1
0033f4: 0001 0200 0100 0000 1800 0000 0900 ... |0058: packed-switch-data (8 units)
      catches       : (none)
      positions     :
        0x0000 line=61
        0x0018 line=62
        0x001a line=63
        0x001e line=64
        0x0023 line=73
        0x0029 line=70
        0x0030 line=71
        0x0038 line=66
        0x0056 line=68
      locals        :
        0x001e - 0x0060 reg=0 mh_add Ljava/lang/invoke/MethodHandle;
        0x0000 - 0x0060 reg=4 caller Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x0060 reg=5 name Ljava/lang/String;
        0x0000 - 0x0060 reg=6 methodType Ljava/lang/invoke/MethodType;

    #5              : (in LTestLinkerMethodMinimalArguments;)
      name          : 'test'
      type          : '(III)V'
      access        : 0x0009 (PUBLIC STATIC)
      method_idx    : 119
      code          -
      registers     : 6
      ins           : 3
      outs          : 2
      insns size    : 68 16-bit code units
003434:                                        |[003434] TestLinkerMethodMinimalArguments.test:(III)V
0034441200                                   |0000: const/4 v0, #int 0 // #0
0034461211                                   |0001: const/4 v1, #int 1 // #1
0034483a03 0400                              |0002: if-ltz v3, 0006 // +0004
00344c: 0112                                   |0004: move v2, v1
00344e: 2802                                   |0005: goto 0007 // +0002
0034500102                                   |0006: move v2, v0
0034527110 7500 0200                         |0007: invoke-static {v2}, LTestLinkerMethodMinimalArguments;.assertTrue:(Z)V // method@0075
0034581232                                   |000a: const/4 v2, #int 3 // #3
00345a: 3623 0400                              |000b: if-gt v3, v2, 000f // +0004
00345e: 0110                                   |000d: move v0, v1
0034600000                                   |000e: nop // spacer
0034627110 7500 0000                         |000f: invoke-static {v0}, LTestLinkerMethodMinimalArguments;.assertTrue:(Z)V // method@0075
0034686703 0f00                              |0012: sput v3, LTestLinkerMethodMinimalArguments;.forceFailureType:I // field@000f
00346c: 9000 0405                              |0014: add-int v0, v4, v5
003470: fc20 1b00 5400                         |0016: invoke-custom {v4, v5}, call_site@001b
0034760a01                                   |0019: move-result v1
0034787120 7300 1000                         |001a: invoke-static {v0, v1}, LTestLinkerMethodMinimalArguments;.assertEquals:(II)V // method@0073
00347e: 6200 1300                              |001d: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0034822201 2d00                              |001f: new-instance v1, Ljava/lang/StringBuilder; // type@002d
0034867010 c100 0100                         |0021: invoke-direct {v1}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
00348c: 1a02 2a00                              |0024: const-string v2, "Failure Type + " // string@002a
0034906e20 c800 2100                         |0026: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0034966e20 c500 3100                         |0029: invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5
00349c: 1a02 0100                              |002c: const-string v2, " (" // string@0001
0034a0: 6e20 c800 2100                         |002e: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0034a6: 6e20 c500 4100                         |0031: invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5
0034ac: 6e20 c500 5100                         |0034: invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;.append:(I)Ljava/lang/StringBuilder; // method@00c5
0034b2: 1a02 0700                              |0037: const-string v2, ")" // string@0007
0034b6: 6e20 c800 2100                         |0039: invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0034bc: 6e10 ca00 0100                         |003c: invoke-virtual {v1}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
0034c2: 0c01                                   |003f: move-result-object v1
0034c4: 6e20 b300 1000                         |0040: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
0034ca: 0e00                                   |0043: return-void
      catches       : (none)
      positions     :
        0x0000 line=78
        0x000a line=79
        0x0012 line=80
        0x0014 line=81
        0x001d line=82
        0x0043 line=83
      locals        :
        0x0000 - 0x0044 reg=3 failureType I
        0x0000 - 0x0044 reg=4 x I
        0x0000 - 0x0044 reg=5 y I

  Virtual methods   -
  source_file_idx   : 151 (TestLinkerMethodMinimalArguments.java)

Class #11 header:
class_idx           : 16
access_flags        : 1 (0x0001)
superclass_idx      : 9
interfaces_off      : 0 (0x000000)
source_file_idx     : 153
annotations_off     : 31220 (0x0079f4)
class_data_off      : 29445 (0x007305)
static_fields_size  : 1
instance_fields_size: 0
direct_methods_size : 6
virtual_methods_size: 1

Class #11 annotations:
Annotations on method #124 'add'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestLinkerMethodMultipleArgumentTypes; name="linkerMethod" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; I I I I I F D Ljava/lang/String; Ljava/lang/Class; J } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; intValue={ -1 } Lannotations/Constant; intValue={ 1 } Lannotations/Constant; intValue={ 97 } Lannotations/Constant; intValue={ 1024 } Lannotations/Constant; intValue={ 1 } Lannotations/Constant; floatValue={ 11.1 } Lannotations/Constant; doubleValue={ 2.2 } Lannotations/Constant; stringValue={ "Hello" } Lannotations/Constant; classValue={ LTestLinkerMethodMultipleArgumentTypes; } Lannotations/Constant; longValue={ 123456789 } } fieldOrMethodName="_add" parameterTypes={ I I } returnType=I
Annotations on method #131 'linkerMethod'
  VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "(" "Ljava/lang/invoke/MethodHandles$Lookup;" "Ljava/lang/String;" "Ljava/lang/invoke/MethodType;" "IIIIIFD" "Ljava/lang/String;" "Ljava/lang/Class<" "*>;J)" "Ljava/lang/invoke/CallSite;" }
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #132 'test'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }

Class #11            -
  Class descriptor  : 'LTestLinkerMethodMultipleArgumentTypes;'
  Access flags      : 0x0001 (PUBLIC)
  Superclass        : 'LTestBase;'
  Interfaces        -
  Static fields     -
    #0              : (in LTestLinkerMethodMultipleArgumentTypes;)
      name          : 'bootstrapRunCount'
      type          : 'I'
      access        : 0x000a (PRIVATE STATIC)
  Instance fields   -
  Direct methods    -
    #0              : (in LTestLinkerMethodMultipleArgumentTypes;)
      name          : '<clinit>'
      type          : '()V'
      access        : 0x10008 (STATIC CONSTRUCTOR)
      method_idx    : 120
      code          -
      registers     : 1
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
003618:                                        |[003618] TestLinkerMethodMultipleArgumentTypes.<clinit>:()V
0036281200                                   |0000: const/4 v0, #int 0 // #0
00362a: 6700 1000                              |0001: sput v0, LTestLinkerMethodMultipleArgumentTypes;.bootstrapRunCount:I // field@0010
00362e: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=28
      locals        :

    #1              : (in LTestLinkerMethodMultipleArgumentTypes;)
      name          : '<init>'
      type          : '()V'
      access        : 0x10001 (PUBLIC CONSTRUCTOR)
      method_idx    : 121
      code          -
      registers     : 1
      ins           : 1
      outs          : 1
      insns size    : 4 16-bit code units
003630:                                        |[003630] TestLinkerMethodMultipleArgumentTypes.<init>:()V
0036407010 3200 0000                         |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032
0036460e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=26
      locals        :
        0x0000 - 0x0004 reg=0 this LTestLinkerMethodMultipleArgumentTypes;

    #2              : (in LTestLinkerMethodMultipleArgumentTypes;)
      name          : '_add'
      type          : '(II)I'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 123
      code          -
      registers     : 3
      ins           : 2
      outs          : 0
      insns size    : 3 16-bit code units
0034e4:                                        |[0034e4] TestLinkerMethodMultipleArgumentTypes._add:(II)I
0034f4: 9000 0102                              |0000: add-int v0, v1, v2
0034f8: 0f00                                   |0002: return v0
      catches       : (none)
      positions     :
        0x0000 line=74
      locals        :
        0x0000 - 0x0003 reg=1 a I
        0x0000 - 0x0003 reg=2 b I

    #3              : (in LTestLinkerMethodMultipleArgumentTypes;)
      name          : 'add'
      type          : '(II)I'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 124
      code          -
      registers     : 3
      ins           : 2
      outs          : 0
      insns size    : 5 16-bit code units
0034fc:                                        |[0034fc] TestLinkerMethodMultipleArgumentTypes.add:(II)I
00350c: 7100 8200 0000                         |0000: invoke-static {}, LTestLinkerMethodMultipleArgumentTypes;.assertNotReached:()V // method@0082
00351212f0                                   |0003: const/4 v0, #int -1 // #ff
0035140f00                                   |0004: return v0
      catches       : (none)
      positions     :
        0x0000 line=68
        0x0003 line=69
      locals        :
        0x0000 - 0x0005 reg=1 a I
        0x0000 - 0x0005 reg=2 b I

    #4              : (in LTestLinkerMethodMultipleArgumentTypes;)
      name          : 'linkerMethod'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;IIIIIFDLjava/lang/String;Ljava/lang/Class;J)Ljava/lang/invoke/CallSite;'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 131
      code          -
      registers     : 31
      ins           : 15
      outs          : 4
      insns size    : 119 16-bit code units
003518:                                        |[003518] TestLinkerMethodMultipleArgumentTypes.linkerMethod:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;IIIIIFDLjava/lang/String;Ljava/lang/Class;J)Ljava/lang/invoke/CallSite;
0035280800 1100                              |0000: move-object/from16 v0, v17
00352c: 0801 1200                              |0002: move-object/from16 v1, v18
0035306202 1300                              |0004: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0035342203 2d00                              |0006: new-instance v3, Ljava/lang/StringBuilder; // type@002d
0035387010 c100 0300                         |0008: invoke-direct {v3}, Ljava/lang/StringBuilder;.<init>:()V // method@00c1
00353e: 1a04 6100                              |000b: const-string v4, "Linking " // string@0061
0035426e20 c800 4300                         |000d: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0035486e20 c800 0300                         |0010: invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
00354e: 1a04 0000                              |0013: const-string v4, " " // string@0000
0035526e20 c800 4300                         |0015: invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;.append:(Ljava/lang/String;)Ljava/lang/StringBuilder; // method@00c8
0035586e20 c700 1300                         |0018: invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder; // method@00c7
00355e: 6e10 ca00 0300                         |001b: invoke-virtual {v3}, Ljava/lang/StringBuilder;.toString:()Ljava/lang/String; // method@00ca
0035640c03                                   |001e: move-result-object v3
0035666e20 b300 3200                         |001f: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
00356c: 12f2                                   |0022: const/4 v2, #int -1 // #ff
00356e: 0203 1300                              |0023: move/from16 v3, v19
0035727120 7f00 3200                         |0025: invoke-static {v2, v3}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(II)V // method@007f
0035781212                                   |0028: const/4 v2, #int 1 // #1
00357a: 0204 1400                              |0029: move/from16 v4, v20
00357e: 7120 7f00 4200                         |002b: invoke-static {v2, v4}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(II)V // method@007f
0035841305 6100                              |002e: const/16 v5, #int 97 // #61
0035880206 1500                              |0030: move/from16 v6, v21
00358c: 7120 7f00 6500                         |0032: invoke-static {v5, v6}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(II)V // method@007f
0035921305 0004                              |0035: const/16 v5, #int 1024 // #400
0035960207 1600                              |0037: move/from16 v7, v22
00359a: 7120 7f00 7500                         |0039: invoke-static {v5, v7}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(II)V // method@007f
0035a0: 0205 1700                              |003c: move/from16 v5, v23
0035a4: 7120 7f00 5200                         |003e: invoke-static {v2, v5}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(II)V // method@007f
0035aa: 1402 9a99 3141                         |0041: const v2, #float 11.1 // #4131999a
0035b0: 0208 1800                              |0044: move/from16 v8, v24
0035b4: 7120 7e00 8200                         |0046: invoke-static {v2, v8}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(FF)V // method@007e
0035ba: 1809 9a99 9999 9999 0140               |0049: const-wide v9, #double 2.2 // #400199999999999a
0035c4: 0501900                              |004e: move-wide/from16 v11, v25
0035c8: 7140 7d00 a9cb                         |0050: invoke-static {v9, v10, v11, v12}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(DD)V // method@007d
0035ce: 1a02 2c00                              |0053: const-string v2, "Hello" // string@002c
0035d2: 0809 1b00                              |0055: move-object/from16 v9, v27
0035d6: 7120 8100 9200                         |0057: invoke-static {v2, v9}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@0081
0035dc: 1c02 1000                              |005a: const-class v2, LTestLinkerMethodMultipleArgumentTypes; // type@0010
0035e0: 0801c00                              |005c: move-object/from16 v10, v28
0035e4: 7120 8100 a200                         |005e: invoke-static {v2, v10}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V // method@0081
0035ea: 17015cd 5b07                         |0061: const-wide/32 v13, #float 1.6536e-34 // #075bcd15
0035f0: 0502 1d00                              |0064: move-wide/from16 v2, v29
0035f4: 7140 8000 ed32                         |0066: invoke-static {v13, v14, v2, v3}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(JJ)V // method@0080
0035fa: 1c0d 1000                              |0069: const-class v13, LTestLinkerMethodMultipleArgumentTypes; // type@0010
0035fe: 0801000                              |006b: move-object/from16 v14, v16
0036026e40 d800 de10                         |006d: invoke-virtual {v14, v13, v0, v1}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8
0036080c0d                                   |0070: move-result-object v13
00360a: 2203400                              |0071: new-instance v15, Ljava/lang/invoke/ConstantCallSite; // type@0034
00360e: 7020 d200 df00                         |0073: invoke-direct {v15, v13}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
003614110f                                   |0076: return-object v15
      catches       : (none)
      positions     :
        0x0000 line=93
        0x0022 line=94
        0x0028 line=95
        0x002e line=96
        0x0035 line=97
        0x003c line=98
        0x0041 line=99
        0x0049 line=100
        0x0053 line=101
        0x005a line=102
        0x0061 line=103
        0x0069 line=104
        0x006b line=105
        0x0071 line=106
      locals        :
        0x0071 - 0x0077 reg=13 mh_add Ljava/lang/invoke/MethodHandle;
        0x0000 - 0x0077 reg=16 caller Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x0077 reg=17 name Ljava/lang/String;
        0x0000 - 0x0077 reg=18 methodType Ljava/lang/invoke/MethodType;
        0x0000 - 0x0077 reg=19 v1 I
        0x0000 - 0x0077 reg=20 v2 I
        0x0000 - 0x0077 reg=21 v3 I
        0x0000 - 0x0077 reg=22 v4 I
        0x0000 - 0x0077 reg=23 v5 I
        0x0000 - 0x0077 reg=24 v6 F
        0x0000 - 0x0077 reg=25 v7 D
        0x0000 - 0x0077 reg=27 v8 Ljava/lang/String;
        0x0000 - 0x0077 reg=28 v9 Ljava/lang/Class; Ljava/lang/Class<*>;
        0x0000 - 0x0077 reg=29 v10 J

    #5              : (in LTestLinkerMethodMultipleArgumentTypes;)
      name          : 'test'
      type          : '(II)V'
      access        : 0x0009 (PUBLIC STATIC)
      method_idx    : 132
      code          -
      registers     : 4
      ins           : 2
      outs          : 2
      insns size    : 17 16-bit code units
003648:                                        |[003648] TestLinkerMethodMultipleArgumentTypes.test:(II)V
0036589000 0203                              |0000: add-int v0, v2, v3
00365c: fc20 1c00 3200                         |0002: invoke-custom {v2, v3}, call_site@001c
0036620a01                                   |0005: move-result v1
0036647120 7f00 1000                         |0006: invoke-static {v0, v1}, LTestLinkerMethodMultipleArgumentTypes;.assertEquals:(II)V // method@007f
00366a: 6200 1300                              |0009: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
00366e: 9001 0203                              |000b: add-int v1, v2, v3
0036726e20 b100 1000                         |000d: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(I)V // method@00b1
0036780e00                                   |0010: return-void
      catches       : (none)
      positions     :
        0x0000 line=114
        0x0009 line=115
        0x0010 line=116
      locals        :
        0x0000 - 0x0011 reg=2 x I
        0x0000 - 0x0011 reg=3 y I

  Virtual methods   -
    #0              : (in LTestLinkerMethodMultipleArgumentTypes;)
      name          : 'GetBootstrapRunCount'
      type          : '()I'
      access        : 0x0001 (PUBLIC)
      method_idx    : 122
      code          -
      registers     : 2
      ins           : 1
      outs          : 0
      insns size    : 3 16-bit code units
0034cc:                                        |[0034cc] TestLinkerMethodMultipleArgumentTypes.GetBootstrapRunCount:()I
0034dc: 6000 1000                              |0000: sget v0, LTestLinkerMethodMultipleArgumentTypes;.bootstrapRunCount:I // field@0010
0034e0: 0f00                                   |0002: return v0
      catches       : (none)
      positions     :
        0x0000 line=110
      locals        :
        0x0000 - 0x0003 reg=1 this LTestLinkerMethodMultipleArgumentTypes;

  source_file_idx   : 153 (TestLinkerMethodMultipleArgumentTypes.java)

Class #12 header:
class_idx           : 17
access_flags        : 0 (0x0000)
superclass_idx      : 9
interfaces_off      : 0 (0x000000)
source_file_idx     : 154
annotations_off     : 31260 (0x007a1c)
class_data_off      : 29483 (0x00732b)
static_fields_size  : 0
instance_fields_size: 0
direct_methods_size : 6
virtual_methods_size: 0

Class #12 annotations:
Annotations on method #136 'addf'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LUnrelatedBSM; name="bsm" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; Ljava/lang/Class; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; classValue={ LTestLinkerUnrelatedBSM; } } fieldOrMethodName="_addf" parameterTypes={ F F } returnType=F
Annotations on method #139 'subf'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LUnrelatedBSM; name="bsm" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; Ljava/lang/Class; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; classValue={ LTestLinkerUnrelatedBSM; } } fieldOrMethodName="_subf" parameterTypes={ F F } returnType=F

Class #12            -
  Class descriptor  : 'LTestLinkerUnrelatedBSM;'
  Access flags      : 0x0000 ()
  Superclass        : 'LTestBase;'
  Interfaces        -
  Static fields     -
  Instance fields   -
  Direct methods    -
    #0              : (in LTestLinkerUnrelatedBSM;)
      name          : '<init>'
      type          : '()V'
      access        : 0x10000 (CONSTRUCTOR)
      method_idx    : 133
      code          -
      registers     : 1
      ins           : 1
      outs          : 1
      insns size    : 4 16-bit code units
0036e4:                                        |[0036e4] TestLinkerUnrelatedBSM.<init>:()V
0036f4: 7010 3200 0000                         |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032
0036fa: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=23
      locals        :
        0x0000 - 0x0004 reg=0 this LTestLinkerUnrelatedBSM;

    #1              : (in LTestLinkerUnrelatedBSM;)
      name          : '_addf'
      type          : '(FF)F'
      access        : 0x0009 (PUBLIC STATIC)
      method_idx    : 134
      code          -
      registers     : 3
      ins           : 2
      outs          : 0
      insns size    : 3 16-bit code units
00367c:                                        |[00367c] TestLinkerUnrelatedBSM._addf:(FF)F
00368c: a600 0102                              |0000: add-float v0, v1, v2
0036900f00                                   |0002: return v0
      catches       : (none)
      positions     :
        0x0000 line=47
      locals        :
        0x0000 - 0x0003 reg=1 a F
        0x0000 - 0x0003 reg=2 b F

    #2              : (in LTestLinkerUnrelatedBSM;)
      name          : '_subf'
      type          : '(FF)F'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 135
      code          -
      registers     : 3
      ins           : 2
      outs          : 0
      insns size    : 3 16-bit code units
003694:                                        |[003694] TestLinkerUnrelatedBSM._subf:(FF)F
0036a4: a700 0102                              |0000: sub-float v0, v1, v2
0036a8: 0f00                                   |0002: return v0
      catches       : (none)
      positions     :
        0x0000 line=73
      locals        :
        0x0000 - 0x0003 reg=1 a F
        0x0000 - 0x0003 reg=2 b F

    #3              : (in LTestLinkerUnrelatedBSM;)
      name          : 'addf'
      type          : '(FF)F'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 136
      code          -
      registers     : 3
      ins           : 2
      outs          : 0
      insns size    : 5 16-bit code units
0036ac:                                        |[0036ac] TestLinkerUnrelatedBSM.addf:(FF)F
0036bc: 7100 8a00 0000                         |0000: invoke-static {}, LTestLinkerUnrelatedBSM;.assertNotReached:()V // method@008a
0036c2: 1210                                   |0003: const/4 v0, #int 1 // #1
0036c4: 0f00                                   |0004: return v0
      catches       : (none)
      positions     :
        0x0000 line=42
        0x0003 line=43
      locals        :
        0x0000 - 0x0005 reg=1 a F
        0x0000 - 0x0005 reg=2 b F

    #4              : (in LTestLinkerUnrelatedBSM;)
      name          : 'subf'
      type          : '(FF)F'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 139
      code          -
      registers     : 3
      ins           : 2
      outs          : 0
      insns size    : 5 16-bit code units
0036c8:                                        |[0036c8] TestLinkerUnrelatedBSM.subf:(FF)F
0036d8: 7100 8a00 0000                         |0000: invoke-static {}, LTestLinkerUnrelatedBSM;.assertNotReached:()V // method@008a
0036de: 1210                                   |0003: const/4 v0, #int 1 // #1
0036e0: 0f00                                   |0004: return v0
      catches       : (none)
      positions     :
        0x0000 line=68
        0x0003 line=69
      locals        :
        0x0000 - 0x0005 reg=1 a F
        0x0000 - 0x0005 reg=2 b F

    #5              : (in LTestLinkerUnrelatedBSM;)
      name          : 'test'
      type          : '()V'
      access        : 0x0009 (PUBLIC STATIC)
      method_idx    : 140
      code          -
      registers     : 4
      ins           : 0
      outs          : 2
      insns size    : 34 16-bit code units
0036fc:                                        |[0036fc] TestLinkerUnrelatedBSM.test:()V
00370c: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
0037101c01 1100                              |0002: const-class v1, LTestLinkerUnrelatedBSM; // type@0011
0037146e10 b700 0100                         |0004: invoke-virtual {v1}, Ljava/lang/Class;.getName:()Ljava/lang/String; // method@00b7
00371a: 0c01                                   |0007: move-result-object v1
00371c: 6e20 b300 1000                         |0008: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
0037221500 003f                              |000b: const/high16 v0, #int 1056964608 // #3f00
0037261501 0040                              |000d: const/high16 v1, #int 1073741824 // #4000
00372a: fc20 1d00 0100                         |000f: invoke-custom {v1, v0}, call_site@001d
0037300a02                                   |0012: move-result v2
0037321503 2040                              |0013: const/high16 v3, #int 1075838976 // #4020
0037367120 8900 2300                         |0015: invoke-static {v3, v2}, LTestLinkerUnrelatedBSM;.assertEquals:(FF)V // method@0089
00373c: fc20 1e00 0100                         |0018: invoke-custom {v1, v0}, call_site@001e
0037420a00                                   |001b: move-result v0
0037441501 c03f                              |001c: const/high16 v1, #int 1069547520 // #3fc0
0037487120 8900 0100                         |001e: invoke-static {v1, v0}, LTestLinkerUnrelatedBSM;.assertEquals:(FF)V // method@0089
00374e: 0e00                                   |0021: return-void
      catches       : (none)
      positions     :
        0x0000 line=77
        0x000b line=78
        0x0018 line=79
        0x0021 line=80
      locals        :

  Virtual methods   -
  source_file_idx   : 154 (TestLinkerUnrelatedBSM.java)

Class #13 header:
class_idx           : 18
access_flags        : 1 (0x0001)
superclass_idx      : 9
interfaces_off      : 0 (0x000000)
source_file_idx     : 156
annotations_off     : 31292 (0x007a3c)
class_data_off      : 29514 (0x00734a)
static_fields_size  : 0
instance_fields_size: 0
direct_methods_size : 27
virtual_methods_size: 0

Class #13 annotations:
Annotations on method #143 'bsmWithBoxedArray'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #144 'bsmWithClassAndFloatArray'
  VISIBILITY_SYSTEM Ldalvik/annotation/Signature; value={ "(" "Ljava/lang/invoke/MethodHandles$Lookup;" "Ljava/lang/String;" "Ljava/lang/invoke/MethodType;" "Ljava/lang/Class<" "*>;[F)" "Ljava/lang/invoke/CallSite;" }
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #145 'bsmWithClassArray'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #146 'bsmWithDoubleArray'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #147 'bsmWithFloatAndLongArray'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #148 'bsmWithIntAndStringArray'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #149 'bsmWithLongAndIntArray'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #150 'bsmWithStringArray'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #151 'bsmWithWiderArray'
  VISIBILITY_SYSTEM Ldalvik/annotation/Throws; value={ Ljava/lang/Throwable; }
Annotations on method #152 'methodA'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithStringArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; [Ljava/lang/String; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; stringValue={ "Aachen" } Lannotations/Constant; stringValue={ "Aalborg" } Lannotations/Constant; stringValue={ "Aalto" } } fieldOrMethodName="methodA"
Annotations on method #153 'methodB'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithStringArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; [Ljava/lang/String; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; stringValue={ "barium" } } fieldOrMethodName="methodB"
Annotations on method #154 'methodC'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithStringArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; [Ljava/lang/String; } } fieldOrMethodName="methodC"
Annotations on method #155 'methodD'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithIntAndStringArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; I [Ljava/lang/String; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; intValue={ 101 } Lannotations/Constant; stringValue={ "zoo" } Lannotations/Constant; stringValue={ "zoogene" } Lannotations/Constant; stringValue={ "zoogenic" } } fieldOrMethodName="methodD"
Annotations on method #156 'methodE'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithIntAndStringArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; I [Ljava/lang/String; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; intValue={ 102 } Lannotations/Constant; stringValue={ "zonic" } } fieldOrMethodName="methodE"
Annotations on method #157 'methodF'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithIntAndStringArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; I [Ljava/lang/String; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; intValue={ 103 } } fieldOrMethodName="methodF"
Annotations on method #158 'methodG'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithLongAndIntArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; J [I } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; longValue={ 81985529216486895 } Lannotations/Constant; intValue={ 1 } Lannotations/Constant; intValue={ -1 } Lannotations/Constant; intValue={ 2 } Lannotations/Constant; intValue={ -2 } } fieldOrMethodName="methodG"
Annotations on method #159 'methodH'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithFloatAndLongArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; F [J } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; floatValue={ -2.71828 } Lannotations/Constant; longValue={ 999999999999 } Lannotations/Constant; longValue={ -8888888888888 } } fieldOrMethodName="methodH"
Annotations on method #160 'methodI'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithClassAndFloatArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; Ljava/lang/Class; [F } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; classValue={ Ljava/lang/Throwable; } Lannotations/Constant; floatValue={ 3.40282e+38 } Lannotations/Constant; floatValue={ 1.4013e-45 } Lannotations/Constant; floatValue={ 3.14159 } Lannotations/Constant; floatValue={ -3.14159 } } fieldOrMethodName="methodI"
Annotations on method #161 'methodJ'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithDoubleArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; [D } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; doubleValue={ 1.79769e+308 } Lannotations/Constant; doubleValue={ 4.94066e-324 } Lannotations/Constant; doubleValue={ 2.71828 } Lannotations/Constant; doubleValue={ -3.14159 } } fieldOrMethodName="methodJ"
Annotations on method #162 'methodK'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithClassArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; [Ljava/lang/Class; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; classValue={ Ljava/lang/Integer; } Lannotations/Constant; classValue={ Ljava/lang/invoke/MethodHandles; } Lannotations/Constant; classValue={ Ljava/util/Arrays; } } fieldOrMethodName="methodK"
Annotations on method #163 'methodO'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithIntAndStringArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; I [Ljava/lang/String; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; intValue={ 103 } Lannotations/Constant; intValue={ 104 } } fieldOrMethodName="methodO"
Annotations on method #164 'methodP'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithIntAndStringArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; I [Ljava/lang/String; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; intValue={ 103 } Lannotations/Constant; stringValue={ "A" } Lannotations/Constant; stringValue={ "B" } Lannotations/Constant; intValue={ 42 } } fieldOrMethodName="methodP"
Annotations on method #165 'methodQ'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithWiderArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; [J } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; intValue={ 103 } Lannotations/Constant; intValue={ 42 } } fieldOrMethodName="methodQ"
Annotations on method #166 'methodR'
  VISIBILITY_RUNTIME Lannotations/CalledByIndy; bootstrapMethod={ Lannotations/BootstrapMethod; enclosingType=LTestVariableArityLinkerMethod; name="bsmWithBoxedArray" parameterTypes={ Ljava/lang/invoke/MethodHandles$Lookup; Ljava/lang/String; Ljava/lang/invoke/MethodType; [Ljava/lang/Integer; } } constantArgumentsForBootstrapMethod={ Lannotations/Constant; intValue={ 1030 } Lannotations/Constant; intValue={ 420 } } fieldOrMethodName="methodR"

Class #13            -
  Class descriptor  : 'LTestVariableArityLinkerMethod;'
  Access flags      : 0x0001 (PUBLIC)
  Superclass        : 'LTestBase;'
  Interfaces        -
  Static fields     -
  Instance fields   -
  Direct methods    -
    #0              : (in LTestVariableArityLinkerMethod;)
      name          : '<init>'
      type          : '()V'
      access        : 0x10001 (PUBLIC CONSTRUCTOR)
      method_idx    : 141
      code          -
      registers     : 1
      ins           : 1
      outs          : 1
      insns size    : 4 16-bit code units
003a7c:                                        |[003a7c] TestVariableArityLinkerMethod.<init>:()V
003a8c: 7010 3200 0000                         |0000: invoke-direct {v0}, LTestBase;.<init>:()V // method@0032
003a92: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=27
      locals        :
        0x0000 - 0x0004 reg=0 this LTestVariableArityLinkerMethod;

    #1              : (in LTestVariableArityLinkerMethod;)
      name          : 'bsmWithBoxedArray'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Integer;)Ljava/lang/invoke/CallSite;'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 143
      code          -
      registers     : 7
      ins           : 4
      outs          : 4
      insns size    : 34 16-bit code units
003750:                                        |[003750] TestVariableArityLinkerMethod.bsmWithBoxedArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Integer;)Ljava/lang/invoke/CallSite;
0037601a00 f800                              |0000: const-string v0, "bsmWithBoxedArray" // string@00f8
0037641241                                   |0002: const/4 v1, #int 4 // #4
0037662311 4800                              |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048
00376a: 1202                                   |0005: const/4 v2, #int 0 // #0
00376c: 4d03 0102                              |0006: aput-object v3, v1, v2
0037701212                                   |0008: const/4 v2, #int 1 // #1
0037724d04 0102                              |0009: aput-object v4, v1, v2
0037761222                                   |000b: const/4 v2, #int 2 // #2
0037784d05 0102                              |000c: aput-object v5, v1, v2
00377c: 1232                                   |000e: const/4 v2, #int 3 // #3
00377e: 4d06 0102                              |000f: aput-object v6, v1, v2
0037827120 a700 1000                         |0011: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7
0037886e10 dc00 0300                         |0014: invoke-virtual {v3}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
00378e: 0c00                                   |0017: move-result-object v0
0037906e40 d800 0354                         |0018: invoke-virtual {v3, v0, v4, v5}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8
0037960c00                                   |001b: move-result-object v0
0037982201 3400                              |001c: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
00379c: 7020 d200 0100                         |001e: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
0037a2: 1101                                   |0021: return-object v1
      catches       : (none)
      positions     :
        0x0000 line=477
        0x0014 line=478
        0x001c line=479
      locals        :
        0x001c - 0x0022 reg=0 mh Ljava/lang/invoke/MethodHandle;
        0x0000 - 0x0022 reg=3 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x0022 reg=4 methodName Ljava/lang/String;
        0x0000 - 0x0022 reg=5 methodType Ljava/lang/invoke/MethodType;
        0x0000 - 0x0022 reg=6 extraArgs [Ljava/lang/Integer;

    #2              : (in LTestVariableArityLinkerMethod;)
      name          : 'bsmWithClassAndFloatArray'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;[F)Ljava/lang/invoke/CallSite;'
      access        : 0x008a (PRIVATE STATIC VARARGS)
      method_idx    : 144
      code          -
      registers     : 8
      ins           : 5
      outs          : 4
      insns size    : 37 16-bit code units
0037a4:                                        |[0037a4] TestVariableArityLinkerMethod.bsmWithClassAndFloatArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;[F)Ljava/lang/invoke/CallSite;
0037b4: 1a00 f900                              |0000: const-string v0, "bsmWithClassAndFloatArray" // string@00f9
0037b8: 1251                                   |0002: const/4 v1, #int 5 // #5
0037ba: 2311 4800                              |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048
0037be: 1202                                   |0005: const/4 v2, #int 0 // #0
0037c0: 4d03 0102                              |0006: aput-object v3, v1, v2
0037c4: 1212                                   |0008: const/4 v2, #int 1 // #1
0037c6: 4d04 0102                              |0009: aput-object v4, v1, v2
0037ca: 1222                                   |000b: const/4 v2, #int 2 // #2
0037cc: 4d05 0102                              |000c: aput-object v5, v1, v2
0037d0: 1232                                   |000e: const/4 v2, #int 3 // #3
0037d2: 4d06 0102                              |000f: aput-object v6, v1, v2
0037d6: 1242                                   |0011: const/4 v2, #int 4 // #4
0037d8: 4d07 0102                              |0012: aput-object v7, v1, v2
0037dc: 7120 a700 1000                         |0014: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7
0037e2: 6e10 dc00 0300                         |0017: invoke-virtual {v3}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
0037e8: 0c00                                   |001a: move-result-object v0
0037ea: 6e40 d800 0354                         |001b: invoke-virtual {v3, v0, v4, v5}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8
0037f0: 0c00                                   |001e: move-result-object v0
0037f2: 2201 3400                              |001f: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
0037f6: 7020 d200 0100                         |0021: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
0037fc: 1101                                   |0024: return-object v1
      catches       : (none)
      positions     :
        0x0000 line=294
        0x0017 line=296
        0x001f line=297
      locals        :
        0x001f - 0x0025 reg=0 mh Ljava/lang/invoke/MethodHandle;
        0x0000 - 0x0025 reg=3 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x0025 reg=4 methodName Ljava/lang/String;
        0x0000 - 0x0025 reg=5 methodType Ljava/lang/invoke/MethodType;
        0x0000 - 0x0025 reg=6 extraArg Ljava/lang/Class; Ljava/lang/Class<*>;
        0x0000 - 0x0025 reg=7 arityArgs [F

    #3              : (in LTestVariableArityLinkerMethod;)
      name          : 'bsmWithClassArray'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Class;)Ljava/lang/invoke/CallSite;'
      access        : 0x008a (PRIVATE STATIC VARARGS)
      method_idx    : 145
      code          -
      registers     : 7
      ins           : 4
      outs          : 4
      insns size    : 34 16-bit code units
003800:                                        |[003800] TestVariableArityLinkerMethod.bsmWithClassArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Class;)Ljava/lang/invoke/CallSite;
0038101a00 fa00                              |0000: const-string v0, "bsmWithClassArray" // string@00fa
0038141241                                   |0002: const/4 v1, #int 4 // #4
0038162311 4800                              |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048
00381a: 1202                                   |0005: const/4 v2, #int 0 // #0
00381c: 4d03 0102                              |0006: aput-object v3, v1, v2
0038201212                                   |0008: const/4 v2, #int 1 // #1
0038224d04 0102                              |0009: aput-object v4, v1, v2
0038261222                                   |000b: const/4 v2, #int 2 // #2
0038284d05 0102                              |000c: aput-object v5, v1, v2
00382c: 1232                                   |000e: const/4 v2, #int 3 // #3
00382e: 4d06 0102                              |000f: aput-object v6, v1, v2
0038327120 a700 1000                         |0011: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7
0038386e10 dc00 0300                         |0014: invoke-virtual {v3}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
00383e: 0c00                                   |0017: move-result-object v0
0038406e40 d800 0354                         |0018: invoke-virtual {v3, v0, v4, v5}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8
0038460c00                                   |001b: move-result-object v0
0038482201 3400                              |001c: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
00384c: 7020 d200 0100                         |001e: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
0038521101                                   |0021: return-object v1
      catches       : (none)
      positions     :
        0x0000 line=367
        0x0014 line=368
        0x001c line=369
      locals        :
        0x001c - 0x0022 reg=0 mh Ljava/lang/invoke/MethodHandle;
        0x0000 - 0x0022 reg=3 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x0022 reg=4 methodName Ljava/lang/String;
        0x0000 - 0x0022 reg=5 methodType Ljava/lang/invoke/MethodType;
        0x0000 - 0x0022 reg=6 arityArgs [Ljava/lang/Class;

    #4              : (in LTestVariableArityLinkerMethod;)
      name          : 'bsmWithDoubleArray'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[D)Ljava/lang/invoke/CallSite;'
      access        : 0x008a (PRIVATE STATIC VARARGS)
      method_idx    : 146
      code          -
      registers     : 7
      ins           : 4
      outs          : 4
      insns size    : 34 16-bit code units
003854:                                        |[003854] TestVariableArityLinkerMethod.bsmWithDoubleArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[D)Ljava/lang/invoke/CallSite;
0038641a00 fb00                              |0000: const-string v0, "bsmWithDoubleArray" // string@00fb
0038681241                                   |0002: const/4 v1, #int 4 // #4
00386a: 2311 4800                              |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048
00386e: 1202                                   |0005: const/4 v2, #int 0 // #0
0038704d03 0102                              |0006: aput-object v3, v1, v2
0038741212                                   |0008: const/4 v2, #int 1 // #1
0038764d04 0102                              |0009: aput-object v4, v1, v2
00387a: 1222                                   |000b: const/4 v2, #int 2 // #2
00387c: 4d05 0102                              |000c: aput-object v5, v1, v2
0038801232                                   |000e: const/4 v2, #int 3 // #3
0038824d06 0102                              |000f: aput-object v6, v1, v2
0038867120 a700 1000                         |0011: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7
00388c: 6e10 dc00 0300                         |0014: invoke-virtual {v3}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
0038920c00                                   |0017: move-result-object v0
0038946e40 d800 0354                         |0018: invoke-virtual {v3, v0, v4, v5}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8
00389a: 0c00                                   |001b: move-result-object v0
00389c: 2201 3400                              |001c: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
0038a0: 7020 d200 0100                         |001e: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
0038a6: 1101                                   |0021: return-object v1
      catches       : (none)
      positions     :
        0x0000 line=332
        0x0014 line=333
        0x001c line=334
      locals        :
        0x001c - 0x0022 reg=0 mh Ljava/lang/invoke/MethodHandle;
        0x0000 - 0x0022 reg=3 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x0022 reg=4 methodName Ljava/lang/String;
        0x0000 - 0x0022 reg=5 methodType Ljava/lang/invoke/MethodType;
        0x0000 - 0x0022 reg=6 arityArgs [D

    #5              : (in LTestVariableArityLinkerMethod;)
      name          : 'bsmWithFloatAndLongArray'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;F[J)Ljava/lang/invoke/CallSite;'
      access        : 0x008a (PRIVATE STATIC VARARGS)
      method_idx    : 147
      code          -
      registers     : 9
      ins           : 5
      outs          : 4
      insns size    : 41 16-bit code units
0038a8:                                        |[0038a8] TestVariableArityLinkerMethod.bsmWithFloatAndLongArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;F[J)Ljava/lang/invoke/CallSite;
0038b8: 1a00 fc00                              |0000: const-string v0, "bsmWithFloatAndLongArray" // string@00fc
0038bc: 1251                                   |0002: const/4 v1, #int 5 // #5
0038be: 2311 4800                              |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048
0038c2: 1202                                   |0005: const/4 v2, #int 0 // #0
0038c4: 4d04 0102                              |0006: aput-object v4, v1, v2
0038c8: 1212                                   |0008: const/4 v2, #int 1 // #1
0038ca: 4d05 0102                              |0009: aput-object v5, v1, v2
0038ce: 1222                                   |000b: const/4 v2, #int 2 // #2
0038d0: 4d06 0102                              |000c: aput-object v6, v1, v2
0038d4: 7110 ba00 0700                         |000e: invoke-static {v7}, Ljava/lang/Float;.valueOf:(F)Ljava/lang/Float; // method@00ba
0038da: 0c02                                   |0011: move-result-object v2
0038dc: 1233                                   |0012: const/4 v3, #int 3 // #3
0038de: 4d02 0103                              |0013: aput-object v2, v1, v3
0038e2: 1242                                   |0015: const/4 v2, #int 4 // #4
0038e4: 4d08 0102                              |0016: aput-object v8, v1, v2
0038e8: 7120 a700 1000                         |0018: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7
0038ee: 6e10 dc00 0400                         |001b: invoke-virtual {v4}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
0038f4: 0c00                                   |001e: move-result-object v0
0038f6: 6e40 d800 0465                         |001f: invoke-virtual {v4, v0, v5, v6}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8
0038fc: 0c00                                   |0022: move-result-object v0
0038fe: 2201 3400                              |0023: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
0039027020 d200 0100                         |0025: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
0039081101                                   |0028: return-object v1
      catches       : (none)
      positions     :
        0x0000 line=257
        0x000e line=258
        0x0018 line=257
        0x001b line=259
        0x0023 line=260
      locals        :
        0x0023 - 0x0029 reg=0 mh Ljava/lang/invoke/MethodHandle;
        0x0000 - 0x0029 reg=4 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x0029 reg=5 methodName Ljava/lang/String;
        0x0000 - 0x0029 reg=6 methodType Ljava/lang/invoke/MethodType;
        0x0000 - 0x0029 reg=7 extraArg F
        0x0000 - 0x0029 reg=8 arityArgs [J

    #6              : (in LTestVariableArityLinkerMethod;)
      name          : 'bsmWithIntAndStringArray'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;I[Ljava/lang/String;)Ljava/lang/invoke/CallSite;'
      access        : 0x008a (PRIVATE STATIC VARARGS)
      method_idx    : 148
      code          -
      registers     : 9
      ins           : 5
      outs          : 4
      insns size    : 41 16-bit code units
00390c:                                        |[00390c] TestVariableArityLinkerMethod.bsmWithIntAndStringArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;I[Ljava/lang/String;)Ljava/lang/invoke/CallSite;
00391c: 1a00 fd00                              |0000: const-string v0, "bsmWithIntAndStringArray" // string@00fd
0039201251                                   |0002: const/4 v1, #int 5 // #5
0039222311 4800                              |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048
0039261202                                   |0005: const/4 v2, #int 0 // #0
0039284d04 0102                              |0006: aput-object v4, v1, v2
00392c: 1212                                   |0008: const/4 v2, #int 1 // #1
00392e: 4d05 0102                              |0009: aput-object v5, v1, v2
0039321222                                   |000b: const/4 v2, #int 2 // #2
0039344d06 0102                              |000c: aput-object v6, v1, v2
0039387110 bd00 0700                         |000e: invoke-static {v7}, Ljava/lang/Integer;.valueOf:(I)Ljava/lang/Integer; // method@00bd
00393e: 0c02                                   |0011: move-result-object v2
0039401233                                   |0012: const/4 v3, #int 3 // #3
0039424d02 0103                              |0013: aput-object v2, v1, v3
0039461242                                   |0015: const/4 v2, #int 4 // #4
0039484d08 0102                              |0016: aput-object v8, v1, v2
00394c: 7120 a700 1000                         |0018: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7
0039526e10 dc00 0400                         |001b: invoke-virtual {v4}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
0039580c00                                   |001e: move-result-object v0
00395a: 6e40 d800 0465                         |001f: invoke-virtual {v4, v0, v5, v6}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8
0039600c00                                   |0022: move-result-object v0
0039622201 3400                              |0023: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
0039667020 d200 0100                         |0025: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
00396c: 1101                                   |0028: return-object v1
      catches       : (none)
      positions     :
        0x0000 line=133
        0x000e line=138
        0x0018 line=133
        0x001b line=140
        0x0023 line=141
      locals        :
        0x0023 - 0x0029 reg=0 mh Ljava/lang/invoke/MethodHandle;
        0x0000 - 0x0029 reg=4 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x0029 reg=5 methodName Ljava/lang/String;
        0x0000 - 0x0029 reg=6 methodType Ljava/lang/invoke/MethodType;
        0x0000 - 0x0029 reg=7 extraInt I
        0x0000 - 0x0029 reg=8 extraArityArgs [Ljava/lang/String;

    #7              : (in LTestVariableArityLinkerMethod;)
      name          : 'bsmWithLongAndIntArray'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;J[I)Ljava/lang/invoke/CallSite;'
      access        : 0x008a (PRIVATE STATIC VARARGS)
      method_idx    : 149
      code          -
      registers     : 10
      ins           : 6
      outs          : 4
      insns size    : 41 16-bit code units
003970:                                        |[003970] TestVariableArityLinkerMethod.bsmWithLongAndIntArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;J[I)Ljava/lang/invoke/CallSite;
0039801a00 fe00                              |0000: const-string v0, "bsmWithLongAndIntArray" // string@00fe
0039841251                                   |0002: const/4 v1, #int 5 // #5
0039862311 4800                              |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048
00398a: 1202                                   |0005: const/4 v2, #int 0 // #0
00398c: 4d04 0102                              |0006: aput-object v4, v1, v2
0039901212                                   |0008: const/4 v2, #int 1 // #1
0039924d05 0102                              |0009: aput-object v5, v1, v2
0039961222                                   |000b: const/4 v2, #int 2 // #2
0039984d06 0102                              |000c: aput-object v6, v1, v2
00399c: 7120 be00 8700                         |000e: invoke-static {v7, v8}, Ljava/lang/Long;.valueOf:(J)Ljava/lang/Long; // method@00be
0039a2: 0c02                                   |0011: move-result-object v2
0039a4: 1233                                   |0012: const/4 v3, #int 3 // #3
0039a6: 4d02 0103                              |0013: aput-object v2, v1, v3
0039aa: 1242                                   |0015: const/4 v2, #int 4 // #4
0039ac: 4d09 0102                              |0016: aput-object v9, v1, v2
0039b0: 7120 a700 1000                         |0018: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7
0039b6: 6e10 dc00 0400                         |001b: invoke-virtual {v4}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
0039bc: 0c00                                   |001e: move-result-object v0
0039be: 6e40 d800 0465                         |001f: invoke-virtual {v4, v0, v5, v6}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8
0039c4: 0c00                                   |0022: move-result-object v0
0039c6: 2201 3400                              |0023: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
0039ca: 7020 d200 0100                         |0025: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
0039d0: 1101                                   |0028: return-object v1
      catches       : (none)
      positions     :
        0x0000 line=219
        0x001b line=220
        0x0023 line=221
      locals        :
        0x0023 - 0x0029 reg=0 mh Ljava/lang/invoke/MethodHandle;
        0x0000 - 0x0029 reg=4 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x0029 reg=5 methodName Ljava/lang/String;
        0x0000 - 0x0029 reg=6 methodType Ljava/lang/invoke/MethodType;
        0x0000 - 0x0029 reg=7 extraArg J
        0x0000 - 0x0029 reg=9 arityArgs [I

    #8              : (in LTestVariableArityLinkerMethod;)
      name          : 'bsmWithStringArray'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/String;)Ljava/lang/invoke/CallSite;'
      access        : 0x008a (PRIVATE STATIC VARARGS)
      method_idx    : 150
      code          -
      registers     : 7
      ins           : 4
      outs          : 4
      insns size    : 34 16-bit code units
0039d4:                                        |[0039d4] TestVariableArityLinkerMethod.bsmWithStringArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/String;)Ljava/lang/invoke/CallSite;
0039e4: 1a00 ff00                              |0000: const-string v0, "bsmWithStringArray" // string@00ff
0039e8: 1241                                   |0002: const/4 v1, #int 4 // #4
0039ea: 2311 4800                              |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048
0039ee: 1202                                   |0005: const/4 v2, #int 0 // #0
0039f0: 4d03 0102                              |0006: aput-object v3, v1, v2
0039f4: 1212                                   |0008: const/4 v2, #int 1 // #1
0039f6: 4d04 0102                              |0009: aput-object v4, v1, v2
0039fa: 1222                                   |000b: const/4 v2, #int 2 // #2
0039fc: 4d05 0102                              |000c: aput-object v5, v1, v2
003a00: 1232                                   |000e: const/4 v2, #int 3 // #3
003a02: 4d06 0102                              |000f: aput-object v6, v1, v2
003a06: 7120 a700 1000                         |0011: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7
003a0c: 6e10 dc00 0300                         |0014: invoke-virtual {v3}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
003a12: 0c00                                   |0017: move-result-object v0
003a14: 6e40 d800 0354                         |0018: invoke-virtual {v3, v0, v4, v5}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8
003a1a: 0c00                                   |001b: move-result-object v0
003a1c: 2201 3400                              |001c: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
003a20: 7020 d200 0100                         |001e: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
003a26: 1101                                   |0021: return-object v1
      catches       : (none)
      positions     :
        0x0000 line=61
        0x0014 line=62
        0x001c line=63
      locals        :
        0x001c - 0x0022 reg=0 mh Ljava/lang/invoke/MethodHandle;
        0x0000 - 0x0022 reg=3 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x0022 reg=4 methodName Ljava/lang/String;
        0x0000 - 0x0022 reg=5 methodType Ljava/lang/invoke/MethodType;
        0x0000 - 0x0022 reg=6 arityArgs [Ljava/lang/String;

    #9              : (in LTestVariableArityLinkerMethod;)
      name          : 'bsmWithWiderArray'
      type          : '(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[J)Ljava/lang/invoke/CallSite;'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 151
      code          -
      registers     : 7
      ins           : 4
      outs          : 4
      insns size    : 34 16-bit code units
003a28:                                        |[003a28] TestVariableArityLinkerMethod.bsmWithWiderArray:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[J)Ljava/lang/invoke/CallSite;
003a38: 1a00 0001                              |0000: const-string v0, "bsmWithWiderArray" // string@0100
003a3c: 1241                                   |0002: const/4 v1, #int 4 // #4
003a3e: 2311 4800                              |0003: new-array v1, v1, [Ljava/lang/Object; // type@0048
003a42: 1202                                   |0005: const/4 v2, #int 0 // #0
003a44: 4d03 0102                              |0006: aput-object v3, v1, v2
003a48: 1212                                   |0008: const/4 v2, #int 1 // #1
003a4a: 4d04 0102                              |0009: aput-object v4, v1, v2
003a4e: 1222                                   |000b: const/4 v2, #int 2 // #2
003a50: 4d05 0102                              |000c: aput-object v5, v1, v2
003a54: 1232                                   |000e: const/4 v2, #int 3 // #3
003a56: 4d06 0102                              |000f: aput-object v6, v1, v2
003a5a: 7120 a700 1000                         |0011: invoke-static {v0, v1}, LTestVariableArityLinkerMethod;.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V // method@00a7
003a60: 6e10 dc00 0300                         |0014: invoke-virtual {v3}, Ljava/lang/invoke/MethodHandles$Lookup;.lookupClass:()Ljava/lang/Class; // method@00dc
003a66: 0c00                                   |0017: move-result-object v0
003a68: 6e40 d800 0354                         |0018: invoke-virtual {v3, v0, v4, v5}, Ljava/lang/invoke/MethodHandles$Lookup;.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle; // method@00d8
003a6e: 0c00                                   |001b: move-result-object v0
003a70: 2201 3400                              |001c: new-instance v1, Ljava/lang/invoke/ConstantCallSite; // type@0034
003a74: 7020 d200 0100                         |001e: invoke-direct {v1, v0}, Ljava/lang/invoke/ConstantCallSite;.<init>:(Ljava/lang/invoke/MethodHandle;)V // method@00d2
003a7a: 1101                                   |0021: return-object v1
      catches       : (none)
      positions     :
        0x0000 line=447
        0x0014 line=448
        0x001c line=449
      locals        :
        0x001c - 0x0022 reg=0 mh Ljava/lang/invoke/MethodHandle;
        0x0000 - 0x0022 reg=3 lookup Ljava/lang/invoke/MethodHandles$Lookup;
        0x0000 - 0x0022 reg=4 methodName Ljava/lang/String;
        0x0000 - 0x0022 reg=5 methodType Ljava/lang/invoke/MethodType;
        0x0000 - 0x0022 reg=6 extraArgs [J

    #10              : (in LTestVariableArityLinkerMethod;)
      name          : 'methodA'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 152
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 8 16-bit code units
003a94:                                        |[003a94] TestVariableArityLinkerMethod.methodA:()V
003aa4: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003aa8: 1a01 7501                              |0002: const-string v1, "methodA" // string@0175
003aac: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
003ab2: 0e00                                   |0007: return-void
      catches       : (none)
      positions     :
        0x0000 line=86
        0x0007 line=87
      locals        :

    #11              : (in LTestVariableArityLinkerMethod;)
      name          : 'methodB'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 153
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 8 16-bit code units
003ab4:                                        |[003ab4] TestVariableArityLinkerMethod.methodB:()V
003ac4: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003ac8: 1a01 7601                              |0002: const-string v1, "methodB" // string@0176
003acc: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
003ad2: 0e00                                   |0007: return-void
      catches       : (none)
      positions     :
        0x0000 line=105
        0x0007 line=106
      locals        :

    #12              : (in LTestVariableArityLinkerMethod;)
      name          : 'methodC'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 154
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 8 16-bit code units
003ad4:                                        |[003ad4] TestVariableArityLinkerMethod.methodC:()V
003ae4: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003ae8: 1a01 7701                              |0002: const-string v1, "methodC" // string@0177
003aec: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
003af2: 0e00                                   |0007: return-void
      catches       : (none)
      positions     :
        0x0000 line=123
        0x0007 line=124
      locals        :

    #13              : (in LTestVariableArityLinkerMethod;)
      name          : 'methodD'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 155
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 8 16-bit code units
003af4:                                        |[003af4] TestVariableArityLinkerMethod.methodD:()V
003b04: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003b08: 1a01 7801                              |0002: const-string v1, "methodD" // string@0178
003b0c: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
003b12: 0e00                                   |0007: return-void
      catches       : (none)
      positions     :
        0x0000 line=166
        0x0007 line=167
      locals        :

    #14              : (in LTestVariableArityLinkerMethod;)
      name          : 'methodE'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 156
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 8 16-bit code units
003b14:                                        |[003b14] TestVariableArityLinkerMethod.methodE:()V
003b24: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003b28: 1a01 7901                              |0002: const-string v1, "methodE" // string@0179
003b2c: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
003b32: 0e00                                   |0007: return-void
      catches       : (none)
      positions     :
        0x0000 line=189
        0x0007 line=190
      locals        :

    #15              : (in LTestVariableArityLinkerMethod;)
      name          : 'methodF'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 157
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 8 16-bit code units
003b34:                                        |[003b34] TestVariableArityLinkerMethod.methodF:()V
003b44: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003b48: 1a01 7a01                              |0002: const-string v1, "methodF" // string@017a
003b4c: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
003b52: 0e00                                   |0007: return-void
      catches       : (none)
      positions     :
        0x0000 line=209
        0x0007 line=210
      locals        :

    #16              : (in LTestVariableArityLinkerMethod;)
      name          : 'methodG'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 158
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 8 16-bit code units
003b54:                                        |[003b54] TestVariableArityLinkerMethod.methodG:()V
003b64: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003b68: 1a01 7b01                              |0002: const-string v1, "methodG" // string@017b
003b6c: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
003b72: 0e00                                   |0007: return-void
      catches       : (none)
      positions     :
        0x0000 line=247
        0x0007 line=248
      locals        :

    #17              : (in LTestVariableArityLinkerMethod;)
      name          : 'methodH'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 159
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 8 16-bit code units
003b74:                                        |[003b74] TestVariableArityLinkerMethod.methodH:()V
003b84: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003b88: 1a01 7c01                              |0002: const-string v1, "methodH" // string@017c
003b8c: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
003b92: 0e00                                   |0007: return-void
      catches       : (none)
      positions     :
        0x0000 line=284
        0x0007 line=285
      locals        :

    #18              : (in LTestVariableArityLinkerMethod;)
      name          : 'methodI'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 160
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 8 16-bit code units
003b94:                                        |[003b94] TestVariableArityLinkerMethod.methodI:()V
003ba4: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003ba8: 1a01 7d01                              |0002: const-string v1, "methodI" // string@017d
003bac: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
003bb2: 0e00                                   |0007: return-void
      catches       : (none)
      positions     :
        0x0000 line=323
        0x0007 line=324
      locals        :

    #19              : (in LTestVariableArityLinkerMethod;)
      name          : 'methodJ'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 161
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 8 16-bit code units
003bb4:                                        |[003bb4] TestVariableArityLinkerMethod.methodJ:()V
003bc4: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003bc8: 1a01 7e01                              |0002: const-string v1, "methodJ" // string@017e
003bcc: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
003bd2: 0e00                                   |0007: return-void
      catches       : (none)
      positions     :
        0x0000 line=358
        0x0007 line=359
      locals        :

    #20              : (in LTestVariableArityLinkerMethod;)
      name          : 'methodK'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 162
      code          -
      registers     : 2
      ins           : 0
      outs          : 2
      insns size    : 8 16-bit code units
003bd4:                                        |[003bd4] TestVariableArityLinkerMethod.methodK:()V
003be4: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003be8: 1a01 7f01                              |0002: const-string v1, "methodK" // string@017f
003bec: 6e20 b300 1000                         |0004: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
003bf2: 0e00                                   |0007: return-void
      catches       : (none)
      positions     :
        0x0000 line=392
        0x0007 line=393
      locals        :

    #21              : (in LTestVariableArityLinkerMethod;)
      name          : 'methodO'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 163
      code          -
      registers     : 0
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
003bf4:                                        |[003bf4] TestVariableArityLinkerMethod.methodO:()V
003c04: 7100 8e00 0000                         |0000: invoke-static {}, LTestVariableArityLinkerMethod;.assertNotReached:()V // method@008e
003c0a: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=413
        0x0003 line=414
      locals        :

    #22              : (in LTestVariableArityLinkerMethod;)
      name          : 'methodP'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 164
      code          -
      registers     : 0
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
003c0c:                                        |[003c0c] TestVariableArityLinkerMethod.methodP:()V
003c1c: 7100 8e00 0000                         |0000: invoke-static {}, LTestVariableArityLinkerMethod;.assertNotReached:()V // method@008e
003c22: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=441
        0x0003 line=442
      locals        :

    #23              : (in LTestVariableArityLinkerMethod;)
      name          : 'methodQ'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 165
      code          -
      registers     : 0
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
003c24:                                        |[003c24] TestVariableArityLinkerMethod.methodQ:()V
003c34: 7100 8e00 0000                         |0000: invoke-static {}, LTestVariableArityLinkerMethod;.assertNotReached:()V // method@008e
003c3a: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=468
        0x0003 line=469
      locals        :

    #24              : (in LTestVariableArityLinkerMethod;)
      name          : 'methodR'
      type          : '()V'
      access        : 0x000a (PRIVATE STATIC)
      method_idx    : 166
      code          -
      registers     : 0
      ins           : 0
      outs          : 0
      insns size    : 4 16-bit code units
003c3c:                                        |[003c3c] TestVariableArityLinkerMethod.methodR:()V
003c4c: 7100 8e00 0000                         |0000: invoke-static {}, LTestVariableArityLinkerMethod;.assertNotReached:()V // method@008e
003c52: 0e00                                   |0003: return-void
      catches       : (none)
      positions     :
        0x0000 line=501
        0x0003 line=502
      locals        :

    #25              : (in LTestVariableArityLinkerMethod;)
      name          : 'printBsmArgs'
      type          : '(Ljava/lang/String;[Ljava/lang/Object;)V'
      access        : 0x008a (PRIVATE STATIC VARARGS)
      method_idx    : 167
      code          -
      registers     : 6
      ins           : 2
      outs          : 2
      insns size    : 159 16-bit code units
003c54:                                        |[003c54] TestVariableArityLinkerMethod.printBsmArgs:(Ljava/lang/String;[Ljava/lang/Object;)V
003c64: 6200 1300                              |0000: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003c68: 6e20 b000 4000                         |0002: invoke-virtual {v0, v4}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
003c6e: 6200 1300                              |0005: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003c72: 1a01 0600                              |0007: const-string v1, "(" // string@0006
003c76: 6e20 b000 1000                         |0009: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
003c7c: 1200                                   |000c: const/4 v0, #int 0 // #0
003c7e: 2151                                   |000d: array-length v1, v5
003c80: 3510 8900                              |000e: if-ge v0, v1, 0097 // +0089
003c84: 3800 0900                              |0010: if-eqz v0, 0019 // +0009
003c88: 6201 1300                              |0012: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003c8c: 1a02 0c00                              |0014: const-string v2, ", " // string@000c
003c90: 6e20 b000 2100                         |0016: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
003c96: 4601 0500                              |0019: aget-object v1, v5, v0
003c9a: 3801 7100                              |001b: if-eqz v1, 008c // +0071
003c9e: 4601 0500                              |001d: aget-object v1, v5, v0
003ca2: 6e10 c000 0100                         |001f: invoke-virtual {v1}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
003ca8: 0c01                                   |0022: move-result-object v1
003caa: 6e10 b800 0100                         |0023: invoke-virtual {v1}, Ljava/lang/Class;.isArray:()Z // method@00b8
003cb0: 0a01                                   |0026: move-result v1
003cb2: 3801 6500                              |0027: if-eqz v1, 008c // +0065
003cb6: 4601 0500                              |0029: aget-object v1, v5, v0
003cba: 6e10 c000 0100                         |002b: invoke-virtual {v1}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
003cc0: 0c02                                   |002e: move-result-object v2
003cc2: 1c03 4400                              |002f: const-class v3, [I // type@0044
003cc6: 3332 0f00                              |0031: if-ne v2, v3, 0040 // +000f
003cca: 6202 1300                              |0033: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003cce: 0713                                   |0035: move-object v3, v1
003cd0: 1f03 4400                              |0036: check-cast v3, [I // type@0044
003cd4: 7110 e900 0300                         |0038: invoke-static {v3}, Ljava/util/Arrays;.toString:([I)Ljava/lang/String; // method@00e9
003cda: 0c03                                   |003b: move-result-object v3
003cdc: 6e20 b000 3200                         |003c: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
003ce2: 284c                                   |003f: goto 008b // +004c
003ce4: 6e10 c000 0100                         |0040: invoke-virtual {v1}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
003cea: 0c02                                   |0043: move-result-object v2
003cec: 1c03 4500                              |0044: const-class v3, [J // type@0045
003cf0: 3332 0f00                              |0046: if-ne v2, v3, 0055 // +000f
003cf4: 6202 1300                              |0048: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003cf8: 0713                                   |004a: move-object v3, v1
003cfa: 1f03 4500                              |004b: check-cast v3, [J // type@0045
003cfe: 7110 ea00 0300                         |004d: invoke-static {v3}, Ljava/util/Arrays;.toString:([J)Ljava/lang/String; // method@00ea
003d04: 0c03                                   |0050: move-result-object v3
003d06: 6e20 b000 3200                         |0051: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
003d0c: 2837                                   |0054: goto 008b // +0037
003d0e: 6e10 c000 0100                         |0055: invoke-virtual {v1}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
003d14: 0c02                                   |0058: move-result-object v2
003d16: 1c03 4300                              |0059: const-class v3, [F // type@0043
003d1a: 3332 0f00                              |005b: if-ne v2, v3, 006a // +000f
003d1e: 6202 1300                              |005d: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003d22: 0713                                   |005f: move-object v3, v1
003d24: 1f03 4300                              |0060: check-cast v3, [F // type@0043
003d28: 7110 e800 0300                         |0062: invoke-static {v3}, Ljava/util/Arrays;.toString:([F)Ljava/lang/String; // method@00e8
003d2e: 0c03                                   |0065: move-result-object v3
003d30: 6e20 b000 3200                         |0066: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
003d36: 2822                                   |0069: goto 008b // +0022
003d38: 6e10 c000 0100                         |006a: invoke-virtual {v1}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
003d3e: 0c02                                   |006d: move-result-object v2
003d40: 1c03 4200                              |006e: const-class v3, [D // type@0042
003d44: 3332 0f00                              |0070: if-ne v2, v3, 007f // +000f
003d48: 6202 1300                              |0072: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003d4c: 0713                                   |0074: move-object v3, v1
003d4e: 1f03 4200                              |0075: check-cast v3, [D // type@0042
003d52: 7110 e700 0300                         |0077: invoke-static {v3}, Ljava/util/Arrays;.toString:([D)Ljava/lang/String; // method@00e7
003d58: 0c03                                   |007a: move-result-object v3
003d5a: 6e20 b000 3200                         |007b: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
003d60: 280d                                   |007e: goto 008b // +000d
003d62: 6202 1300                              |007f: sget-object v2, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003d66: 0713                                   |0081: move-object v3, v1
003d68: 1f03 4800                              |0082: check-cast v3, [Ljava/lang/Object; // type@0048
003d6c: 7110 eb00 0300                         |0084: invoke-static {v3}, Ljava/util/Arrays;.toString:([Ljava/lang/Object;)Ljava/lang/String; // method@00eb
003d72: 0c03                                   |0087: move-result-object v3
003d74: 6e20 b000 3200                         |0088: invoke-virtual {v2, v3}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
003d7a: 2808                                   |008b: goto 0093 // +0008
003d7c: 6201 1300                              |008c: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003d80: 4602 0500                              |008e: aget-object v2, v5, v0
003d84: 6e20 af00 2100                         |0090: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
003d8a: d800 0001                              |0093: add-int/lit8 v0, v0, #int 1 // #01
003d8e: 2900 78ff                              |0095: goto/16 000d // -0088
003d92: 6200 1300                              |0097: sget-object v0, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003d96: 1a01 0800                              |0099: const-string v1, ");" // string@0008
003d9a: 6e20 b300 1000                         |009b: invoke-virtual {v0, v1}, Ljava/io/PrintStream;.println:(Ljava/lang/String;)V // method@00b3
003da0: 0e00                                   |009e: return-void
      catches       : (none)
      positions     :
        0x0000 line=29
        0x0005 line=30
        0x000c line=31
        0x0010 line=32
        0x0012 line=33
        0x0019 line=35
        0x0029 line=36
        0x002b line=37
        0x0033 line=38
        0x0040 line=39
        0x0048 line=40
        0x0055 line=41
        0x005d line=42
        0x006a line=43
        0x0072 line=44
        0x007f line=46
        0x008b line=48
        0x008c line=49
        0x0093 line=31
        0x0097 line=52
        0x009e line=53
      locals        :
        0x002b - 0x008b reg=1 array Ljava/lang/Object;
        0x000d - 0x0097 reg=0 i I
        0x0000 - 0x009f reg=4 method Ljava/lang/String;
        0x0000 - 0x009f reg=5 args [Ljava/lang/Object;

    #26              : (in LTestVariableArityLinkerMethod;)
      name          : 'test'
      type          : '()V'
      access        : 0x0008 (STATIC)
      method_idx    : 168
      code          -
      registers     : 3
      ins           : 0
      outs          : 2
      insns size    : 224 16-bit code units
003da4:                                        |[003da4] TestVariableArityLinkerMethod.test:()V
003db4: 1200                                   |0000: const/4 v0, #int 0 // #0
003db6: 0101                                   |0001: move v1, v0
003db8: 1222                                   |0002: const/4 v2, #int 2 // #2
003dba: 3521 0e00                              |0003: if-ge v1, v2, 0011 // +000e
003dbe: fc00 1f00 0000                         |0005: invoke-custom {}, call_site@001f
003dc4: fc00 2000 0000                         |0008: invoke-custom {}, call_site@0020
003dca: fc00 2100 0000                         |000b: invoke-custom {}, call_site@0021
003dd0: d801 0101                              |000e: add-int/lit8 v1, v1, #int 1 // #01
003dd4: 28f2                                   |0010: goto 0002 // -000e
003dd6: 0000                                   |0011: nop // spacer
003dd8: 3520 0e00                              |0012: if-ge v0, v2, 0020 // +000e
003ddc: fc00 2200 0000                         |0014: invoke-custom {}, call_site@0022
003de2: fc00 2300 0000                         |0017: invoke-custom {}, call_site@0023
003de8: fc00 2400 0000                         |001a: invoke-custom {}, call_site@0024
003dee: d800 0001                              |001d: add-int/lit8 v0, v0, #int 1 // #01
003df2: 28f3                                   |001f: goto 0012 // -000d
003df4: fc00 2500 0000                         |0020: invoke-custom {}, call_site@0025
003dfa: fc00 2600 0000                         |0023: invoke-custom {}, call_site@0026
003e00: fc00 2700 0000                         |0026: invoke-custom {}, call_site@0027
003e06: fc00 2800 0000                         |0029: invoke-custom {}, call_site@0028
003e0c: fc00 2900 0000                         |002c: invoke-custom {}, call_site@0029
003e12: fc00 2a00 0000                         |002f: invoke-custom {}, call_site@002a
003e18: 7100 8e00 0000                         |0032: invoke-static {}, LTestVariableArityLinkerMethod;.assertNotReached:()V // method@008e
003e1e: 2826                                   |0035: goto 005b // +0026
003e20: 0d00                                   |0036: move-exception v0
003e22: 6201 1300                              |0037: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003e26: 1a02 8201                              |0039: const-string v2, "methodO => " // string@0182
003e2a: 6e20 b000 2100                         |003b: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
003e30: 6201 1300                              |003e: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003e34: 6e10 c000 0000                         |0040: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
003e3a: 0c02                                   |0043: move-result-object v2
003e3c: 6e20 af00 2100                         |0044: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
003e42: 6201 1300                              |0047: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003e46: 1a02 0200                              |0049: const-string v2, " => " // string@0002
003e4a: 6e20 b000 2100                         |004b: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
003e50: 6201 1300                              |004e: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003e54: 6e10 b600 0000                         |0050: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
003e5a: 0c02                                   |0053: move-result-object v2
003e5c: 6e10 c000 0200                         |0054: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
003e62: 0c02                                   |0057: move-result-object v2
003e64: 6e20 b200 2100                         |0058: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
003e6a: fc00 2b00 0000                         |005b: invoke-custom {}, call_site@002b
003e70: 7100 8e00 0000                         |005e: invoke-static {}, LTestVariableArityLinkerMethod;.assertNotReached:()V // method@008e
003e76: 2826                                   |0061: goto 0087 // +0026
003e78: 0d00                                   |0062: move-exception v0
003e7a: 6201 1300                              |0063: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003e7e: 1a02 8401                              |0065: const-string v2, "methodP => " // string@0184
003e82: 6e20 b000 2100                         |0067: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
003e88: 6201 1300                              |006a: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003e8c: 6e10 c000 0000                         |006c: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
003e92: 0c02                                   |006f: move-result-object v2
003e94: 6e20 af00 2100                         |0070: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
003e9a: 6201 1300                              |0073: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003e9e: 1a02 0200                              |0075: const-string v2, " => " // string@0002
003ea2: 6e20 b000 2100                         |0077: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
003ea8: 6201 1300                              |007a: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003eac: 6e10 b600 0000                         |007c: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
003eb2: 0c02                                   |007f: move-result-object v2
003eb4: 6e10 c000 0200                         |0080: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
003eba: 0c02                                   |0083: move-result-object v2
003ebc: 6e20 b200 2100                         |0084: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
003ec2: fc00 2c00 0000                         |0087: invoke-custom {}, call_site@002c
003ec8: 7100 8e00 0000                         |008a: invoke-static {}, LTestVariableArityLinkerMethod;.assertNotReached:()V // method@008e
003ece: 2826                                   |008d: goto 00b3 // +0026
003ed0: 0d00                                   |008e: move-exception v0
003ed2: 6201 1300                              |008f: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003ed6: 1a02 8601                              |0091: const-string v2, "methodQ => " // string@0186
003eda: 6e20 b000 2100                         |0093: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
003ee0: 6201 1300                              |0096: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003ee4: 6e10 c000 0000                         |0098: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
003eea: 0c02                                   |009b: move-result-object v2
003eec: 6e20 af00 2100                         |009c: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
003ef2: 6201 1300                              |009f: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003ef6: 1a02 0200                              |00a1: const-string v2, " => " // string@0002
003efa: 6e20 b000 2100                         |00a3: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
003f00: 6201 1300                              |00a6: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003f04: 6e10 b600 0000                         |00a8: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
003f0a: 0c02                                   |00ab: move-result-object v2
003f0c: 6e10 c000 0200                         |00ac: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
003f12: 0c02                                   |00af: move-result-object v2
003f14: 6e20 b200 2100                         |00b0: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
003f1a: fc00 2d00 0000                         |00b3: invoke-custom {}, call_site@002d
003f20: 7100 8e00 0000                         |00b6: invoke-static {}, LTestVariableArityLinkerMethod;.assertNotReached:()V // method@008e
003f26: 2826                                   |00b9: goto 00df // +0026
003f28: 0d00                                   |00ba: move-exception v0
003f2a: 6201 1300                              |00bb: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003f2e: 1a02 8801                              |00bd: const-string v2, "methodR => " // string@0188
003f32: 6e20 b000 2100                         |00bf: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
003f38: 6201 1300                              |00c2: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003f3c: 6e10 c000 0000                         |00c4: invoke-virtual {v0}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
003f42: 0c02                                   |00c7: move-result-object v2
003f44: 6e20 af00 2100                         |00c8: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/Object;)V // method@00af
003f4a: 6201 1300                              |00cb: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003f4e: 1a02 0200                              |00cd: const-string v2, " => " // string@0002
003f52: 6e20 b000 2100                         |00cf: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.print:(Ljava/lang/String;)V // method@00b0
003f58: 6201 1300                              |00d2: sget-object v1, Ljava/lang/System;.out:Ljava/io/PrintStream; // field@0013
003f5c: 6e10 b600 0000                         |00d4: invoke-virtual {v0}, Ljava/lang/BootstrapMethodError;.getCause:()Ljava/lang/Throwable; // method@00b6
003f62: 0c02                                   |00d7: move-result-object v2
003f64: 6e10 c000 0200                         |00d8: invoke-virtual {v2}, Ljava/lang/Object;.getClass:()Ljava/lang/Class; // method@00c0
003f6a: 0c02                                   |00db: move-result-object v2
003f6c: 6e20 b200 2100                         |00dc: invoke-virtual {v1, v2}, Ljava/io/PrintStream;.println:(Ljava/lang/Object;)V // method@00b2
003f72: 0e00                                   |00df: return-void
      catches       : 4
        0x002f - 0x0035
          Ljava/lang/BootstrapMethodError; -> 0x0036
        0x005b - 0x0061
          Ljava/lang/BootstrapMethodError; -> 0x0062
        0x0087 - 0x008d
          Ljava/lang/BootstrapMethodError; -> 0x008e
        0x00b3 - 0x00b9
          Ljava/lang/BootstrapMethodError; -> 0x00ba
      positions     :
        0x0000 line=506
        0x0005 line=507
        0x0008 line=508
        0x000b line=509
        0x000e line=506
        0x0011 line=511
        0x0014 line=512
        0x0017 line=513
        0x001a line=514
        0x001d line=511
        0x0020 line=516
        0x0023 line=517
        0x0026 line=518
        0x0029 line=519
        0x002c line=520
        0x002f line=527
        0x0032 line=528
        0x0035 line=534
        0x0036 line=529
        0x0037 line=530
        0x003e line=531
        0x0047 line=532
        0x004e line=533
        0x005b line=538
        0x005e line=539
        0x0061 line=545
        0x0062 line=540
        0x0063 line=541
        0x006a line=542
        0x0073 line=543
        0x007a line=544
        0x0087 line=549
        0x008a line=550
        0x008d line=556
        0x008e line=551
        0x008f line=552
        0x0096 line=553
        0x009f line=554
        0x00a6 line=555
        0x00b3 line=560
        0x00b6 line=561
        0x00b9 line=567
        0x00ba line=562
        0x00bb line=563
        0x00c2 line=564
        0x00cb line=565
        0x00d2 line=566
        0x00df line=568
      locals        :
        0x0002 - 0x0011 reg=1 i I
        0x0012 - 0x0020 reg=0 i I
        0x0037 - 0x005b reg=0 expected Ljava/lang/BootstrapMethodError;
        0x0063 - 0x0087 reg=0 expected Ljava/lang/BootstrapMethodError;
        0x008f - 0x00b3 reg=0 expected Ljava/lang/BootstrapMethodError;
        0x00bb - 0x00df reg=0 expected Ljava/lang/BootstrapMethodError;

  Virtual methods   -
  source_file_idx   : 156 (TestVariableArityLinkerMethod.java)

Method handle #0:
  type        : invoke-static
  target      : LTestBadBootstrapArguments; bsm
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;ID)Ljava/lang/invoke/CallSite;
Method handle #1:
  type        : invoke-static
  target      : LTestBadBootstrapArguments; bsm
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;ILjava/lang/String;)Ljava/lang/invoke/CallSite;
Method handle #2:
  type        : invoke-static
  target      : LTestBadBootstrapArguments; bsmDJ
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;DJ)Ljava/lang/invoke/CallSite;
Method handle #3:
  type        : invoke-static
  target      : LTestBadBootstrapArguments; bsmDoubleLong
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Double;Ljava/lang/Long;)Ljava/lang/invoke/CallSite;
Method handle #4:
  type        : invoke-static
  target      : LTestBadBootstrapArguments; bsmReturningInteger
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/Integer;
Method handle #5:
  type        : invoke-static
  target      : LTestBadBootstrapArguments; bsmReturningObject
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/Object;
Method handle #6:
  type        : invoke-static
  target      : LTestBadBootstrapArguments; bsmReturningTestersConstantCallsite
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)LTestBadBootstrapArguments$TestersConstantCallSite;
Method handle #7:
  type        : invoke-static
  target      : LTestBadBootstrapArguments; bsmReturningVoid
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)V
Method handle #8:
  type        : invoke-static
  target      : LTestBadBootstrapArguments; bsmZBCS
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;ZBCS)Ljava/lang/invoke/CallSite;
Method handle #9:
  type        : invoke-static
  target      : LTestDynamicBootstrapArguments; bsm
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;J)Ljava/lang/invoke/CallSite;
Method handle #10:
  type        : invoke-static
  target      : LTestInvocationKinds; lookupConstructor
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method handle #11:
  type        : invoke-static
  target      : LTestInvocationKinds; lookupInstanceFieldGetter
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method handle #12:
  type        : invoke-static
  target      : LTestInvocationKinds; lookupInstanceFieldSetter
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method handle #13:
  type        : invoke-static
  target      : LTestInvocationKinds; lookupStaticFieldGetter
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method handle #14:
  type        : invoke-static
  target      : LTestInvocationKinds; lookupStaticFieldSetter
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method handle #15:
  type        : invoke-static
  target      : LTestInvocationKinds; lookupVirtual
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method handle #16:
  type        : invoke-static
  target      : LTestInvokeCustomWithConcurrentThreads; linkerMethod
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method handle #17:
  type        : invoke-static
  target      : LTestLinkerMethodMinimalArguments; linkerMethod
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method handle #18:
  type        : invoke-static
  target      : LTestLinkerMethodMultipleArgumentTypes; linkerMethod
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;IIIIIFDLjava/lang/String;Ljava/lang/Class;J)Ljava/lang/invoke/CallSite;
Method handle #19:
  type        : invoke-static
  target      : LTestVariableArityLinkerMethod; bsmWithBoxedArray
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Integer;)Ljava/lang/invoke/CallSite;
Method handle #20:
  type        : invoke-static
  target      : LTestVariableArityLinkerMethod; bsmWithClassAndFloatArray
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;[F)Ljava/lang/invoke/CallSite;
Method handle #21:
  type        : invoke-static
  target      : LTestVariableArityLinkerMethod; bsmWithClassArray
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Class;)Ljava/lang/invoke/CallSite;
Method handle #22:
  type        : invoke-static
  target      : LTestVariableArityLinkerMethod; bsmWithDoubleArray
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[D)Ljava/lang/invoke/CallSite;
Method handle #23:
  type        : invoke-static
  target      : LTestVariableArityLinkerMethod; bsmWithFloatAndLongArray
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;F[J)Ljava/lang/invoke/CallSite;
Method handle #24:
  type        : invoke-static
  target      : LTestVariableArityLinkerMethod; bsmWithIntAndStringArray
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;I[Ljava/lang/String;)Ljava/lang/invoke/CallSite;
Method handle #25:
  type        : invoke-static
  target      : LTestVariableArityLinkerMethod; bsmWithLongAndIntArray
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;J[I)Ljava/lang/invoke/CallSite;
Method handle #26:
  type        : invoke-static
  target      : LTestVariableArityLinkerMethod; bsmWithStringArray
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/String;)Ljava/lang/invoke/CallSite;
Method handle #27:
  type        : invoke-static
  target      : LTestVariableArityLinkerMethod; bsmWithWiderArray
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[J)Ljava/lang/invoke/CallSite;
Method handle #28:
  type        : invoke-static
  target      : LUnrelatedBSM; bsm
  target_type : (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;)Ljava/lang/invoke/CallSite;
Call site #0: // offset 29649
  link_argument[0] : 1 (MethodHandle)
  link_argument[1] : happy (String)
  link_argument[2] : ()V (MethodType)
  link_argument[3] : -1 (int)
  link_argument[4] : very (String)
Call site #1: // offset 29662
  link_argument[0] : 0 (MethodHandle)
  link_argument[1] : wrongParameterTypes (String)
  link_argument[2] : ()V (MethodType)
  link_argument[3] : -1 (int)
  link_argument[4] : very (String)
Call site #2: // offset 29675
  link_argument[0] : 0 (MethodHandle)
  link_argument[1] : missingParameterTypes (String)
  link_argument[2] : ()V (MethodType)
Call site #3: // offset 29683
  link_argument[0] : 1 (MethodHandle)
  link_argument[1] : extraArguments (String)
  link_argument[2] : ()V (MethodType)
  link_argument[3] : 1 (int)
  link_argument[4] : 2 (String)
  link_argument[5] : 3 (int)
Call site #4: // offset 29697
  link_argument[0] : 1 (MethodHandle)
  link_argument[1] : wrongArguments (String)
  link_argument[2] : ()V (MethodType)
  link_argument[3] : 1 (String)
  link_argument[4] : 3.14159 (double)
Call site #5: // offset 29697
  link_argument[0] : 1 (MethodHandle)
  link_argument[1] : wrongArguments (String)
  link_argument[2] : ()V (MethodType)
  link_argument[3] : 1 (String)
  link_argument[4] : 3.14159 (double)
Call site #6: // offset 29716
  link_argument[0] : 1 (MethodHandle)
  link_argument[1] : wrongArgumentsAgain (String)
  link_argument[2] : ()V (MethodType)
  link_argument[3] : 3.14159 (double)
  link_argument[4] : pie (String)
Call site #7: // offset 29736
  link_argument[0] : 8 (MethodHandle)
  link_argument[1] : narrowArguments (String)
  link_argument[2] : ()V (MethodType)
  link_argument[3] : 1 (int)
  link_argument[4] : 127 (int)
  link_argument[5] : 65 (int)
  link_argument[6] : -32768 (int)
Call site #8: // offset 29753
  link_argument[0] : 2 (MethodHandle)
  link_argument[1] : wideningArguments (String)
  link_argument[2] : ()V (MethodType)
  link_argument[3] : 1.79769e+308 (double)
  link_argument[4] : 2147483647 (int)
Call site #9: // offset 29775
  link_argument[0] : 3 (MethodHandle)
  link_argument[1] : boxingArguments (String)
  link_argument[2] : ()V (MethodType)
  link_argument[3] : 1.79769e+308 (double)
  link_argument[4] : 9223372036854775807 (long)
Call site #10: // offset 29800
  link_argument[0] : 3 (MethodHandle)
  link_argument[1] : wideningBoxingArguments (String)
  link_argument[2] : ()V (MethodType)
  link_argument[3] : 3.40282e+38 (float)
  link_argument[4] : 2147483647 (long)
Call site #11: // offset 29818
  link_argument[0] : 7 (MethodHandle)
  link_argument[1] : voidReturnType (String)
  link_argument[2] : ()V (MethodType)
Call site #12: // offset 29826
  link_argument[0] : 5 (MethodHandle)
  link_argument[1] : ObjectReturnType (String)
  link_argument[2] : ()V (MethodType)
Call site #13: // offset 29833
  link_argument[0] : 4 (MethodHandle)
  link_argument[1] : integerReturnType (String)
  link_argument[2] : ()V (MethodType)
Call site #14: // offset 29841
  link_argument[0] : 6 (MethodHandle)
  link_argument[1] : sayHello (String)
  link_argument[2] : ()V (MethodType)
Call site #15: // offset 29849
  link_argument[0] : 9 (MethodHandle)
  link_argument[1] : target (String)
  link_argument[2] : (ILjava/lang/String;Ljava/lang/Double;)I (MethodType)
  link_argument[3] : A (String)
  link_argument[4] : 100000000 (long)
Call site #16: // offset 29849
  link_argument[0] : 9 (MethodHandle)
  link_argument[1] : target (String)
  link_argument[2] : (ILjava/lang/String;Ljava/lang/Double;)I (MethodType)
  link_argument[3] : A (String)
  link_argument[4] : 100000000 (long)
Call site #17: // offset 29849
  link_argument[0] : 9 (MethodHandle)
  link_argument[1] : target (String)
  link_argument[2] : (ILjava/lang/String;Ljava/lang/Double;)I (MethodType)
  link_argument[3] : A (String)
  link_argument[4] : 100000000 (long)
Call site #18: // offset 29864
  link_argument[0] : 10 (MethodHandle)
  link_argument[1] : unused (String)
  link_argument[2] : (I)LTestInvocationKinds$Widget; (MethodType)
Call site #19: // offset 29872
  link_argument[0] : 12 (MethodHandle)
  link_argument[1] : instance_field (String)
  link_argument[2] : (LTestInvocationKinds;D)V (MethodType)
Call site #20: // offset 29880
  link_argument[0] : 11 (MethodHandle)
  link_argument[1] : instance_field (String)
  link_argument[2] : (LTestInvocationKinds;)D (MethodType)
Call site #21: // offset 29888
  link_argument[0] : 15 (MethodHandle)
  link_argument[1] : getMaxIntegerValue (String)
  link_argument[2] : (LTestInvocationKinds;II)I (MethodType)
Call site #22: // offset 29896
  link_argument[0] : 14 (MethodHandle)
  link_argument[1] : static_field (String)
  link_argument[2] : (I)V (MethodType)
Call site #23: // offset 29896
  link_argument[0] : 14 (MethodHandle)
  link_argument[1] : static_field (String)
  link_argument[2] : (I)V (MethodType)
Call site #24: // offset 29904
  link_argument[0] : 13 (MethodHandle)
  link_argument[1] : static_field (String)
  link_argument[2] : ()I (MethodType)
Call site #25: // offset 29904
  link_argument[0] : 13 (MethodHandle)
  link_argument[1] : static_field (String)
  link_argument[2] : ()I (MethodType)
Call site #26: // offset 29912
  link_argument[0] : 16 (MethodHandle)
  link_argument[1] : setCalled (String)
  link_argument[2] : (I)I (MethodType)
Call site #27: // offset 29920
  link_argument[0] : 17 (MethodHandle)
  link_argument[1] : _add (String)
  link_argument[2] : (II)I (MethodType)
Call site #28: // offset 29927
  link_argument[0] : 18 (MethodHandle)
  link_argument[1] : _add (String)
  link_argument[2] : (II)I (MethodType)
  link_argument[3] : -1 (int)
  link_argument[4] : 1 (int)
  link_argument[5] : 97 (int)
  link_argument[6] : 1024 (int)
  link_argument[7] : 1 (int)
  link_argument[8] : 11.1 (float)
  link_argument[9] : 2.2 (double)
  link_argument[10] : Hello (String)
  link_argument[11] : LTestLinkerMethodMultipleArgumentTypes; (Class)
  link_argument[12] : 123456789 (long)
Call site #29: // offset 29968
  link_argument[0] : 28 (MethodHandle)
  link_argument[1] : _addf (String)
  link_argument[2] : (FF)F (MethodType)
  link_argument[3] : LTestLinkerUnrelatedBSM; (Class)
Call site #30: // offset 29977
  link_argument[0] : 28 (MethodHandle)
  link_argument[1] : _subf (String)
  link_argument[2] : (FF)F (MethodType)
  link_argument[3] : LTestLinkerUnrelatedBSM; (Class)
Call site #31: // offset 29986
  link_argument[0] : 26 (MethodHandle)
  link_argument[1] : methodA (String)
  link_argument[2] : ()V (MethodType)
  link_argument[3] : Aachen (String)
  link_argument[4] : Aalborg (String)
  link_argument[5] : Aalto (String)
Call site #32: // offset 30000
  link_argument[0] : 26 (MethodHandle)
  link_argument[1] : methodB (String)
  link_argument[2] : ()V (MethodType)
  link_argument[3] : barium (String)
Call site #33: // offset 30010
  link_argument[0] : 26 (MethodHandle)
  link_argument[1] : methodC (String)
  link_argument[2] : ()V (MethodType)
Call site #34: // offset 30018
  link_argument[0] : 24 (MethodHandle)
  link_argument[1] : methodD (String)
  link_argument[2] : ()V (MethodType)
  link_argument[3] : 101 (int)
  link_argument[4] : zoo (String)
  link_argument[5] : zoogene (String)
  link_argument[6] : zoogenic (String)
Call site #35: // offset 30037
  link_argument[0] : 24 (MethodHandle)
  link_argument[1] : methodE (String)
  link_argument[2] : ()V (MethodType)
  link_argument[3] : 102 (int)
  link_argument[4] : zonic (String)
Call site #36: // offset 30050
  link_argument[0] : 24 (MethodHandle)
  link_argument[1] : methodF (String)
  link_argument[2] : ()V (MethodType)
  link_argument[3] : 103 (int)
Call site #37: // offset 30060
  link_argument[0] : 25 (MethodHandle)
  link_argument[1] : methodG (String)
  link_argument[2] : ()V (MethodType)
  link_argument[3] : 81985529216486895 (long)
  link_argument[4] : 1 (int)
  link_argument[5] : -1 (int)
  link_argument[6] : 2 (int)
  link_argument[7] : -2 (int)
Call site #38: // offset 30085
  link_argument[0] : 23 (MethodHandle)
  link_argument[1] : methodH (String)
  link_argument[2] : ()V (MethodType)
  link_argument[3] : -2.71828 (float)
  link_argument[4] : 999999999999 (long)
  link_argument[5] : -8888888888888 (long)
Call site #39: // offset 30112
  link_argument[0] : 20 (MethodHandle)
  link_argument[1] : methodI (String)
  link_argument[2] : ()V (MethodType)
  link_argument[3] : Ljava/lang/Throwable; (Class)
  link_argument[4] : 3.40282e+38 (float)
  link_argument[5] : 1.4013e-45 (float)
  link_argument[6] : 3.14159 (float)
  link_argument[7] : -3.14159 (float)
Call site #40: // offset 30142
  link_argument[0] : 22 (MethodHandle)
  link_argument[1] : methodJ (String)
  link_argument[2] : ()V (MethodType)
  link_argument[3] : 1.79769e+308 (double)
  link_argument[4] : 4.94066e-324 (double)
  link_argument[5] : 2.71828 (double)
  link_argument[6] : -3.14159 (double)
Call site #41: // offset 30186
  link_argument[0] : 21 (MethodHandle)
  link_argument[1] : methodK (String)
  link_argument[2] : ()V (MethodType)
  link_argument[3] : Ljava/lang/Integer; (Class)
  link_argument[4] : Ljava/lang/invoke/MethodHandles; (Class)
  link_argument[5] : Ljava/util/Arrays; (Class)
Call site #42: // offset 30200
  link_argument[0] : 24 (MethodHandle)
  link_argument[1] : methodO (String)
  link_argument[2] : ()V (MethodType)
  link_argument[3] : 103 (int)
  link_argument[4] : 104 (int)
Call site #43: // offset 30212
  link_argument[0] : 24 (MethodHandle)
  link_argument[1] : methodP (String)
  link_argument[2] : ()V (MethodType)
  link_argument[3] : 103 (int)
  link_argument[4] : A (String)
  link_argument[5] : B (String)
  link_argument[6] : 42 (int)
Call site #44: // offset 30228
  link_argument[0] : 27 (MethodHandle)
  link_argument[1] : methodQ (String)
  link_argument[2] : ()V (MethodType)
  link_argument[3] : 103 (int)
  link_argument[4] : 42 (int)
Call site #45: // offset 30240
  link_argument[0] : 19 (MethodHandle)
  link_argument[1] : methodR (String)
  link_argument[2] : ()V (MethodType)
  link_argument[3] : 1030 (int)
  link_argument[4] : 420 (int)

Messung V0.5 in Prozent
C=95 H=89 G=91

¤ Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.0.318Bemerkung:  (vorverarbeitet am  2026-06-29) ¤

*Bot Zugriff






Wurzel

Suchen

PVS Prover

Isabelle Prover

NIST Cobol Testsuite

Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Quellcodebibliothek
     Eigene Quellcodes
     Fremde Quellcodes
     Suchen

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik