class jdk.internal.reflect.MethodAccessorGenerator extends jdk.internal.reflect.AccessorGenerator
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: jdk.internal.reflect.MethodAccessorGenerator
  super_class: jdk.internal.reflect.AccessorGenerator
{
  private static final short NUM_BASE_CPOOL_ENTRIES;
    descriptor: S
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 12

  private static final short NUM_METHODS;
    descriptor: S
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static final short NUM_SERIALIZATION_CPOOL_ENTRIES;
    descriptor: S
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static volatile int methodSymnum;
    descriptor: I
    flags: (0x004a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE

  private static volatile int constructorSymnum;
    descriptor: I
    flags: (0x004a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE

  private static volatile int serializationConstructorSymnum;
    descriptor: I
    flags: (0x004a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE

  private java.lang.Class<?> declaringClass;
    descriptor: Ljava/lang/Class;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/lang/Class<*>;

  private java.lang.Class<?>[] parameterTypes;
    descriptor: [Ljava/lang/Class;
    flags: (0x0002) ACC_PRIVATE
    Signature: [Ljava/lang/Class<*>;

  private java.lang.Class<?> returnType;
    descriptor: Ljava/lang/Class;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/lang/Class<*>;

  private boolean isConstructor;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean forSerialization;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private short targetMethodRef;
    descriptor: S
    flags: (0x0002) ACC_PRIVATE

  private short invokeIdx;
    descriptor: S
    flags: (0x0002) ACC_PRIVATE

  private short invokeDescriptorIdx;
    descriptor: S
    flags: (0x0002) ACC_PRIVATE

  private short nonPrimitiveParametersBaseIdx;
    descriptor: S
    flags: (0x0002) ACC_PRIVATE

  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.reflect.MethodAccessorGenerator this
         0: .line 64
            aload 0 /* this */
            invokespecial jdk.internal.reflect.AccessorGenerator.<init>:()V
         1: .line 65
            return
        end local 0 // jdk.internal.reflect.MethodAccessorGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/internal/reflect/MethodAccessorGenerator;

  public jdk.internal.reflect.MethodAccessor generateMethod(java.lang.Class<?>, java.lang.String, java.lang.Class<?>[], java.lang.Class<?>, java.lang.Class<?>[], int);
    descriptor: (Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;I)Ljdk/internal/reflect/MethodAccessor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=7, args_size=7
        start local 0 // jdk.internal.reflect.MethodAccessorGenerator this
        start local 1 // java.lang.Class declaringClass
        start local 2 // java.lang.String name
        start local 3 // java.lang.Class[] parameterTypes
        start local 4 // java.lang.Class returnType
        start local 5 // java.lang.Class[] checkedExceptions
        start local 6 // int modifiers
         0: .line 75
            aload 0 /* this */
            aload 1 /* declaringClass */
         1: .line 76
            aload 2 /* name */
         2: .line 77
            aload 3 /* parameterTypes */
         3: .line 78
            aload 4 /* returnType */
         4: .line 79
            aload 5 /* checkedExceptions */
         5: .line 80
            iload 6 /* modifiers */
         6: .line 81
            iconst_0
         7: .line 82
            iconst_0
         8: .line 83
            aconst_null
         9: .line 75
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.generate:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;IZZLjava/lang/Class;)Ljdk/internal/reflect/MagicAccessorImpl;
            checkcast jdk.internal.reflect.MethodAccessor
            areturn
        end local 6 // int modifiers
        end local 5 // java.lang.Class[] checkedExceptions
        end local 4 // java.lang.Class returnType
        end local 3 // java.lang.Class[] parameterTypes
        end local 2 // java.lang.String name
        end local 1 // java.lang.Class declaringClass
        end local 0 // jdk.internal.reflect.MethodAccessorGenerator this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   10     0               this  Ljdk/internal/reflect/MethodAccessorGenerator;
            0   10     1     declaringClass  Ljava/lang/Class<*>;
            0   10     2               name  Ljava/lang/String;
            0   10     3     parameterTypes  [Ljava/lang/Class;
            0   10     4         returnType  Ljava/lang/Class<*>;
            0   10     5  checkedExceptions  [Ljava/lang/Class;
            0   10     6          modifiers  I
    Signature: (Ljava/lang/Class<*>;Ljava/lang/String;[Ljava/lang/Class<*>;Ljava/lang/Class<*>;[Ljava/lang/Class<*>;I)Ljdk/internal/reflect/MethodAccessor;
    MethodParameters:
                   Name  Flags
      declaringClass     
      name               
      parameterTypes     
      returnType         
      checkedExceptions  
      modifiers          

  public jdk.internal.reflect.ConstructorAccessor generateConstructor(java.lang.Class<?>, java.lang.Class<?>[], java.lang.Class<?>[], int);
    descriptor: (Ljava/lang/Class;[Ljava/lang/Class;[Ljava/lang/Class;I)Ljdk/internal/reflect/ConstructorAccessor;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=5, args_size=5
        start local 0 // jdk.internal.reflect.MethodAccessorGenerator this
        start local 1 // java.lang.Class declaringClass
        start local 2 // java.lang.Class[] parameterTypes
        start local 3 // java.lang.Class[] checkedExceptions
        start local 4 // int modifiers
         0: .line 92
            aload 0 /* this */
            aload 1 /* declaringClass */
         1: .line 93
            ldc "<init>"
         2: .line 94
            aload 2 /* parameterTypes */
         3: .line 95
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
         4: .line 96
            aload 3 /* checkedExceptions */
         5: .line 97
            iload 4 /* modifiers */
         6: .line 98
            iconst_1
         7: .line 99
            iconst_0
         8: .line 100
            aconst_null
         9: .line 92
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.generate:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;IZZLjava/lang/Class;)Ljdk/internal/reflect/MagicAccessorImpl;
            checkcast jdk.internal.reflect.ConstructorAccessor
            areturn
        end local 4 // int modifiers
        end local 3 // java.lang.Class[] checkedExceptions
        end local 2 // java.lang.Class[] parameterTypes
        end local 1 // java.lang.Class declaringClass
        end local 0 // jdk.internal.reflect.MethodAccessorGenerator this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   10     0               this  Ljdk/internal/reflect/MethodAccessorGenerator;
            0   10     1     declaringClass  Ljava/lang/Class<*>;
            0   10     2     parameterTypes  [Ljava/lang/Class;
            0   10     3  checkedExceptions  [Ljava/lang/Class;
            0   10     4          modifiers  I
    Signature: (Ljava/lang/Class<*>;[Ljava/lang/Class<*>;[Ljava/lang/Class<*>;I)Ljdk/internal/reflect/ConstructorAccessor;
    MethodParameters:
                   Name  Flags
      declaringClass     
      parameterTypes     
      checkedExceptions  
      modifiers          

  public jdk.internal.reflect.SerializationConstructorAccessorImpl generateSerializationConstructor(java.lang.Class<?>, java.lang.Class<?>[], java.lang.Class<?>[], int, java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;[Ljava/lang/Class;[Ljava/lang/Class;ILjava/lang/Class;)Ljdk/internal/reflect/SerializationConstructorAccessorImpl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=6, args_size=6
        start local 0 // jdk.internal.reflect.MethodAccessorGenerator this
        start local 1 // java.lang.Class declaringClass
        start local 2 // java.lang.Class[] parameterTypes
        start local 3 // java.lang.Class[] checkedExceptions
        start local 4 // int modifiers
        start local 5 // java.lang.Class targetConstructorClass
         0: .line 112
            aload 0 /* this */
            aload 1 /* declaringClass */
         1: .line 113
            ldc "<init>"
         2: .line 114
            aload 2 /* parameterTypes */
         3: .line 115
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
         4: .line 116
            aload 3 /* checkedExceptions */
         5: .line 117
            iload 4 /* modifiers */
         6: .line 118
            iconst_1
         7: .line 119
            iconst_1
         8: .line 120
            aload 5 /* targetConstructorClass */
         9: .line 112
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.generate:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;IZZLjava/lang/Class;)Ljdk/internal/reflect/MagicAccessorImpl;
        10: .line 111
            checkcast jdk.internal.reflect.SerializationConstructorAccessorImpl
            areturn
        end local 5 // java.lang.Class targetConstructorClass
        end local 4 // int modifiers
        end local 3 // java.lang.Class[] checkedExceptions
        end local 2 // java.lang.Class[] parameterTypes
        end local 1 // java.lang.Class declaringClass
        end local 0 // jdk.internal.reflect.MethodAccessorGenerator this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   11     0                    this  Ljdk/internal/reflect/MethodAccessorGenerator;
            0   11     1          declaringClass  Ljava/lang/Class<*>;
            0   11     2          parameterTypes  [Ljava/lang/Class;
            0   11     3       checkedExceptions  [Ljava/lang/Class;
            0   11     4               modifiers  I
            0   11     5  targetConstructorClass  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;[Ljava/lang/Class<*>;[Ljava/lang/Class<*>;ILjava/lang/Class<*>;)Ljdk/internal/reflect/SerializationConstructorAccessorImpl;
    MethodParameters:
                        Name  Flags
      declaringClass          
      parameterTypes          
      checkedExceptions       
      modifiers               
      targetConstructorClass  

  private jdk.internal.reflect.MagicAccessorImpl generate(java.lang.Class<?>, java.lang.String, java.lang.Class<?>[], java.lang.Class<?>, java.lang.Class<?>[], int, boolean, boolean, java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;IZZLjava/lang/Class;)Ljdk/internal/reflect/MagicAccessorImpl;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=17, args_size=10
        start local 0 // jdk.internal.reflect.MethodAccessorGenerator this
        start local 1 // java.lang.Class declaringClass
        start local 2 // java.lang.String name
        start local 3 // java.lang.Class[] parameterTypes
        start local 4 // java.lang.Class returnType
        start local 5 // java.lang.Class[] checkedExceptions
        start local 6 // int modifiers
        start local 7 // boolean isConstructor
        start local 8 // boolean forSerialization
        start local 9 // java.lang.Class serializationTargetClass
         0: .line 134
            invokestatic jdk.internal.reflect.ByteVectorFactory.create:()Ljdk/internal/reflect/ByteVector;
            astore 10 /* vec */
        start local 10 // jdk.internal.reflect.ByteVector vec
         1: .line 135
            aload 0 /* this */
            new jdk.internal.reflect.ClassFileAssembler
            dup
            aload 10 /* vec */
            invokespecial jdk.internal.reflect.ClassFileAssembler.<init>:(Ljdk/internal/reflect/ByteVector;)V
            putfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
         2: .line 136
            aload 0 /* this */
            aload 1 /* declaringClass */
            putfield jdk.internal.reflect.MethodAccessorGenerator.declaringClass:Ljava/lang/Class;
         3: .line 137
            aload 0 /* this */
            aload 3 /* parameterTypes */
            putfield jdk.internal.reflect.MethodAccessorGenerator.parameterTypes:[Ljava/lang/Class;
         4: .line 138
            aload 0 /* this */
            aload 4 /* returnType */
            putfield jdk.internal.reflect.MethodAccessorGenerator.returnType:Ljava/lang/Class;
         5: .line 139
            aload 0 /* this */
            iload 6 /* modifiers */
            putfield jdk.internal.reflect.MethodAccessorGenerator.modifiers:I
         6: .line 140
            aload 0 /* this */
            iload 7 /* isConstructor */
            putfield jdk.internal.reflect.MethodAccessorGenerator.isConstructor:Z
         7: .line 141
            aload 0 /* this */
            iload 8 /* forSerialization */
            putfield jdk.internal.reflect.MethodAccessorGenerator.forSerialization:Z
         8: .line 143
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitMagicAndVersion:()V
         9: .line 271
            bipush 42
            istore 11 /* numCPEntries */
        start local 11 // short numCPEntries
        10: .line 272
            aload 0 /* this */
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.usesPrimitiveTypes:()Z
            istore 12 /* usesPrimitives */
        start local 12 // boolean usesPrimitives
        11: .line 273
            iload 12 /* usesPrimitives */
            ifeq 13
        12: .line 274
            iload 11 /* numCPEntries */
            bipush 73
            iadd
            i2s
            istore 11 /* numCPEntries */
        13: .line 276
      StackMap locals: jdk.internal.reflect.ByteVector int int
      StackMap stack:
            iload 8 /* forSerialization */
            ifeq 15
        14: .line 277
            iload 11 /* numCPEntries */
            iconst_2
            iadd
            i2s
            istore 11 /* numCPEntries */
        15: .line 282
      StackMap locals:
      StackMap stack:
            iload 11 /* numCPEntries */
            iconst_2
            aload 0 /* this */
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.numNonPrimitiveParameterTypes:()I
            imul
            i2s
            iadd
            i2s
            istore 11 /* numCPEntries */
        16: .line 284
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            iload 11 /* numCPEntries */
            iconst_1
            invokestatic jdk.internal.reflect.MethodAccessorGenerator.add:(SS)S
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
        17: .line 286
            iload 7 /* isConstructor */
            iload 8 /* forSerialization */
            invokestatic jdk.internal.reflect.MethodAccessorGenerator.generateName:(ZZ)Ljava/lang/String;
            astore 13 /* generatedName */
        start local 13 // java.lang.String generatedName
        18: .line 287
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            aload 13 /* generatedName */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
        19: .line 288
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolClass:(S)V
        20: .line 289
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
            putfield jdk.internal.reflect.MethodAccessorGenerator.thisClass:S
        21: .line 290
            iload 7 /* isConstructor */
            ifeq 29
        22: .line 291
            iload 8 /* forSerialization */
            ifeq 27
        23: .line 292
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
        24: .line 293
            ldc "jdk/internal/reflect/SerializationConstructorAccessorImpl"
        25: .line 292
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
        26: .line 294
            goto 30
        27: .line 295
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            ldc "jdk/internal/reflect/ConstructorAccessorImpl"
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
        28: .line 297
            goto 30
        29: .line 298
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            ldc "jdk/internal/reflect/MethodAccessorImpl"
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
        30: .line 300
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolClass:(S)V
        31: .line 301
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
            putfield jdk.internal.reflect.MethodAccessorGenerator.superClass:S
        32: .line 302
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            aload 1 /* declaringClass */
            iconst_0
            invokestatic jdk.internal.reflect.MethodAccessorGenerator.getClassName:(Ljava/lang/Class;Z)Ljava/lang/String;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
        33: .line 303
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolClass:(S)V
        34: .line 304
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
            putfield jdk.internal.reflect.MethodAccessorGenerator.targetClass:S
        35: .line 305
            iconst_0
            istore 14 /* serializationTargetClassIdx */
        start local 14 // short serializationTargetClassIdx
        36: .line 306
            iload 8 /* forSerialization */
            ifeq 40
        37: .line 307
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            aload 9 /* serializationTargetClass */
            iconst_0
            invokestatic jdk.internal.reflect.MethodAccessorGenerator.getClassName:(Ljava/lang/Class;Z)Ljava/lang/String;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
        38: .line 308
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolClass:(S)V
        39: .line 309
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
            istore 14 /* serializationTargetClassIdx */
        40: .line 311
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            aload 2 /* name */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
        41: .line 312
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            aload 0 /* this */
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.buildInternalSignature:()Ljava/lang/String;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
        42: .line 313
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
            iconst_1
            invokestatic jdk.internal.reflect.MethodAccessorGenerator.sub:(SS)S
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolNameAndType:(SS)V
        43: .line 314
            aload 0 /* this */
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.isInterface:()Z
            ifeq 46
        44: .line 315
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.targetClass:S
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolInterfaceMethodref:(SS)V
        45: .line 316
            goto 50
        46: .line 317
      StackMap locals:
      StackMap stack:
            iload 8 /* forSerialization */
            ifeq 49
        47: .line 318
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            iload 14 /* serializationTargetClassIdx */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolMethodref:(SS)V
        48: .line 319
            goto 50
        49: .line 320
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.targetClass:S
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolMethodref:(SS)V
        50: .line 323
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
            putfield jdk.internal.reflect.MethodAccessorGenerator.targetMethodRef:S
        51: .line 324
            iload 7 /* isConstructor */
            ifeq 54
        52: .line 325
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            ldc "newInstance"
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
        53: .line 326
            goto 55
        54: .line 327
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            ldc "invoke"
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
        55: .line 329
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
            putfield jdk.internal.reflect.MethodAccessorGenerator.invokeIdx:S
        56: .line 330
            iload 7 /* isConstructor */
            ifeq 59
        57: .line 331
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            ldc "([Ljava/lang/Object;)Ljava/lang/Object;"
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
        58: .line 332
            goto 62
        59: .line 333
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
        60: .line 334
            ldc "(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;"
        61: .line 333
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
        62: .line 336
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
            putfield jdk.internal.reflect.MethodAccessorGenerator.invokeDescriptorIdx:S
        63: .line 339
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
            iconst_2
            invokestatic jdk.internal.reflect.MethodAccessorGenerator.add:(SS)S
            putfield jdk.internal.reflect.MethodAccessorGenerator.nonPrimitiveParametersBaseIdx:S
        64: .line 340
            iconst_0
            istore 15 /* i */
        start local 15 // int i
        65: goto 71
        66: .line 341
      StackMap locals: int
      StackMap stack:
            aload 3 /* parameterTypes */
            iload 15 /* i */
            aaload
            astore 16 /* c */
        start local 16 // java.lang.Class c
        67: .line 342
            aload 16 /* c */
            invokestatic jdk.internal.reflect.MethodAccessorGenerator.isPrimitive:(Ljava/lang/Class;)Z
            ifne 70
        68: .line 343
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            aload 16 /* c */
            iconst_0
            invokestatic jdk.internal.reflect.MethodAccessorGenerator.getClassName:(Ljava/lang/Class;Z)Ljava/lang/String;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolUTF8:(Ljava/lang/String;)V
        69: .line 344
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitConstantPoolClass:(S)V
        end local 16 // java.lang.Class c
        70: .line 340
      StackMap locals:
      StackMap stack:
            iinc 15 /* i */ 1
      StackMap locals:
      StackMap stack:
        71: iload 15 /* i */
            aload 3 /* parameterTypes */
            arraylength
            if_icmplt 66
        end local 15 // int i
        72: .line 349
            aload 0 /* this */
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.emitCommonConstantPoolEntries:()V
        73: .line 352
            iload 12 /* usesPrimitives */
            ifeq 75
        74: .line 353
            aload 0 /* this */
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.emitBoxingContantPoolEntries:()V
        75: .line 356
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
            iload 11 /* numCPEntries */
            if_icmpeq 79
        76: .line 357
            new java.lang.InternalError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Adjust this code (cpi = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            invokevirtual jdk.internal.reflect.ClassFileAssembler.cpi:()S
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        77: .line 358
            ldc ", numCPEntries = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            iload 11 /* numCPEntries */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        78: .line 357
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
        79: .line 362
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            iconst_1
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
        80: .line 365
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.thisClass:S
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
        81: .line 368
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.superClass:S
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
        82: .line 371
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            iconst_0
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
        83: .line 374
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            iconst_0
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
        84: .line 377
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            iconst_2
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
        85: .line 379
            aload 0 /* this */
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.emitConstructor:()V
        86: .line 380
            aload 0 /* this */
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.emitInvoke:()V
        87: .line 383
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.asm:Ljdk/internal/reflect/ClassFileAssembler;
            iconst_0
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
        88: .line 386
            aload 10 /* vec */
            invokeinterface jdk.internal.reflect.ByteVector.trim:()V
        89: .line 387
            aload 10 /* vec */
            invokeinterface jdk.internal.reflect.ByteVector.getData:()[B
            astore 15 /* bytes */
        start local 15 // byte[] bytes
        90: .line 394
            new jdk.internal.reflect.MethodAccessorGenerator$1
            dup
            aload 0 /* this */
            aload 13 /* generatedName */
            aload 15 /* bytes */
            aload 1 /* declaringClass */
            invokespecial jdk.internal.reflect.MethodAccessorGenerator$1.<init>:(Ljdk/internal/reflect/MethodAccessorGenerator;Ljava/lang/String;[BLjava/lang/Class;)V
        91: .line 393
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast jdk.internal.reflect.MagicAccessorImpl
            areturn
        end local 15 // byte[] bytes
        end local 14 // short serializationTargetClassIdx
        end local 13 // java.lang.String generatedName
        end local 12 // boolean usesPrimitives
        end local 11 // short numCPEntries
        end local 10 // jdk.internal.reflect.ByteVector vec
        end local 9 // java.lang.Class serializationTargetClass
        end local 8 // boolean forSerialization
        end local 7 // boolean isConstructor
        end local 6 // int modifiers
        end local 5 // java.lang.Class[] checkedExceptions
        end local 4 // java.lang.Class returnType
        end local 3 // java.lang.Class[] parameterTypes
        end local 2 // java.lang.String name
        end local 1 // java.lang.Class declaringClass
        end local 0 // jdk.internal.reflect.MethodAccessorGenerator this
      LocalVariableTable:
        Start  End  Slot                         Name  Signature
            0   92     0                         this  Ljdk/internal/reflect/MethodAccessorGenerator;
            0   92     1               declaringClass  Ljava/lang/Class<*>;
            0   92     2                         name  Ljava/lang/String;
            0   92     3               parameterTypes  [Ljava/lang/Class;
            0   92     4                   returnType  Ljava/lang/Class<*>;
            0   92     5            checkedExceptions  [Ljava/lang/Class;
            0   92     6                    modifiers  I
            0   92     7                isConstructor  Z
            0   92     8             forSerialization  Z
            0   92     9     serializationTargetClass  Ljava/lang/Class<*>;
            1   92    10                          vec  Ljdk/internal/reflect/ByteVector;
           10   92    11                 numCPEntries  S
           11   92    12               usesPrimitives  Z
           18   92    13                generatedName  Ljava/lang/String;
           36   92    14  serializationTargetClassIdx  S
           65   72    15                            i  I
           67   70    16                            c  Ljava/lang/Class<*>;
           90   92    15                        bytes  [B
    Signature: (Ljava/lang/Class<*>;Ljava/lang/String;[Ljava/lang/Class<*>;Ljava/lang/Class<*>;[Ljava/lang/Class<*>;IZZLjava/lang/Class<*>;)Ljdk/internal/reflect/MagicAccessorImpl;
    MethodParameters:
                          Name  Flags
      declaringClass            final
      name                      
      parameterTypes            
      returnType                
      checkedExceptions         
      modifiers                 
      isConstructor             
      forSerialization          
      serializationTargetClass  

  private void emitInvoke();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=12, args_size=1
        start local 0 // jdk.internal.reflect.MethodAccessorGenerator this
         0: .line 417
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.parameterTypes:[Ljava/lang/Class;
            arraylength
            ldc 65535
            if_icmple 2
         1: .line 418
            new java.lang.InternalError
            dup
            ldc "Can't handle more than 65535 parameters"
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 422
      StackMap locals:
      StackMap stack:
            new jdk.internal.reflect.ClassFileAssembler
            dup
            invokespecial jdk.internal.reflect.ClassFileAssembler.<init>:()V
            astore 1 /* cb */
        start local 1 // jdk.internal.reflect.ClassFileAssembler cb
         3: .line 423
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.isConstructor:Z
            ifeq 6
         4: .line 425
            aload 1 /* cb */
            iconst_2
            invokevirtual jdk.internal.reflect.ClassFileAssembler.setMaxLocals:(I)V
         5: .line 426
            goto 7
         6: .line 428
      StackMap locals: jdk.internal.reflect.ClassFileAssembler
      StackMap stack:
            aload 1 /* cb */
            iconst_3
            invokevirtual jdk.internal.reflect.ClassFileAssembler.setMaxLocals:(I)V
         7: .line 431
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* illegalArgStartPC */
        start local 2 // short illegalArgStartPC
         8: .line 433
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.isConstructor:Z
            ifeq 12
         9: .line 437
            aload 1 /* cb */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.targetClass:S
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_new:(S)V
        10: .line 438
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_dup:()V
        11: .line 439
            goto 24
        12: .line 445
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.isStatic:()Z
            ifne 24
        13: .line 455
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aload_1:()V
        14: .line 456
            new jdk.internal.reflect.Label
            dup
            invokespecial jdk.internal.reflect.Label.<init>:()V
            astore 3 /* l */
        start local 3 // jdk.internal.reflect.Label l
        15: .line 457
            aload 1 /* cb */
            aload 3 /* l */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_ifnonnull:(Ljdk/internal/reflect/Label;)V
        16: .line 458
            aload 1 /* cb */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.nullPointerClass:S
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_new:(S)V
        17: .line 459
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_dup:()V
        18: .line 460
            aload 1 /* cb */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.nullPointerCtorIdx:S
            iconst_0
            iconst_0
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokespecial:(SII)V
        19: .line 461
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_athrow:()V
        20: .line 462
            aload 3 /* l */
            invokevirtual jdk.internal.reflect.Label.bind:()V
        21: .line 463
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.getLength:()S
            istore 2 /* illegalArgStartPC */
        22: .line 464
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aload_1:()V
        23: .line 465
            aload 1 /* cb */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.targetClass:S
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_checkcast:(S)V
        end local 3 // jdk.internal.reflect.Label l
        24: .line 485
      StackMap locals:
      StackMap stack:
            new jdk.internal.reflect.Label
            dup
            invokespecial jdk.internal.reflect.Label.<init>:()V
            astore 3 /* successLabel */
        start local 3 // jdk.internal.reflect.Label successLabel
        25: .line 486
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.parameterTypes:[Ljava/lang/Class;
            arraylength
            ifne 31
        26: .line 487
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.isConstructor:Z
            ifeq 29
        27: .line 488
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aload_1:()V
        28: .line 489
            goto 30
        29: .line 490
      StackMap locals: jdk.internal.reflect.Label
      StackMap stack:
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aload_2:()V
        30: .line 492
      StackMap locals:
      StackMap stack:
            aload 1 /* cb */
            aload 3 /* successLabel */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_ifnull:(Ljdk/internal/reflect/Label;)V
        31: .line 494
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.isConstructor:Z
            ifeq 34
        32: .line 495
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aload_1:()V
        33: .line 496
            goto 35
        34: .line 497
      StackMap locals:
      StackMap stack:
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aload_2:()V
        35: .line 499
      StackMap locals:
      StackMap stack:
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_arraylength:()V
        36: .line 500
            aload 1 /* cb */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.parameterTypes:[Ljava/lang/Class;
            arraylength
            i2s
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_sipush:(S)V
        37: .line 501
            aload 1 /* cb */
            aload 3 /* successLabel */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_if_icmpeq:(Ljdk/internal/reflect/Label;)V
        38: .line 502
            aload 1 /* cb */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.illegalArgumentClass:S
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_new:(S)V
        39: .line 503
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_dup:()V
        40: .line 504
            aload 1 /* cb */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.illegalArgumentCtorIdx:S
            iconst_0
            iconst_0
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokespecial:(SII)V
        41: .line 505
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_athrow:()V
        42: .line 506
            aload 3 /* successLabel */
            invokevirtual jdk.internal.reflect.Label.bind:()V
        43: .line 512
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.nonPrimitiveParametersBaseIdx:S
            istore 4 /* paramTypeCPIdx */
        start local 4 // short paramTypeCPIdx
        44: .line 513
            aconst_null
            astore 5 /* nextParamLabel */
        start local 5 // jdk.internal.reflect.Label nextParamLabel
        45: .line 514
            iconst_1
            istore 6 /* count */
        start local 6 // byte count
        46: .line 516
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        47: goto 108
        48: .line 517
      StackMap locals: jdk.internal.reflect.MethodAccessorGenerator jdk.internal.reflect.ClassFileAssembler int jdk.internal.reflect.Label int jdk.internal.reflect.Label int int
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.parameterTypes:[Ljava/lang/Class;
            iload 7 /* i */
            aaload
            astore 8 /* paramType */
        start local 8 // java.lang.Class paramType
        49: .line 518
            iload 6 /* count */
            aload 0 /* this */
            aload 8 /* paramType */
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.typeSizeInStackSlots:(Ljava/lang/Class;)I
            i2b
            iadd
            i2b
            istore 6 /* count */
        50: .line 519
            aload 5 /* nextParamLabel */
            ifnull 53
        51: .line 520
            aload 5 /* nextParamLabel */
            invokevirtual jdk.internal.reflect.Label.bind:()V
        52: .line 521
            aconst_null
            astore 5 /* nextParamLabel */
        53: .line 526
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.isConstructor:Z
            ifeq 56
        54: .line 527
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aload_1:()V
        55: .line 528
            goto 57
        56: .line 529
      StackMap locals:
      StackMap stack:
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aload_2:()V
        57: .line 531
      StackMap locals:
      StackMap stack:
            aload 1 /* cb */
            iload 7 /* i */
            i2s
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_sipush:(S)V
        58: .line 532
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aaload:()V
        59: .line 533
            aload 8 /* paramType */
            invokestatic jdk.internal.reflect.MethodAccessorGenerator.isPrimitive:(Ljava/lang/Class;)Z
            ifeq 105
        60: .line 537
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.isConstructor:Z
            ifeq 63
        61: .line 538
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_astore_2:()V
        62: .line 539
            goto 64
        63: .line 540
      StackMap locals:
      StackMap stack:
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_astore_3:()V
        64: .line 560
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 9 /* l */
        start local 9 // jdk.internal.reflect.Label l
        65: .line 561
            new jdk.internal.reflect.Label
            dup
            invokespecial jdk.internal.reflect.Label.<init>:()V
            astore 5 /* nextParamLabel */
        66: .line 563
            iconst_0
            istore 10 /* j */
        start local 10 // int j
        67: goto 94
        68: .line 564
      StackMap locals: jdk.internal.reflect.Label int
      StackMap stack:
            getstatic jdk.internal.reflect.MethodAccessorGenerator.primitiveTypes:[Ljava/lang/Class;
            iload 10 /* j */
            aaload
            astore 11 /* c */
        start local 11 // java.lang.Class c
        69: .line 565
            aload 11 /* c */
            aload 8 /* paramType */
            invokestatic jdk.internal.reflect.MethodAccessorGenerator.canWidenTo:(Ljava/lang/Class;Ljava/lang/Class;)Z
            ifeq 93
        70: .line 566
            aload 9 /* l */
            ifnull 72
        71: .line 567
            aload 9 /* l */
            invokevirtual jdk.internal.reflect.Label.bind:()V
        72: .line 570
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.isConstructor:Z
            ifeq 75
        73: .line 571
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aload_2:()V
        74: .line 572
            goto 76
        75: .line 573
      StackMap locals:
      StackMap stack:
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aload_3:()V
        76: .line 575
      StackMap locals:
      StackMap stack:
            aload 1 /* cb */
            aload 0 /* this */
            aload 11 /* c */
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.indexForPrimitiveType:(Ljava/lang/Class;)S
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_instanceof:(S)V
        77: .line 576
            new jdk.internal.reflect.Label
            dup
            invokespecial jdk.internal.reflect.Label.<init>:()V
            astore 9 /* l */
        78: .line 577
            aload 1 /* cb */
            aload 9 /* l */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_ifeq:(Ljdk/internal/reflect/Label;)V
        79: .line 578
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.isConstructor:Z
            ifeq 82
        80: .line 579
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aload_2:()V
        81: .line 580
            goto 83
        82: .line 581
      StackMap locals:
      StackMap stack:
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aload_3:()V
        83: .line 583
      StackMap locals:
      StackMap stack:
            aload 1 /* cb */
            aload 0 /* this */
            aload 11 /* c */
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.indexForPrimitiveType:(Ljava/lang/Class;)S
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_checkcast:(S)V
        84: .line 584
            aload 1 /* cb */
            aload 0 /* this */
            aload 11 /* c */
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.unboxingMethodForPrimitiveType:(Ljava/lang/Class;)S
        85: .line 585
            iconst_0
        86: .line 586
            aload 0 /* this */
            aload 11 /* c */
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.typeSizeInStackSlots:(Ljava/lang/Class;)I
        87: .line 584
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokevirtual:(SII)V
        88: .line 587
            aload 1 /* cb */
        89: .line 588
            aload 11 /* c */
        90: .line 589
            aload 8 /* paramType */
        91: .line 587
            invokestatic jdk.internal.reflect.MethodAccessorGenerator.emitWideningBytecodeForPrimitiveConversion:(Ljdk/internal/reflect/ClassFileAssembler;Ljava/lang/Class;Ljava/lang/Class;)V
        92: .line 590
            aload 1 /* cb */
            aload 5 /* nextParamLabel */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_goto:(Ljdk/internal/reflect/Label;)V
        end local 11 // java.lang.Class c
        93: .line 563
      StackMap locals:
      StackMap stack:
            iinc 10 /* j */ 1
      StackMap locals:
      StackMap stack:
        94: iload 10 /* j */
            getstatic jdk.internal.reflect.MethodAccessorGenerator.primitiveTypes:[Ljava/lang/Class;
            arraylength
            if_icmplt 68
        end local 10 // int j
        95: .line 594
            aload 9 /* l */
            ifnonnull 99
        96: .line 595
            new java.lang.InternalError
            dup
        97: .line 596
            ldc "Must have found at least identity conversion"
        98: .line 595
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
        99: .line 603
      StackMap locals:
      StackMap stack:
            aload 9 /* l */
            invokevirtual jdk.internal.reflect.Label.bind:()V
       100: .line 604
            aload 1 /* cb */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.illegalArgumentClass:S
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_new:(S)V
       101: .line 605
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_dup:()V
       102: .line 606
            aload 1 /* cb */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.illegalArgumentCtorIdx:S
            iconst_0
            iconst_0
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokespecial:(SII)V
       103: .line 607
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_athrow:()V
        end local 9 // jdk.internal.reflect.Label l
       104: .line 608
            goto 107
       105: .line 610
      StackMap locals:
      StackMap stack:
            aload 1 /* cb */
            iload 4 /* paramTypeCPIdx */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_checkcast:(S)V
       106: .line 611
            iload 4 /* paramTypeCPIdx */
            iconst_2
            invokestatic jdk.internal.reflect.MethodAccessorGenerator.add:(SS)S
            istore 4 /* paramTypeCPIdx */
        end local 8 // java.lang.Class paramType
       107: .line 516
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
       108: iload 7 /* i */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.parameterTypes:[Ljava/lang/Class;
            arraylength
            if_icmplt 48
        end local 7 // int i
       109: .line 616
            aload 5 /* nextParamLabel */
            ifnull 111
       110: .line 617
            aload 5 /* nextParamLabel */
            invokevirtual jdk.internal.reflect.Label.bind:()V
       111: .line 620
      StackMap locals:
      StackMap stack:
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.getLength:()S
            istore 7 /* invokeStartPC */
        start local 7 // short invokeStartPC
       112: .line 623
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.isConstructor:Z
            ifeq 115
       113: .line 624
            aload 1 /* cb */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.targetMethodRef:S
            iload 6 /* count */
            iconst_0
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokespecial:(SII)V
       114: .line 625
            goto 132
       115: .line 626
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.isStatic:()Z
            ifeq 121
       116: .line 627
            aload 1 /* cb */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.targetMethodRef:S
       117: .line 628
            iload 6 /* count */
       118: .line 629
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.returnType:Ljava/lang/Class;
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.typeSizeInStackSlots:(Ljava/lang/Class;)I
       119: .line 627
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokestatic:(SII)V
       120: .line 630
            goto 132
       121: .line 631
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.isInterface:()Z
            ifeq 128
       122: .line 632
            aload 1 /* cb */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.targetMethodRef:S
       123: .line 633
            iload 6 /* count */
       124: .line 634
            iload 6 /* count */
       125: .line 635
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.returnType:Ljava/lang/Class;
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.typeSizeInStackSlots:(Ljava/lang/Class;)I
       126: .line 632
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokeinterface:(SIBI)V
       127: .line 636
            goto 132
       128: .line 637
      StackMap locals:
      StackMap stack:
            aload 1 /* cb */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.targetMethodRef:S
       129: .line 638
            iload 6 /* count */
       130: .line 639
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.returnType:Ljava/lang/Class;
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.typeSizeInStackSlots:(Ljava/lang/Class;)I
       131: .line 637
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokevirtual:(SII)V
       132: .line 644
      StackMap locals:
      StackMap stack:
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.getLength:()S
            istore 8 /* invokeEndPC */
        start local 8 // short invokeEndPC
       133: .line 646
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.isConstructor:Z
            ifne 142
       134: .line 648
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.returnType:Ljava/lang/Class;
            invokestatic jdk.internal.reflect.MethodAccessorGenerator.isPrimitive:(Ljava/lang/Class;)Z
            ifeq 140
       135: .line 649
            aload 1 /* cb */
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.returnType:Ljava/lang/Class;
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.boxingMethodForPrimitiveType:(Ljava/lang/Class;)S
       136: .line 650
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.returnType:Ljava/lang/Class;
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.typeSizeInStackSlots:(Ljava/lang/Class;)I
       137: .line 651
            iconst_0
       138: .line 649
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokestatic:(SII)V
       139: .line 652
            goto 142
      StackMap locals: int
      StackMap stack:
       140: aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.returnType:Ljava/lang/Class;
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            if_acmpne 142
       141: .line 653
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_aconst_null:()V
       142: .line 656
      StackMap locals:
      StackMap stack:
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_areturn:()V
       143: .line 664
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.getLength:()S
            istore 9 /* classCastHandler */
        start local 9 // short classCastHandler
       144: .line 667
            aload 1 /* cb */
            iconst_1
            invokevirtual jdk.internal.reflect.ClassFileAssembler.setStack:(I)V
       145: .line 668
            aload 1 /* cb */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.toStringIdx:S
            iconst_0
            iconst_1
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokespecial:(SII)V
       146: .line 669
            aload 1 /* cb */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.illegalArgumentClass:S
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_new:(S)V
       147: .line 670
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_dup_x1:()V
       148: .line 671
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_swap:()V
       149: .line 672
            aload 1 /* cb */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.illegalArgumentStringCtorIdx:S
            iconst_1
            iconst_0
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokespecial:(SII)V
       150: .line 673
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_athrow:()V
       151: .line 675
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.getLength:()S
            istore 10 /* invocationTargetHandler */
        start local 10 // short invocationTargetHandler
       152: .line 678
            aload 1 /* cb */
            iconst_1
            invokevirtual jdk.internal.reflect.ClassFileAssembler.setStack:(I)V
       153: .line 679
            aload 1 /* cb */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.invocationTargetClass:S
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_new:(S)V
       154: .line 680
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_dup_x1:()V
       155: .line 681
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_swap:()V
       156: .line 682
            aload 1 /* cb */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.invocationTargetCtorIdx:S
            iconst_1
            iconst_0
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_invokespecial:(SII)V
       157: .line 683
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.opc_athrow:()V
       158: .line 689
            new jdk.internal.reflect.ClassFileAssembler
            dup
            invokespecial jdk.internal.reflect.ClassFileAssembler.<init>:()V
            astore 11 /* exc */
        start local 11 // jdk.internal.reflect.ClassFileAssembler exc
       159: .line 691
            aload 11 /* exc */
            iload 2 /* illegalArgStartPC */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
       160: .line 692
            aload 11 /* exc */
            iload 7 /* invokeStartPC */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
       161: .line 693
            aload 11 /* exc */
            iload 9 /* classCastHandler */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
       162: .line 694
            aload 11 /* exc */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.classCastClass:S
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
       163: .line 696
            aload 11 /* exc */
            iload 2 /* illegalArgStartPC */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
       164: .line 697
            aload 11 /* exc */
            iload 7 /* invokeStartPC */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
       165: .line 698
            aload 11 /* exc */
            iload 9 /* classCastHandler */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
       166: .line 699
            aload 11 /* exc */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.nullPointerClass:S
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
       167: .line 701
            aload 11 /* exc */
            iload 7 /* invokeStartPC */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
       168: .line 702
            aload 11 /* exc */
            iload 8 /* invokeEndPC */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
       169: .line 703
            aload 11 /* exc */
            iload 10 /* invocationTargetHandler */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
       170: .line 704
            aload 11 /* exc */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.throwableClass:S
            invokevirtual jdk.internal.reflect.ClassFileAssembler.emitShort:(S)V
       171: .line 706
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.invokeIdx:S
            aload 1 /* cb */
            invokevirtual jdk.internal.reflect.ClassFileAssembler.getMaxLocals:()S
            aload 1 /* cb */
            aload 11 /* exc */
       172: .line 707
            iconst_1
            newarray 9
            dup
            iconst_0
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.invocationTargetClass:S
            sastore
       173: .line 706
            invokevirtual jdk.internal.reflect.MethodAccessorGenerator.emitMethod:(SILjdk/internal/reflect/ClassFileAssembler;Ljdk/internal/reflect/ClassFileAssembler;[S)V
       174: .line 708
            return
        end local 11 // jdk.internal.reflect.ClassFileAssembler exc
        end local 10 // short invocationTargetHandler
        end local 9 // short classCastHandler
        end local 8 // short invokeEndPC
        end local 7 // short invokeStartPC
        end local 6 // byte count
        end local 5 // jdk.internal.reflect.Label nextParamLabel
        end local 4 // short paramTypeCPIdx
        end local 3 // jdk.internal.reflect.Label successLabel
        end local 2 // short illegalArgStartPC
        end local 1 // jdk.internal.reflect.ClassFileAssembler cb
        end local 0 // jdk.internal.reflect.MethodAccessorGenerator this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0  175     0                     this  Ljdk/internal/reflect/MethodAccessorGenerator;
            3  175     1                       cb  Ljdk/internal/reflect/ClassFileAssembler;
            8  175     2        illegalArgStartPC  S
           15   24     3                        l  Ljdk/internal/reflect/Label;
           25  175     3             successLabel  Ljdk/internal/reflect/Label;
           44  175     4           paramTypeCPIdx  S
           45  175     5           nextParamLabel  Ljdk/internal/reflect/Label;
           46  175     6                    count  B
           47  109     7                        i  I
           49  107     8                paramType  Ljava/lang/Class<*>;
           65  104     9                        l  Ljdk/internal/reflect/Label;
           67   95    10                        j  I
           69   93    11                        c  Ljava/lang/Class<*>;
          112  175     7            invokeStartPC  S
          133  175     8              invokeEndPC  S
          144  175     9         classCastHandler  S
          152  175    10  invocationTargetHandler  S
          159  175    11                      exc  Ljdk/internal/reflect/ClassFileAssembler;

  private boolean usesPrimitiveTypes();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // jdk.internal.reflect.MethodAccessorGenerator this
         0: .line 714
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.returnType:Ljava/lang/Class;
            invokevirtual java.lang.Class.isPrimitive:()Z
            ifeq 2
         1: .line 715
            iconst_1
            ireturn
         2: .line 717
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         3: goto 7
         4: .line 718
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.parameterTypes:[Ljava/lang/Class;
            iload 1 /* i */
            aaload
            invokevirtual java.lang.Class.isPrimitive:()Z
            ifeq 6
         5: .line 719
            iconst_1
            ireturn
         6: .line 717
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 1 /* i */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.parameterTypes:[Ljava/lang/Class;
            arraylength
            if_icmplt 4
        end local 1 // int i
         8: .line 722
            iconst_0
            ireturn
        end local 0 // jdk.internal.reflect.MethodAccessorGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Ljdk/internal/reflect/MethodAccessorGenerator;
            3    8     1     i  I

  private int numNonPrimitiveParameterTypes();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // jdk.internal.reflect.MethodAccessorGenerator this
         0: .line 726
            iconst_0
            istore 1 /* num */
        start local 1 // int num
         1: .line 727
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 6
         3: .line 728
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.parameterTypes:[Ljava/lang/Class;
            iload 2 /* i */
            aaload
            invokevirtual java.lang.Class.isPrimitive:()Z
            ifne 5
         4: .line 729
            iinc 1 /* num */ 1
         5: .line 727
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.parameterTypes:[Ljava/lang/Class;
            arraylength
            if_icmplt 3
        end local 2 // int i
         7: .line 732
            iload 1 /* num */
            ireturn
        end local 1 // int num
        end local 0 // jdk.internal.reflect.MethodAccessorGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljdk/internal/reflect/MethodAccessorGenerator;
            1    8     1   num  I
            2    7     2     i  I

  private boolean isInterface();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.reflect.MethodAccessorGenerator this
         0: .line 736
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.declaringClass:Ljava/lang/Class;
            invokevirtual java.lang.Class.isInterface:()Z
            ireturn
        end local 0 // jdk.internal.reflect.MethodAccessorGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/reflect/MethodAccessorGenerator;

  private java.lang.String buildInternalSignature();
    descriptor: ()Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // jdk.internal.reflect.MethodAccessorGenerator this
         0: .line 740
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* sb */
        start local 1 // java.lang.StringBuilder sb
         1: .line 741
            aload 1 /* sb */
            ldc "("
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         2: .line 742
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: goto 6
         4: .line 743
      StackMap locals: java.lang.StringBuilder int
      StackMap stack:
            aload 1 /* sb */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.parameterTypes:[Ljava/lang/Class;
            iload 2 /* i */
            aaload
            iconst_1
            invokestatic jdk.internal.reflect.MethodAccessorGenerator.getClassName:(Ljava/lang/Class;Z)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         5: .line 742
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.parameterTypes:[Ljava/lang/Class;
            arraylength
            if_icmplt 4
        end local 2 // int i
         7: .line 745
            aload 1 /* sb */
            ldc ")"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         8: .line 746
            aload 1 /* sb */
            aload 0 /* this */
            getfield jdk.internal.reflect.MethodAccessorGenerator.returnType:Ljava/lang/Class;
            iconst_1
            invokestatic jdk.internal.reflect.MethodAccessorGenerator.getClassName:(Ljava/lang/Class;Z)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         9: .line 747
            aload 1 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.lang.StringBuilder sb
        end local 0 // jdk.internal.reflect.MethodAccessorGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Ljdk/internal/reflect/MethodAccessorGenerator;
            1   10     1    sb  Ljava/lang/StringBuilder;
            3    7     2     i  I

  private static synchronized java.lang.String generateName(boolean, boolean);
    descriptor: (ZZ)Ljava/lang/String;
    flags: (0x002a) ACC_PRIVATE, ACC_STATIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // boolean isConstructor
        start local 1 // boolean forSerialization
         0: .line 753
            iload 0 /* isConstructor */
            ifeq 6
         1: .line 754
            iload 1 /* forSerialization */
            ifeq 4
         2: .line 755
            getstatic jdk.internal.reflect.MethodAccessorGenerator.serializationConstructorSymnum:I
            iconst_1
            iadd
            dup
            putstatic jdk.internal.reflect.MethodAccessorGenerator.serializationConstructorSymnum:I
            istore 2 /* num */
        start local 2 // int num
         3: .line 756
            new java.lang.StringBuilder
            dup
            ldc "jdk/internal/reflect/GeneratedSerializationConstructorAccessor"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* num */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // int num
         4: .line 758
      StackMap locals:
      StackMap stack:
            getstatic jdk.internal.reflect.MethodAccessorGenerator.constructorSymnum:I
            iconst_1
            iadd
            dup
            putstatic jdk.internal.reflect.MethodAccessorGenerator.constructorSymnum:I
            istore 2 /* num */
        start local 2 // int num
         5: .line 759
            new java.lang.StringBuilder
            dup
            ldc "jdk/internal/reflect/GeneratedConstructorAccessor"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* num */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // int num
         6: .line 762
      StackMap locals:
      StackMap stack:
            getstatic jdk.internal.reflect.MethodAccessorGenerator.methodSymnum:I
            iconst_1
            iadd
            dup
            putstatic jdk.internal.reflect.MethodAccessorGenerator.methodSymnum:I
            istore 2 /* num */
        start local 2 // int num
         7: .line 763
            new java.lang.StringBuilder
            dup
            ldc "jdk/internal/reflect/GeneratedMethodAccessor"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* num */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 2 // int num
        end local 1 // boolean forSerialization
        end local 0 // boolean isConstructor
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    8     0     isConstructor  Z
            0    8     1  forSerialization  Z
            3    4     2               num  I
            5    6     2               num  I
            7    8     2               num  I
    MethodParameters:
                  Name  Flags
      isConstructor     
      forSerialization  
}
SourceFile: "MethodAccessorGenerator.java"
NestMembers:
  jdk.internal.reflect.MethodAccessorGenerator$1
InnerClasses:
  jdk.internal.reflect.MethodAccessorGenerator$1