class java.lang.invoke.InvokerBytecodeGenerator
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: java.lang.invoke.InvokerBytecodeGenerator
  super_class: java.lang.Object
{
  private static final java.lang.String MH;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "java/lang/invoke/MethodHandle"

  private static final java.lang.String MHI;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "java/lang/invoke/MethodHandleImpl"

  private static final java.lang.String LF;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "java/lang/invoke/LambdaForm"

  private static final java.lang.String LFN;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "java/lang/invoke/LambdaForm$Name"

  private static final java.lang.String CLS;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "java/lang/Class"

  private static final java.lang.String OBJ;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "java/lang/Object"

  private static final java.lang.String OBJARY;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "[Ljava/lang/Object;"

  private static final java.lang.String LOOP_CLAUSES;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "java/lang/invoke/MethodHandleImpl$LoopClauses"

  private static final java.lang.String MHARY2;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "[[Ljava/lang/invoke/MethodHandle;"

  private static final java.lang.String LF_SIG;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "Ljava/lang/invoke/LambdaForm;"

  private static final java.lang.String LFN_SIG;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "Ljava/lang/invoke/LambdaForm$Name;"

  private static final java.lang.String LL_SIG;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "(Ljava/lang/Object;)Ljava/lang/Object;"

  private static final java.lang.String LLV_SIG;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "(Ljava/lang/Object;Ljava/lang/Object;)V"

  private static final java.lang.String CLASS_PREFIX;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "java/lang/invoke/LambdaForm$"

  private static final java.lang.String SOURCE_PREFIX;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "LambdaForm$"

  static final java.lang.String INVOKER_SUPER_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "java/lang/Object"

  private final java.lang.String className;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.invoke.LambdaForm lambdaForm;
    descriptor: Ljava/lang/invoke/LambdaForm;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.String invokerName;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.invoke.MethodType invokerType;
    descriptor: Ljava/lang/invoke/MethodType;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private int[] localsMap;
    descriptor: [I
    flags: (0x0002) ACC_PRIVATE

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

  private jdk.internal.org.objectweb.asm.ClassWriter cw;
    descriptor: Ljdk/internal/org/objectweb/asm/ClassWriter;
    flags: (0x0002) ACC_PRIVATE

  private jdk.internal.org.objectweb.asm.MethodVisitor mv;
    descriptor: Ljdk/internal/org/objectweb/asm/MethodVisitor;
    flags: (0x0002) ACC_PRIVATE

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

  private java.lang.String lastInternalName;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  private static final java.lang.invoke.MemberName$Factory MEMBERNAME_FACTORY;
    descriptor: Ljava/lang/invoke/MemberName$Factory;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.Class<?> HOST_CLASS;
    descriptor: Ljava/lang/Class;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/lang/Class<*>;

  private static final java.util.HashMap<java.lang.String, java.lang.Integer> DUMP_CLASS_FILES_COUNTERS;
    descriptor: Ljava/util/HashMap;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/Integer;>;

  private static final java.io.File DUMP_CLASS_FILES_DIR;
    descriptor: Ljava/io/File;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final java.util.ArrayList<java.lang.invoke.InvokerBytecodeGenerator$CpPatch> cpPatches;
    descriptor: Ljava/util/ArrayList;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/ArrayList<Ljava/lang/invoke/InvokerBytecodeGenerator$CpPatch;>;

  private int cph;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  static final java.lang.String LF_HIDDEN_SIG;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final java.lang.String LF_COMPILED_SIG;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final java.lang.String FORCEINLINE_SIG;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final java.lang.String DONTINLINE_SIG;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static final java.lang.String INJECTEDPROFILE_SIG;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  private static java.lang.Class<?>[] STATICALLY_INVOCABLE_PACKAGES;
    descriptor: [Ljava/lang/Class;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Signature: [Ljava/lang/Class<*>;

  private static volatile int[] $SWITCH_TABLE$java$lang$invoke$LambdaForm$BasicType;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  private static volatile int[] $SWITCH_TABLE$sun$invoke$util$Wrapper;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  private static volatile int[] $SWITCH_TABLE$java$lang$invoke$LambdaForm$Kind;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  private static volatile int[] $SWITCH_TABLE$java$lang$invoke$MethodHandleImpl$Intrinsic;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=1, args_size=0
         0: .line 58
            ldc Ljava/lang/invoke/InvokerBytecodeGenerator;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
         3: .line 100
            invokestatic java.lang.invoke.MemberName.getFactory:()Ljava/lang/invoke/MemberName$Factory;
            putstatic java.lang.invoke.InvokerBytecodeGenerator.MEMBERNAME_FACTORY:Ljava/lang/invoke/MemberName$Factory;
         4: .line 101
            ldc Ljava/lang/invoke/LambdaForm;
            putstatic java.lang.invoke.InvokerBytecodeGenerator.HOST_CLASS:Ljava/lang/Class;
         5: .line 159
            getstatic java.lang.invoke.MethodHandleStatics.DUMP_CLASS_FILES:Z
            ifeq 15
         6: .line 160
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putstatic java.lang.invoke.InvokerBytecodeGenerator.DUMP_CLASS_FILES_COUNTERS:Ljava/util/HashMap;
         7: .line 162
            new java.io.File
            dup
            ldc "DUMP_CLASS_FILES"
            invokespecial java.io.File.<init>:(Ljava/lang/String;)V
            astore 0 /* dumpDir */
        start local 0 // java.io.File dumpDir
         8: .line 163
            aload 0 /* dumpDir */
            invokevirtual java.io.File.exists:()Z
            ifne 10
         9: .line 164
            aload 0 /* dumpDir */
            invokevirtual java.io.File.mkdirs:()Z
            pop
        10: .line 166
      StackMap locals: java.io.File
      StackMap stack:
            aload 0 /* dumpDir */
            putstatic java.lang.invoke.InvokerBytecodeGenerator.DUMP_CLASS_FILES_DIR:Ljava/io/File;
        11: .line 167
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "Dumping class files to "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            getstatic java.lang.invoke.InvokerBytecodeGenerator.DUMP_CLASS_FILES_DIR:Ljava/io/File;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "/..."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        end local 0 // java.io.File dumpDir
        12: .line 168
            goto 17
      StackMap locals:
      StackMap stack: java.lang.Exception
        13: astore 0 /* e */
        start local 0 // java.lang.Exception e
        14: .line 169
            aload 0 /* e */
            invokestatic java.lang.invoke.MethodHandleStatics.newInternalError:(Ljava/lang/Exception;)Ljava/lang/InternalError;
            athrow
        end local 0 // java.lang.Exception e
        15: .line 172
      StackMap locals:
      StackMap stack:
            aconst_null
            putstatic java.lang.invoke.InvokerBytecodeGenerator.DUMP_CLASS_FILES_COUNTERS:Ljava/util/HashMap;
        16: .line 173
            aconst_null
            putstatic java.lang.invoke.InvokerBytecodeGenerator.DUMP_CLASS_FILES_DIR:Ljava/io/File;
        17: .line 724
      StackMap locals:
      StackMap stack:
            ldc "Ljava/lang/invoke/LambdaForm$Hidden;"
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.className:(Ljava/lang/String;)Ljava/lang/String;
            putstatic java.lang.invoke.InvokerBytecodeGenerator.LF_HIDDEN_SIG:Ljava/lang/String;
        18: .line 725
            ldc "Ljava/lang/invoke/LambdaForm$Compiled;"
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.className:(Ljava/lang/String;)Ljava/lang/String;
            putstatic java.lang.invoke.InvokerBytecodeGenerator.LF_COMPILED_SIG:Ljava/lang/String;
        19: .line 726
            ldc "Ljdk/internal/vm/annotation/ForceInline;"
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.className:(Ljava/lang/String;)Ljava/lang/String;
            putstatic java.lang.invoke.InvokerBytecodeGenerator.FORCEINLINE_SIG:Ljava/lang/String;
        20: .line 727
            ldc "Ljdk/internal/vm/annotation/DontInline;"
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.className:(Ljava/lang/String;)Ljava/lang/String;
            putstatic java.lang.invoke.InvokerBytecodeGenerator.DONTINLINE_SIG:Ljava/lang/String;
        21: .line 728
            ldc "Ljava/lang/invoke/InjectedProfile;"
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.className:(Ljava/lang/String;)Ljava/lang/String;
            putstatic java.lang.invoke.InvokerBytecodeGenerator.INJECTEDPROFILE_SIG:Ljava/lang/String;
        22: .line 919
            iconst_3
            anewarray java.lang.Class
            dup
            iconst_0
        23: .line 921
            ldc Ljava/lang/Object;
            aastore
            dup
            iconst_1
        24: .line 922
            ldc Ljava/util/Arrays;
            aastore
            dup
            iconst_2
        25: .line 923
            ldc Ljdk/internal/misc/Unsafe;
            aastore
        26: .line 919
            putstatic java.lang.invoke.InvokerBytecodeGenerator.STATICALLY_INVOCABLE_PACKAGES:[Ljava/lang/Class;
        27: .line 925
            return
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            8   12     0  dumpDir  Ljava/io/File;
           14   15     0        e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           7    12      13  Class java.lang.Exception

  private void <init>(java.lang.invoke.LambdaForm, int, java.lang.String, java.lang.String, java.lang.invoke.MethodType);
    descriptor: (Ljava/lang/invoke/LambdaForm;ILjava/lang/String;Ljava/lang/String;Ljava/lang/invoke/MethodType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=6
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.invoke.LambdaForm lambdaForm
        start local 2 // int localsMapSize
        start local 3 // java.lang.String className
        start local 4 // java.lang.String invokerName
        start local 5 // java.lang.invoke.MethodType invokerType
         0: .line 104
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 232
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield java.lang.invoke.InvokerBytecodeGenerator.cpPatches:Ljava/util/ArrayList;
         2: .line 234
            aload 0 /* this */
            iconst_0
            putfield java.lang.invoke.InvokerBytecodeGenerator.cph:I
         3: .line 106
            aload 4 /* invokerName */
            bipush 46
            invokevirtual java.lang.String.indexOf:(I)I
            istore 6 /* p */
        start local 6 // int p
         4: .line 107
            iload 6 /* p */
            iconst_m1
            if_icmple 7
         5: .line 108
            aload 4 /* invokerName */
            iconst_0
            iload 6 /* p */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 3 /* className */
         6: .line 109
            aload 4 /* invokerName */
            iload 6 /* p */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 4 /* invokerName */
         7: .line 111
      StackMap locals: java.lang.invoke.InvokerBytecodeGenerator java.lang.invoke.LambdaForm int java.lang.String java.lang.String java.lang.invoke.MethodType int
      StackMap stack:
            getstatic java.lang.invoke.MethodHandleStatics.DUMP_CLASS_FILES:Z
            ifeq 9
         8: .line 112
            aload 3 /* className */
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.makeDumpableClassName:(Ljava/lang/String;)Ljava/lang/String;
            astore 3 /* className */
         9: .line 114
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* className */
            putfield java.lang.invoke.InvokerBytecodeGenerator.className:Ljava/lang/String;
        10: .line 115
            aload 0 /* this */
            aload 1 /* lambdaForm */
            putfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
        11: .line 116
            aload 0 /* this */
            aload 4 /* invokerName */
            putfield java.lang.invoke.InvokerBytecodeGenerator.invokerName:Ljava/lang/String;
        12: .line 117
            aload 0 /* this */
            aload 5 /* invokerType */
            putfield java.lang.invoke.InvokerBytecodeGenerator.invokerType:Ljava/lang/invoke/MethodType;
        13: .line 118
            aload 0 /* this */
            iload 2 /* localsMapSize */
            iconst_1
            iadd
            newarray 10
            putfield java.lang.invoke.InvokerBytecodeGenerator.localsMap:[I
        14: .line 119
            aload 0 /* this */
            iload 2 /* localsMapSize */
            iconst_1
            iadd
            anewarray java.lang.Class
            putfield java.lang.invoke.InvokerBytecodeGenerator.localClasses:[Ljava/lang/Class;
        15: .line 120
            return
        end local 6 // int p
        end local 5 // java.lang.invoke.MethodType invokerType
        end local 4 // java.lang.String invokerName
        end local 3 // java.lang.String className
        end local 2 // int localsMapSize
        end local 1 // java.lang.invoke.LambdaForm lambdaForm
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   16     0           this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0   16     1     lambdaForm  Ljava/lang/invoke/LambdaForm;
            0   16     2  localsMapSize  I
            0   16     3      className  Ljava/lang/String;
            0   16     4    invokerName  Ljava/lang/String;
            0   16     5    invokerType  Ljava/lang/invoke/MethodType;
            4   16     6              p  I
    MethodParameters:
               Name  Flags
      lambdaForm     
      localsMapSize  
      className      
      invokerName    
      invokerType    

  private void <init>(java.lang.String, java.lang.String, java.lang.invoke.MethodType);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/invoke/MethodType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.String className
        start local 2 // java.lang.String invokerName
        start local 3 // java.lang.invoke.MethodType invokerType
         0: .line 124
            aload 0 /* this */
            aconst_null
            aload 3 /* invokerType */
            invokevirtual java.lang.invoke.MethodType.parameterCount:()I
         1: .line 125
            aload 1 /* className */
            aload 2 /* invokerName */
            aload 3 /* invokerType */
            invokespecial java.lang.invoke.InvokerBytecodeGenerator.<init>:(Ljava/lang/invoke/LambdaForm;ILjava/lang/String;Ljava/lang/String;Ljava/lang/invoke/MethodType;)V
         2: .line 127
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         3: goto 6
         4: .line 128
      StackMap locals: java.lang.invoke.InvokerBytecodeGenerator java.lang.String java.lang.String java.lang.invoke.MethodType int
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.localsMap:[I
            iload 4 /* i */
            aload 3 /* invokerType */
            invokevirtual java.lang.invoke.MethodType.parameterSlotCount:()I
            aload 3 /* invokerType */
            iload 4 /* i */
            invokevirtual java.lang.invoke.MethodType.parameterSlotDepth:(I)I
            isub
            iastore
         5: .line 127
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 4 /* i */
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.localsMap:[I
            arraylength
            if_icmplt 4
        end local 4 // int i
         7: .line 130
            return
        end local 3 // java.lang.invoke.MethodType invokerType
        end local 2 // java.lang.String invokerName
        end local 1 // java.lang.String className
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    8     0         this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    8     1    className  Ljava/lang/String;
            0    8     2  invokerName  Ljava/lang/String;
            0    8     3  invokerType  Ljava/lang/invoke/MethodType;
            3    7     4            i  I
    MethodParameters:
             Name  Flags
      className    
      invokerName  
      invokerType  

  private void <init>(java.lang.String, java.lang.invoke.LambdaForm, java.lang.invoke.MethodType);
    descriptor: (Ljava/lang/String;Ljava/lang/invoke/LambdaForm;Ljava/lang/invoke/MethodType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.String className
        start local 2 // java.lang.invoke.LambdaForm form
        start local 3 // java.lang.invoke.MethodType invokerType
         0: .line 134
            aload 0 /* this */
            aload 1 /* className */
            aload 2 /* form */
            invokevirtual java.lang.invoke.LambdaForm.lambdaName:()Ljava/lang/String;
            aload 2 /* form */
            aload 3 /* invokerType */
            invokespecial java.lang.invoke.InvokerBytecodeGenerator.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/invoke/LambdaForm;Ljava/lang/invoke/MethodType;)V
         1: .line 135
            return
        end local 3 // java.lang.invoke.MethodType invokerType
        end local 2 // java.lang.invoke.LambdaForm form
        end local 1 // java.lang.String className
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    2     1    className  Ljava/lang/String;
            0    2     2         form  Ljava/lang/invoke/LambdaForm;
            0    2     3  invokerType  Ljava/lang/invoke/MethodType;
    MethodParameters:
             Name  Flags
      className    
      form         
      invokerType  

  void <init>(java.lang.String, java.lang.String, java.lang.invoke.LambdaForm, java.lang.invoke.MethodType);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/invoke/LambdaForm;Ljava/lang/invoke/MethodType;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=9, args_size=5
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.String className
        start local 2 // java.lang.String invokerName
        start local 3 // java.lang.invoke.LambdaForm form
        start local 4 // java.lang.invoke.MethodType invokerType
         0: .line 140
            aload 0 /* this */
            aload 3 /* form */
            aload 3 /* form */
            getfield java.lang.invoke.LambdaForm.names:[Ljava/lang/invoke/LambdaForm$Name;
            arraylength
         1: .line 141
            aload 1 /* className */
            aload 2 /* invokerName */
            aload 4 /* invokerType */
            invokespecial java.lang.invoke.InvokerBytecodeGenerator.<init>:(Ljava/lang/invoke/LambdaForm;ILjava/lang/String;Ljava/lang/String;Ljava/lang/invoke/MethodType;)V
         2: .line 143
            aload 3 /* form */
            getfield java.lang.invoke.LambdaForm.names:[Ljava/lang/invoke/LambdaForm$Name;
            astore 5 /* names */
        start local 5 // java.lang.invoke.LambdaForm$Name[] names
         3: .line 144
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         4: iconst_0
            istore 7 /* index */
        start local 7 // int index
         5: goto 11
         6: .line 145
      StackMap locals: java.lang.invoke.InvokerBytecodeGenerator java.lang.String java.lang.String java.lang.invoke.LambdaForm java.lang.invoke.MethodType java.lang.invoke.LambdaForm$Name[] int int
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.localsMap:[I
            iload 6 /* i */
            iload 7 /* index */
            iastore
         7: .line 146
            iload 6 /* i */
            aload 5 /* names */
            arraylength
            if_icmpge 10
         8: .line 147
            aload 5 /* names */
            iload 6 /* i */
            aaload
            invokevirtual java.lang.invoke.LambdaForm$Name.type:()Ljava/lang/invoke/LambdaForm$BasicType;
            astore 8 /* type */
        start local 8 // java.lang.invoke.LambdaForm$BasicType type
         9: .line 148
            iload 7 /* index */
            aload 8 /* type */
            invokevirtual java.lang.invoke.LambdaForm$BasicType.basicTypeSlots:()I
            iadd
            istore 7 /* index */
        end local 8 // java.lang.invoke.LambdaForm$BasicType type
        10: .line 144
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 6 /* i */
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.localsMap:[I
            arraylength
            if_icmplt 6
        end local 7 // int index
        end local 6 // int i
        12: .line 151
            return
        end local 5 // java.lang.invoke.LambdaForm$Name[] names
        end local 4 // java.lang.invoke.MethodType invokerType
        end local 3 // java.lang.invoke.LambdaForm form
        end local 2 // java.lang.String invokerName
        end local 1 // java.lang.String className
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   13     0         this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0   13     1    className  Ljava/lang/String;
            0   13     2  invokerName  Ljava/lang/String;
            0   13     3         form  Ljava/lang/invoke/LambdaForm;
            0   13     4  invokerType  Ljava/lang/invoke/MethodType;
            3   13     5        names  [Ljava/lang/invoke/LambdaForm$Name;
            4   12     6            i  I
            5   12     7        index  I
            9   10     8         type  Ljava/lang/invoke/LambdaForm$BasicType;
    MethodParameters:
             Name  Flags
      className    
      invokerName  
      form         
      invokerType  

  private void maybeDump(byte[]);
    descriptor: ([B)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // byte[] classFile
         0: .line 178
            getstatic java.lang.invoke.MethodHandleStatics.DUMP_CLASS_FILES:Z
            ifeq 2
         1: .line 179
            new java.lang.StringBuilder
            dup
            ldc "java/lang/invoke/LambdaForm$"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.className:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aload 1 /* classFile */
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.maybeDump:(Ljava/lang/String;[B)V
         2: .line 181
      StackMap locals:
      StackMap stack:
            return
        end local 1 // byte[] classFile
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    3     1  classFile  [B
    MethodParameters:
           Name  Flags
      classFile  final

  static void maybeDump(java.lang.String, byte[]);
    descriptor: (Ljava/lang/String;[B)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.String className
        start local 1 // byte[] classFile
         0: .line 185
            getstatic java.lang.invoke.MethodHandleStatics.DUMP_CLASS_FILES:Z
            ifeq 3
         1: .line 187
            new java.lang.invoke.InvokerBytecodeGenerator$1
            dup
            aload 0 /* className */
            aload 1 /* classFile */
            invokespecial java.lang.invoke.InvokerBytecodeGenerator$1.<init>:(Ljava/lang/String;[B)V
         2: .line 186
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            pop
         3: .line 204
      StackMap locals:
      StackMap stack:
            return
        end local 1 // byte[] classFile
        end local 0 // java.lang.String className
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0  className  Ljava/lang/String;
            0    4     1  classFile  [B
    MethodParameters:
           Name  Flags
      className  final
      classFile  final

  private static java.lang.String makeDumpableClassName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // java.lang.String className
         0: .line 208
            getstatic java.lang.invoke.InvokerBytecodeGenerator.DUMP_CLASS_FILES_COUNTERS:Ljava/util/HashMap;
            dup
            astore 2
            monitorenter
         1: .line 209
            getstatic java.lang.invoke.InvokerBytecodeGenerator.DUMP_CLASS_FILES_COUNTERS:Ljava/util/HashMap;
            aload 0 /* className */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.Integer
            astore 1 /* ctr */
        start local 1 // java.lang.Integer ctr
         2: .line 210
            aload 1 /* ctr */
            ifnonnull 3
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            astore 1 /* ctr */
         3: .line 211
      StackMap locals: java.lang.Integer java.util.HashMap
      StackMap stack:
            getstatic java.lang.invoke.InvokerBytecodeGenerator.DUMP_CLASS_FILES_COUNTERS:Ljava/util/HashMap;
            aload 0 /* className */
            aload 1 /* ctr */
            invokevirtual java.lang.Integer.intValue:()I
            iconst_1
            iadd
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 208
            aload 2
            monitorexit
         5: goto 8
        end local 1 // java.lang.Integer ctr
      StackMap locals: java.lang.String top java.util.HashMap
      StackMap stack: java.lang.Throwable
         6: aload 2
            monitorexit
         7: athrow
        start local 1 // java.lang.Integer ctr
         8: .line 213
      StackMap locals: java.lang.String java.lang.Integer
      StackMap stack:
            aload 1 /* ctr */
            invokevirtual java.lang.Integer.toString:()Ljava/lang/String;
            astore 2 /* sfx */
        start local 2 // java.lang.String sfx
         9: .line 214
            goto 11
        10: .line 215
      StackMap locals: java.lang.String
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "0"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* sfx */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* sfx */
        11: .line 214
      StackMap locals:
      StackMap stack:
            aload 2 /* sfx */
            invokevirtual java.lang.String.length:()I
            iconst_3
            if_icmplt 10
        12: .line 216
            new java.lang.StringBuilder
            dup
            aload 0 /* className */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* sfx */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 0 /* className */
        13: .line 217
            aload 0 /* className */
            areturn
        end local 2 // java.lang.String sfx
        end local 1 // java.lang.Integer ctr
        end local 0 // java.lang.String className
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   14     0  className  Ljava/lang/String;
            2    6     1        ctr  Ljava/lang/Integer;
            8   14     1        ctr  Ljava/lang/Integer;
            9   14     2        sfx  Ljava/lang/String;
      Exception table:
        from    to  target  type
           1     5       6  any
           6     7       6  any
    MethodParameters:
           Name  Flags
      className  

  java.lang.String constantPlaceholder(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.Object arg
         0: .line 237
            new java.lang.StringBuilder
            dup
            ldc "CONSTANT_PLACEHOLDER_"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            dup
            getfield java.lang.invoke.InvokerBytecodeGenerator.cph:I
            dup_x1
            iconst_1
            iadd
            putfield java.lang.invoke.InvokerBytecodeGenerator.cph:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* cpPlaceholder */
        start local 2 // java.lang.String cpPlaceholder
         1: .line 238
            getstatic java.lang.invoke.MethodHandleStatics.DUMP_CLASS_FILES:Z
            ifeq 2
            new java.lang.StringBuilder
            dup
            aload 2 /* cpPlaceholder */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " <<"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* arg */
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.debugString:(Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ">>"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* cpPlaceholder */
         2: .line 241
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.cw:Ljdk/internal/org/objectweb/asm/ClassWriter;
            aload 2 /* cpPlaceholder */
            invokevirtual jdk.internal.org.objectweb.asm.ClassWriter.newConst:(Ljava/lang/Object;)I
            istore 3 /* index */
        start local 3 // int index
         3: .line 242
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.cpPatches:Ljava/util/ArrayList;
            new java.lang.invoke.InvokerBytecodeGenerator$CpPatch
            dup
            aload 0 /* this */
            iload 3 /* index */
            aload 1 /* arg */
            invokespecial java.lang.invoke.InvokerBytecodeGenerator$CpPatch.<init>:(Ljava/lang/invoke/InvokerBytecodeGenerator;ILjava/lang/Object;)V
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         4: .line 243
            aload 2 /* cpPlaceholder */
            areturn
        end local 3 // int index
        end local 2 // java.lang.String cpPlaceholder
        end local 1 // java.lang.Object arg
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    5     0           this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    5     1            arg  Ljava/lang/Object;
            1    5     2  cpPlaceholder  Ljava/lang/String;
            3    5     3          index  I
    MethodParameters:
      Name  Flags
      arg   

  java.lang.Object[] cpPatches(byte[]);
    descriptor: ([B)[Ljava/lang/Object;
    flags: (0x0000) 
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // byte[] classFile
         0: .line 247
            aload 1 /* classFile */
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.getConstantPoolSize:([B)I
            istore 2 /* size */
        start local 2 // int size
         1: .line 248
            iload 2 /* size */
            anewarray java.lang.Object
            astore 3 /* res */
        start local 3 // java.lang.Object[] res
         2: .line 249
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.cpPatches:Ljava/util/ArrayList;
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            astore 5
            goto 7
      StackMap locals: java.lang.invoke.InvokerBytecodeGenerator byte[] int java.lang.Object[] top java.util.Iterator
      StackMap stack:
         3: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.invoke.InvokerBytecodeGenerator$CpPatch
            astore 4 /* p */
        start local 4 // java.lang.invoke.InvokerBytecodeGenerator$CpPatch p
         4: .line 250
            aload 4 /* p */
            getfield java.lang.invoke.InvokerBytecodeGenerator$CpPatch.index:I
            iload 2 /* size */
            if_icmplt 6
         5: .line 251
            new java.lang.InternalError
            dup
            new java.lang.StringBuilder
            dup
            ldc "in cpool["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* size */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc "]: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* p */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "\n"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* classFile */
            bipush 20
            invokestatic java.util.Arrays.copyOf:([BI)[B
            invokestatic java.util.Arrays.toString:([B)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 252
      StackMap locals: java.lang.invoke.InvokerBytecodeGenerator byte[] int java.lang.Object[] java.lang.invoke.InvokerBytecodeGenerator$CpPatch java.util.Iterator
      StackMap stack:
            aload 3 /* res */
            aload 4 /* p */
            getfield java.lang.invoke.InvokerBytecodeGenerator$CpPatch.index:I
            aload 4 /* p */
            getfield java.lang.invoke.InvokerBytecodeGenerator$CpPatch.value:Ljava/lang/Object;
            aastore
        end local 4 // java.lang.invoke.InvokerBytecodeGenerator$CpPatch p
         7: .line 249
      StackMap locals: java.lang.invoke.InvokerBytecodeGenerator byte[] int java.lang.Object[] top java.util.Iterator
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         8: .line 254
            aload 3 /* res */
            areturn
        end local 3 // java.lang.Object[] res
        end local 2 // int size
        end local 1 // byte[] classFile
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    9     1  classFile  [B
            1    9     2       size  I
            2    9     3        res  [Ljava/lang/Object;
            4    7     4          p  Ljava/lang/invoke/InvokerBytecodeGenerator$CpPatch;
    MethodParameters:
           Name  Flags
      classFile  

  private static java.lang.String debugString(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=3, args_size=1
        start local 0 // java.lang.Object arg
         0: .line 258
            aload 0 /* arg */
            instanceof java.lang.invoke.MethodHandle
            ifeq 6
         1: .line 259
            aload 0 /* arg */
            checkcast java.lang.invoke.MethodHandle
            astore 1 /* mh */
        start local 1 // java.lang.invoke.MethodHandle mh
         2: .line 260
            aload 1 /* mh */
            invokevirtual java.lang.invoke.MethodHandle.internalMemberName:()Ljava/lang/invoke/MemberName;
            astore 2 /* member */
        start local 2 // java.lang.invoke.MemberName member
         3: .line 261
            aload 2 /* member */
            ifnull 5
         4: .line 262
            aload 2 /* member */
            invokevirtual java.lang.invoke.MemberName.toString:()Ljava/lang/String;
            areturn
         5: .line 263
      StackMap locals: java.lang.invoke.MethodHandle java.lang.invoke.MemberName
      StackMap stack:
            aload 1 /* mh */
            invokevirtual java.lang.invoke.MethodHandle.debugString:()Ljava/lang/String;
            areturn
        end local 2 // java.lang.invoke.MemberName member
        end local 1 // java.lang.invoke.MethodHandle mh
         6: .line 265
      StackMap locals:
      StackMap stack:
            aload 0 /* arg */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            areturn
        end local 0 // java.lang.Object arg
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0     arg  Ljava/lang/Object;
            2    6     1      mh  Ljava/lang/invoke/MethodHandle;
            3    6     2  member  Ljava/lang/invoke/MemberName;
    MethodParameters:
      Name  Flags
      arg   

  private static int getConstantPoolSize(byte[]);
    descriptor: ([B)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // byte[] classFile
         0: .line 280
            aload 0 /* classFile */
            bipush 8
            baload
            sipush 255
            iand
            bipush 8
            ishl
            aload 0 /* classFile */
            bipush 9
            baload
            sipush 255
            iand
            ior
            ireturn
        end local 0 // byte[] classFile
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0  classFile  [B
    MethodParameters:
           Name  Flags
      classFile  

  private java.lang.invoke.MemberName loadMethod(byte[]);
    descriptor: ([B)Ljava/lang/invoke/MemberName;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // byte[] classFile
         0: .line 287
            aload 1 /* classFile */
            aload 0 /* this */
            aload 1 /* classFile */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.cpPatches:([B)[Ljava/lang/Object;
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.loadAndInitializeInvokerClass:([B[Ljava/lang/Object;)Ljava/lang/Class;
            astore 2 /* invokerClass */
        start local 2 // java.lang.Class invokerClass
         1: .line 288
            aload 2 /* invokerClass */
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.invokerName:Ljava/lang/String;
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.invokerType:Ljava/lang/invoke/MethodType;
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.resolveInvokerMember:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MemberName;
            areturn
        end local 2 // java.lang.Class invokerClass
        end local 1 // byte[] classFile
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    2     1     classFile  [B
            1    2     2  invokerClass  Ljava/lang/Class<*>;
    MethodParameters:
           Name  Flags
      classFile  

  private static java.lang.Class<?> loadAndInitializeInvokerClass(byte[], []);
    descriptor: ([B[Ljava/lang/Object;)Ljava/lang/Class;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // byte[] classBytes
        start local 1 // java.lang.Object[] patches
         0: .line 295
            getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
            getstatic java.lang.invoke.InvokerBytecodeGenerator.HOST_CLASS:Ljava/lang/Class;
            aload 0 /* classBytes */
            aload 1 /* patches */
            invokevirtual jdk.internal.misc.Unsafe.defineAnonymousClass:(Ljava/lang/Class;[B[Ljava/lang/Object;)Ljava/lang/Class;
            astore 2 /* invokerClass */
        start local 2 // java.lang.Class invokerClass
         1: .line 296
            getstatic java.lang.invoke.MethodHandleStatics.UNSAFE:Ljdk/internal/misc/Unsafe;
            aload 2 /* invokerClass */
            invokevirtual jdk.internal.misc.Unsafe.ensureClassInitialized:(Ljava/lang/Class;)V
         2: .line 297
            aload 2 /* invokerClass */
            areturn
        end local 2 // java.lang.Class invokerClass
        end local 1 // java.lang.Object[] patches
        end local 0 // byte[] classBytes
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0    classBytes  [B
            0    3     1       patches  [Ljava/lang/Object;
            1    3     2  invokerClass  Ljava/lang/Class<*>;
    Signature: ([B[Ljava/lang/Object;)Ljava/lang/Class<*>;
    MethodParameters:
            Name  Flags
      classBytes  
      patches     

  private static java.lang.invoke.MemberName resolveInvokerMember(java.lang.Class<?>, java.lang.String, java.lang.invoke.MethodType);
    descriptor: (Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MemberName;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // java.lang.Class invokerClass
        start local 1 // java.lang.String name
        start local 2 // java.lang.invoke.MethodType type
         0: .line 301
            new java.lang.invoke.MemberName
            dup
            aload 0 /* invokerClass */
            aload 1 /* name */
            aload 2 /* type */
            bipush 6
            invokespecial java.lang.invoke.MemberName.<init>:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;B)V
            astore 3 /* member */
        start local 3 // java.lang.invoke.MemberName member
         1: .line 303
            getstatic java.lang.invoke.InvokerBytecodeGenerator.MEMBERNAME_FACTORY:Ljava/lang/invoke/MemberName$Factory;
            bipush 6
            aload 3 /* member */
            getstatic java.lang.invoke.InvokerBytecodeGenerator.HOST_CLASS:Ljava/lang/Class;
            ldc Ljava/lang/ReflectiveOperationException;
            invokevirtual java.lang.invoke.MemberName$Factory.resolveOrFail:(BLjava/lang/invoke/MemberName;Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MemberName;
            astore 3 /* member */
         2: .line 304
            goto 5
      StackMap locals: java.lang.Class java.lang.String java.lang.invoke.MethodType java.lang.invoke.MemberName
      StackMap stack: java.lang.ReflectiveOperationException
         3: astore 4 /* e */
        start local 4 // java.lang.ReflectiveOperationException e
         4: .line 305
            aload 4 /* e */
            invokestatic java.lang.invoke.MethodHandleStatics.newInternalError:(Ljava/lang/Exception;)Ljava/lang/InternalError;
            athrow
        end local 4 // java.lang.ReflectiveOperationException e
         5: .line 307
      StackMap locals:
      StackMap stack:
            aload 3 /* member */
            areturn
        end local 3 // java.lang.invoke.MemberName member
        end local 2 // java.lang.invoke.MethodType type
        end local 1 // java.lang.String name
        end local 0 // java.lang.Class invokerClass
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    6     0  invokerClass  Ljava/lang/Class<*>;
            0    6     1          name  Ljava/lang/String;
            0    6     2          type  Ljava/lang/invoke/MethodType;
            1    6     3        member  Ljava/lang/invoke/MemberName;
            4    5     4             e  Ljava/lang/ReflectiveOperationException;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.ReflectiveOperationException
    Signature: (Ljava/lang/Class<*>;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MemberName;
    MethodParameters:
              Name  Flags
      invokerClass  
      name          
      type          

  private jdk.internal.org.objectweb.asm.ClassWriter classFilePrologue();
    descriptor: ()Ljdk/internal/org/objectweb/asm/ClassWriter;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=1, args_size=1
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
         0: .line 315
            aload 0 /* this */
            new jdk.internal.org.objectweb.asm.ClassWriter
            dup
            iconst_3
            invokespecial jdk.internal.org.objectweb.asm.ClassWriter.<init>:(I)V
            putfield java.lang.invoke.InvokerBytecodeGenerator.cw:Ljdk/internal/org/objectweb/asm/ClassWriter;
         1: .line 316
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.cw:Ljdk/internal/org/objectweb/asm/ClassWriter;
            bipush 52
            bipush 48
         2: .line 317
            new java.lang.StringBuilder
            dup
            ldc "java/lang/invoke/LambdaForm$"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.className:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aconst_null
            ldc "java/lang/Object"
            aconst_null
         3: .line 316
            invokevirtual jdk.internal.org.objectweb.asm.ClassWriter.visit:(IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V
         4: .line 318
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.cw:Ljdk/internal/org/objectweb/asm/ClassWriter;
            new java.lang.StringBuilder
            dup
            ldc "LambdaForm$"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.className:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            aconst_null
            invokevirtual jdk.internal.org.objectweb.asm.ClassWriter.visitSource:(Ljava/lang/String;Ljava/lang/String;)V
         5: .line 319
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.cw:Ljdk/internal/org/objectweb/asm/ClassWriter;
            areturn
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/lang/invoke/InvokerBytecodeGenerator;

  private void methodPrologue();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=2, args_size=1
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
         0: .line 323
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.invokerType:Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.toMethodDescriptorString:()Ljava/lang/String;
            astore 1 /* invokerDesc */
        start local 1 // java.lang.String invokerDesc
         1: .line 324
            aload 0 /* this */
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.cw:Ljdk/internal/org/objectweb/asm/ClassWriter;
            bipush 8
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.invokerName:Ljava/lang/String;
            aload 1 /* invokerDesc */
            aconst_null
            aconst_null
            invokevirtual jdk.internal.org.objectweb.asm.ClassWriter.visitMethod:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)Ljdk/internal/org/objectweb/asm/MethodVisitor;
            putfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
         2: .line 325
            return
        end local 1 // java.lang.String invokerDesc
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            1    3     1  invokerDesc  Ljava/lang/String;

  private void methodEpilogue();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
         0: .line 331
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iconst_0
            iconst_0
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMaxs:(II)V
         1: .line 332
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitEnd:()V
         2: .line 333
            return
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/lang/invoke/InvokerBytecodeGenerator;

  private void emitConst(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.Object con
         0: .line 339
            aload 1 /* con */
            ifnonnull 3
         1: .line 340
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iconst_1
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
         2: .line 341
            return
         3: .line 343
      StackMap locals:
      StackMap stack:
            aload 1 /* con */
            instanceof java.lang.Integer
            ifeq 6
         4: .line 344
            aload 0 /* this */
            aload 1 /* con */
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitIconstInsn:(I)V
         5: .line 345
            return
         6: .line 347
      StackMap locals:
      StackMap stack:
            aload 1 /* con */
            instanceof java.lang.Byte
            ifeq 9
         7: .line 348
            aload 0 /* this */
            aload 1 /* con */
            checkcast java.lang.Byte
            invokevirtual java.lang.Byte.byteValue:()B
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitIconstInsn:(I)V
         8: .line 349
            return
         9: .line 351
      StackMap locals:
      StackMap stack:
            aload 1 /* con */
            instanceof java.lang.Short
            ifeq 12
        10: .line 352
            aload 0 /* this */
            aload 1 /* con */
            checkcast java.lang.Short
            invokevirtual java.lang.Short.shortValue:()S
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitIconstInsn:(I)V
        11: .line 353
            return
        12: .line 355
      StackMap locals:
      StackMap stack:
            aload 1 /* con */
            instanceof java.lang.Character
            ifeq 15
        13: .line 356
            aload 0 /* this */
            aload 1 /* con */
            checkcast java.lang.Character
            invokevirtual java.lang.Character.charValue:()C
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitIconstInsn:(I)V
        14: .line 357
            return
        15: .line 359
      StackMap locals:
      StackMap stack:
            aload 1 /* con */
            instanceof java.lang.Long
            ifeq 25
        16: .line 360
            aload 1 /* con */
            checkcast java.lang.Long
            invokevirtual java.lang.Long.longValue:()J
            lstore 2 /* x */
        start local 2 // long x
        17: .line 361
            lload 2 /* x */
            l2i
            i2s
            istore 4 /* sx */
        start local 4 // short sx
        18: .line 362
            lload 2 /* x */
            iload 4 /* sx */
            i2l
            lcmp
            ifne 25
        19: .line 363
            iload 4 /* sx */
            iflt 22
            iload 4 /* sx */
            iconst_1
            if_icmpgt 22
        20: .line 364
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 9
            iload 4 /* sx */
            iadd
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        21: .line 365
            goto 24
        22: .line 366
      StackMap locals: long int
      StackMap stack:
            aload 0 /* this */
            lload 2 /* x */
            l2i
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitIconstInsn:(I)V
        23: .line 367
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 133
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        24: .line 369
      StackMap locals:
      StackMap stack:
            return
        end local 4 // short sx
        end local 2 // long x
        25: .line 372
      StackMap locals:
      StackMap stack:
            aload 1 /* con */
            instanceof java.lang.Float
            ifeq 35
        26: .line 373
            aload 1 /* con */
            checkcast java.lang.Float
            invokevirtual java.lang.Float.floatValue:()F
            fstore 2 /* x */
        start local 2 // float x
        27: .line 374
            fload 2 /* x */
            f2i
            i2s
            istore 3 /* sx */
        start local 3 // short sx
        28: .line 375
            fload 2 /* x */
            iload 3 /* sx */
            i2f
            fcmpl
            ifne 35
        29: .line 376
            iload 3 /* sx */
            iflt 32
            iload 3 /* sx */
            iconst_2
            if_icmpgt 32
        30: .line 377
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 11
            iload 3 /* sx */
            iadd
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        31: .line 378
            goto 34
        32: .line 379
      StackMap locals: float int
      StackMap stack:
            aload 0 /* this */
            fload 2 /* x */
            f2i
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitIconstInsn:(I)V
        33: .line 380
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 134
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        34: .line 382
      StackMap locals:
      StackMap stack:
            return
        end local 3 // short sx
        end local 2 // float x
        35: .line 385
      StackMap locals:
      StackMap stack:
            aload 1 /* con */
            instanceof java.lang.Double
            ifeq 45
        36: .line 386
            aload 1 /* con */
            checkcast java.lang.Double
            invokevirtual java.lang.Double.doubleValue:()D
            dstore 2 /* x */
        start local 2 // double x
        37: .line 387
            dload 2 /* x */
            d2i
            i2s
            istore 4 /* sx */
        start local 4 // short sx
        38: .line 388
            dload 2 /* x */
            iload 4 /* sx */
            i2d
            dcmpl
            ifne 45
        39: .line 389
            iload 4 /* sx */
            iflt 42
            iload 4 /* sx */
            iconst_1
            if_icmpgt 42
        40: .line 390
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 14
            iload 4 /* sx */
            iadd
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        41: .line 391
            goto 44
        42: .line 392
      StackMap locals: double int
      StackMap stack:
            aload 0 /* this */
            dload 2 /* x */
            d2i
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitIconstInsn:(I)V
        43: .line 393
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 135
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        44: .line 395
      StackMap locals:
      StackMap stack:
            return
        end local 4 // short sx
        end local 2 // double x
        45: .line 398
      StackMap locals:
      StackMap stack:
            aload 1 /* con */
            instanceof java.lang.Boolean
            ifeq 50
        46: .line 399
            aload 0 /* this */
            aload 1 /* con */
            checkcast java.lang.Boolean
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 47
            iconst_1
            goto 48
      StackMap locals:
      StackMap stack: java.lang.invoke.InvokerBytecodeGenerator
        47: iconst_0
      StackMap locals: java.lang.invoke.InvokerBytecodeGenerator java.lang.Object
      StackMap stack: java.lang.invoke.InvokerBytecodeGenerator int
        48: invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitIconstInsn:(I)V
        49: .line 400
            return
        50: .line 403
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 1 /* con */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLdcInsn:(Ljava/lang/Object;)V
        51: .line 404
            return
        end local 1 // java.lang.Object con
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   52     0  this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0   52     1   con  Ljava/lang/Object;
           17   25     2     x  J
           18   25     4    sx  S
           27   35     2     x  F
           28   35     3    sx  S
           37   45     2     x  D
           38   45     4    sx  S
    MethodParameters:
      Name  Flags
      con   

  private void emitIconstInsn(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // int cst
         0: .line 407
            iload 1 /* cst */
            iconst_m1
            if_icmplt 3
            iload 1 /* cst */
            iconst_5
            if_icmpgt 3
         1: .line 408
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iconst_3
            iload 1 /* cst */
            iadd
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
         2: .line 409
            goto 10
      StackMap locals:
      StackMap stack:
         3: iload 1 /* cst */
            bipush -128
            if_icmplt 6
            iload 1 /* cst */
            bipush 127
            if_icmpgt 6
         4: .line 410
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 16
            iload 1 /* cst */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitIntInsn:(II)V
         5: .line 411
            goto 10
      StackMap locals:
      StackMap stack:
         6: iload 1 /* cst */
            sipush -32768
            if_icmplt 9
            iload 1 /* cst */
            sipush 32767
            if_icmpgt 9
         7: .line 412
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 17
            iload 1 /* cst */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitIntInsn:(II)V
         8: .line 413
            goto 10
         9: .line 414
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 1 /* cst */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLdcInsn:(Ljava/lang/Object;)V
        10: .line 416
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int cst
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0   11     1   cst  I
    MethodParameters:
      Name  Flags
      cst   final

  private void emitLoadInsn(java.lang.invoke.LambdaForm$BasicType, int);
    descriptor: (Ljava/lang/invoke/LambdaForm$BasicType;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.invoke.LambdaForm$BasicType type
        start local 2 // int index
         0: .line 422
            aload 0 /* this */
            aload 1 /* type */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.loadInsnOpcode:(Ljava/lang/invoke/LambdaForm$BasicType;)I
            istore 3 /* opcode */
        start local 3 // int opcode
         1: .line 423
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 3 /* opcode */
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.localsMap:[I
            iload 2 /* index */
            iaload
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
         2: .line 424
            return
        end local 3 // int opcode
        end local 2 // int index
        end local 1 // java.lang.invoke.LambdaForm$BasicType type
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    3     1    type  Ljava/lang/invoke/LambdaForm$BasicType;
            0    3     2   index  I
            1    3     3  opcode  I
    MethodParameters:
       Name  Flags
      type   
      index  

  private int loadInsnOpcode(java.lang.invoke.LambdaForm$BasicType);
    descriptor: (Ljava/lang/invoke/LambdaForm$BasicType;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.invoke.LambdaForm$BasicType type
         0: .line 427
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.$SWITCH_TABLE$java$lang$invoke$LambdaForm$BasicType:()[I
            aload 1 /* type */
            invokevirtual java.lang.invoke.LambdaForm$BasicType.ordinal:()I
            iaload
            tableswitch { // 1 - 5
                    1: 5
                    2: 1
                    3: 2
                    4: 3
                    5: 4
              default: 6
          }
         1: .line 428
      StackMap locals:
      StackMap stack:
            bipush 21
            ireturn
         2: .line 429
      StackMap locals:
      StackMap stack:
            bipush 22
            ireturn
         3: .line 430
      StackMap locals:
      StackMap stack:
            bipush 23
            ireturn
         4: .line 431
      StackMap locals:
      StackMap stack:
            bipush 24
            ireturn
         5: .line 432
      StackMap locals:
      StackMap stack:
            bipush 25
            ireturn
         6: .line 434
      StackMap locals:
      StackMap stack:
            new java.lang.InternalError
            dup
            new java.lang.StringBuilder
            dup
            ldc "unknown type: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* type */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.invoke.LambdaForm$BasicType type
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    7     1  type  Ljava/lang/invoke/LambdaForm$BasicType;
    Exceptions:
      throws java.lang.InternalError
    MethodParameters:
      Name  Flags
      type  

  private void emitAloadInsn(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // int index
         0: .line 438
            aload 0 /* this */
            getstatic java.lang.invoke.LambdaForm$BasicType.L_TYPE:Ljava/lang/invoke/LambdaForm$BasicType;
            iload 1 /* index */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitLoadInsn:(Ljava/lang/invoke/LambdaForm$BasicType;I)V
         1: .line 439
            return
        end local 1 // int index
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    2     1  index  I
    MethodParameters:
       Name  Flags
      index  

  private void emitStoreInsn(java.lang.invoke.LambdaForm$BasicType, int);
    descriptor: (Ljava/lang/invoke/LambdaForm$BasicType;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.invoke.LambdaForm$BasicType type
        start local 2 // int index
         0: .line 442
            aload 0 /* this */
            aload 1 /* type */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.storeInsnOpcode:(Ljava/lang/invoke/LambdaForm$BasicType;)I
            istore 3 /* opcode */
        start local 3 // int opcode
         1: .line 443
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 3 /* opcode */
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.localsMap:[I
            iload 2 /* index */
            iaload
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
         2: .line 444
            return
        end local 3 // int opcode
        end local 2 // int index
        end local 1 // java.lang.invoke.LambdaForm$BasicType type
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    3     1    type  Ljava/lang/invoke/LambdaForm$BasicType;
            0    3     2   index  I
            1    3     3  opcode  I
    MethodParameters:
       Name  Flags
      type   
      index  

  private int storeInsnOpcode(java.lang.invoke.LambdaForm$BasicType);
    descriptor: (Ljava/lang/invoke/LambdaForm$BasicType;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.invoke.LambdaForm$BasicType type
         0: .line 447
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.$SWITCH_TABLE$java$lang$invoke$LambdaForm$BasicType:()[I
            aload 1 /* type */
            invokevirtual java.lang.invoke.LambdaForm$BasicType.ordinal:()I
            iaload
            tableswitch { // 1 - 5
                    1: 5
                    2: 1
                    3: 2
                    4: 3
                    5: 4
              default: 6
          }
         1: .line 448
      StackMap locals:
      StackMap stack:
            bipush 54
            ireturn
         2: .line 449
      StackMap locals:
      StackMap stack:
            bipush 55
            ireturn
         3: .line 450
      StackMap locals:
      StackMap stack:
            bipush 56
            ireturn
         4: .line 451
      StackMap locals:
      StackMap stack:
            bipush 57
            ireturn
         5: .line 452
      StackMap locals:
      StackMap stack:
            bipush 58
            ireturn
         6: .line 454
      StackMap locals:
      StackMap stack:
            new java.lang.InternalError
            dup
            new java.lang.StringBuilder
            dup
            ldc "unknown type: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* type */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.invoke.LambdaForm$BasicType type
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    7     1  type  Ljava/lang/invoke/LambdaForm$BasicType;
    Exceptions:
      throws java.lang.InternalError
    MethodParameters:
      Name  Flags
      type  

  private void emitAstoreInsn(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // int index
         0: .line 458
            aload 0 /* this */
            getstatic java.lang.invoke.LambdaForm$BasicType.L_TYPE:Ljava/lang/invoke/LambdaForm$BasicType;
            iload 1 /* index */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitStoreInsn:(Ljava/lang/invoke/LambdaForm$BasicType;I)V
         1: .line 459
            return
        end local 1 // int index
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    2     1  index  I
    MethodParameters:
       Name  Flags
      index  

  private byte arrayTypeCode(sun.invoke.util.Wrapper);
    descriptor: (Lsun/invoke/util/Wrapper;)B
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // sun.invoke.util.Wrapper elementType
         0: .line 462
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.$SWITCH_TABLE$sun$invoke$util$Wrapper:()[I
            aload 1 /* elementType */
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            iaload
            tableswitch { // 1 - 9
                    1: 1
                    2: 2
                    3: 4
                    4: 3
                    5: 5
                    6: 6
                    7: 7
                    8: 8
                    9: 9
              default: 10
          }
         1: .line 463
      StackMap locals:
      StackMap stack:
            iconst_4
            ireturn
         2: .line 464
      StackMap locals:
      StackMap stack:
            bipush 8
            ireturn
         3: .line 465
      StackMap locals:
      StackMap stack:
            iconst_5
            ireturn
         4: .line 466
      StackMap locals:
      StackMap stack:
            bipush 9
            ireturn
         5: .line 467
      StackMap locals:
      StackMap stack:
            bipush 10
            ireturn
         6: .line 468
      StackMap locals:
      StackMap stack:
            bipush 11
            ireturn
         7: .line 469
      StackMap locals:
      StackMap stack:
            bipush 6
            ireturn
         8: .line 470
      StackMap locals:
      StackMap stack:
            bipush 7
            ireturn
         9: .line 471
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        10: .line 472
      StackMap locals:
      StackMap stack:
            new java.lang.InternalError
            dup
            invokespecial java.lang.InternalError.<init>:()V
            athrow
        end local 1 // sun.invoke.util.Wrapper elementType
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0         this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0   11     1  elementType  Lsun/invoke/util/Wrapper;
    MethodParameters:
             Name  Flags
      elementType  

  private int arrayInsnOpcode(byte, int);
    descriptor: (BI)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // byte tcode
        start local 2 // int aaop
         0: .line 477
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 1
            iload 2 /* aaop */
            bipush 83
            if_icmpeq 1
            iload 2 /* aaop */
            bipush 50
            if_icmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 479
      StackMap locals:
      StackMap stack:
            iload 1 /* tcode */
            tableswitch { // 0 - 11
                    0: 18
                    1: 20
                    2: 20
                    3: 20
                    4: 2
                    5: 6
                    6: 14
                    7: 16
                    8: 4
                    9: 8
                   10: 10
                   11: 12
              default: 20
          }
         2: .line 480
      StackMap locals:
      StackMap stack:
            bipush 84
            istore 3 /* xas */
        start local 3 // int xas
         3: goto 21
        end local 3 // int xas
         4: .line 481
      StackMap locals:
      StackMap stack:
            bipush 84
            istore 3 /* xas */
        start local 3 // int xas
         5: goto 21
        end local 3 // int xas
         6: .line 482
      StackMap locals:
      StackMap stack:
            bipush 85
            istore 3 /* xas */
        start local 3 // int xas
         7: goto 21
        end local 3 // int xas
         8: .line 483
      StackMap locals:
      StackMap stack:
            bipush 86
            istore 3 /* xas */
        start local 3 // int xas
         9: goto 21
        end local 3 // int xas
        10: .line 484
      StackMap locals:
      StackMap stack:
            bipush 79
            istore 3 /* xas */
        start local 3 // int xas
        11: goto 21
        end local 3 // int xas
        12: .line 485
      StackMap locals:
      StackMap stack:
            bipush 80
            istore 3 /* xas */
        start local 3 // int xas
        13: goto 21
        end local 3 // int xas
        14: .line 486
      StackMap locals:
      StackMap stack:
            bipush 81
            istore 3 /* xas */
        start local 3 // int xas
        15: goto 21
        end local 3 // int xas
        16: .line 487
      StackMap locals:
      StackMap stack:
            bipush 82
            istore 3 /* xas */
        start local 3 // int xas
        17: goto 21
        end local 3 // int xas
        18: .line 488
      StackMap locals:
      StackMap stack:
            bipush 83
            istore 3 /* xas */
        start local 3 // int xas
        19: goto 21
        end local 3 // int xas
        20: .line 489
      StackMap locals:
      StackMap stack:
            new java.lang.InternalError
            dup
            invokespecial java.lang.InternalError.<init>:()V
            athrow
        start local 3 // int xas
        21: .line 491
      StackMap locals: int
      StackMap stack:
            iload 3 /* xas */
            bipush 83
            isub
            iload 2 /* aaop */
            iadd
            ireturn
        end local 3 // int xas
        end local 2 // int aaop
        end local 1 // byte tcode
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   22     0   this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0   22     1  tcode  B
            0   22     2   aaop  I
            3    4     3    xas  I
            5    6     3    xas  I
            7    8     3    xas  I
            9   10     3    xas  I
           11   12     3    xas  I
           13   14     3    xas  I
           15   16     3    xas  I
           17   18     3    xas  I
           19   20     3    xas  I
           21   22     3    xas  I
    Exceptions:
      throws java.lang.InternalError
    MethodParameters:
       Name  Flags
      tcode  
      aaop   

  private void emitBoxing(sun.invoke.util.Wrapper);
    descriptor: (Lsun/invoke/util/Wrapper;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // sun.invoke.util.Wrapper wrapper
         0: .line 500
            new java.lang.StringBuilder
            dup
            ldc "java/lang/"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* wrapper */
            invokevirtual sun.invoke.util.Wrapper.wrapperType:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* owner */
        start local 2 // java.lang.String owner
         1: .line 501
            ldc "valueOf"
            astore 3 /* name */
        start local 3 // java.lang.String name
         2: .line 502
            new java.lang.StringBuilder
            dup
            ldc "("
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* wrapper */
            invokevirtual sun.invoke.util.Wrapper.basicTypeChar:()C
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            ldc ")L"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* owner */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ";"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* desc */
        start local 4 // java.lang.String desc
         3: .line 503
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 184
            aload 2 /* owner */
            aload 3 /* name */
            aload 4 /* desc */
            iconst_0
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
         4: .line 504
            return
        end local 4 // java.lang.String desc
        end local 3 // java.lang.String name
        end local 2 // java.lang.String owner
        end local 1 // sun.invoke.util.Wrapper wrapper
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    5     1  wrapper  Lsun/invoke/util/Wrapper;
            1    5     2    owner  Ljava/lang/String;
            2    5     3     name  Ljava/lang/String;
            3    5     4     desc  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      wrapper  

  private void emitUnboxing(sun.invoke.util.Wrapper);
    descriptor: (Lsun/invoke/util/Wrapper;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // sun.invoke.util.Wrapper wrapper
         0: .line 512
            new java.lang.StringBuilder
            dup
            ldc "java/lang/"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* wrapper */
            invokevirtual sun.invoke.util.Wrapper.wrapperType:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* owner */
        start local 2 // java.lang.String owner
         1: .line 513
            new java.lang.StringBuilder
            dup
            aload 1 /* wrapper */
            invokevirtual sun.invoke.util.Wrapper.primitiveSimpleName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "Value"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 3 /* name */
        start local 3 // java.lang.String name
         2: .line 514
            new java.lang.StringBuilder
            dup
            ldc "()"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* wrapper */
            invokevirtual sun.invoke.util.Wrapper.basicTypeChar:()C
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 4 /* desc */
        start local 4 // java.lang.String desc
         3: .line 515
            aload 0 /* this */
            aload 1 /* wrapper */
            invokevirtual sun.invoke.util.Wrapper.wrapperType:()Ljava/lang/Class;
            aconst_null
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitReferenceCast:(Ljava/lang/Class;Ljava/lang/Object;)V
         4: .line 516
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 182
            aload 2 /* owner */
            aload 3 /* name */
            aload 4 /* desc */
            iconst_0
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
         5: .line 517
            return
        end local 4 // java.lang.String desc
        end local 3 // java.lang.String name
        end local 2 // java.lang.String owner
        end local 1 // sun.invoke.util.Wrapper wrapper
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0     this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    6     1  wrapper  Lsun/invoke/util/Wrapper;
            1    6     2    owner  Ljava/lang/String;
            2    6     3     name  Ljava/lang/String;
            3    6     4     desc  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      wrapper  

  private void emitImplicitConversion(java.lang.invoke.LambdaForm$BasicType, java.lang.Class<?>, );
    descriptor: (Ljava/lang/invoke/LambdaForm$BasicType;Ljava/lang/Class;Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.invoke.LambdaForm$BasicType ptype
        start local 2 // java.lang.Class pclass
        start local 3 // java.lang.Object arg
         0: .line 528
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 1
            aload 2 /* pclass */
            invokestatic java.lang.invoke.LambdaForm$BasicType.basicType:(Ljava/lang/Class;)Ljava/lang/invoke/LambdaForm$BasicType;
            aload 1 /* ptype */
            if_acmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 529
      StackMap locals:
      StackMap stack:
            aload 2 /* pclass */
            aload 1 /* ptype */
            invokevirtual java.lang.invoke.LambdaForm$BasicType.basicTypeClass:()Ljava/lang/Class;
            if_acmpne 3
            aload 1 /* ptype */
            getstatic java.lang.invoke.LambdaForm$BasicType.L_TYPE:Ljava/lang/invoke/LambdaForm$BasicType;
            if_acmpeq 3
         2: .line 530
            return
         3: .line 531
      StackMap locals:
      StackMap stack:
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.$SWITCH_TABLE$java$lang$invoke$LambdaForm$BasicType:()[I
            aload 1 /* ptype */
            invokevirtual java.lang.invoke.LambdaForm$BasicType.ordinal:()I
            iaload
            tableswitch { // 1 - 2
                    1: 4
                    2: 10
              default: 13
          }
         4: .line 533
      StackMap locals:
      StackMap stack:
            ldc Ljava/lang/Object;
            aload 2 /* pclass */
            iconst_0
            invokestatic sun.invoke.util.VerifyType.isNullConversion:(Ljava/lang/Class;Ljava/lang/Class;Z)Z
            ifeq 8
         5: .line 534
            getstatic java.lang.invoke.MethodHandleStatics.PROFILE_LEVEL:I
            ifle 7
         6: .line 535
            aload 0 /* this */
            ldc Ljava/lang/Object;
            aload 3 /* arg */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitReferenceCast:(Ljava/lang/Class;Ljava/lang/Object;)V
         7: .line 536
      StackMap locals:
      StackMap stack:
            return
         8: .line 538
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* pclass */
            aload 3 /* arg */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitReferenceCast:(Ljava/lang/Class;Ljava/lang/Object;)V
         9: .line 539
            return
        10: .line 541
      StackMap locals:
      StackMap stack:
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aload 2 /* pclass */
            iconst_0
            invokestatic sun.invoke.util.VerifyType.isNullConversion:(Ljava/lang/Class;Ljava/lang/Class;Z)Z
            ifne 12
        11: .line 542
            aload 0 /* this */
            aload 1 /* ptype */
            invokevirtual java.lang.invoke.LambdaForm$BasicType.basicTypeWrapper:()Lsun/invoke/util/Wrapper;
            aload 2 /* pclass */
            invokestatic sun.invoke.util.Wrapper.forPrimitiveType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPrimCast:(Lsun/invoke/util/Wrapper;Lsun/invoke/util/Wrapper;)V
        12: .line 543
      StackMap locals:
      StackMap stack:
            return
        13: .line 545
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "bad implicit conversion: tc="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* ptype */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc ": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* pclass */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic java.lang.invoke.MethodHandleStatics.newInternalError:(Ljava/lang/String;)Ljava/lang/InternalError;
            athrow
        end local 3 // java.lang.Object arg
        end local 2 // java.lang.Class pclass
        end local 1 // java.lang.invoke.LambdaForm$BasicType ptype
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0    this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0   14     1   ptype  Ljava/lang/invoke/LambdaForm$BasicType;
            0   14     2  pclass  Ljava/lang/Class<*>;
            0   14     3     arg  Ljava/lang/Object;
    Signature: (Ljava/lang/invoke/LambdaForm$BasicType;Ljava/lang/Class<*>;Ljava/lang/Object;)V
    MethodParameters:
        Name  Flags
      ptype   
      pclass  
      arg     

  private boolean assertStaticType(java.lang.Class<?>, java.lang.invoke.LambdaForm$Name);
    descriptor: (Ljava/lang/Class;Ljava/lang/invoke/LambdaForm$Name;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.Class cls
        start local 2 // java.lang.invoke.LambdaForm$Name n
         0: .line 550
            aload 2 /* n */
            invokevirtual java.lang.invoke.LambdaForm$Name.index:()I
            istore 3 /* local */
        start local 3 // int local
         1: .line 551
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.localClasses:[Ljava/lang/Class;
            iload 3 /* local */
            aaload
            astore 4 /* aclass */
        start local 4 // java.lang.Class aclass
         2: .line 552
            aload 4 /* aclass */
            ifnull 4
            aload 4 /* aclass */
            aload 1 /* cls */
            if_acmpeq 3
            aload 1 /* cls */
            aload 4 /* aclass */
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 4
         3: .line 553
      StackMap locals: int java.lang.Class
      StackMap stack:
            iconst_1
            ireturn
         4: .line 554
      StackMap locals:
      StackMap stack:
            aload 4 /* aclass */
            ifnull 5
            aload 4 /* aclass */
            aload 1 /* cls */
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 6
         5: .line 555
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.localClasses:[Ljava/lang/Class;
            iload 3 /* local */
            aload 1 /* cls */
            aastore
         6: .line 557
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 4 // java.lang.Class aclass
        end local 3 // int local
        end local 2 // java.lang.invoke.LambdaForm$Name n
        end local 1 // java.lang.Class cls
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    7     1     cls  Ljava/lang/Class<*>;
            0    7     2       n  Ljava/lang/invoke/LambdaForm$Name;
            1    7     3   local  I
            2    7     4  aclass  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;Ljava/lang/invoke/LambdaForm$Name;)Z
    MethodParameters:
      Name  Flags
      cls   
      n     

  private void emitReferenceCast(java.lang.Class<?>, );
    descriptor: (Ljava/lang/Class;Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.Class cls
        start local 2 // java.lang.Object arg
         0: .line 561
            aconst_null
            astore 3 /* writeBack */
        start local 3 // java.lang.invoke.LambdaForm$Name writeBack
         1: .line 562
            aload 2 /* arg */
            instanceof java.lang.invoke.LambdaForm$Name
            ifeq 7
         2: .line 563
            aload 2 /* arg */
            checkcast java.lang.invoke.LambdaForm$Name
            astore 4 /* n */
        start local 4 // java.lang.invoke.LambdaForm$Name n
         3: .line 564
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            aload 4 /* n */
            invokevirtual java.lang.invoke.LambdaForm.useCount:(Ljava/lang/invoke/LambdaForm$Name;)I
            iconst_1
            if_icmple 7
         4: .line 566
            aload 4 /* n */
            astore 3 /* writeBack */
         5: .line 567
            aload 0 /* this */
            aload 1 /* cls */
            aload 4 /* n */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.assertStaticType:(Ljava/lang/Class;Ljava/lang/invoke/LambdaForm$Name;)Z
            ifeq 7
         6: .line 568
            return
        end local 4 // java.lang.invoke.LambdaForm$Name n
         7: .line 572
      StackMap locals: java.lang.invoke.LambdaForm$Name
      StackMap stack:
            aload 1 /* cls */
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.isStaticallyNameable:(Ljava/lang/Class;)Z
            ifeq 11
         8: .line 573
            aload 0 /* this */
            aload 1 /* cls */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.getInternalName:(Ljava/lang/Class;)Ljava/lang/String;
            astore 4 /* sig */
        start local 4 // java.lang.String sig
         9: .line 574
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 192
            aload 4 /* sig */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitTypeInsn:(ILjava/lang/String;)V
        end local 4 // java.lang.String sig
        10: .line 575
            goto 19
        11: .line 576
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 0 /* this */
            aload 1 /* cls */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.constantPlaceholder:(Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLdcInsn:(Ljava/lang/Object;)V
        12: .line 577
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 192
            ldc "java/lang/Class"
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitTypeInsn:(ILjava/lang/String;)V
        13: .line 578
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 95
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        14: .line 579
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 182
            ldc "java/lang/Class"
            ldc "cast"
            ldc "(Ljava/lang/Object;)Ljava/lang/Object;"
            iconst_0
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
        15: .line 580
            ldc [Ljava/lang/Object;
            aload 1 /* cls */
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 17
        16: .line 581
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 192
            ldc "[Ljava/lang/Object;"
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitTypeInsn:(ILjava/lang/String;)V
            goto 19
        17: .line 582
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.MethodHandleStatics.PROFILE_LEVEL:I
            ifle 19
        18: .line 583
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 192
            ldc "java/lang/Object"
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitTypeInsn:(ILjava/lang/String;)V
        19: .line 585
      StackMap locals:
      StackMap stack:
            aload 3 /* writeBack */
            ifnull 22
        20: .line 586
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 89
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        21: .line 587
            aload 0 /* this */
            aload 3 /* writeBack */
            invokevirtual java.lang.invoke.LambdaForm$Name.index:()I
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitAstoreInsn:(I)V
        22: .line 589
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.invoke.LambdaForm$Name writeBack
        end local 2 // java.lang.Object arg
        end local 1 // java.lang.Class cls
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   23     0       this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0   23     1        cls  Ljava/lang/Class<*>;
            0   23     2        arg  Ljava/lang/Object;
            1   23     3  writeBack  Ljava/lang/invoke/LambdaForm$Name;
            3    7     4          n  Ljava/lang/invoke/LambdaForm$Name;
            9   10     4        sig  Ljava/lang/String;
    Signature: (Ljava/lang/Class<*>;Ljava/lang/Object;)V
    MethodParameters:
      Name  Flags
      cls   
      arg   

  private void emitReturnInsn(java.lang.invoke.LambdaForm$BasicType);
    descriptor: (Ljava/lang/invoke/LambdaForm$BasicType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.invoke.LambdaForm$BasicType type
         0: .line 596
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.$SWITCH_TABLE$java$lang$invoke$LambdaForm$BasicType:()[I
            aload 1 /* type */
            invokevirtual java.lang.invoke.LambdaForm$BasicType.ordinal:()I
            iaload
            tableswitch { // 1 - 6
                    1: 9
                    2: 1
                    3: 3
                    4: 5
                    5: 7
                    6: 11
              default: 13
          }
         1: .line 597
      StackMap locals:
      StackMap stack:
            sipush 172
            istore 2 /* opcode */
        start local 2 // int opcode
         2: goto 14
        end local 2 // int opcode
         3: .line 598
      StackMap locals:
      StackMap stack:
            sipush 173
            istore 2 /* opcode */
        start local 2 // int opcode
         4: goto 14
        end local 2 // int opcode
         5: .line 599
      StackMap locals:
      StackMap stack:
            sipush 174
            istore 2 /* opcode */
        start local 2 // int opcode
         6: goto 14
        end local 2 // int opcode
         7: .line 600
      StackMap locals:
      StackMap stack:
            sipush 175
            istore 2 /* opcode */
        start local 2 // int opcode
         8: goto 14
        end local 2 // int opcode
         9: .line 601
      StackMap locals:
      StackMap stack:
            sipush 176
            istore 2 /* opcode */
        start local 2 // int opcode
        10: goto 14
        end local 2 // int opcode
        11: .line 602
      StackMap locals:
      StackMap stack:
            sipush 177
            istore 2 /* opcode */
        start local 2 // int opcode
        12: goto 14
        end local 2 // int opcode
        13: .line 604
      StackMap locals:
      StackMap stack:
            new java.lang.InternalError
            dup
            new java.lang.StringBuilder
            dup
            ldc "unknown return type: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* type */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
        start local 2 // int opcode
        14: .line 606
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 2 /* opcode */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        15: .line 607
            return
        end local 2 // int opcode
        end local 1 // java.lang.invoke.LambdaForm$BasicType type
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   16     0    this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0   16     1    type  Ljava/lang/invoke/LambdaForm$BasicType;
            2    3     2  opcode  I
            4    5     2  opcode  I
            6    7     2  opcode  I
            8    9     2  opcode  I
           10   11     2  opcode  I
           12   13     2  opcode  I
           14   16     2  opcode  I
    MethodParameters:
      Name  Flags
      type  

  private java.lang.String getInternalName(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.Class c
         0: .line 610
            aload 1 /* c */
            ldc Ljava/lang/Object;
            if_acmpne 1
            ldc "java/lang/Object"
            areturn
         1: .line 611
      StackMap locals:
      StackMap stack:
            aload 1 /* c */
            ldc [Ljava/lang/Object;
            if_acmpne 2
            ldc "[Ljava/lang/Object;"
            areturn
         2: .line 612
      StackMap locals:
      StackMap stack:
            aload 1 /* c */
            ldc Ljava/lang/Class;
            if_acmpne 3
            ldc "java/lang/Class"
            areturn
         3: .line 613
      StackMap locals:
      StackMap stack:
            aload 1 /* c */
            ldc Ljava/lang/invoke/MethodHandle;
            if_acmpne 4
            ldc "java/lang/invoke/MethodHandle"
            areturn
         4: .line 614
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 5
            aload 1 /* c */
            ldc Ljava/lang/Object;
            invokestatic sun.invoke.util.VerifyAccess.isTypeVisible:(Ljava/lang/Class;Ljava/lang/Class;)Z
            ifne 5
            new java.lang.AssertionError
            dup
            aload 1 /* c */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         5: .line 616
      StackMap locals:
      StackMap stack:
            aload 1 /* c */
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lastClass:Ljava/lang/Class;
            if_acmpne 7
         6: .line 617
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lastInternalName:Ljava/lang/String;
            areturn
         7: .line 619
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* c */
            putfield java.lang.invoke.InvokerBytecodeGenerator.lastClass:Ljava/lang/Class;
         8: .line 620
            aload 0 /* this */
            aload 1 /* c */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            bipush 46
            bipush 47
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            dup_x1
            putfield java.lang.invoke.InvokerBytecodeGenerator.lastInternalName:Ljava/lang/String;
            areturn
        end local 1 // java.lang.Class c
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    9     1     c  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)Ljava/lang/String;
    MethodParameters:
      Name  Flags
      c     

  private static java.lang.invoke.MemberName resolveFrom(java.lang.String, java.lang.invoke.MethodType, java.lang.Class<?>);
    descriptor: (Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;)Ljava/lang/invoke/MemberName;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // java.lang.String name
        start local 1 // java.lang.invoke.MethodType type
        start local 2 // java.lang.Class holder
         0: .line 624
            new java.lang.invoke.MemberName
            dup
            aload 2 /* holder */
            aload 0 /* name */
            aload 1 /* type */
            bipush 6
            invokespecial java.lang.invoke.MemberName.<init>:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;B)V
            astore 3 /* member */
        start local 3 // java.lang.invoke.MemberName member
         1: .line 625
            invokestatic java.lang.invoke.MemberName.getFactory:()Ljava/lang/invoke/MemberName$Factory;
            bipush 6
            aload 3 /* member */
            aload 2 /* holder */
            invokevirtual java.lang.invoke.MemberName$Factory.resolveOrNull:(BLjava/lang/invoke/MemberName;Ljava/lang/Class;)Ljava/lang/invoke/MemberName;
            astore 4 /* resolvedMember */
        start local 4 // java.lang.invoke.MemberName resolvedMember
         2: .line 626
            getstatic java.lang.invoke.MethodHandleStatics.TRACE_RESOLVE:Z
            ifeq 8
         3: .line 627
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "[LF_RESOLVE] "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* holder */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* name */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 628
            aload 1 /* type */
            invokestatic java.lang.invoke.LambdaForm.basicTypeSignature:(Ljava/lang/invoke/MethodType;)Ljava/lang/String;
            invokestatic java.lang.invoke.LambdaForm.shortenSignature:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* resolvedMember */
            ifnull 5
            ldc " (success)"
            goto 6
      StackMap locals: java.lang.String java.lang.invoke.MethodType java.lang.Class java.lang.invoke.MemberName java.lang.invoke.MemberName
      StackMap stack: java.io.PrintStream java.lang.StringBuilder
         5: ldc " (fail)"
      StackMap locals: java.lang.String java.lang.invoke.MethodType java.lang.Class java.lang.invoke.MemberName java.lang.invoke.MemberName
      StackMap stack: java.io.PrintStream java.lang.StringBuilder java.lang.String
         6: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         7: .line 627
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         8: .line 630
      StackMap locals:
      StackMap stack:
            aload 4 /* resolvedMember */
            areturn
        end local 4 // java.lang.invoke.MemberName resolvedMember
        end local 3 // java.lang.invoke.MemberName member
        end local 2 // java.lang.Class holder
        end local 1 // java.lang.invoke.MethodType type
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    9     0            name  Ljava/lang/String;
            0    9     1            type  Ljava/lang/invoke/MethodType;
            0    9     2          holder  Ljava/lang/Class<*>;
            1    9     3          member  Ljava/lang/invoke/MemberName;
            2    9     4  resolvedMember  Ljava/lang/invoke/MemberName;
    Signature: (Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class<*>;)Ljava/lang/invoke/MemberName;
    MethodParameters:
        Name  Flags
      name    
      type    
      holder  

  private static java.lang.invoke.MemberName lookupPregenerated(java.lang.invoke.LambdaForm, java.lang.invoke.MethodType);
    descriptor: (Ljava/lang/invoke/LambdaForm;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MemberName;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // java.lang.invoke.LambdaForm form
        start local 1 // java.lang.invoke.MethodType invokerType
         0: .line 634
            aload 0 /* form */
            getfield java.lang.invoke.LambdaForm.customized:Ljava/lang/invoke/MethodHandle;
            ifnull 2
         1: .line 636
            aconst_null
            areturn
         2: .line 638
      StackMap locals:
      StackMap stack:
            aload 0 /* form */
            getfield java.lang.invoke.LambdaForm.kind:Ljava/lang/invoke/LambdaForm$Kind;
            getfield java.lang.invoke.LambdaForm$Kind.methodName:Ljava/lang/String;
            astore 2 /* name */
        start local 2 // java.lang.String name
         3: .line 639
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.$SWITCH_TABLE$java$lang$invoke$LambdaForm$Kind:()[I
            aload 0 /* form */
            getfield java.lang.invoke.LambdaForm.kind:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            iaload
            tableswitch { // 2 - 53
                    2: 7
                    3: 7
                    4: 4
                    5: 11
                    6: 6
                    7: 9
                    8: 9
                    9: 9
                   10: 9
                   11: 9
                   12: 9
                   13: 10
                   14: 10
                   15: 10
                   16: 10
                   17: 10
                   18: 10
                   19: 10
                   20: 10
                   21: 10
                   22: 11
                   23: 11
                   24: 10
                   25: 10
                   26: 11
                   27: 11
                   28: 10
                   29: 10
                   30: 11
                   31: 11
                   32: 10
                   33: 10
                   34: 11
                   35: 11
                   36: 10
                   37: 10
                   38: 11
                   39: 11
                   40: 10
                   41: 10
                   42: 11
                   43: 11
                   44: 10
                   45: 10
                   46: 11
                   47: 11
                   48: 10
                   49: 10
                   50: 11
                   51: 11
                   52: 10
                   53: 10
              default: 11
          }
         4: .line 641
      StackMap locals: java.lang.String
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 2 /* name */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "_"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* form */
            invokestatic java.lang.invoke.BoundMethodHandle.speciesDataFor:(Ljava/lang/invoke/LambdaForm;)Ljava/lang/invoke/BoundMethodHandle$SpeciesData;
            invokevirtual java.lang.invoke.BoundMethodHandle$SpeciesData.key:()Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* name */
         5: .line 642
            aload 2 /* name */
            aload 1 /* invokerType */
            ldc Ljava/lang/invoke/DelegatingMethodHandle$Holder;
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.resolveFrom:(Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;)Ljava/lang/invoke/MemberName;
            areturn
         6: .line 644
      StackMap locals:
      StackMap stack:
            aload 2 /* name */
            aload 1 /* invokerType */
            ldc Ljava/lang/invoke/DelegatingMethodHandle$Holder;
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.resolveFrom:(Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;)Ljava/lang/invoke/MemberName;
            areturn
         7: .line 647
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            aload 2 /* name */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc "_"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* form */
            invokevirtual java.lang.invoke.LambdaForm.returnType:()Ljava/lang/invoke/LambdaForm$BasicType;
            invokevirtual java.lang.invoke.LambdaForm$BasicType.basicTypeChar:()C
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* name */
         8: .line 648
            aload 2 /* name */
            aload 1 /* invokerType */
            ldc Ljava/lang/invoke/LambdaForm$Holder;
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.resolveFrom:(Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;)Ljava/lang/invoke/MemberName;
            areturn
         9: .line 655
      StackMap locals:
      StackMap stack:
            aload 2 /* name */
            aload 1 /* invokerType */
            invokevirtual java.lang.invoke.MethodType.basicType:()Ljava/lang/invoke/MethodType;
            ldc Ljava/lang/invoke/Invokers$Holder;
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.resolveFrom:(Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;)Ljava/lang/invoke/MemberName;
            areturn
        10: .line 680
      StackMap locals:
      StackMap stack:
            aload 2 /* name */
            aload 1 /* invokerType */
            ldc Ljava/lang/invoke/DirectMethodHandle$Holder;
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.resolveFrom:(Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/Class;)Ljava/lang/invoke/MemberName;
            areturn
        11: .line 682
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 2 // java.lang.String name
        end local 1 // java.lang.invoke.MethodType invokerType
        end local 0 // java.lang.invoke.LambdaForm form
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   12     0         form  Ljava/lang/invoke/LambdaForm;
            0   12     1  invokerType  Ljava/lang/invoke/MethodType;
            3   12     2         name  Ljava/lang/String;
    MethodParameters:
             Name  Flags
      form         
      invokerType  

  static java.lang.invoke.MemberName generateCustomizedCode(java.lang.invoke.LambdaForm, java.lang.invoke.MethodType);
    descriptor: (Ljava/lang/invoke/LambdaForm;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MemberName;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // java.lang.invoke.LambdaForm form
        start local 1 // java.lang.invoke.MethodType invokerType
         0: .line 689
            aload 0 /* form */
            aload 1 /* invokerType */
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.lookupPregenerated:(Ljava/lang/invoke/LambdaForm;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MemberName;
            astore 2 /* pregenerated */
        start local 2 // java.lang.invoke.MemberName pregenerated
         1: .line 690
            aload 2 /* pregenerated */
            ifnull 2
            aload 2 /* pregenerated */
            areturn
         2: .line 692
      StackMap locals: java.lang.invoke.MemberName
      StackMap stack:
            new java.lang.invoke.InvokerBytecodeGenerator
            dup
            ldc "MH"
            aload 0 /* form */
            aload 1 /* invokerType */
            invokespecial java.lang.invoke.InvokerBytecodeGenerator.<init>:(Ljava/lang/String;Ljava/lang/invoke/LambdaForm;Ljava/lang/invoke/MethodType;)V
            astore 3 /* g */
        start local 3 // java.lang.invoke.InvokerBytecodeGenerator g
         3: .line 693
            aload 3 /* g */
            aload 3 /* g */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.generateCustomizedCodeBytes:()[B
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.loadMethod:([B)Ljava/lang/invoke/MemberName;
            areturn
        end local 3 // java.lang.invoke.InvokerBytecodeGenerator g
        end local 2 // java.lang.invoke.MemberName pregenerated
        end local 1 // java.lang.invoke.MethodType invokerType
        end local 0 // java.lang.invoke.LambdaForm form
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          form  Ljava/lang/invoke/LambdaForm;
            0    4     1   invokerType  Ljava/lang/invoke/MethodType;
            1    4     2  pregenerated  Ljava/lang/invoke/MemberName;
            3    4     3             g  Ljava/lang/invoke/InvokerBytecodeGenerator;
    MethodParameters:
             Name  Flags
      form         
      invokerType  

  private boolean checkActualReceiver();
    descriptor: ()Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
         0: .line 699
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 89
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
         1: .line 700
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 25
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.localsMap:[I
            iconst_0
            iaload
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
         2: .line 701
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 184
            ldc "java/lang/invoke/MethodHandleImpl"
            ldc "assertSame"
            ldc "(Ljava/lang/Object;Ljava/lang/Object;)V"
            iconst_0
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
         3: .line 702
            iconst_1
            ireturn
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/lang/invoke/InvokerBytecodeGenerator;

  static java.lang.String className(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // java.lang.String cn
         0: .line 706
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 1
            aload 0 /* cn */
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.checkClassName:(Ljava/lang/String;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Class not found: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* cn */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 707
      StackMap locals:
      StackMap stack:
            aload 0 /* cn */
            areturn
        end local 0 // java.lang.String cn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0    cn  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      cn    

  static boolean checkClassName(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.lang.String cn
         0: .line 711
            aload 0 /* cn */
            invokestatic jdk.internal.org.objectweb.asm.Type.getType:(Ljava/lang/String;)Ljdk/internal/org/objectweb/asm/Type;
            astore 1 /* tp */
        start local 1 // jdk.internal.org.objectweb.asm.Type tp
         1: .line 713
            aload 1 /* tp */
            invokevirtual jdk.internal.org.objectweb.asm.Type.getSort:()I
            bipush 10
            if_icmpeq 3
         2: .line 714
            iconst_0
            ireturn
         3: .line 717
      StackMap locals: jdk.internal.org.objectweb.asm.Type
      StackMap stack:
            aload 1 /* tp */
            invokevirtual jdk.internal.org.objectweb.asm.Type.getClassName:()Ljava/lang/String;
            iconst_0
            aconst_null
            invokestatic java.lang.Class.forName:(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
            pop
         4: .line 718
            iconst_1
            ireturn
         5: .line 719
      StackMap locals:
      StackMap stack: java.lang.ClassNotFoundException
            pop
         6: .line 720
            iconst_0
            ireturn
        end local 1 // jdk.internal.org.objectweb.asm.Type tp
        end local 0 // java.lang.String cn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0    cn  Ljava/lang/String;
            1    7     1    tp  Ljdk/internal/org/objectweb/asm/Type;
      Exception table:
        from    to  target  type
           3     4       5  Class java.lang.ClassNotFoundException
    MethodParameters:
      Name  Flags
      cn    

  private byte[] generateCustomizedCodeBytes();
    descriptor: ()[B
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
         0: .line 734
            aload 0 /* this */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.classFilePrologue:()Ljdk/internal/org/objectweb/asm/ClassWriter;
            pop
         1: .line 735
            aload 0 /* this */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.addMethod:()V
         2: .line 736
            aload 0 /* this */
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.bogusMethod:(Ljava/lang/Object;)V
         3: .line 738
            aload 0 /* this */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.toByteArray:()[B
            astore 1 /* classFile */
        start local 1 // byte[] classFile
         4: .line 739
            aload 0 /* this */
            aload 1 /* classFile */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.maybeDump:([B)V
         5: .line 740
            aload 1 /* classFile */
            areturn
        end local 1 // byte[] classFile
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            4    6     1  classFile  [B

  void setClassWriter(jdk.internal.org.objectweb.asm.ClassWriter);
    descriptor: (Ljdk/internal/org/objectweb/asm/ClassWriter;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // jdk.internal.org.objectweb.asm.ClassWriter cw
         0: .line 744
            aload 0 /* this */
            aload 1 /* cw */
            putfield java.lang.invoke.InvokerBytecodeGenerator.cw:Ljdk/internal/org/objectweb/asm/ClassWriter;
         1: .line 745
            return
        end local 1 // jdk.internal.org.objectweb.asm.ClassWriter cw
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    2     1    cw  Ljdk/internal/org/objectweb/asm/ClassWriter;
    MethodParameters:
      Name  Flags
      cw    

  void addMethod();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
         0: .line 748
            aload 0 /* this */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.methodPrologue:()V
         1: .line 751
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            getstatic java.lang.invoke.InvokerBytecodeGenerator.LF_HIDDEN_SIG:Ljava/lang/String;
            iconst_1
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitAnnotation:(Ljava/lang/String;Z)Ljdk/internal/org/objectweb/asm/AnnotationVisitor;
            pop
         2: .line 754
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            getstatic java.lang.invoke.InvokerBytecodeGenerator.LF_COMPILED_SIG:Ljava/lang/String;
            iconst_1
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitAnnotation:(Ljava/lang/String;Z)Ljdk/internal/org/objectweb/asm/AnnotationVisitor;
            pop
         3: .line 756
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            getfield java.lang.invoke.LambdaForm.forceInline:Z
            ifeq 6
         4: .line 758
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            getstatic java.lang.invoke.InvokerBytecodeGenerator.FORCEINLINE_SIG:Ljava/lang/String;
            iconst_1
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitAnnotation:(Ljava/lang/String;Z)Ljdk/internal/org/objectweb/asm/AnnotationVisitor;
            pop
         5: .line 759
            goto 7
         6: .line 760
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            getstatic java.lang.invoke.InvokerBytecodeGenerator.DONTINLINE_SIG:Ljava/lang/String;
            iconst_1
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitAnnotation:(Ljava/lang/String;Z)Ljdk/internal/org/objectweb/asm/AnnotationVisitor;
            pop
         7: .line 763
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.constantPlaceholder:(Ljava/lang/Object;)Ljava/lang/String;
            pop
         8: .line 765
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            getfield java.lang.invoke.LambdaForm.customized:Ljava/lang/invoke/MethodHandle;
            ifnull 13
         9: .line 770
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 0 /* this */
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            getfield java.lang.invoke.LambdaForm.customized:Ljava/lang/invoke/MethodHandle;
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.constantPlaceholder:(Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLdcInsn:(Ljava/lang/Object;)V
        10: .line 771
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 192
            ldc "java/lang/invoke/MethodHandle"
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitTypeInsn:(ILjava/lang/String;)V
        11: .line 772
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 12
            aload 0 /* this */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.checkActualReceiver:()Z
            ifne 12
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        12: .line 773
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 58
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.localsMap:[I
            iconst_0
            iaload
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitVarInsn:(II)V
        13: .line 778
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 1 /* onStack */
        start local 1 // java.lang.invoke.LambdaForm$Name onStack
        14: .line 779
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            getfield java.lang.invoke.LambdaForm.arity:I
            istore 2 /* i */
        start local 2 // int i
        15: goto 66
        16: .line 780
      StackMap locals: java.lang.invoke.LambdaForm$Name int
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            getfield java.lang.invoke.LambdaForm.names:[Ljava/lang/invoke/LambdaForm$Name;
            iload 2 /* i */
            aaload
            astore 3 /* name */
        start local 3 // java.lang.invoke.LambdaForm$Name name
        17: .line 782
            aload 0 /* this */
            aload 1 /* onStack */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitStoreResult:(Ljava/lang/invoke/LambdaForm$Name;)V
        18: .line 783
            aload 3 /* name */
            astore 1 /* onStack */
        19: .line 784
            aload 3 /* name */
            getfield java.lang.invoke.LambdaForm$Name.function:Ljava/lang/invoke/LambdaForm$NamedFunction;
            invokevirtual java.lang.invoke.LambdaForm$NamedFunction.intrinsicName:()Ljava/lang/invoke/MethodHandleImpl$Intrinsic;
            astore 4 /* intr */
        start local 4 // java.lang.invoke.MethodHandleImpl$Intrinsic intr
        20: .line 785
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.$SWITCH_TABLE$java$lang$invoke$MethodHandleImpl$Intrinsic:()[I
            aload 4 /* intr */
            invokevirtual java.lang.invoke.MethodHandleImpl$Intrinsic.ordinal:()I
            iaload
            tableswitch { // 1 - 11
                    1: 21
                    2: 30
                    3: 34
                    4: 38
                    5: 42
                    6: 46
                    7: 48
                    8: 50
                    9: 52
                   10: 55
                   11: 58
              default: 59
          }
        21: .line 787
      StackMap locals: java.lang.invoke.LambdaForm$Name java.lang.invoke.MethodHandleImpl$Intrinsic
      StackMap stack:
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 22
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            iload 2 /* i */
            invokevirtual java.lang.invoke.LambdaForm.isSelectAlternative:(I)Z
            ifne 22
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        22: .line 788
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.MethodHandleStatics.PROFILE_GWT:Z
            ifeq 27
        23: .line 789
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 26
            aload 3 /* name */
            getfield java.lang.invoke.LambdaForm$Name.arguments:[Ljava/lang/Object;
            iconst_0
            aaload
            instanceof java.lang.invoke.LambdaForm$Name
            ifeq 25
        24: .line 790
            aload 3 /* name */
            getfield java.lang.invoke.LambdaForm$Name.arguments:[Ljava/lang/Object;
            iconst_0
            aaload
            checkcast java.lang.invoke.LambdaForm$Name
            ldc Ljava/lang/invoke/MethodHandleImpl;
            ldc "profileBoolean"
            invokevirtual java.lang.invoke.LambdaForm$Name.refersTo:(Ljava/lang/Class;Ljava/lang/String;)Z
            ifne 26
      StackMap locals:
      StackMap stack:
        25: new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        26: .line 791
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            getstatic java.lang.invoke.InvokerBytecodeGenerator.INJECTEDPROFILE_SIG:Ljava/lang/String;
            iconst_1
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitAnnotation:(Ljava/lang/String;Z)Ljdk/internal/org/objectweb/asm/AnnotationVisitor;
            pop
        27: .line 793
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* name */
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            getfield java.lang.invoke.LambdaForm.names:[Ljava/lang/invoke/LambdaForm$Name;
            iload 2 /* i */
            iconst_1
            iadd
            aaload
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitSelectAlternative:(Ljava/lang/invoke/LambdaForm$Name;Ljava/lang/invoke/LambdaForm$Name;)Ljava/lang/invoke/LambdaForm$Name;
            astore 1 /* onStack */
        28: .line 794
            iinc 2 /* i */ 1
        29: .line 795
            goto 65
        30: .line 797
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 31
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            iload 2 /* i */
            invokevirtual java.lang.invoke.LambdaForm.isGuardWithCatch:(I)Z
            ifne 31
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        31: .line 798
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* i */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitGuardWithCatch:(I)Ljava/lang/invoke/LambdaForm$Name;
            astore 1 /* onStack */
        32: .line 799
            iinc 2 /* i */ 2
        33: .line 800
            goto 65
        34: .line 802
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 35
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            iload 2 /* i */
            invokevirtual java.lang.invoke.LambdaForm.isTryFinally:(I)Z
            ifne 35
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        35: .line 803
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* i */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitTryFinally:(I)Ljava/lang/invoke/LambdaForm$Name;
            astore 1 /* onStack */
        36: .line 804
            iinc 2 /* i */ 2
        37: .line 805
            goto 65
        38: .line 807
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 39
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            iload 2 /* i */
            invokevirtual java.lang.invoke.LambdaForm.isLoop:(I)Z
            ifne 39
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        39: .line 808
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* i */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitLoop:(I)Ljava/lang/invoke/LambdaForm$Name;
            astore 1 /* onStack */
        40: .line 809
            iinc 2 /* i */ 2
        41: .line 810
            goto 65
        42: .line 812
      StackMap locals:
      StackMap stack:
            aload 3 /* name */
            getfield java.lang.invoke.LambdaForm$Name.function:Ljava/lang/invoke/LambdaForm$NamedFunction;
            invokevirtual java.lang.invoke.LambdaForm$NamedFunction.methodType:()Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
            astore 5 /* rtype */
        start local 5 // java.lang.Class rtype
        43: .line 813
            aload 5 /* rtype */
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.isStaticallyNameable:(Ljava/lang/Class;)Z
            ifeq 60
        44: .line 814
            aload 0 /* this */
            aload 3 /* name */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitNewArray:(Ljava/lang/invoke/LambdaForm$Name;)V
        45: .line 815
            goto 65
        end local 5 // java.lang.Class rtype
        46: .line 819
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* name */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitArrayLoad:(Ljava/lang/invoke/LambdaForm$Name;)V
        47: .line 820
            goto 65
        48: .line 822
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* name */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitArrayStore:(Ljava/lang/invoke/LambdaForm$Name;)V
        49: .line 823
            goto 65
        50: .line 825
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* name */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitArrayLength:(Ljava/lang/invoke/LambdaForm$Name;)V
        51: .line 826
            goto 65
        52: .line 828
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 53
            aload 3 /* name */
            getfield java.lang.invoke.LambdaForm$Name.arguments:[Ljava/lang/Object;
            arraylength
            iconst_1
            if_icmpeq 53
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        53: .line 829
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* name */
            iconst_0
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPushArguments:(Ljava/lang/invoke/LambdaForm$Name;I)V
        54: .line 830
            goto 65
        55: .line 832
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 56
            aload 3 /* name */
            getfield java.lang.invoke.LambdaForm$Name.arguments:[Ljava/lang/Object;
            arraylength
            ifeq 56
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        56: .line 833
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* name */
            getfield java.lang.invoke.LambdaForm$Name.type:Ljava/lang/invoke/LambdaForm$BasicType;
            invokevirtual java.lang.invoke.LambdaForm$BasicType.basicTypeWrapper:()Lsun/invoke/util/Wrapper;
            invokevirtual sun.invoke.util.Wrapper.zero:()Ljava/lang/Object;
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitConst:(Ljava/lang/Object;)V
        57: .line 834
            goto 65
        58: .line 837
      StackMap locals:
      StackMap stack:
            goto 60
        59: .line 839
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "Unknown intrinsic: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 4 /* intr */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic java.lang.invoke.MethodHandleStatics.newInternalError:(Ljava/lang/String;)Ljava/lang/InternalError;
            athrow
        60: .line 842
      StackMap locals:
      StackMap stack:
            aload 3 /* name */
            getfield java.lang.invoke.LambdaForm$Name.function:Ljava/lang/invoke/LambdaForm$NamedFunction;
            invokevirtual java.lang.invoke.LambdaForm$NamedFunction.member:()Ljava/lang/invoke/MemberName;
            astore 5 /* member */
        start local 5 // java.lang.invoke.MemberName member
        61: .line 843
            aload 5 /* member */
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.isStaticallyInvocable:(Ljava/lang/invoke/MemberName;)Z
            ifeq 64
        62: .line 844
            aload 0 /* this */
            aload 5 /* member */
            aload 3 /* name */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitStaticInvoke:(Ljava/lang/invoke/MemberName;Ljava/lang/invoke/LambdaForm$Name;)V
        63: .line 845
            goto 65
        64: .line 846
      StackMap locals: java.lang.invoke.MemberName
      StackMap stack:
            aload 0 /* this */
            aload 3 /* name */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitInvoke:(Ljava/lang/invoke/LambdaForm$Name;)V
        end local 5 // java.lang.invoke.MemberName member
        end local 4 // java.lang.invoke.MethodHandleImpl$Intrinsic intr
        end local 3 // java.lang.invoke.LambdaForm$Name name
        65: .line 779
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        66: iload 2 /* i */
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            getfield java.lang.invoke.LambdaForm.names:[Ljava/lang/invoke/LambdaForm$Name;
            arraylength
            if_icmplt 16
        end local 2 // int i
        67: .line 851
            aload 0 /* this */
            aload 1 /* onStack */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitReturn:(Ljava/lang/invoke/LambdaForm$Name;)V
        68: .line 853
            aload 0 /* this */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.methodEpilogue:()V
        69: .line 854
            return
        end local 1 // java.lang.invoke.LambdaForm$Name onStack
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   70     0     this  Ljava/lang/invoke/InvokerBytecodeGenerator;
           14   70     1  onStack  Ljava/lang/invoke/LambdaForm$Name;
           15   67     2        i  I
           17   65     3     name  Ljava/lang/invoke/LambdaForm$Name;
           20   65     4     intr  Ljava/lang/invoke/MethodHandleImpl$Intrinsic;
           43   46     5    rtype  Ljava/lang/Class<*>;
           61   65     5   member  Ljava/lang/invoke/MemberName;

  private byte[] toByteArray();
    descriptor: ()[B
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
         0: .line 862
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.cw:Ljdk/internal/org/objectweb/asm/ClassWriter;
            invokevirtual jdk.internal.org.objectweb.asm.ClassWriter.toByteArray:()[B
         1: areturn
         2: .line 863
      StackMap locals:
      StackMap stack: java.lang.RuntimeException
            astore 1 /* e */
        start local 1 // java.lang.RuntimeException e
         3: .line 864
            new java.lang.invoke.InvokerBytecodeGenerator$BytecodeGenerationException
            dup
            aload 1 /* e */
            invokespecial java.lang.invoke.InvokerBytecodeGenerator$BytecodeGenerationException.<init>:(Ljava/lang/Exception;)V
            athrow
        end local 1 // java.lang.RuntimeException e
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            3    4     1     e  Ljava/lang/RuntimeException;
      Exception table:
        from    to  target  type
           0     1       2  Class java.lang.RuntimeException

  void emitArrayLoad(java.lang.invoke.LambdaForm$Name);
    descriptor: (Ljava/lang/invoke/LambdaForm$Name;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.invoke.LambdaForm$Name name
         0: .line 875
            aload 0 /* this */
            aload 1 /* name */
            bipush 50
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitArrayOp:(Ljava/lang/invoke/LambdaForm$Name;I)V
            return
        end local 1 // java.lang.invoke.LambdaForm$Name name
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    1     1  name  Ljava/lang/invoke/LambdaForm$Name;
    MethodParameters:
      Name  Flags
      name  

  void emitArrayStore(java.lang.invoke.LambdaForm$Name);
    descriptor: (Ljava/lang/invoke/LambdaForm$Name;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.invoke.LambdaForm$Name name
         0: .line 876
            aload 0 /* this */
            aload 1 /* name */
            bipush 83
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitArrayOp:(Ljava/lang/invoke/LambdaForm$Name;I)V
            return
        end local 1 // java.lang.invoke.LambdaForm$Name name
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    1     1  name  Ljava/lang/invoke/LambdaForm$Name;
    MethodParameters:
      Name  Flags
      name  

  void emitArrayLength(java.lang.invoke.LambdaForm$Name);
    descriptor: (Ljava/lang/invoke/LambdaForm$Name;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.invoke.LambdaForm$Name name
         0: .line 877
            aload 0 /* this */
            aload 1 /* name */
            sipush 190
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitArrayOp:(Ljava/lang/invoke/LambdaForm$Name;I)V
            return
        end local 1 // java.lang.invoke.LambdaForm$Name name
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    1     1  name  Ljava/lang/invoke/LambdaForm$Name;
    MethodParameters:
      Name  Flags
      name  

  void emitArrayOp(java.lang.invoke.LambdaForm$Name, int);
    descriptor: (Ljava/lang/invoke/LambdaForm$Name;I)V
    flags: (0x0000) 
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.invoke.LambdaForm$Name name
        start local 2 // int arrayOpcode
         0: .line 880
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 1
            iload 2 /* arrayOpcode */
            bipush 50
            if_icmpeq 1
            iload 2 /* arrayOpcode */
            bipush 83
            if_icmpeq 1
            iload 2 /* arrayOpcode */
            sipush 190
            if_icmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 881
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            getfield java.lang.invoke.LambdaForm$Name.function:Ljava/lang/invoke/LambdaForm$NamedFunction;
            invokevirtual java.lang.invoke.LambdaForm$NamedFunction.methodType:()Ljava/lang/invoke/MethodType;
            iconst_0
            invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
            invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
            astore 3 /* elementType */
        start local 3 // java.lang.Class elementType
         2: .line 882
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 3
            aload 3 /* elementType */
            ifnonnull 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 883
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            iconst_0
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPushArguments:(Ljava/lang/invoke/LambdaForm$Name;I)V
         4: .line 884
            iload 2 /* arrayOpcode */
            sipush 190
            if_icmpeq 7
            aload 3 /* elementType */
            invokevirtual java.lang.Class.isPrimitive:()Z
            ifeq 7
         5: .line 885
            aload 3 /* elementType */
            invokestatic sun.invoke.util.Wrapper.forPrimitiveType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
            astore 4 /* w */
        start local 4 // sun.invoke.util.Wrapper w
         6: .line 886
            aload 0 /* this */
            aload 0 /* this */
            aload 4 /* w */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.arrayTypeCode:(Lsun/invoke/util/Wrapper;)B
            iload 2 /* arrayOpcode */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.arrayInsnOpcode:(BI)I
            istore 2 /* arrayOpcode */
        end local 4 // sun.invoke.util.Wrapper w
         7: .line 888
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 2 /* arrayOpcode */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
         8: .line 889
            return
        end local 3 // java.lang.Class elementType
        end local 2 // int arrayOpcode
        end local 1 // java.lang.invoke.LambdaForm$Name name
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    9     0         this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    9     1         name  Ljava/lang/invoke/LambdaForm$Name;
            0    9     2  arrayOpcode  I
            2    9     3  elementType  Ljava/lang/Class<*>;
            6    7     4            w  Lsun/invoke/util/Wrapper;
    MethodParameters:
             Name  Flags
      name         
      arrayOpcode  

  void emitInvoke(java.lang.invoke.LambdaForm$Name);
    descriptor: (Ljava/lang/invoke/LambdaForm$Name;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.invoke.LambdaForm$Name name
         0: .line 895
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 1
            aload 1 /* name */
            invokevirtual java.lang.invoke.LambdaForm$Name.isLinkerMethodInvoke:()Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 898
      StackMap locals:
      StackMap stack:
            aload 1 /* name */
            getfield java.lang.invoke.LambdaForm$Name.function:Ljava/lang/invoke/LambdaForm$NamedFunction;
            invokevirtual java.lang.invoke.LambdaForm$NamedFunction.resolvedHandle:()Ljava/lang/invoke/MethodHandle;
            astore 2 /* target */
        start local 2 // java.lang.invoke.MethodHandle target
         2: .line 899
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 3
            aload 2 /* target */
            ifnonnull 3
            new java.lang.AssertionError
            dup
            aload 1 /* name */
            invokevirtual java.lang.invoke.LambdaForm$Name.exprString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         3: .line 900
      StackMap locals: java.lang.invoke.MethodHandle
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 0 /* this */
            aload 2 /* target */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.constantPlaceholder:(Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLdcInsn:(Ljava/lang/Object;)V
         4: .line 901
            aload 0 /* this */
            ldc Ljava/lang/invoke/MethodHandle;
            aload 2 /* target */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitReferenceCast:(Ljava/lang/Class;Ljava/lang/Object;)V
        end local 2 // java.lang.invoke.MethodHandle target
         5: .line 912
            aload 0 /* this */
            aload 1 /* name */
            iconst_0
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPushArguments:(Ljava/lang/invoke/LambdaForm$Name;I)V
         6: .line 915
            aload 1 /* name */
            getfield java.lang.invoke.LambdaForm$Name.function:Ljava/lang/invoke/LambdaForm$NamedFunction;
            invokevirtual java.lang.invoke.LambdaForm$NamedFunction.methodType:()Ljava/lang/invoke/MethodType;
            astore 2 /* type */
        start local 2 // java.lang.invoke.MethodType type
         7: .line 916
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 182
            ldc "java/lang/invoke/MethodHandle"
            ldc "invokeBasic"
            aload 2 /* type */
            invokevirtual java.lang.invoke.MethodType.basicType:()Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.toMethodDescriptorString:()Ljava/lang/String;
            iconst_0
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
         8: .line 917
            return
        end local 2 // java.lang.invoke.MethodType type
        end local 1 // java.lang.invoke.LambdaForm$Name name
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    9     1    name  Ljava/lang/invoke/LambdaForm$Name;
            2    5     2  target  Ljava/lang/invoke/MethodHandle;
            7    9     2    type  Ljava/lang/invoke/MethodType;
    MethodParameters:
      Name  Flags
      name  

  static boolean isStaticallyInvocable(java.lang.invoke.LambdaForm$NamedFunction[]);
    descriptor: ([Ljava/lang/invoke/LambdaForm$NamedFunction;)Z
    flags: (0x0088) ACC_STATIC, ACC_VARARGS
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // java.lang.invoke.LambdaForm$NamedFunction[] functions
         0: .line 928
            aload 0 /* functions */
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 5
      StackMap locals: java.lang.invoke.LambdaForm$NamedFunction[] top int int java.lang.invoke.LambdaForm$NamedFunction[]
      StackMap stack:
         1: aload 4
            iload 2
            aaload
            astore 1 /* nf */
        start local 1 // java.lang.invoke.LambdaForm$NamedFunction nf
         2: .line 929
            aload 1 /* nf */
            invokevirtual java.lang.invoke.LambdaForm$NamedFunction.member:()Ljava/lang/invoke/MemberName;
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.isStaticallyInvocable:(Ljava/lang/invoke/MemberName;)Z
            ifne 4
         3: .line 930
            iconst_0
            ireturn
        end local 1 // java.lang.invoke.LambdaForm$NamedFunction nf
         4: .line 928
      StackMap locals:
      StackMap stack:
            iinc 2 1
      StackMap locals:
      StackMap stack:
         5: iload 2
            iload 3
            if_icmplt 1
         6: .line 933
            iconst_1
            ireturn
        end local 0 // java.lang.invoke.LambdaForm$NamedFunction[] functions
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0  functions  [Ljava/lang/invoke/LambdaForm$NamedFunction;
            2    4     1         nf  Ljava/lang/invoke/LambdaForm$NamedFunction;
    MethodParameters:
           Name  Flags
      functions  

  static boolean isStaticallyInvocable(java.lang.invoke.LambdaForm$Name);
    descriptor: (Ljava/lang/invoke/LambdaForm$Name;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.lang.invoke.LambdaForm$Name name
         0: .line 937
            aload 0 /* name */
            getfield java.lang.invoke.LambdaForm$Name.function:Ljava/lang/invoke/LambdaForm$NamedFunction;
            invokevirtual java.lang.invoke.LambdaForm$NamedFunction.member:()Ljava/lang/invoke/MemberName;
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.isStaticallyInvocable:(Ljava/lang/invoke/MemberName;)Z
            ireturn
        end local 0 // java.lang.invoke.LambdaForm$Name name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  name  Ljava/lang/invoke/LambdaForm$Name;
    MethodParameters:
      Name  Flags
      name  

  static boolean isStaticallyInvocable(java.lang.invoke.MemberName);
    descriptor: (Ljava/lang/invoke/MemberName;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.lang.invoke.MemberName member
         0: .line 941
            aload 0 /* member */
            ifnonnull 1
            iconst_0
            ireturn
         1: .line 942
      StackMap locals:
      StackMap stack:
            aload 0 /* member */
            invokevirtual java.lang.invoke.MemberName.isConstructor:()Z
            ifeq 2
            iconst_0
            ireturn
         2: .line 943
      StackMap locals:
      StackMap stack:
            aload 0 /* member */
            invokevirtual java.lang.invoke.MemberName.getDeclaringClass:()Ljava/lang/Class;
            astore 1 /* cls */
        start local 1 // java.lang.Class cls
         3: .line 946
            ldc Ljava/lang/invoke/MethodHandle;
            aload 1 /* cls */
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 6
            aload 0 /* member */
            invokevirtual java.lang.invoke.MemberName.isPrivate:()Z
            ifne 6
         4: .line 947
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 5
            aload 0 /* member */
            invokevirtual java.lang.invoke.MemberName.getMethodOrFieldType:()Ljava/lang/invoke/MethodType;
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.isStaticallyInvocableType:(Ljava/lang/invoke/MethodType;)Z
            ifne 5
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         5: .line 948
      StackMap locals: java.lang.Class
      StackMap stack:
            iconst_1
            ireturn
         6: .line 950
      StackMap locals:
      StackMap stack:
            aload 1 /* cls */
            invokevirtual java.lang.Class.isArray:()Z
            ifne 7
            aload 1 /* cls */
            invokevirtual java.lang.Class.isPrimitive:()Z
            ifeq 8
         7: .line 951
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         8: .line 952
      StackMap locals:
      StackMap stack:
            aload 1 /* cls */
            invokevirtual java.lang.Class.isAnonymousClass:()Z
            ifne 9
            aload 1 /* cls */
            invokevirtual java.lang.Class.isLocalClass:()Z
            ifeq 10
         9: .line 953
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        10: .line 954
      StackMap locals:
      StackMap stack:
            aload 1 /* cls */
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            ldc Ljava/lang/invoke/MethodHandle;
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            if_acmpeq 12
        11: .line 955
            iconst_0
            ireturn
        12: .line 956
      StackMap locals:
      StackMap stack:
            aload 1 /* cls */
            invokestatic sun.reflect.misc.ReflectUtil.isVMAnonymousClass:(Ljava/lang/Class;)Z
            ifeq 14
        13: .line 957
            iconst_0
            ireturn
        14: .line 958
      StackMap locals:
      StackMap stack:
            aload 0 /* member */
            invokevirtual java.lang.invoke.MemberName.getMethodOrFieldType:()Ljava/lang/invoke/MethodType;
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.isStaticallyInvocableType:(Ljava/lang/invoke/MethodType;)Z
            ifne 16
        15: .line 959
            iconst_0
            ireturn
        16: .line 960
      StackMap locals:
      StackMap stack:
            aload 0 /* member */
            invokevirtual java.lang.invoke.MemberName.isPrivate:()Z
            ifne 18
            ldc Ljava/lang/invoke/MethodHandle;
            aload 1 /* cls */
            invokestatic sun.invoke.util.VerifyAccess.isSamePackage:(Ljava/lang/Class;Ljava/lang/Class;)Z
            ifeq 18
        17: .line 961
            iconst_1
            ireturn
        18: .line 962
      StackMap locals:
      StackMap stack:
            aload 0 /* member */
            invokevirtual java.lang.invoke.MemberName.isPublic:()Z
            ifeq 20
            aload 1 /* cls */
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.isStaticallyNameable:(Ljava/lang/Class;)Z
            ifeq 20
        19: .line 963
            iconst_1
            ireturn
        20: .line 964
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // java.lang.Class cls
        end local 0 // java.lang.invoke.MemberName member
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   21     0  member  Ljava/lang/invoke/MemberName;
            3   21     1     cls  Ljava/lang/Class<*>;
    MethodParameters:
        Name  Flags
      member  

  private static boolean isStaticallyInvocableType(java.lang.invoke.MethodType);
    descriptor: (Ljava/lang/invoke/MethodType;)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // java.lang.invoke.MethodType mtype
         0: .line 968
            aload 0 /* mtype */
            invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.isStaticallyNameable:(Ljava/lang/Class;)Z
            ifne 2
         1: .line 969
            iconst_0
            ireturn
         2: .line 970
      StackMap locals:
      StackMap stack:
            aload 0 /* mtype */
            invokevirtual java.lang.invoke.MethodType.parameterArray:()[Ljava/lang/Class;
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 7
      StackMap locals: java.lang.invoke.MethodType top int int java.lang.Class[]
      StackMap stack:
         3: aload 4
            iload 2
            aaload
            astore 1 /* ptype */
        start local 1 // java.lang.Class ptype
         4: .line 971
            aload 1 /* ptype */
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.isStaticallyNameable:(Ljava/lang/Class;)Z
            ifne 6
         5: .line 972
            iconst_0
            ireturn
        end local 1 // java.lang.Class ptype
         6: .line 970
      StackMap locals:
      StackMap stack:
            iinc 2 1
      StackMap locals:
      StackMap stack:
         7: iload 2
            iload 3
            if_icmplt 3
         8: .line 973
            iconst_1
            ireturn
        end local 0 // java.lang.invoke.MethodType mtype
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0  mtype  Ljava/lang/invoke/MethodType;
            4    6     1  ptype  Ljava/lang/Class<*>;
    MethodParameters:
       Name  Flags
      mtype  

  static boolean isStaticallyNameable(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // java.lang.Class cls
         0: .line 977
            aload 0 /* cls */
            ldc Ljava/lang/Object;
            if_acmpne 2
         1: .line 978
            iconst_1
            ireturn
         2: .line 979
      StackMap locals:
      StackMap stack:
            ldc Ljava/lang/invoke/MethodHandle;
            aload 0 /* cls */
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 6
         3: .line 980
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 4
            aload 0 /* cls */
            invokestatic sun.reflect.misc.ReflectUtil.isVMAnonymousClass:(Ljava/lang/Class;)Z
            ifeq 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 981
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
         5: .line 984
      StackMap locals:
      StackMap stack:
            aload 0 /* cls */
            invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
            astore 0 /* cls */
         6: .line 983
      StackMap locals:
      StackMap stack:
            aload 0 /* cls */
            invokevirtual java.lang.Class.isArray:()Z
            ifne 5
         7: .line 985
            aload 0 /* cls */
            invokevirtual java.lang.Class.isPrimitive:()Z
            ifeq 9
         8: .line 986
            iconst_1
            ireturn
         9: .line 987
      StackMap locals:
      StackMap stack:
            aload 0 /* cls */
            invokestatic sun.reflect.misc.ReflectUtil.isVMAnonymousClass:(Ljava/lang/Class;)Z
            ifeq 11
        10: .line 988
            iconst_0
            ireturn
        11: .line 990
      StackMap locals:
      StackMap stack:
            aload 0 /* cls */
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            ldc Ljava/lang/Object;
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            if_acmpeq 13
        12: .line 991
            iconst_0
            ireturn
        13: .line 992
      StackMap locals:
      StackMap stack:
            ldc Ljava/lang/invoke/MethodHandle;
            aload 0 /* cls */
            invokestatic sun.invoke.util.VerifyAccess.isSamePackage:(Ljava/lang/Class;Ljava/lang/Class;)Z
            ifeq 15
        14: .line 993
            iconst_1
            ireturn
        15: .line 994
      StackMap locals:
      StackMap stack:
            aload 0 /* cls */
            invokevirtual java.lang.Class.getModifiers:()I
            invokestatic java.lang.reflect.Modifier.isPublic:(I)Z
            ifne 17
        16: .line 995
            iconst_0
            ireturn
        17: .line 996
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.InvokerBytecodeGenerator.STATICALLY_INVOCABLE_PACKAGES:[Ljava/lang/Class;
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 22
      StackMap locals: java.lang.Class top int int java.lang.Class[]
      StackMap stack:
        18: aload 4
            iload 2
            aaload
            astore 1 /* pkgcls */
        start local 1 // java.lang.Class pkgcls
        19: .line 997
            aload 1 /* pkgcls */
            aload 0 /* cls */
            invokestatic sun.invoke.util.VerifyAccess.isSamePackage:(Ljava/lang/Class;Ljava/lang/Class;)Z
            ifeq 21
        20: .line 998
            iconst_1
            ireturn
        end local 1 // java.lang.Class pkgcls
        21: .line 996
      StackMap locals:
      StackMap stack:
            iinc 2 1
      StackMap locals:
      StackMap stack:
        22: iload 2
            iload 3
            if_icmplt 18
        23: .line 1000
            iconst_0
            ireturn
        end local 0 // java.lang.Class cls
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   24     0     cls  Ljava/lang/Class<*>;
           19   21     1  pkgcls  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)Z
    MethodParameters:
      Name  Flags
      cls   

  void emitStaticInvoke(java.lang.invoke.LambdaForm$Name);
    descriptor: (Ljava/lang/invoke/LambdaForm$Name;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.invoke.LambdaForm$Name name
         0: .line 1004
            aload 0 /* this */
            aload 1 /* name */
            getfield java.lang.invoke.LambdaForm$Name.function:Ljava/lang/invoke/LambdaForm$NamedFunction;
            invokevirtual java.lang.invoke.LambdaForm$NamedFunction.member:()Ljava/lang/invoke/MemberName;
            aload 1 /* name */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitStaticInvoke:(Ljava/lang/invoke/MemberName;Ljava/lang/invoke/LambdaForm$Name;)V
         1: .line 1005
            return
        end local 1 // java.lang.invoke.LambdaForm$Name name
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    2     1  name  Ljava/lang/invoke/LambdaForm$Name;
    MethodParameters:
      Name  Flags
      name  

  void emitStaticInvoke(java.lang.invoke.MemberName, java.lang.invoke.LambdaForm$Name);
    descriptor: (Ljava/lang/invoke/MemberName;Ljava/lang/invoke/LambdaForm$Name;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=9, args_size=3
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.invoke.MemberName member
        start local 2 // java.lang.invoke.LambdaForm$Name name
         0: .line 1011
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 1
            aload 1 /* member */
            aload 2 /* name */
            getfield java.lang.invoke.LambdaForm$Name.function:Ljava/lang/invoke/LambdaForm$NamedFunction;
            invokevirtual java.lang.invoke.LambdaForm$NamedFunction.member:()Ljava/lang/invoke/MemberName;
            invokevirtual java.lang.invoke.MemberName.equals:(Ljava/lang/invoke/MemberName;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1012
      StackMap locals:
      StackMap stack:
            aload 1 /* member */
            invokevirtual java.lang.invoke.MemberName.getDeclaringClass:()Ljava/lang/Class;
            astore 3 /* defc */
        start local 3 // java.lang.Class defc
         2: .line 1013
            aload 0 /* this */
            aload 3 /* defc */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.getInternalName:(Ljava/lang/Class;)Ljava/lang/String;
            astore 4 /* cname */
        start local 4 // java.lang.String cname
         3: .line 1014
            aload 1 /* member */
            invokevirtual java.lang.invoke.MemberName.getName:()Ljava/lang/String;
            astore 5 /* mname */
        start local 5 // java.lang.String mname
         4: .line 1016
            aload 1 /* member */
            invokevirtual java.lang.invoke.MemberName.getReferenceKind:()B
            istore 7 /* refKind */
        start local 7 // byte refKind
         5: .line 1017
            iload 7 /* refKind */
            bipush 7
            if_icmpne 8
         6: .line 1019
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 7
            aload 1 /* member */
            invokevirtual java.lang.invoke.MemberName.canBeStaticallyBound:()Z
            ifne 7
            new java.lang.AssertionError
            dup
            aload 1 /* member */
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         7: .line 1020
      StackMap locals: java.lang.invoke.InvokerBytecodeGenerator java.lang.invoke.MemberName java.lang.invoke.LambdaForm$Name java.lang.Class java.lang.String java.lang.String top int
      StackMap stack:
            iconst_5
            istore 7 /* refKind */
         8: .line 1023
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 9
            aload 1 /* member */
            invokevirtual java.lang.invoke.MemberName.getDeclaringClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isInterface:()Z
            ifeq 9
            iload 7 /* refKind */
            iconst_5
            if_icmpne 9
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         9: .line 1026
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* name */
            iconst_0
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPushArguments:(Ljava/lang/invoke/LambdaForm$Name;I)V
        10: .line 1029
            aload 1 /* member */
            invokevirtual java.lang.invoke.MemberName.isMethod:()Z
            ifeq 16
        11: .line 1030
            aload 1 /* member */
            invokevirtual java.lang.invoke.MemberName.getMethodType:()Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.toMethodDescriptorString:()Ljava/lang/String;
            astore 6 /* mtype */
        start local 6 // java.lang.String mtype
        12: .line 1031
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 0 /* this */
            iload 7 /* refKind */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.refKindOpcode:(B)I
            aload 4 /* cname */
            aload 5 /* mname */
            aload 6 /* mtype */
        13: .line 1032
            aload 1 /* member */
            invokevirtual java.lang.invoke.MemberName.getDeclaringClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isInterface:()Z
        14: .line 1031
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
        15: .line 1033
            goto 18
        end local 6 // java.lang.String mtype
        16: .line 1034
      StackMap locals:
      StackMap stack:
            aload 1 /* member */
            invokevirtual java.lang.invoke.MemberName.getFieldType:()Ljava/lang/Class;
            invokestatic java.lang.invoke.MethodType.toFieldDescriptorString:(Ljava/lang/Class;)Ljava/lang/String;
            astore 6 /* mtype */
        start local 6 // java.lang.String mtype
        17: .line 1035
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 0 /* this */
            iload 7 /* refKind */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.refKindOpcode:(B)I
            aload 4 /* cname */
            aload 5 /* mname */
            aload 6 /* mtype */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitFieldInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        18: .line 1038
      StackMap locals: java.lang.invoke.InvokerBytecodeGenerator java.lang.invoke.MemberName java.lang.invoke.LambdaForm$Name java.lang.Class java.lang.String java.lang.String java.lang.String int
      StackMap stack:
            aload 2 /* name */
            getfield java.lang.invoke.LambdaForm$Name.type:Ljava/lang/invoke/LambdaForm$BasicType;
            getstatic java.lang.invoke.LambdaForm$BasicType.L_TYPE:Ljava/lang/invoke/LambdaForm$BasicType;
            if_acmpne 23
        19: .line 1039
            aload 1 /* member */
            invokevirtual java.lang.invoke.MemberName.getInvocationType:()Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
            astore 8 /* rtype */
        start local 8 // java.lang.Class rtype
        20: .line 1040
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 21
            aload 8 /* rtype */
            invokevirtual java.lang.Class.isPrimitive:()Z
            ifeq 21
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        21: .line 1041
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 8 /* rtype */
            ldc Ljava/lang/Object;
            if_acmpeq 23
            aload 8 /* rtype */
            invokevirtual java.lang.Class.isInterface:()Z
            ifne 23
        22: .line 1042
            aload 0 /* this */
            aload 8 /* rtype */
            aload 2 /* name */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.assertStaticType:(Ljava/lang/Class;Ljava/lang/invoke/LambdaForm$Name;)Z
            pop
        end local 8 // java.lang.Class rtype
        23: .line 1045
      StackMap locals:
      StackMap stack:
            return
        end local 7 // byte refKind
        end local 6 // java.lang.String mtype
        end local 5 // java.lang.String mname
        end local 4 // java.lang.String cname
        end local 3 // java.lang.Class defc
        end local 2 // java.lang.invoke.LambdaForm$Name name
        end local 1 // java.lang.invoke.MemberName member
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   24     0     this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0   24     1   member  Ljava/lang/invoke/MemberName;
            0   24     2     name  Ljava/lang/invoke/LambdaForm$Name;
            2   24     3     defc  Ljava/lang/Class<*>;
            3   24     4    cname  Ljava/lang/String;
            4   24     5    mname  Ljava/lang/String;
           12   16     6    mtype  Ljava/lang/String;
           17   24     6    mtype  Ljava/lang/String;
            5   24     7  refKind  B
           20   23     8    rtype  Ljava/lang/Class<*>;
    MethodParameters:
        Name  Flags
      member  
      name    

  void emitNewArray(java.lang.invoke.LambdaForm$Name);
    descriptor: (Ljava/lang/invoke/LambdaForm$Name;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=6, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.invoke.LambdaForm$Name name
         0: .line 1048
            aload 1 /* name */
            getfield java.lang.invoke.LambdaForm$Name.function:Ljava/lang/invoke/LambdaForm$NamedFunction;
            invokevirtual java.lang.invoke.LambdaForm$NamedFunction.methodType:()Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
            astore 2 /* rtype */
        start local 2 // java.lang.Class rtype
         1: .line 1049
            aload 1 /* name */
            getfield java.lang.invoke.LambdaForm$Name.arguments:[Ljava/lang/Object;
            arraylength
            ifne 11
         2: .line 1053
            aload 1 /* name */
            getfield java.lang.invoke.LambdaForm$Name.function:Ljava/lang/invoke/LambdaForm$NamedFunction;
            invokevirtual java.lang.invoke.LambdaForm$NamedFunction.resolvedHandle:()Ljava/lang/invoke/MethodHandle;
            invokevirtual java.lang.invoke.MethodHandle.invoke:()Ljava/lang/Object;
            astore 3 /* emptyArray */
        start local 3 // java.lang.Object emptyArray
         3: .line 1054
            goto 6
        end local 3 // java.lang.Object emptyArray
      StackMap locals: java.lang.invoke.InvokerBytecodeGenerator java.lang.invoke.LambdaForm$Name java.lang.Class
      StackMap stack: java.lang.Throwable
         4: astore 4 /* ex */
        start local 4 // java.lang.Throwable ex
         5: .line 1055
            aload 4 /* ex */
            invokestatic java.lang.invoke.MethodHandleStatics.uncaughtException:(Ljava/lang/Throwable;)Ljava/lang/Error;
            athrow
        end local 4 // java.lang.Throwable ex
        start local 3 // java.lang.Object emptyArray
         6: .line 1057
      StackMap locals: java.lang.Object
      StackMap stack:
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 7
            aload 3 /* emptyArray */
            invokestatic java.lang.reflect.Array.getLength:(Ljava/lang/Object;)I
            ifeq 7
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         7: .line 1058
      StackMap locals:
      StackMap stack:
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 8
            aload 3 /* emptyArray */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            aload 2 /* rtype */
            if_acmpeq 8
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         8: .line 1059
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 0 /* this */
            aload 3 /* emptyArray */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.constantPlaceholder:(Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLdcInsn:(Ljava/lang/Object;)V
         9: .line 1060
            aload 0 /* this */
            aload 2 /* rtype */
            aload 3 /* emptyArray */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitReferenceCast:(Ljava/lang/Class;Ljava/lang/Object;)V
        10: .line 1061
            return
        end local 3 // java.lang.Object emptyArray
        11: .line 1063
      StackMap locals:
      StackMap stack:
            aload 2 /* rtype */
            invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
            astore 3 /* arrayElementType */
        start local 3 // java.lang.Class arrayElementType
        12: .line 1064
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 13
            aload 3 /* arrayElementType */
            ifnonnull 13
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        13: .line 1065
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 0 /* this */
            aload 1 /* name */
            getfield java.lang.invoke.LambdaForm$Name.arguments:[Ljava/lang/Object;
            arraylength
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitIconstInsn:(I)V
        14: .line 1066
            bipush 83
            istore 4 /* xas */
        start local 4 // int xas
        15: .line 1067
            aload 3 /* arrayElementType */
            invokevirtual java.lang.Class.isPrimitive:()Z
            ifne 18
        16: .line 1068
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 189
            aload 0 /* this */
            aload 3 /* arrayElementType */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.getInternalName:(Ljava/lang/Class;)Ljava/lang/String;
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitTypeInsn:(ILjava/lang/String;)V
        17: .line 1069
            goto 21
        18: .line 1070
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 3 /* arrayElementType */
            invokestatic sun.invoke.util.Wrapper.forPrimitiveType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.arrayTypeCode:(Lsun/invoke/util/Wrapper;)B
            istore 5 /* tc */
        start local 5 // byte tc
        19: .line 1071
            aload 0 /* this */
            iload 5 /* tc */
            iload 4 /* xas */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.arrayInsnOpcode:(BI)I
            istore 4 /* xas */
        20: .line 1072
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 188
            iload 5 /* tc */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitIntInsn:(II)V
        end local 5 // byte tc
        21: .line 1075
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        22: goto 28
        23: .line 1076
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 89
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        24: .line 1077
            aload 0 /* this */
            iload 5 /* i */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitIconstInsn:(I)V
        25: .line 1078
            aload 0 /* this */
            aload 1 /* name */
            iload 5 /* i */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPushArgument:(Ljava/lang/invoke/LambdaForm$Name;I)V
        26: .line 1079
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 4 /* xas */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        27: .line 1075
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        28: iload 5 /* i */
            aload 1 /* name */
            getfield java.lang.invoke.LambdaForm$Name.arguments:[Ljava/lang/Object;
            arraylength
            if_icmplt 23
        end local 5 // int i
        29: .line 1082
            aload 0 /* this */
            aload 2 /* rtype */
            aload 1 /* name */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.assertStaticType:(Ljava/lang/Class;Ljava/lang/invoke/LambdaForm$Name;)Z
            pop
        30: .line 1083
            return
        end local 4 // int xas
        end local 3 // java.lang.Class arrayElementType
        end local 2 // java.lang.Class rtype
        end local 1 // java.lang.invoke.LambdaForm$Name name
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   31     0              this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0   31     1              name  Ljava/lang/invoke/LambdaForm$Name;
            1   31     2             rtype  Ljava/lang/Class<*>;
            3    4     3        emptyArray  Ljava/lang/Object;
            6   11     3        emptyArray  Ljava/lang/Object;
            5    6     4                ex  Ljava/lang/Throwable;
           12   31     3  arrayElementType  Ljava/lang/Class<*>;
           15   31     4               xas  I
           19   21     5                tc  B
           22   29     5                 i  I
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.Throwable
    Exceptions:
      throws java.lang.InternalError
    MethodParameters:
      Name  Flags
      name  

  int refKindOpcode(byte);
    descriptor: (B)I
    flags: (0x0000) 
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // byte refKind
         0: .line 1085
            iload 1 /* refKind */
            tableswitch { // 1 - 9
                    1: 5
                    2: 7
                    3: 6
                    4: 8
                    5: 1
                    6: 2
                    7: 3
                    8: 9
                    9: 4
              default: 9
          }
         1: .line 1086
      StackMap locals:
      StackMap stack:
            sipush 182
            ireturn
         2: .line 1087
      StackMap locals:
      StackMap stack:
            sipush 184
            ireturn
         3: .line 1088
      StackMap locals:
      StackMap stack:
            sipush 183
            ireturn
         4: .line 1089
      StackMap locals:
      StackMap stack:
            sipush 185
            ireturn
         5: .line 1090
      StackMap locals:
      StackMap stack:
            sipush 180
            ireturn
         6: .line 1091
      StackMap locals:
      StackMap stack:
            sipush 181
            ireturn
         7: .line 1092
      StackMap locals:
      StackMap stack:
            sipush 178
            ireturn
         8: .line 1093
      StackMap locals:
      StackMap stack:
            sipush 179
            ireturn
         9: .line 1095
      StackMap locals:
      StackMap stack:
            new java.lang.InternalError
            dup
            new java.lang.StringBuilder
            dup
            ldc "refKind="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* refKind */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // byte refKind
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0   10     1  refKind  B
    MethodParameters:
         Name  Flags
      refKind  

  private java.lang.invoke.LambdaForm$Name emitSelectAlternative(java.lang.invoke.LambdaForm$Name, java.lang.invoke.LambdaForm$Name);
    descriptor: (Ljava/lang/invoke/LambdaForm$Name;Ljava/lang/invoke/LambdaForm$Name;)Ljava/lang/invoke/LambdaForm$Name;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=7, args_size=3
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.invoke.LambdaForm$Name selectAlternativeName
        start local 2 // java.lang.invoke.LambdaForm$Name invokeBasicName
         0: .line 1110
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 1
            aload 2 /* invokeBasicName */
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.isStaticallyInvocable:(Ljava/lang/invoke/LambdaForm$Name;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1112
      StackMap locals:
      StackMap stack:
            aload 2 /* invokeBasicName */
            getfield java.lang.invoke.LambdaForm$Name.arguments:[Ljava/lang/Object;
            iconst_0
            aaload
            checkcast java.lang.invoke.LambdaForm$Name
            astore 3 /* receiver */
        start local 3 // java.lang.invoke.LambdaForm$Name receiver
         2: .line 1114
            new jdk.internal.org.objectweb.asm.Label
            dup
            invokespecial jdk.internal.org.objectweb.asm.Label.<init>:()V
            astore 4 /* L_fallback */
        start local 4 // jdk.internal.org.objectweb.asm.Label L_fallback
         3: .line 1115
            new jdk.internal.org.objectweb.asm.Label
            dup
            invokespecial jdk.internal.org.objectweb.asm.Label.<init>:()V
            astore 5 /* L_done */
        start local 5 // jdk.internal.org.objectweb.asm.Label L_done
         4: .line 1118
            aload 0 /* this */
            aload 1 /* selectAlternativeName */
            iconst_0
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPushArgument:(Ljava/lang/invoke/LambdaForm$Name;I)V
         5: .line 1121
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 153
            aload 4 /* L_fallback */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitJumpInsn:(ILjdk/internal/org/objectweb/asm/Label;)V
         6: .line 1124
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.localClasses:[Ljava/lang/Class;
            invokevirtual java.lang.Class[].clone:()Ljava/lang/Object;
            checkcast java.lang.Class[]
            astore 6 /* preForkClasses */
        start local 6 // java.lang.Class[] preForkClasses
         7: .line 1125
            aload 0 /* this */
            aload 1 /* selectAlternativeName */
            iconst_1
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPushArgument:(Ljava/lang/invoke/LambdaForm$Name;I)V
         8: .line 1126
            aload 0 /* this */
            aload 3 /* receiver */
            invokevirtual java.lang.invoke.LambdaForm$Name.index:()I
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitAstoreInsn:(I)V
         9: .line 1127
            aload 0 /* this */
            aload 2 /* invokeBasicName */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitStaticInvoke:(Ljava/lang/invoke/LambdaForm$Name;)V
        10: .line 1130
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 167
            aload 5 /* L_done */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitJumpInsn:(ILjdk/internal/org/objectweb/asm/Label;)V
        11: .line 1133
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 4 /* L_fallback */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLabel:(Ljdk/internal/org/objectweb/asm/Label;)V
        12: .line 1136
            aload 6 /* preForkClasses */
            iconst_0
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.localClasses:[Ljava/lang/Class;
            iconst_0
            aload 6 /* preForkClasses */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        13: .line 1137
            aload 0 /* this */
            aload 1 /* selectAlternativeName */
            iconst_2
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPushArgument:(Ljava/lang/invoke/LambdaForm$Name;I)V
        14: .line 1138
            aload 0 /* this */
            aload 3 /* receiver */
            invokevirtual java.lang.invoke.LambdaForm$Name.index:()I
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitAstoreInsn:(I)V
        15: .line 1139
            aload 0 /* this */
            aload 2 /* invokeBasicName */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitStaticInvoke:(Ljava/lang/invoke/LambdaForm$Name;)V
        16: .line 1142
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 5 /* L_done */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLabel:(Ljdk/internal/org/objectweb/asm/Label;)V
        17: .line 1144
            aload 6 /* preForkClasses */
            iconst_0
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.localClasses:[Ljava/lang/Class;
            iconst_0
            aload 6 /* preForkClasses */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        18: .line 1146
            aload 2 /* invokeBasicName */
            areturn
        end local 6 // java.lang.Class[] preForkClasses
        end local 5 // jdk.internal.org.objectweb.asm.Label L_done
        end local 4 // jdk.internal.org.objectweb.asm.Label L_fallback
        end local 3 // java.lang.invoke.LambdaForm$Name receiver
        end local 2 // java.lang.invoke.LambdaForm$Name invokeBasicName
        end local 1 // java.lang.invoke.LambdaForm$Name selectAlternativeName
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   19     0                   this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0   19     1  selectAlternativeName  Ljava/lang/invoke/LambdaForm$Name;
            0   19     2        invokeBasicName  Ljava/lang/invoke/LambdaForm$Name;
            2   19     3               receiver  Ljava/lang/invoke/LambdaForm$Name;
            3   19     4             L_fallback  Ljdk/internal/org/objectweb/asm/Label;
            4   19     5                 L_done  Ljdk/internal/org/objectweb/asm/Label;
            7   19     6         preForkClasses  [Ljava/lang/Class;
    MethodParameters:
                       Name  Flags
      selectAlternativeName  
      invokeBasicName        

  private java.lang.invoke.LambdaForm$Name emitGuardWithCatch(int);
    descriptor: (I)Ljava/lang/invoke/LambdaForm$Name;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=13, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // int pos
         0: .line 1170
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            getfield java.lang.invoke.LambdaForm.names:[Ljava/lang/invoke/LambdaForm$Name;
            iload 1 /* pos */
            aaload
            astore 2 /* args */
        start local 2 // java.lang.invoke.LambdaForm$Name args
         1: .line 1171
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            getfield java.lang.invoke.LambdaForm.names:[Ljava/lang/invoke/LambdaForm$Name;
            iload 1 /* pos */
            iconst_1
            iadd
            aaload
            astore 3 /* invoker */
        start local 3 // java.lang.invoke.LambdaForm$Name invoker
         2: .line 1172
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            getfield java.lang.invoke.LambdaForm.names:[Ljava/lang/invoke/LambdaForm$Name;
            iload 1 /* pos */
            iconst_2
            iadd
            aaload
            astore 4 /* result */
        start local 4 // java.lang.invoke.LambdaForm$Name result
         3: .line 1174
            new jdk.internal.org.objectweb.asm.Label
            dup
            invokespecial jdk.internal.org.objectweb.asm.Label.<init>:()V
            astore 5 /* L_startBlock */
        start local 5 // jdk.internal.org.objectweb.asm.Label L_startBlock
         4: .line 1175
            new jdk.internal.org.objectweb.asm.Label
            dup
            invokespecial jdk.internal.org.objectweb.asm.Label.<init>:()V
            astore 6 /* L_endBlock */
        start local 6 // jdk.internal.org.objectweb.asm.Label L_endBlock
         5: .line 1176
            new jdk.internal.org.objectweb.asm.Label
            dup
            invokespecial jdk.internal.org.objectweb.asm.Label.<init>:()V
            astore 7 /* L_handler */
        start local 7 // jdk.internal.org.objectweb.asm.Label L_handler
         6: .line 1177
            new jdk.internal.org.objectweb.asm.Label
            dup
            invokespecial jdk.internal.org.objectweb.asm.Label.<init>:()V
            astore 8 /* L_done */
        start local 8 // jdk.internal.org.objectweb.asm.Label L_done
         7: .line 1179
            aload 4 /* result */
            getfield java.lang.invoke.LambdaForm$Name.function:Ljava/lang/invoke/LambdaForm$NamedFunction;
            invokevirtual java.lang.invoke.LambdaForm$NamedFunction.resolvedHandle:()Ljava/lang/invoke/MethodHandle;
            invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
            astore 9 /* returnType */
        start local 9 // java.lang.Class returnType
         8: .line 1180
            aload 2 /* args */
            getfield java.lang.invoke.LambdaForm$Name.function:Ljava/lang/invoke/LambdaForm$NamedFunction;
            invokevirtual java.lang.invoke.LambdaForm$NamedFunction.resolvedHandle:()Ljava/lang/invoke/MethodHandle;
            invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
         9: .line 1181
            iconst_0
            iconst_1
            invokevirtual java.lang.invoke.MethodType.dropParameterTypes:(II)Ljava/lang/invoke/MethodType;
        10: .line 1182
            aload 9 /* returnType */
            invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
        11: .line 1180
            astore 10 /* type */
        start local 10 // java.lang.invoke.MethodType type
        12: .line 1184
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 5 /* L_startBlock */
            aload 6 /* L_endBlock */
            aload 7 /* L_handler */
            ldc "java/lang/Throwable"
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitTryCatchBlock:(Ljdk/internal/org/objectweb/asm/Label;Ljdk/internal/org/objectweb/asm/Label;Ljdk/internal/org/objectweb/asm/Label;Ljava/lang/String;)V
        13: .line 1187
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 5 /* L_startBlock */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLabel:(Ljdk/internal/org/objectweb/asm/Label;)V
        14: .line 1189
            aload 0 /* this */
            aload 3 /* invoker */
            iconst_0
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPushArgument:(Ljava/lang/invoke/LambdaForm$Name;I)V
        15: .line 1190
            aload 0 /* this */
            aload 2 /* args */
            iconst_1
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPushArguments:(Ljava/lang/invoke/LambdaForm$Name;I)V
        16: .line 1191
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 182
            ldc "java/lang/invoke/MethodHandle"
            ldc "invokeBasic"
            aload 10 /* type */
            invokevirtual java.lang.invoke.MethodType.basicType:()Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.toMethodDescriptorString:()Ljava/lang/String;
            iconst_0
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
        17: .line 1192
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 6 /* L_endBlock */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLabel:(Ljdk/internal/org/objectweb/asm/Label;)V
        18: .line 1193
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 167
            aload 8 /* L_done */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitJumpInsn:(ILjdk/internal/org/objectweb/asm/Label;)V
        19: .line 1196
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 7 /* L_handler */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLabel:(Ljdk/internal/org/objectweb/asm/Label;)V
        20: .line 1199
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 89
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        21: .line 1201
            aload 0 /* this */
            aload 3 /* invoker */
            iconst_1
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPushArgument:(Ljava/lang/invoke/LambdaForm$Name;I)V
        22: .line 1202
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 95
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        23: .line 1203
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 182
            ldc "java/lang/Class"
            ldc "isInstance"
            ldc "(Ljava/lang/Object;)Z"
            iconst_0
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
        24: .line 1204
            new jdk.internal.org.objectweb.asm.Label
            dup
            invokespecial jdk.internal.org.objectweb.asm.Label.<init>:()V
            astore 11 /* L_rethrow */
        start local 11 // jdk.internal.org.objectweb.asm.Label L_rethrow
        25: .line 1205
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 153
            aload 11 /* L_rethrow */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitJumpInsn:(ILjdk/internal/org/objectweb/asm/Label;)V
        26: .line 1209
            aload 0 /* this */
            aload 3 /* invoker */
            iconst_2
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPushArgument:(Ljava/lang/invoke/LambdaForm$Name;I)V
        27: .line 1210
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 95
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        28: .line 1211
            aload 0 /* this */
            aload 2 /* args */
            iconst_1
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPushArguments:(Ljava/lang/invoke/LambdaForm$Name;I)V
        29: .line 1212
            aload 10 /* type */
            iconst_0
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Throwable;
            aastore
            invokevirtual java.lang.invoke.MethodType.insertParameterTypes:(I[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
            astore 12 /* catcherType */
        start local 12 // java.lang.invoke.MethodType catcherType
        30: .line 1213
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 182
            ldc "java/lang/invoke/MethodHandle"
            ldc "invokeBasic"
            aload 12 /* catcherType */
            invokevirtual java.lang.invoke.MethodType.basicType:()Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.toMethodDescriptorString:()Ljava/lang/String;
            iconst_0
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
        31: .line 1214
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 167
            aload 8 /* L_done */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitJumpInsn:(ILjdk/internal/org/objectweb/asm/Label;)V
        32: .line 1216
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 11 /* L_rethrow */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLabel:(Ljdk/internal/org/objectweb/asm/Label;)V
        33: .line 1217
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 191
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        34: .line 1219
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 8 /* L_done */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLabel:(Ljdk/internal/org/objectweb/asm/Label;)V
        35: .line 1221
            aload 4 /* result */
            areturn
        end local 12 // java.lang.invoke.MethodType catcherType
        end local 11 // jdk.internal.org.objectweb.asm.Label L_rethrow
        end local 10 // java.lang.invoke.MethodType type
        end local 9 // java.lang.Class returnType
        end local 8 // jdk.internal.org.objectweb.asm.Label L_done
        end local 7 // jdk.internal.org.objectweb.asm.Label L_handler
        end local 6 // jdk.internal.org.objectweb.asm.Label L_endBlock
        end local 5 // jdk.internal.org.objectweb.asm.Label L_startBlock
        end local 4 // java.lang.invoke.LambdaForm$Name result
        end local 3 // java.lang.invoke.LambdaForm$Name invoker
        end local 2 // java.lang.invoke.LambdaForm$Name args
        end local 1 // int pos
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   36     0          this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0   36     1           pos  I
            1   36     2          args  Ljava/lang/invoke/LambdaForm$Name;
            2   36     3       invoker  Ljava/lang/invoke/LambdaForm$Name;
            3   36     4        result  Ljava/lang/invoke/LambdaForm$Name;
            4   36     5  L_startBlock  Ljdk/internal/org/objectweb/asm/Label;
            5   36     6    L_endBlock  Ljdk/internal/org/objectweb/asm/Label;
            6   36     7     L_handler  Ljdk/internal/org/objectweb/asm/Label;
            7   36     8        L_done  Ljdk/internal/org/objectweb/asm/Label;
            8   36     9    returnType  Ljava/lang/Class<*>;
           12   36    10          type  Ljava/lang/invoke/MethodType;
           25   36    11     L_rethrow  Ljdk/internal/org/objectweb/asm/Label;
           30   36    12   catcherType  Ljava/lang/invoke/MethodType;
    MethodParameters:
      Name  Flags
      pos   

  private java.lang.invoke.LambdaForm$Name emitTryFinally(int);
    descriptor: (I)Ljava/lang/invoke/LambdaForm$Name;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=16, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // int pos
         0: .line 1285
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            getfield java.lang.invoke.LambdaForm.names:[Ljava/lang/invoke/LambdaForm$Name;
            iload 1 /* pos */
            aaload
            astore 2 /* args */
        start local 2 // java.lang.invoke.LambdaForm$Name args
         1: .line 1286
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            getfield java.lang.invoke.LambdaForm.names:[Ljava/lang/invoke/LambdaForm$Name;
            iload 1 /* pos */
            iconst_1
            iadd
            aaload
            astore 3 /* invoker */
        start local 3 // java.lang.invoke.LambdaForm$Name invoker
         2: .line 1287
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            getfield java.lang.invoke.LambdaForm.names:[Ljava/lang/invoke/LambdaForm$Name;
            iload 1 /* pos */
            iconst_2
            iadd
            aaload
            astore 4 /* result */
        start local 4 // java.lang.invoke.LambdaForm$Name result
         3: .line 1289
            new jdk.internal.org.objectweb.asm.Label
            dup
            invokespecial jdk.internal.org.objectweb.asm.Label.<init>:()V
            astore 5 /* lFrom */
        start local 5 // jdk.internal.org.objectweb.asm.Label lFrom
         4: .line 1290
            new jdk.internal.org.objectweb.asm.Label
            dup
            invokespecial jdk.internal.org.objectweb.asm.Label.<init>:()V
            astore 6 /* lTo */
        start local 6 // jdk.internal.org.objectweb.asm.Label lTo
         5: .line 1291
            new jdk.internal.org.objectweb.asm.Label
            dup
            invokespecial jdk.internal.org.objectweb.asm.Label.<init>:()V
            astore 7 /* lCatch */
        start local 7 // jdk.internal.org.objectweb.asm.Label lCatch
         6: .line 1292
            new jdk.internal.org.objectweb.asm.Label
            dup
            invokespecial jdk.internal.org.objectweb.asm.Label.<init>:()V
            astore 8 /* lDone */
        start local 8 // jdk.internal.org.objectweb.asm.Label lDone
         7: .line 1294
            aload 4 /* result */
            getfield java.lang.invoke.LambdaForm$Name.function:Ljava/lang/invoke/LambdaForm$NamedFunction;
            invokevirtual java.lang.invoke.LambdaForm$NamedFunction.resolvedHandle:()Ljava/lang/invoke/MethodHandle;
            invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
            astore 9 /* returnType */
        start local 9 // java.lang.Class returnType
         8: .line 1295
            aload 9 /* returnType */
            invokestatic java.lang.invoke.LambdaForm$BasicType.basicType:(Ljava/lang/Class;)Ljava/lang/invoke/LambdaForm$BasicType;
            astore 10 /* basicReturnType */
        start local 10 // java.lang.invoke.LambdaForm$BasicType basicReturnType
         9: .line 1296
            aload 9 /* returnType */
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            if_acmpeq 10
            iconst_1
            goto 11
      StackMap locals: java.lang.invoke.InvokerBytecodeGenerator int java.lang.invoke.LambdaForm$Name java.lang.invoke.LambdaForm$Name java.lang.invoke.LambdaForm$Name jdk.internal.org.objectweb.asm.Label jdk.internal.org.objectweb.asm.Label jdk.internal.org.objectweb.asm.Label jdk.internal.org.objectweb.asm.Label java.lang.Class java.lang.invoke.LambdaForm$BasicType
      StackMap stack:
        10: iconst_0
      StackMap locals:
      StackMap stack: int
        11: istore 11 /* isNonVoid */
        start local 11 // boolean isNonVoid
        12: .line 1298
            aload 2 /* args */
            getfield java.lang.invoke.LambdaForm$Name.function:Ljava/lang/invoke/LambdaForm$NamedFunction;
            invokevirtual java.lang.invoke.LambdaForm$NamedFunction.resolvedHandle:()Ljava/lang/invoke/MethodHandle;
            invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
        13: .line 1299
            iconst_0
            iconst_1
            invokevirtual java.lang.invoke.MethodType.dropParameterTypes:(II)Ljava/lang/invoke/MethodType;
        14: .line 1300
            aload 9 /* returnType */
            invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
        15: .line 1298
            astore 12 /* type */
        start local 12 // java.lang.invoke.MethodType type
        16: .line 1301
            aload 12 /* type */
            iconst_0
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Throwable;
            aastore
            invokevirtual java.lang.invoke.MethodType.insertParameterTypes:(I[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
            astore 13 /* cleanupType */
        start local 13 // java.lang.invoke.MethodType cleanupType
        17: .line 1302
            iload 11 /* isNonVoid */
            ifeq 19
        18: .line 1303
            aload 13 /* cleanupType */
            iconst_1
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            aload 9 /* returnType */
            aastore
            invokevirtual java.lang.invoke.MethodType.insertParameterTypes:(I[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
            astore 13 /* cleanupType */
        19: .line 1305
      StackMap locals: int java.lang.invoke.MethodType java.lang.invoke.MethodType
      StackMap stack:
            aload 13 /* cleanupType */
            invokevirtual java.lang.invoke.MethodType.basicType:()Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.toMethodDescriptorString:()Ljava/lang/String;
            astore 14 /* cleanupDesc */
        start local 14 // java.lang.String cleanupDesc
        20: .line 1308
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 5 /* lFrom */
            aload 6 /* lTo */
            aload 7 /* lCatch */
            ldc "java/lang/Throwable"
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitTryCatchBlock:(Ljdk/internal/org/objectweb/asm/Label;Ljdk/internal/org/objectweb/asm/Label;Ljdk/internal/org/objectweb/asm/Label;Ljava/lang/String;)V
        21: .line 1311
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 5 /* lFrom */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLabel:(Ljdk/internal/org/objectweb/asm/Label;)V
        22: .line 1312
            aload 0 /* this */
            aload 3 /* invoker */
            iconst_0
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPushArgument:(Ljava/lang/invoke/LambdaForm$Name;I)V
        23: .line 1313
            aload 0 /* this */
            aload 2 /* args */
            iconst_1
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPushArguments:(Ljava/lang/invoke/LambdaForm$Name;I)V
        24: .line 1314
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 182
            ldc "java/lang/invoke/MethodHandle"
            ldc "invokeBasic"
            aload 12 /* type */
            invokevirtual java.lang.invoke.MethodType.basicType:()Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.toMethodDescriptorString:()Ljava/lang/String;
            iconst_0
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
        25: .line 1315
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 6 /* lTo */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLabel:(Ljdk/internal/org/objectweb/asm/Label;)V
        26: .line 1318
            aload 0 /* this */
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            aload 9 /* returnType */
            aastore
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.extendLocalsMap:([Ljava/lang/Class;)I
            istore 15 /* index */
        start local 15 // int index
        27: .line 1319
            iload 11 /* isNonVoid */
            ifeq 29
        28: .line 1320
            aload 0 /* this */
            aload 10 /* basicReturnType */
            iload 15 /* index */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitStoreInsn:(Ljava/lang/invoke/LambdaForm$BasicType;I)V
        29: .line 1322
      StackMap locals: java.lang.String int
      StackMap stack:
            aload 0 /* this */
            aload 3 /* invoker */
            iconst_1
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPushArgument:(Ljava/lang/invoke/LambdaForm$Name;I)V
        30: .line 1323
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iconst_1
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        31: .line 1324
            iload 11 /* isNonVoid */
            ifeq 33
        32: .line 1325
            aload 0 /* this */
            aload 10 /* basicReturnType */
            iload 15 /* index */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitLoadInsn:(Ljava/lang/invoke/LambdaForm$BasicType;I)V
        33: .line 1327
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* args */
            iconst_1
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPushArguments:(Ljava/lang/invoke/LambdaForm$Name;I)V
        34: .line 1328
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 182
            ldc "java/lang/invoke/MethodHandle"
            ldc "invokeBasic"
            aload 14 /* cleanupDesc */
            iconst_0
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
        35: .line 1329
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 167
            aload 8 /* lDone */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitJumpInsn:(ILjdk/internal/org/objectweb/asm/Label;)V
        36: .line 1332
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 7 /* lCatch */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLabel:(Ljdk/internal/org/objectweb/asm/Label;)V
        37: .line 1333
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 89
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        38: .line 1336
            aload 0 /* this */
            aload 3 /* invoker */
            iconst_1
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPushArgument:(Ljava/lang/invoke/LambdaForm$Name;I)V
        39: .line 1337
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 95
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        40: .line 1338
            iload 11 /* isNonVoid */
            ifeq 42
        41: .line 1339
            aload 0 /* this */
            aload 9 /* returnType */
            invokestatic java.lang.invoke.LambdaForm$BasicType.basicType:(Ljava/lang/Class;)Ljava/lang/invoke/LambdaForm$BasicType;
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitZero:(Ljava/lang/invoke/LambdaForm$BasicType;)V
        42: .line 1341
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* args */
            iconst_1
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPushArguments:(Ljava/lang/invoke/LambdaForm$Name;I)V
        43: .line 1342
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 182
            ldc "java/lang/invoke/MethodHandle"
            ldc "invokeBasic"
            aload 14 /* cleanupDesc */
            iconst_0
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
        44: .line 1343
            iload 11 /* isNonVoid */
            ifeq 46
        45: .line 1344
            aload 0 /* this */
            aload 10 /* basicReturnType */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPopInsn:(Ljava/lang/invoke/LambdaForm$BasicType;)V
        46: .line 1346
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 191
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        47: .line 1349
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 8 /* lDone */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLabel:(Ljdk/internal/org/objectweb/asm/Label;)V
        48: .line 1351
            aload 4 /* result */
            areturn
        end local 15 // int index
        end local 14 // java.lang.String cleanupDesc
        end local 13 // java.lang.invoke.MethodType cleanupType
        end local 12 // java.lang.invoke.MethodType type
        end local 11 // boolean isNonVoid
        end local 10 // java.lang.invoke.LambdaForm$BasicType basicReturnType
        end local 9 // java.lang.Class returnType
        end local 8 // jdk.internal.org.objectweb.asm.Label lDone
        end local 7 // jdk.internal.org.objectweb.asm.Label lCatch
        end local 6 // jdk.internal.org.objectweb.asm.Label lTo
        end local 5 // jdk.internal.org.objectweb.asm.Label lFrom
        end local 4 // java.lang.invoke.LambdaForm$Name result
        end local 3 // java.lang.invoke.LambdaForm$Name invoker
        end local 2 // java.lang.invoke.LambdaForm$Name args
        end local 1 // int pos
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   49     0             this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0   49     1              pos  I
            1   49     2             args  Ljava/lang/invoke/LambdaForm$Name;
            2   49     3          invoker  Ljava/lang/invoke/LambdaForm$Name;
            3   49     4           result  Ljava/lang/invoke/LambdaForm$Name;
            4   49     5            lFrom  Ljdk/internal/org/objectweb/asm/Label;
            5   49     6              lTo  Ljdk/internal/org/objectweb/asm/Label;
            6   49     7           lCatch  Ljdk/internal/org/objectweb/asm/Label;
            7   49     8            lDone  Ljdk/internal/org/objectweb/asm/Label;
            8   49     9       returnType  Ljava/lang/Class<*>;
            9   49    10  basicReturnType  Ljava/lang/invoke/LambdaForm$BasicType;
           12   49    11        isNonVoid  Z
           16   49    12             type  Ljava/lang/invoke/MethodType;
           17   49    13      cleanupType  Ljava/lang/invoke/MethodType;
           20   49    14      cleanupDesc  Ljava/lang/String;
           27   49    15            index  I
    MethodParameters:
      Name  Flags
      pos   

  private void emitPopInsn(java.lang.invoke.LambdaForm$BasicType);
    descriptor: (Ljava/lang/invoke/LambdaForm$BasicType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.invoke.LambdaForm$BasicType type
         0: .line 1355
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 1 /* type */
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.popInsnOpcode:(Ljava/lang/invoke/LambdaForm$BasicType;)I
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
         1: .line 1356
            return
        end local 1 // java.lang.invoke.LambdaForm$BasicType type
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    2     1  type  Ljava/lang/invoke/LambdaForm$BasicType;
    MethodParameters:
      Name  Flags
      type  

  private static int popInsnOpcode(java.lang.invoke.LambdaForm$BasicType);
    descriptor: (Ljava/lang/invoke/LambdaForm$BasicType;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // java.lang.invoke.LambdaForm$BasicType type
         0: .line 1359
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.$SWITCH_TABLE$java$lang$invoke$LambdaForm$BasicType:()[I
            aload 0 /* type */
            invokevirtual java.lang.invoke.LambdaForm$BasicType.ordinal:()I
            iaload
            tableswitch { // 1 - 5
                    1: 1
                    2: 1
                    3: 2
                    4: 1
                    5: 2
              default: 3
          }
         1: .line 1363
      StackMap locals:
      StackMap stack:
            bipush 87
            ireturn
         2: .line 1366
      StackMap locals:
      StackMap stack:
            bipush 88
            ireturn
         3: .line 1368
      StackMap locals:
      StackMap stack:
            new java.lang.InternalError
            dup
            new java.lang.StringBuilder
            dup
            ldc "unknown type: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* type */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // java.lang.invoke.LambdaForm$BasicType type
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  type  Ljava/lang/invoke/LambdaForm$BasicType;
    MethodParameters:
      Name  Flags
      type  

  private java.lang.invoke.LambdaForm$Name emitLoop(int);
    descriptor: (I)Ljava/lang/invoke/LambdaForm$Name;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=23, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // int pos
         0: .line 1455
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            getfield java.lang.invoke.LambdaForm.names:[Ljava/lang/invoke/LambdaForm$Name;
            iload 1 /* pos */
            aaload
            astore 2 /* args */
        start local 2 // java.lang.invoke.LambdaForm$Name args
         1: .line 1456
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            getfield java.lang.invoke.LambdaForm.names:[Ljava/lang/invoke/LambdaForm$Name;
            iload 1 /* pos */
            iconst_1
            iadd
            aaload
            astore 3 /* invoker */
        start local 3 // java.lang.invoke.LambdaForm$Name invoker
         2: .line 1457
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            getfield java.lang.invoke.LambdaForm.names:[Ljava/lang/invoke/LambdaForm$Name;
            iload 1 /* pos */
            iconst_2
            iadd
            aaload
            astore 4 /* result */
        start local 4 // java.lang.invoke.LambdaForm$Name result
         3: .line 1461
            aload 3 /* invoker */
            getfield java.lang.invoke.LambdaForm$Name.arguments:[Ljava/lang/Object;
            iconst_0
            aaload
            checkcast java.lang.invoke.LambdaForm$BasicType[]
            astore 5 /* loopClauseTypes */
        start local 5 // java.lang.invoke.LambdaForm$BasicType[] loopClauseTypes
         4: .line 1462
            aload 5 /* loopClauseTypes */
            invokestatic java.util.stream.Stream.of:([Ljava/lang/Object;)Ljava/util/stream/Stream;
         5: .line 1463
            invokedynamic test()Ljava/util/function/Predicate;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Z
                  java/lang/invoke/InvokerBytecodeGenerator.lambda$0(Ljava/lang/invoke/LambdaForm$BasicType;)Z (6)
                  (Ljava/lang/invoke/LambdaForm$BasicType;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
            invokedynamic apply()Ljava/util/function/Function;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)Ljava/lang/Object;
                  java/lang/invoke/LambdaForm$BasicType.basicTypeClass()Ljava/lang/Class; (5)
                  (Ljava/lang/invoke/LambdaForm$BasicType;)Ljava/lang/Class;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
            invokedynamic apply()Ljava/util/function/IntFunction;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (I)Ljava/lang/Object;
                  java/lang/invoke/InvokerBytecodeGenerator.lambda$2(I)[Ljava/lang/Class; (6)
                  (I)[Ljava/lang/Class;
            invokeinterface java.util.stream.Stream.toArray:(Ljava/util/function/IntFunction;)[Ljava/lang/Object;
            checkcast java.lang.Class[]
         6: .line 1462
            astore 6 /* loopLocalStateTypes */
        start local 6 // java.lang.Class[] loopLocalStateTypes
         7: .line 1464
            aload 6 /* loopLocalStateTypes */
            arraylength
            iconst_1
            iadd
            anewarray java.lang.Class
            astore 7 /* localTypes */
        start local 7 // java.lang.Class[] localTypes
         8: .line 1465
            aload 7 /* localTypes */
            iconst_0
            ldc Ljava/lang/invoke/MethodHandleImpl$LoopClauses;
            aastore
         9: .line 1466
            aload 6 /* loopLocalStateTypes */
            iconst_0
            aload 7 /* localTypes */
            iconst_1
            aload 6 /* loopLocalStateTypes */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        10: .line 1468
            aload 0 /* this */
            aload 7 /* localTypes */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.extendLocalsMap:([Ljava/lang/Class;)I
            istore 8 /* clauseDataIndex */
        start local 8 // int clauseDataIndex
        11: .line 1469
            iload 8 /* clauseDataIndex */
            iconst_1
            iadd
            istore 9 /* firstLoopStateIndex */
        start local 9 // int firstLoopStateIndex
        12: .line 1471
            aload 4 /* result */
            getfield java.lang.invoke.LambdaForm$Name.function:Ljava/lang/invoke/LambdaForm$NamedFunction;
            invokevirtual java.lang.invoke.LambdaForm$NamedFunction.resolvedHandle:()Ljava/lang/invoke/MethodHandle;
            invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
            astore 10 /* returnType */
        start local 10 // java.lang.Class returnType
        13: .line 1472
            aload 2 /* args */
            getfield java.lang.invoke.LambdaForm$Name.function:Ljava/lang/invoke/LambdaForm$NamedFunction;
            invokevirtual java.lang.invoke.LambdaForm$NamedFunction.resolvedHandle:()Ljava/lang/invoke/MethodHandle;
            invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
        14: .line 1473
            iconst_0
            iconst_1
            invokevirtual java.lang.invoke.MethodType.dropParameterTypes:(II)Ljava/lang/invoke/MethodType;
        15: .line 1474
            aload 10 /* returnType */
            invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
        16: .line 1472
            astore 11 /* loopType */
        start local 11 // java.lang.invoke.MethodType loopType
        17: .line 1475
            aload 11 /* loopType */
            iconst_0
            aload 6 /* loopLocalStateTypes */
            invokevirtual java.lang.invoke.MethodType.insertParameterTypes:(I[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
            astore 12 /* loopHandleType */
        start local 12 // java.lang.invoke.MethodType loopHandleType
        18: .line 1476
            aload 12 /* loopHandleType */
            getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
            invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
            astore 13 /* predType */
        start local 13 // java.lang.invoke.MethodType predType
        19: .line 1477
            aload 12 /* loopHandleType */
            astore 14 /* finiType */
        start local 14 // java.lang.invoke.MethodType finiType
        20: .line 1479
            aload 5 /* loopClauseTypes */
            arraylength
            istore 15 /* nClauses */
        start local 15 // int nClauses
        21: .line 1487
            new jdk.internal.org.objectweb.asm.Label
            dup
            invokespecial jdk.internal.org.objectweb.asm.Label.<init>:()V
            astore 16 /* lLoop */
        start local 16 // jdk.internal.org.objectweb.asm.Label lLoop
        22: .line 1488
            new jdk.internal.org.objectweb.asm.Label
            dup
            invokespecial jdk.internal.org.objectweb.asm.Label.<init>:()V
            astore 17 /* lDone */
        start local 17 // jdk.internal.org.objectweb.asm.Label lDone
        23: .line 1492
            aload 0 /* this */
            ldc Ljava/lang/invoke/MethodHandleImpl$LoopClauses;
            aload 3 /* invoker */
            getfield java.lang.invoke.LambdaForm$Name.arguments:[Ljava/lang/Object;
            iconst_1
            aaload
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPushArgument:(Ljava/lang/Class;Ljava/lang/Object;)V
        24: .line 1493
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 180
            ldc "java/lang/invoke/MethodHandleImpl$LoopClauses"
            ldc "clauses"
            ldc "[[Ljava/lang/invoke/MethodHandle;"
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitFieldInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        25: .line 1494
            aload 0 /* this */
            iload 8 /* clauseDataIndex */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitAstoreInsn:(I)V
        26: .line 1497
            iconst_0
            istore 19 /* c */
        start local 19 // int c
        27: iconst_0
            istore 20 /* state */
        start local 20 // int state
        28: goto 37
        29: .line 1498
      StackMap locals: java.lang.invoke.InvokerBytecodeGenerator int java.lang.invoke.LambdaForm$Name java.lang.invoke.LambdaForm$Name java.lang.invoke.LambdaForm$Name java.lang.invoke.LambdaForm$BasicType[] java.lang.Class[] java.lang.Class[] int int java.lang.Class java.lang.invoke.MethodType java.lang.invoke.MethodType java.lang.invoke.MethodType java.lang.invoke.MethodType int jdk.internal.org.objectweb.asm.Label jdk.internal.org.objectweb.asm.Label top int int
      StackMap stack:
            aload 11 /* loopType */
            aload 5 /* loopClauseTypes */
            iload 19 /* c */
            aaload
            invokevirtual java.lang.invoke.LambdaForm$BasicType.basicTypeClass:()Ljava/lang/Class;
            invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
            astore 21 /* cInitType */
        start local 21 // java.lang.invoke.MethodType cInitType
        30: .line 1499
            aload 0 /* this */
            aload 3 /* invoker */
            iconst_1
            iload 19 /* c */
            aload 2 /* args */
            iconst_0
            aload 21 /* cInitType */
            aload 6 /* loopLocalStateTypes */
            iload 8 /* clauseDataIndex */
        31: .line 1500
            iload 9 /* firstLoopStateIndex */
        32: .line 1499
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitLoopHandleInvoke:(Ljava/lang/invoke/LambdaForm$Name;IILjava/lang/invoke/LambdaForm$Name;ZLjava/lang/invoke/MethodType;[Ljava/lang/Class;II)V
        33: .line 1501
            aload 21 /* cInitType */
            invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            if_acmpeq 36
        34: .line 1502
            aload 0 /* this */
            aload 21 /* cInitType */
            invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
            invokestatic java.lang.invoke.LambdaForm$BasicType.basicType:(Ljava/lang/Class;)Ljava/lang/invoke/LambdaForm$BasicType;
            iload 9 /* firstLoopStateIndex */
            iload 20 /* state */
            iadd
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitStoreInsn:(Ljava/lang/invoke/LambdaForm$BasicType;I)V
        35: .line 1503
            iinc 20 /* state */ 1
        end local 21 // java.lang.invoke.MethodType cInitType
        36: .line 1497
      StackMap locals:
      StackMap stack:
            iinc 19 /* c */ 1
      StackMap locals:
      StackMap stack:
        37: iload 19 /* c */
            iload 15 /* nClauses */
            if_icmplt 29
        end local 20 // int state
        end local 19 // int c
        38: .line 1508
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 16 /* lLoop */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLabel:(Ljdk/internal/org/objectweb/asm/Label;)V
        39: .line 1510
            iconst_0
            istore 19 /* c */
        start local 19 // int c
        40: iconst_0
            istore 20 /* state */
        start local 20 // int state
        41: goto 63
        42: .line 1511
      StackMap locals:
      StackMap stack:
            new jdk.internal.org.objectweb.asm.Label
            dup
            invokespecial jdk.internal.org.objectweb.asm.Label.<init>:()V
            astore 18 /* lNext */
        start local 18 // jdk.internal.org.objectweb.asm.Label lNext
        43: .line 1513
            aload 12 /* loopHandleType */
            aload 5 /* loopClauseTypes */
            iload 19 /* c */
            aaload
            invokevirtual java.lang.invoke.LambdaForm$BasicType.basicTypeClass:()Ljava/lang/Class;
            invokevirtual java.lang.invoke.MethodType.changeReturnType:(Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
            astore 21 /* stepType */
        start local 21 // java.lang.invoke.MethodType stepType
        44: .line 1514
            aload 21 /* stepType */
            invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            if_acmpne 45
            iconst_1
            goto 46
      StackMap locals: java.lang.invoke.InvokerBytecodeGenerator int java.lang.invoke.LambdaForm$Name java.lang.invoke.LambdaForm$Name java.lang.invoke.LambdaForm$Name java.lang.invoke.LambdaForm$BasicType[] java.lang.Class[] java.lang.Class[] int int java.lang.Class java.lang.invoke.MethodType java.lang.invoke.MethodType java.lang.invoke.MethodType java.lang.invoke.MethodType int jdk.internal.org.objectweb.asm.Label jdk.internal.org.objectweb.asm.Label jdk.internal.org.objectweb.asm.Label int int java.lang.invoke.MethodType
      StackMap stack:
        45: iconst_0
      StackMap locals:
      StackMap stack: int
        46: istore 22 /* isVoid */
        start local 22 // boolean isVoid
        47: .line 1517
            aload 0 /* this */
            aload 3 /* invoker */
            iconst_2
            iload 19 /* c */
            aload 2 /* args */
            iconst_1
            aload 21 /* stepType */
            aload 6 /* loopLocalStateTypes */
            iload 8 /* clauseDataIndex */
        48: .line 1518
            iload 9 /* firstLoopStateIndex */
        49: .line 1517
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitLoopHandleInvoke:(Ljava/lang/invoke/LambdaForm$Name;IILjava/lang/invoke/LambdaForm$Name;ZLjava/lang/invoke/MethodType;[Ljava/lang/Class;II)V
        50: .line 1519
            iload 22 /* isVoid */
            ifne 53
        51: .line 1520
            aload 0 /* this */
            aload 21 /* stepType */
            invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
            invokestatic java.lang.invoke.LambdaForm$BasicType.basicType:(Ljava/lang/Class;)Ljava/lang/invoke/LambdaForm$BasicType;
            iload 9 /* firstLoopStateIndex */
            iload 20 /* state */
            iadd
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitStoreInsn:(Ljava/lang/invoke/LambdaForm$BasicType;I)V
        52: .line 1521
            iinc 20 /* state */ 1
        53: .line 1525
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 3 /* invoker */
            iconst_3
            iload 19 /* c */
            aload 2 /* args */
            iconst_1
            aload 13 /* predType */
            aload 6 /* loopLocalStateTypes */
            iload 8 /* clauseDataIndex */
        54: .line 1526
            iload 9 /* firstLoopStateIndex */
        55: .line 1525
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitLoopHandleInvoke:(Ljava/lang/invoke/LambdaForm$Name;IILjava/lang/invoke/LambdaForm$Name;ZLjava/lang/invoke/MethodType;[Ljava/lang/Class;II)V
        56: .line 1527
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 154
            aload 18 /* lNext */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitJumpInsn:(ILjdk/internal/org/objectweb/asm/Label;)V
        57: .line 1530
            aload 0 /* this */
            aload 3 /* invoker */
            iconst_4
            iload 19 /* c */
            aload 2 /* args */
            iconst_1
            aload 14 /* finiType */
            aload 6 /* loopLocalStateTypes */
            iload 8 /* clauseDataIndex */
        58: .line 1531
            iload 9 /* firstLoopStateIndex */
        59: .line 1530
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitLoopHandleInvoke:(Ljava/lang/invoke/LambdaForm$Name;IILjava/lang/invoke/LambdaForm$Name;ZLjava/lang/invoke/MethodType;[Ljava/lang/Class;II)V
        60: .line 1532
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 167
            aload 17 /* lDone */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitJumpInsn:(ILjdk/internal/org/objectweb/asm/Label;)V
        61: .line 1535
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 18 /* lNext */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLabel:(Ljdk/internal/org/objectweb/asm/Label;)V
        end local 22 // boolean isVoid
        end local 21 // java.lang.invoke.MethodType stepType
        62: .line 1510
            iinc 19 /* c */ 1
        end local 18 // jdk.internal.org.objectweb.asm.Label lNext
      StackMap locals: java.lang.invoke.InvokerBytecodeGenerator int java.lang.invoke.LambdaForm$Name java.lang.invoke.LambdaForm$Name java.lang.invoke.LambdaForm$Name java.lang.invoke.LambdaForm$BasicType[] java.lang.Class[] java.lang.Class[] int int java.lang.Class java.lang.invoke.MethodType java.lang.invoke.MethodType java.lang.invoke.MethodType java.lang.invoke.MethodType int jdk.internal.org.objectweb.asm.Label jdk.internal.org.objectweb.asm.Label top int int
      StackMap stack:
        63: iload 19 /* c */
            iload 15 /* nClauses */
            if_icmplt 42
        end local 20 // int state
        end local 19 // int c
        64: .line 1538
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 167
            aload 16 /* lLoop */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitJumpInsn:(ILjdk/internal/org/objectweb/asm/Label;)V
        65: .line 1541
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 17 /* lDone */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLabel:(Ljdk/internal/org/objectweb/asm/Label;)V
        66: .line 1543
            aload 4 /* result */
            areturn
        end local 17 // jdk.internal.org.objectweb.asm.Label lDone
        end local 16 // jdk.internal.org.objectweb.asm.Label lLoop
        end local 15 // int nClauses
        end local 14 // java.lang.invoke.MethodType finiType
        end local 13 // java.lang.invoke.MethodType predType
        end local 12 // java.lang.invoke.MethodType loopHandleType
        end local 11 // java.lang.invoke.MethodType loopType
        end local 10 // java.lang.Class returnType
        end local 9 // int firstLoopStateIndex
        end local 8 // int clauseDataIndex
        end local 7 // java.lang.Class[] localTypes
        end local 6 // java.lang.Class[] loopLocalStateTypes
        end local 5 // java.lang.invoke.LambdaForm$BasicType[] loopClauseTypes
        end local 4 // java.lang.invoke.LambdaForm$Name result
        end local 3 // java.lang.invoke.LambdaForm$Name invoker
        end local 2 // java.lang.invoke.LambdaForm$Name args
        end local 1 // int pos
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   67     0                 this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0   67     1                  pos  I
            1   67     2                 args  Ljava/lang/invoke/LambdaForm$Name;
            2   67     3              invoker  Ljava/lang/invoke/LambdaForm$Name;
            3   67     4               result  Ljava/lang/invoke/LambdaForm$Name;
            4   67     5      loopClauseTypes  [Ljava/lang/invoke/LambdaForm$BasicType;
            7   67     6  loopLocalStateTypes  [Ljava/lang/Class;
            8   67     7           localTypes  [Ljava/lang/Class;
           11   67     8      clauseDataIndex  I
           12   67     9  firstLoopStateIndex  I
           13   67    10           returnType  Ljava/lang/Class<*>;
           17   67    11             loopType  Ljava/lang/invoke/MethodType;
           18   67    12       loopHandleType  Ljava/lang/invoke/MethodType;
           19   67    13             predType  Ljava/lang/invoke/MethodType;
           20   67    14             finiType  Ljava/lang/invoke/MethodType;
           21   67    15             nClauses  I
           22   67    16                lLoop  Ljdk/internal/org/objectweb/asm/Label;
           23   67    17                lDone  Ljdk/internal/org/objectweb/asm/Label;
           43   63    18                lNext  Ljdk/internal/org/objectweb/asm/Label;
           27   38    19                    c  I
           28   38    20                state  I
           30   36    21            cInitType  Ljava/lang/invoke/MethodType;
           40   64    19                    c  I
           41   64    20                state  I
           44   62    21             stepType  Ljava/lang/invoke/MethodType;
           47   62    22               isVoid  Z
    MethodParameters:
      Name  Flags
      pos   

  private int extendLocalsMap(java.lang.Class<?>[]);
    descriptor: ([Ljava/lang/Class;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.Class[] types
         0: .line 1547
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.localsMap:[I
            arraylength
            iconst_1
            isub
            istore 2 /* firstSlot */
        start local 2 // int firstSlot
         1: .line 1548
            aload 0 /* this */
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.localsMap:[I
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.localsMap:[I
            arraylength
            aload 1 /* types */
            arraylength
            iadd
            invokestatic java.util.Arrays.copyOf:([II)[I
            putfield java.lang.invoke.InvokerBytecodeGenerator.localsMap:[I
         2: .line 1549
            aload 0 /* this */
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.localClasses:[Ljava/lang/Class;
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.localClasses:[Ljava/lang/Class;
            arraylength
            aload 1 /* types */
            arraylength
            iadd
            invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
            checkcast java.lang.Class[]
            putfield java.lang.invoke.InvokerBytecodeGenerator.localClasses:[Ljava/lang/Class;
         3: .line 1550
            aload 1 /* types */
            iconst_0
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.localClasses:[Ljava/lang/Class;
            iload 2 /* firstSlot */
            aload 1 /* types */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         4: .line 1551
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.localsMap:[I
            iload 2 /* firstSlot */
            iconst_1
            isub
            iaload
            iconst_1
            iadd
            istore 3 /* index */
        start local 3 // int index
         5: .line 1552
            iconst_0
            istore 4 /* lastSlots */
        start local 4 // int lastSlots
         6: .line 1553
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         7: goto 12
         8: .line 1554
      StackMap locals: java.lang.invoke.InvokerBytecodeGenerator java.lang.Class[] int int int int
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.localsMap:[I
            iload 2 /* firstSlot */
            iload 5 /* i */
            iadd
            iload 3 /* index */
            iastore
         9: .line 1555
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.localClasses:[Ljava/lang/Class;
            iload 2 /* firstSlot */
            iload 5 /* i */
            iadd
            aaload
            invokestatic java.lang.invoke.LambdaForm$BasicType.basicType:(Ljava/lang/Class;)Ljava/lang/invoke/LambdaForm$BasicType;
            invokevirtual java.lang.invoke.LambdaForm$BasicType.basicTypeSlots:()I
            istore 4 /* lastSlots */
        10: .line 1556
            iload 3 /* index */
            iload 4 /* lastSlots */
            iadd
            istore 3 /* index */
        11: .line 1553
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 5 /* i */
            aload 1 /* types */
            arraylength
            if_icmplt 8
        end local 5 // int i
        13: .line 1558
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.localsMap:[I
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.localsMap:[I
            arraylength
            iconst_1
            isub
            iload 3 /* index */
            iload 4 /* lastSlots */
            isub
            iastore
        14: .line 1559
            iload 2 /* firstSlot */
            ireturn
        end local 4 // int lastSlots
        end local 3 // int index
        end local 2 // int firstSlot
        end local 1 // java.lang.Class[] types
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   15     0       this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0   15     1      types  [Ljava/lang/Class;
            1   15     2  firstSlot  I
            5   15     3      index  I
            6   15     4  lastSlots  I
            7   13     5          i  I
    Signature: ([Ljava/lang/Class<*>;)I
    MethodParameters:
       Name  Flags
      types  

  private void emitLoopHandleInvoke(java.lang.invoke.LambdaForm$Name, int, int, java.lang.invoke.LambdaForm$Name, boolean, java.lang.invoke.MethodType, java.lang.Class<?>[], int, );
    descriptor: (Ljava/lang/invoke/LambdaForm$Name;IILjava/lang/invoke/LambdaForm$Name;ZLjava/lang/invoke/MethodType;[Ljava/lang/Class;II)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=11, args_size=10
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.invoke.LambdaForm$Name holder
        start local 2 // int handles
        start local 3 // int clause
        start local 4 // java.lang.invoke.LambdaForm$Name args
        start local 5 // boolean pushLocalState
        start local 6 // java.lang.invoke.MethodType type
        start local 7 // java.lang.Class[] loopLocalStateTypes
        start local 8 // int clauseDataSlot
        start local 9 // int firstLoopStateSlot
         0: .line 1566
            aload 0 /* this */
            iload 8 /* clauseDataSlot */
            iload 2 /* handles */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPushClauseArray:(II)V
         1: .line 1567
            aload 0 /* this */
            iload 3 /* clause */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitIconstInsn:(I)V
         2: .line 1568
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 50
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
         3: .line 1570
            iload 5 /* pushLocalState */
            ifeq 9
         4: .line 1571
            iconst_0
            istore 10 /* s */
        start local 10 // int s
         5: goto 8
         6: .line 1572
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 7 /* loopLocalStateTypes */
            iload 10 /* s */
            aaload
            invokestatic java.lang.invoke.LambdaForm$BasicType.basicType:(Ljava/lang/Class;)Ljava/lang/invoke/LambdaForm$BasicType;
            iload 9 /* firstLoopStateSlot */
            iload 10 /* s */
            iadd
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitLoadInsn:(Ljava/lang/invoke/LambdaForm$BasicType;I)V
         7: .line 1571
            iinc 10 /* s */ 1
      StackMap locals:
      StackMap stack:
         8: iload 10 /* s */
            aload 7 /* loopLocalStateTypes */
            arraylength
            if_icmplt 6
        end local 10 // int s
         9: .line 1576
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* args */
            iconst_1
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPushArguments:(Ljava/lang/invoke/LambdaForm$Name;I)V
        10: .line 1577
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 182
            ldc "java/lang/invoke/MethodHandle"
            ldc "invokeBasic"
            aload 6 /* type */
            invokevirtual java.lang.invoke.MethodType.toMethodDescriptorString:()Ljava/lang/String;
            iconst_0
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
        11: .line 1578
            return
        end local 9 // int firstLoopStateSlot
        end local 8 // int clauseDataSlot
        end local 7 // java.lang.Class[] loopLocalStateTypes
        end local 6 // java.lang.invoke.MethodType type
        end local 5 // boolean pushLocalState
        end local 4 // java.lang.invoke.LambdaForm$Name args
        end local 3 // int clause
        end local 2 // int handles
        end local 1 // java.lang.invoke.LambdaForm$Name holder
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   12     0                 this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0   12     1               holder  Ljava/lang/invoke/LambdaForm$Name;
            0   12     2              handles  I
            0   12     3               clause  I
            0   12     4                 args  Ljava/lang/invoke/LambdaForm$Name;
            0   12     5       pushLocalState  Z
            0   12     6                 type  Ljava/lang/invoke/MethodType;
            0   12     7  loopLocalStateTypes  [Ljava/lang/Class;
            0   12     8       clauseDataSlot  I
            0   12     9   firstLoopStateSlot  I
            5    9    10                    s  I
    Signature: (Ljava/lang/invoke/LambdaForm$Name;IILjava/lang/invoke/LambdaForm$Name;ZLjava/lang/invoke/MethodType;[Ljava/lang/Class<*>;II)V
    MethodParameters:
                     Name  Flags
      holder               
      handles              
      clause               
      args                 
      pushLocalState       
      type                 
      loopLocalStateTypes  
      clauseDataSlot       
      firstLoopStateSlot   

  private void emitPushClauseArray(int, int);
    descriptor: (II)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // int clauseDataSlot
        start local 2 // int which
         0: .line 1581
            aload 0 /* this */
            iload 1 /* clauseDataSlot */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitAloadInsn:(I)V
         1: .line 1582
            aload 0 /* this */
            iload 2 /* which */
            iconst_1
            isub
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitIconstInsn:(I)V
         2: .line 1583
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 50
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
         3: .line 1584
            return
        end local 2 // int which
        end local 1 // int clauseDataSlot
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    4     0            this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    4     1  clauseDataSlot  I
            0    4     2           which  I
    MethodParameters:
                Name  Flags
      clauseDataSlot  
      which           

  private void emitZero(java.lang.invoke.LambdaForm$BasicType);
    descriptor: (Ljava/lang/invoke/LambdaForm$BasicType;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.invoke.LambdaForm$BasicType type
         0: .line 1587
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.$SWITCH_TABLE$java$lang$invoke$LambdaForm$BasicType:()[I
            aload 1 /* type */
            invokevirtual java.lang.invoke.LambdaForm$BasicType.ordinal:()I
            iaload
            tableswitch { // 1 - 5
                    1: 5
                    2: 1
                    3: 2
                    4: 3
                    5: 4
              default: 6
          }
         1: .line 1588
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iconst_3
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
            goto 7
         2: .line 1589
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 9
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
            goto 7
         3: .line 1590
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 11
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
            goto 7
         4: .line 1591
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 14
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
            goto 7
         5: .line 1592
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iconst_1
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
            goto 7
         6: .line 1593
      StackMap locals:
      StackMap stack:
            new java.lang.InternalError
            dup
            new java.lang.StringBuilder
            dup
            ldc "unknown type: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* type */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 1595
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.invoke.LambdaForm$BasicType type
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    8     1  type  Ljava/lang/invoke/LambdaForm$BasicType;
    MethodParameters:
      Name  Flags
      type  

  private void emitPushArguments(java.lang.invoke.LambdaForm$Name, int);
    descriptor: (Ljava/lang/invoke/LambdaForm$Name;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.invoke.LambdaForm$Name args
        start local 2 // int start
         0: .line 1598
            aload 1 /* args */
            getfield java.lang.invoke.LambdaForm$Name.function:Ljava/lang/invoke/LambdaForm$NamedFunction;
            invokevirtual java.lang.invoke.LambdaForm$NamedFunction.methodType:()Ljava/lang/invoke/MethodType;
            astore 3 /* type */
        start local 3 // java.lang.invoke.MethodType type
         1: .line 1599
            iload 2 /* start */
            istore 4 /* i */
        start local 4 // int i
         2: goto 5
         3: .line 1600
      StackMap locals: java.lang.invoke.MethodType int
      StackMap stack:
            aload 0 /* this */
            aload 3 /* type */
            iload 4 /* i */
            invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
            aload 1 /* args */
            getfield java.lang.invoke.LambdaForm$Name.arguments:[Ljava/lang/Object;
            iload 4 /* i */
            aaload
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPushArgument:(Ljava/lang/Class;Ljava/lang/Object;)V
         4: .line 1599
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 4 /* i */
            aload 1 /* args */
            getfield java.lang.invoke.LambdaForm$Name.arguments:[Ljava/lang/Object;
            arraylength
            if_icmplt 3
        end local 4 // int i
         6: .line 1602
            return
        end local 3 // java.lang.invoke.MethodType type
        end local 2 // int start
        end local 1 // java.lang.invoke.LambdaForm$Name args
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0   this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    7     1   args  Ljava/lang/invoke/LambdaForm$Name;
            0    7     2  start  I
            1    7     3   type  Ljava/lang/invoke/MethodType;
            2    6     4      i  I
    MethodParameters:
       Name  Flags
      args   
      start  

  private void emitPushArgument(java.lang.invoke.LambdaForm$Name, int);
    descriptor: (Ljava/lang/invoke/LambdaForm$Name;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.invoke.LambdaForm$Name name
        start local 2 // int paramIndex
         0: .line 1605
            aload 1 /* name */
            getfield java.lang.invoke.LambdaForm$Name.arguments:[Ljava/lang/Object;
            iload 2 /* paramIndex */
            aaload
            astore 3 /* arg */
        start local 3 // java.lang.Object arg
         1: .line 1606
            aload 1 /* name */
            getfield java.lang.invoke.LambdaForm$Name.function:Ljava/lang/invoke/LambdaForm$NamedFunction;
            invokevirtual java.lang.invoke.LambdaForm$NamedFunction.methodType:()Ljava/lang/invoke/MethodType;
            iload 2 /* paramIndex */
            invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
            astore 4 /* ptype */
        start local 4 // java.lang.Class ptype
         2: .line 1607
            aload 0 /* this */
            aload 4 /* ptype */
            aload 3 /* arg */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPushArgument:(Ljava/lang/Class;Ljava/lang/Object;)V
         3: .line 1608
            return
        end local 4 // java.lang.Class ptype
        end local 3 // java.lang.Object arg
        end local 2 // int paramIndex
        end local 1 // java.lang.invoke.LambdaForm$Name name
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    4     0        this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    4     1        name  Ljava/lang/invoke/LambdaForm$Name;
            0    4     2  paramIndex  I
            1    4     3         arg  Ljava/lang/Object;
            2    4     4       ptype  Ljava/lang/Class<*>;
    MethodParameters:
            Name  Flags
      name        
      paramIndex  

  private void emitPushArgument(java.lang.Class<?>, );
    descriptor: (Ljava/lang/Class;Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.Class ptype
        start local 2 // java.lang.Object arg
         0: .line 1611
            aload 1 /* ptype */
            invokestatic java.lang.invoke.LambdaForm$BasicType.basicType:(Ljava/lang/Class;)Ljava/lang/invoke/LambdaForm$BasicType;
            astore 3 /* bptype */
        start local 3 // java.lang.invoke.LambdaForm$BasicType bptype
         1: .line 1612
            aload 2 /* arg */
            instanceof java.lang.invoke.LambdaForm$Name
            ifeq 6
         2: .line 1613
            aload 2 /* arg */
            checkcast java.lang.invoke.LambdaForm$Name
            astore 4 /* n */
        start local 4 // java.lang.invoke.LambdaForm$Name n
         3: .line 1614
            aload 0 /* this */
            aload 4 /* n */
            getfield java.lang.invoke.LambdaForm$Name.type:Ljava/lang/invoke/LambdaForm$BasicType;
            aload 4 /* n */
            invokevirtual java.lang.invoke.LambdaForm$Name.index:()I
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitLoadInsn:(Ljava/lang/invoke/LambdaForm$BasicType;I)V
         4: .line 1615
            aload 0 /* this */
            aload 4 /* n */
            getfield java.lang.invoke.LambdaForm$Name.type:Ljava/lang/invoke/LambdaForm$BasicType;
            aload 1 /* ptype */
            aload 4 /* n */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitImplicitConversion:(Ljava/lang/invoke/LambdaForm$BasicType;Ljava/lang/Class;Ljava/lang/Object;)V
        end local 4 // java.lang.invoke.LambdaForm$Name n
         5: .line 1616
            goto 15
      StackMap locals: java.lang.invoke.LambdaForm$BasicType
      StackMap stack:
         6: aload 2 /* arg */
            ifnull 7
            aload 2 /* arg */
            instanceof java.lang.String
            ifeq 10
      StackMap locals:
      StackMap stack:
         7: aload 3 /* bptype */
            getstatic java.lang.invoke.LambdaForm$BasicType.L_TYPE:Ljava/lang/invoke/LambdaForm$BasicType;
            if_acmpne 10
         8: .line 1617
            aload 0 /* this */
            aload 2 /* arg */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitConst:(Ljava/lang/Object;)V
         9: .line 1618
            goto 15
        10: .line 1619
      StackMap locals:
      StackMap stack:
            aload 2 /* arg */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokestatic sun.invoke.util.Wrapper.isWrapperType:(Ljava/lang/Class;)Z
            ifeq 13
            aload 3 /* bptype */
            getstatic java.lang.invoke.LambdaForm$BasicType.L_TYPE:Ljava/lang/invoke/LambdaForm$BasicType;
            if_acmpeq 13
        11: .line 1620
            aload 0 /* this */
            aload 2 /* arg */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitConst:(Ljava/lang/Object;)V
        12: .line 1621
            goto 15
        13: .line 1622
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 0 /* this */
            aload 2 /* arg */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.constantPlaceholder:(Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLdcInsn:(Ljava/lang/Object;)V
        14: .line 1623
            aload 0 /* this */
            getstatic java.lang.invoke.LambdaForm$BasicType.L_TYPE:Ljava/lang/invoke/LambdaForm$BasicType;
            aload 1 /* ptype */
            aload 2 /* arg */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitImplicitConversion:(Ljava/lang/invoke/LambdaForm$BasicType;Ljava/lang/Class;Ljava/lang/Object;)V
        15: .line 1626
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.invoke.LambdaForm$BasicType bptype
        end local 2 // java.lang.Object arg
        end local 1 // java.lang.Class ptype
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   16     0    this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0   16     1   ptype  Ljava/lang/Class<*>;
            0   16     2     arg  Ljava/lang/Object;
            1   16     3  bptype  Ljava/lang/invoke/LambdaForm$BasicType;
            3    5     4       n  Ljava/lang/invoke/LambdaForm$Name;
    Signature: (Ljava/lang/Class<*>;Ljava/lang/Object;)V
    MethodParameters:
       Name  Flags
      ptype  
      arg    

  private void emitStoreResult(java.lang.invoke.LambdaForm$Name);
    descriptor: (Ljava/lang/invoke/LambdaForm$Name;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.invoke.LambdaForm$Name name
         0: .line 1632
            aload 1 /* name */
            ifnull 2
            aload 1 /* name */
            getfield java.lang.invoke.LambdaForm$Name.type:Ljava/lang/invoke/LambdaForm$BasicType;
            getstatic java.lang.invoke.LambdaForm$BasicType.V_TYPE:Ljava/lang/invoke/LambdaForm$BasicType;
            if_acmpeq 2
         1: .line 1634
            aload 0 /* this */
            aload 1 /* name */
            getfield java.lang.invoke.LambdaForm$Name.type:Ljava/lang/invoke/LambdaForm$BasicType;
            aload 1 /* name */
            invokevirtual java.lang.invoke.LambdaForm$Name.index:()I
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitStoreInsn:(Ljava/lang/invoke/LambdaForm$BasicType;I)V
         2: .line 1636
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.invoke.LambdaForm$Name name
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    3     1  name  Ljava/lang/invoke/LambdaForm$Name;
    MethodParameters:
      Name  Flags
      name  

  private void emitReturn(java.lang.invoke.LambdaForm$Name);
    descriptor: (Ljava/lang/invoke/LambdaForm$Name;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.invoke.LambdaForm$Name onStack
         0: .line 1643
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.invokerType:Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
            astore 2 /* rclass */
        start local 2 // java.lang.Class rclass
         1: .line 1644
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            invokevirtual java.lang.invoke.LambdaForm.returnType:()Ljava/lang/invoke/LambdaForm$BasicType;
            astore 3 /* rtype */
        start local 3 // java.lang.invoke.LambdaForm$BasicType rtype
         2: .line 1645
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 3
            aload 3 /* rtype */
            aload 2 /* rclass */
            invokestatic java.lang.invoke.LambdaForm$BasicType.basicType:(Ljava/lang/Class;)Ljava/lang/invoke/LambdaForm$BasicType;
            if_acmpeq 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 1646
      StackMap locals: java.lang.Class java.lang.invoke.LambdaForm$BasicType
      StackMap stack:
            aload 3 /* rtype */
            getstatic java.lang.invoke.LambdaForm$BasicType.V_TYPE:Ljava/lang/invoke/LambdaForm$BasicType;
            if_acmpne 6
         4: .line 1648
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 177
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
         5: .line 1650
            goto 11
         6: .line 1651
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            getfield java.lang.invoke.LambdaForm.names:[Ljava/lang/invoke/LambdaForm$Name;
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            getfield java.lang.invoke.LambdaForm.result:I
            aaload
            astore 4 /* rn */
        start local 4 // java.lang.invoke.LambdaForm$Name rn
         7: .line 1654
            aload 4 /* rn */
            aload 1 /* onStack */
            if_acmpeq 9
         8: .line 1655
            aload 0 /* this */
            aload 3 /* rtype */
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.lambdaForm:Ljava/lang/invoke/LambdaForm;
            getfield java.lang.invoke.LambdaForm.result:I
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitLoadInsn:(Ljava/lang/invoke/LambdaForm$BasicType;I)V
         9: .line 1658
      StackMap locals: java.lang.invoke.LambdaForm$Name
      StackMap stack:
            aload 0 /* this */
            aload 3 /* rtype */
            aload 2 /* rclass */
            aload 4 /* rn */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitImplicitConversion:(Ljava/lang/invoke/LambdaForm$BasicType;Ljava/lang/Class;Ljava/lang/Object;)V
        10: .line 1661
            aload 0 /* this */
            aload 3 /* rtype */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitReturnInsn:(Ljava/lang/invoke/LambdaForm$BasicType;)V
        end local 4 // java.lang.invoke.LambdaForm$Name rn
        11: .line 1663
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.invoke.LambdaForm$BasicType rtype
        end local 2 // java.lang.Class rclass
        end local 1 // java.lang.invoke.LambdaForm$Name onStack
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0   12     1  onStack  Ljava/lang/invoke/LambdaForm$Name;
            1   12     2   rclass  Ljava/lang/Class<*>;
            2   12     3    rtype  Ljava/lang/invoke/LambdaForm$BasicType;
            7   11     4       rn  Ljava/lang/invoke/LambdaForm$Name;
    MethodParameters:
         Name  Flags
      onStack  

  private void emitPrimCast(sun.invoke.util.Wrapper, sun.invoke.util.Wrapper);
    descriptor: (Lsun/invoke/util/Wrapper;Lsun/invoke/util/Wrapper;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // sun.invoke.util.Wrapper from
        start local 2 // sun.invoke.util.Wrapper to
         0: .line 1681
            aload 1 /* from */
            aload 2 /* to */
            if_acmpne 2
         1: .line 1683
            return
         2: .line 1685
      StackMap locals:
      StackMap stack:
            aload 1 /* from */
            invokevirtual sun.invoke.util.Wrapper.isSubwordOrInt:()Z
            ifeq 5
         3: .line 1687
            aload 0 /* this */
            aload 2 /* to */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitI2X:(Lsun/invoke/util/Wrapper;)V
         4: .line 1688
            goto 30
         5: .line 1690
      StackMap locals:
      StackMap stack:
            aload 2 /* to */
            invokevirtual sun.invoke.util.Wrapper.isSubwordOrInt:()Z
            ifeq 10
         6: .line 1692
            aload 0 /* this */
            aload 1 /* from */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitX2I:(Lsun/invoke/util/Wrapper;)V
         7: .line 1693
            aload 2 /* to */
            invokevirtual sun.invoke.util.Wrapper.bitWidth:()I
            bipush 32
            if_icmpge 30
         8: .line 1695
            aload 0 /* this */
            aload 2 /* to */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitI2X:(Lsun/invoke/util/Wrapper;)V
         9: .line 1697
            goto 30
        10: .line 1699
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 3 /* error */
        start local 3 // boolean error
        11: .line 1700
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.$SWITCH_TABLE$sun$invoke$util$Wrapper:()[I
            aload 1 /* from */
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            iaload
            tableswitch { // 6 - 8
                    6: 12
                    7: 17
                    8: 22
              default: 27
          }
        12: .line 1702
      StackMap locals: int
      StackMap stack:
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.$SWITCH_TABLE$sun$invoke$util$Wrapper:()[I
            aload 2 /* to */
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            iaload
            tableswitch { // 7 - 8
                    7: 13
                    8: 14
              default: 15
          }
        13: .line 1703
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 137
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
            goto 28
        14: .line 1704
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 138
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
            goto 28
        15: .line 1705
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 3 /* error */
        16: .line 1707
            goto 28
        17: .line 1709
      StackMap locals:
      StackMap stack:
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.$SWITCH_TABLE$sun$invoke$util$Wrapper:()[I
            aload 2 /* to */
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            iaload
            tableswitch { // 6 - 8
                    6: 18
                    7: 20
                    8: 19
              default: 20
          }
        18: .line 1710
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 140
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
            goto 28
        19: .line 1711
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 141
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
            goto 28
        20: .line 1712
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 3 /* error */
        21: .line 1714
            goto 28
        22: .line 1716
      StackMap locals:
      StackMap stack:
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.$SWITCH_TABLE$sun$invoke$util$Wrapper:()[I
            aload 2 /* to */
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            iaload
            tableswitch { // 6 - 7
                    6: 23
                    7: 24
              default: 25
          }
        23: .line 1717
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 143
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
            goto 28
        24: .line 1718
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 144
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
            goto 28
        25: .line 1719
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 3 /* error */
        26: .line 1721
            goto 28
        27: .line 1723
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 3 /* error */
        28: .line 1726
      StackMap locals:
      StackMap stack:
            iload 3 /* error */
            ifeq 30
        29: .line 1727
            new java.lang.IllegalStateException
            dup
            new java.lang.StringBuilder
            dup
            ldc "unhandled prim cast: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* from */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc "2"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* to */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // boolean error
        30: .line 1731
      StackMap locals:
      StackMap stack:
            return
        end local 2 // sun.invoke.util.Wrapper to
        end local 1 // sun.invoke.util.Wrapper from
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   31     0   this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0   31     1   from  Lsun/invoke/util/Wrapper;
            0   31     2     to  Lsun/invoke/util/Wrapper;
           11   30     3  error  Z
    MethodParameters:
      Name  Flags
      from  
      to    

  private void emitI2X(sun.invoke.util.Wrapper);
    descriptor: (Lsun/invoke/util/Wrapper;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // sun.invoke.util.Wrapper type
         0: .line 1734
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.$SWITCH_TABLE$sun$invoke$util$Wrapper:()[I
            aload 1 /* type */
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            iaload
            tableswitch { // 1 - 8
                    1: 8
                    2: 1
                    3: 2
                    4: 3
                    5: 4
                    6: 5
                    7: 6
                    8: 7
              default: 11
          }
         1: .line 1735
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 145
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
            goto 12
         2: .line 1736
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 147
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
            goto 12
         3: .line 1737
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 146
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
            goto 12
         4: .line 1738
      StackMap locals:
      StackMap stack:
            goto 12
         5: .line 1739
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 133
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
            goto 12
         6: .line 1740
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 134
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
            goto 12
         7: .line 1741
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 135
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
            goto 12
         8: .line 1744
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iconst_4
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
         9: .line 1745
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 126
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        10: .line 1746
            goto 12
        11: .line 1747
      StackMap locals:
      StackMap stack:
            new java.lang.InternalError
            dup
            new java.lang.StringBuilder
            dup
            ldc "unknown type: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* type */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
        12: .line 1749
      StackMap locals:
      StackMap stack:
            return
        end local 1 // sun.invoke.util.Wrapper type
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0   13     1  type  Lsun/invoke/util/Wrapper;
    MethodParameters:
      Name  Flags
      type  

  private void emitX2I(sun.invoke.util.Wrapper);
    descriptor: (Lsun/invoke/util/Wrapper;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // sun.invoke.util.Wrapper type
         0: .line 1752
            invokestatic java.lang.invoke.InvokerBytecodeGenerator.$SWITCH_TABLE$sun$invoke$util$Wrapper:()[I
            aload 1 /* type */
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            iaload
            tableswitch { // 6 - 8
                    6: 1
                    7: 2
                    8: 3
              default: 4
          }
         1: .line 1753
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 136
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
            goto 5
         2: .line 1754
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 139
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
            goto 5
         3: .line 1755
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 142
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
            goto 5
         4: .line 1756
      StackMap locals:
      StackMap stack:
            new java.lang.InternalError
            dup
            new java.lang.StringBuilder
            dup
            ldc "unknown type: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* type */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 1758
      StackMap locals:
      StackMap stack:
            return
        end local 1 // sun.invoke.util.Wrapper type
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    6     1  type  Lsun/invoke/util/Wrapper;
    MethodParameters:
      Name  Flags
      type  

  static java.lang.invoke.MemberName generateLambdaFormInterpreterEntryPoint(java.lang.invoke.MethodType);
    descriptor: (Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MemberName;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // java.lang.invoke.MethodType mt
         0: .line 1764
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$assertionsDisabled:Z
            ifne 1
            aload 0 /* mt */
            invokestatic java.lang.invoke.LambdaForm.basicTypeSignature:(Ljava/lang/invoke/MethodType;)Ljava/lang/String;
            invokestatic java.lang.invoke.LambdaForm.isValidSignature:(Ljava/lang/String;)Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1765
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "interpret_"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* mt */
            invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
            invokestatic java.lang.invoke.LambdaForm$BasicType.basicTypeChar:(Ljava/lang/Class;)C
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 1 /* name */
        start local 1 // java.lang.String name
         2: .line 1766
            aload 0 /* mt */
            astore 2 /* type */
        start local 2 // java.lang.invoke.MethodType type
         3: .line 1767
            aload 2 /* type */
            iconst_0
            ldc Ljava/lang/invoke/MethodHandle;
            invokevirtual java.lang.invoke.MethodType.changeParameterType:(ILjava/lang/Class;)Ljava/lang/invoke/MethodType;
            astore 2 /* type */
         4: .line 1768
            new java.lang.invoke.InvokerBytecodeGenerator
            dup
            ldc "LFI"
            aload 1 /* name */
            aload 2 /* type */
            invokespecial java.lang.invoke.InvokerBytecodeGenerator.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/invoke/MethodType;)V
            astore 3 /* g */
        start local 3 // java.lang.invoke.InvokerBytecodeGenerator g
         5: .line 1769
            aload 3 /* g */
            aload 3 /* g */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.generateLambdaFormInterpreterEntryPointBytes:()[B
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.loadMethod:([B)Ljava/lang/invoke/MemberName;
            areturn
        end local 3 // java.lang.invoke.InvokerBytecodeGenerator g
        end local 2 // java.lang.invoke.MethodType type
        end local 1 // java.lang.String name
        end local 0 // java.lang.invoke.MethodType mt
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0    mt  Ljava/lang/invoke/MethodType;
            2    6     1  name  Ljava/lang/String;
            3    6     2  type  Ljava/lang/invoke/MethodType;
            5    6     3     g  Ljava/lang/invoke/InvokerBytecodeGenerator;
    MethodParameters:
      Name  Flags
      mt    

  private byte[] generateLambdaFormInterpreterEntryPointBytes();
    descriptor: ()[B
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=1
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
         0: .line 1773
            aload 0 /* this */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.classFilePrologue:()Ljdk/internal/org/objectweb/asm/ClassWriter;
            pop
         1: .line 1774
            aload 0 /* this */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.methodPrologue:()V
         2: .line 1777
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            getstatic java.lang.invoke.InvokerBytecodeGenerator.LF_HIDDEN_SIG:Ljava/lang/String;
            iconst_1
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitAnnotation:(Ljava/lang/String;Z)Ljdk/internal/org/objectweb/asm/AnnotationVisitor;
            pop
         3: .line 1780
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            getstatic java.lang.invoke.InvokerBytecodeGenerator.DONTINLINE_SIG:Ljava/lang/String;
            iconst_1
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitAnnotation:(Ljava/lang/String;Z)Ljdk/internal/org/objectweb/asm/AnnotationVisitor;
            pop
         4: .line 1783
            aload 0 /* this */
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.invokerType:Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.parameterCount:()I
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitIconstInsn:(I)V
         5: .line 1784
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 189
            ldc "java/lang/Object"
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitTypeInsn:(ILjava/lang/String;)V
         6: .line 1787
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         7: goto 16
         8: .line 1788
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.invokerType:Ljava/lang/invoke/MethodType;
            iload 1 /* i */
            invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
            astore 2 /* ptype */
        start local 2 // java.lang.Class ptype
         9: .line 1789
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 89
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        10: .line 1790
            aload 0 /* this */
            iload 1 /* i */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitIconstInsn:(I)V
        11: .line 1791
            aload 0 /* this */
            aload 2 /* ptype */
            invokestatic java.lang.invoke.LambdaForm$BasicType.basicType:(Ljava/lang/Class;)Ljava/lang/invoke/LambdaForm$BasicType;
            iload 1 /* i */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitLoadInsn:(Ljava/lang/invoke/LambdaForm$BasicType;I)V
        12: .line 1793
            aload 2 /* ptype */
            invokevirtual java.lang.Class.isPrimitive:()Z
            ifeq 14
        13: .line 1794
            aload 0 /* this */
            aload 2 /* ptype */
            invokestatic sun.invoke.util.Wrapper.forPrimitiveType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitBoxing:(Lsun/invoke/util/Wrapper;)V
        14: .line 1796
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 83
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        end local 2 // java.lang.Class ptype
        15: .line 1787
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 1 /* i */
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.invokerType:Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.parameterCount:()I
            if_icmplt 8
        end local 1 // int i
        17: .line 1799
            aload 0 /* this */
            iconst_0
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitAloadInsn:(I)V
        18: .line 1800
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 180
            ldc "java/lang/invoke/MethodHandle"
            ldc "form"
            ldc "Ljava/lang/invoke/LambdaForm;"
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitFieldInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
        19: .line 1801
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 95
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        20: .line 1802
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 182
            ldc "java/lang/invoke/LambdaForm"
            ldc "interpretWithArguments"
            ldc "([Ljava/lang/Object;)Ljava/lang/Object;"
            iconst_0
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
        21: .line 1805
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.invokerType:Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
            astore 1 /* rtype */
        start local 1 // java.lang.Class rtype
        22: .line 1806
            aload 1 /* rtype */
            invokevirtual java.lang.Class.isPrimitive:()Z
            ifeq 24
            aload 1 /* rtype */
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            if_acmpeq 24
        23: .line 1807
            aload 0 /* this */
            aload 1 /* rtype */
            invokestatic sun.invoke.util.Wrapper.forPrimitiveType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitUnboxing:(Lsun/invoke/util/Wrapper;)V
        24: .line 1811
      StackMap locals: java.lang.invoke.InvokerBytecodeGenerator java.lang.Class
      StackMap stack:
            aload 0 /* this */
            aload 1 /* rtype */
            invokestatic java.lang.invoke.LambdaForm$BasicType.basicType:(Ljava/lang/Class;)Ljava/lang/invoke/LambdaForm$BasicType;
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitReturnInsn:(Ljava/lang/invoke/LambdaForm$BasicType;)V
        25: .line 1813
            aload 0 /* this */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.methodEpilogue:()V
        26: .line 1814
            aload 0 /* this */
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.invokerType:Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.bogusMethod:(Ljava/lang/Object;)V
        27: .line 1816
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.cw:Ljdk/internal/org/objectweb/asm/ClassWriter;
            invokevirtual jdk.internal.org.objectweb.asm.ClassWriter.toByteArray:()[B
            astore 2 /* classFile */
        start local 2 // byte[] classFile
        28: .line 1817
            aload 0 /* this */
            aload 2 /* classFile */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.maybeDump:([B)V
        29: .line 1818
            aload 2 /* classFile */
            areturn
        end local 2 // byte[] classFile
        end local 1 // java.lang.Class rtype
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   30     0       this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            7   17     1          i  I
            9   15     2      ptype  Ljava/lang/Class<*>;
           22   30     1      rtype  Ljava/lang/Class<*>;
           28   30     2  classFile  [B

  static java.lang.invoke.MemberName generateNamedFunctionInvoker(java.lang.invoke.MethodTypeForm);
    descriptor: (Ljava/lang/invoke/MethodTypeForm;)Ljava/lang/invoke/MemberName;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // java.lang.invoke.MethodTypeForm typeForm
         0: .line 1825
            getstatic java.lang.invoke.LambdaForm$NamedFunction.INVOKER_METHOD_TYPE:Ljava/lang/invoke/MethodType;
            astore 1 /* invokerType */
        start local 1 // java.lang.invoke.MethodType invokerType
         1: .line 1826
            new java.lang.StringBuilder
            dup
            ldc "invoke_"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* typeForm */
            invokevirtual java.lang.invoke.MethodTypeForm.erasedType:()Ljava/lang/invoke/MethodType;
            invokestatic java.lang.invoke.LambdaForm.basicTypeSignature:(Ljava/lang/invoke/MethodType;)Ljava/lang/String;
            invokestatic java.lang.invoke.LambdaForm.shortenSignature:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* invokerName */
        start local 2 // java.lang.String invokerName
         2: .line 1827
            new java.lang.invoke.InvokerBytecodeGenerator
            dup
            ldc "NFI"
            aload 2 /* invokerName */
            aload 1 /* invokerType */
            invokespecial java.lang.invoke.InvokerBytecodeGenerator.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/invoke/MethodType;)V
            astore 3 /* g */
        start local 3 // java.lang.invoke.InvokerBytecodeGenerator g
         3: .line 1828
            aload 3 /* g */
            aload 3 /* g */
            aload 0 /* typeForm */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.generateNamedFunctionInvokerImpl:(Ljava/lang/invoke/MethodTypeForm;)[B
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.loadMethod:([B)Ljava/lang/invoke/MemberName;
            areturn
        end local 3 // java.lang.invoke.InvokerBytecodeGenerator g
        end local 2 // java.lang.String invokerName
        end local 1 // java.lang.invoke.MethodType invokerType
        end local 0 // java.lang.invoke.MethodTypeForm typeForm
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0     typeForm  Ljava/lang/invoke/MethodTypeForm;
            1    4     1  invokerType  Ljava/lang/invoke/MethodType;
            2    4     2  invokerName  Ljava/lang/String;
            3    4     3            g  Ljava/lang/invoke/InvokerBytecodeGenerator;
    MethodParameters:
          Name  Flags
      typeForm  

  private byte[] generateNamedFunctionInvokerImpl(java.lang.invoke.MethodTypeForm);
    descriptor: (Ljava/lang/invoke/MethodTypeForm;)[B
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=7, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.invoke.MethodTypeForm typeForm
         0: .line 1832
            aload 1 /* typeForm */
            invokevirtual java.lang.invoke.MethodTypeForm.erasedType:()Ljava/lang/invoke/MethodType;
            astore 2 /* dstType */
        start local 2 // java.lang.invoke.MethodType dstType
         1: .line 1833
            aload 0 /* this */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.classFilePrologue:()Ljdk/internal/org/objectweb/asm/ClassWriter;
            pop
         2: .line 1834
            aload 0 /* this */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.methodPrologue:()V
         3: .line 1837
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            getstatic java.lang.invoke.InvokerBytecodeGenerator.LF_HIDDEN_SIG:Ljava/lang/String;
            iconst_1
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitAnnotation:(Ljava/lang/String;Z)Ljdk/internal/org/objectweb/asm/AnnotationVisitor;
            pop
         4: .line 1840
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            getstatic java.lang.invoke.InvokerBytecodeGenerator.FORCEINLINE_SIG:Ljava/lang/String;
            iconst_1
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitAnnotation:(Ljava/lang/String;Z)Ljdk/internal/org/objectweb/asm/AnnotationVisitor;
            pop
         5: .line 1843
            aload 0 /* this */
            iconst_0
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitAloadInsn:(I)V
         6: .line 1846
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         7: goto 20
         8: .line 1847
      StackMap locals: java.lang.invoke.MethodType int
      StackMap stack:
            aload 0 /* this */
            iconst_1
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitAloadInsn:(I)V
         9: .line 1848
            aload 0 /* this */
            iload 3 /* i */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitIconstInsn:(I)V
        10: .line 1849
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 50
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        11: .line 1852
            aload 2 /* dstType */
            iload 3 /* i */
            invokevirtual java.lang.invoke.MethodType.parameterType:(I)Ljava/lang/Class;
            astore 4 /* dptype */
        start local 4 // java.lang.Class dptype
        12: .line 1853
            aload 4 /* dptype */
            invokevirtual java.lang.Class.isPrimitive:()Z
            ifeq 19
        13: .line 1854
            aload 4 /* dptype */
            invokestatic sun.invoke.util.Wrapper.forBasicType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
            astore 5 /* dstWrapper */
        start local 5 // sun.invoke.util.Wrapper dstWrapper
        14: .line 1855
            aload 5 /* dstWrapper */
            invokevirtual sun.invoke.util.Wrapper.isSubwordOrInt:()Z
            ifeq 15
            getstatic sun.invoke.util.Wrapper.INT:Lsun/invoke/util/Wrapper;
            goto 16
      StackMap locals: java.lang.Class sun.invoke.util.Wrapper
      StackMap stack:
        15: aload 5 /* dstWrapper */
      StackMap locals:
      StackMap stack: sun.invoke.util.Wrapper
        16: astore 6 /* srcWrapper */
        start local 6 // sun.invoke.util.Wrapper srcWrapper
        17: .line 1856
            aload 0 /* this */
            aload 6 /* srcWrapper */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitUnboxing:(Lsun/invoke/util/Wrapper;)V
        18: .line 1857
            aload 0 /* this */
            aload 6 /* srcWrapper */
            aload 5 /* dstWrapper */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPrimCast:(Lsun/invoke/util/Wrapper;Lsun/invoke/util/Wrapper;)V
        end local 6 // sun.invoke.util.Wrapper srcWrapper
        end local 5 // sun.invoke.util.Wrapper dstWrapper
        end local 4 // java.lang.Class dptype
        19: .line 1846
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        20: iload 3 /* i */
            aload 2 /* dstType */
            invokevirtual java.lang.invoke.MethodType.parameterCount:()I
            if_icmplt 8
        end local 3 // int i
        21: .line 1862
            aload 2 /* dstType */
            invokevirtual java.lang.invoke.MethodType.basicType:()Ljava/lang/invoke/MethodType;
            invokevirtual java.lang.invoke.MethodType.toMethodDescriptorString:()Ljava/lang/String;
            astore 3 /* targetDesc */
        start local 3 // java.lang.String targetDesc
        22: .line 1863
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 182
            ldc "java/lang/invoke/MethodHandle"
            ldc "invokeBasic"
            aload 3 /* targetDesc */
            iconst_0
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
        23: .line 1866
            aload 2 /* dstType */
            invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
            astore 4 /* rtype */
        start local 4 // java.lang.Class rtype
        24: .line 1867
            aload 4 /* rtype */
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            if_acmpeq 31
            aload 4 /* rtype */
            invokevirtual java.lang.Class.isPrimitive:()Z
            ifeq 31
        25: .line 1868
            aload 4 /* rtype */
            invokestatic sun.invoke.util.Wrapper.forBasicType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
            astore 5 /* srcWrapper */
        start local 5 // sun.invoke.util.Wrapper srcWrapper
        26: .line 1869
            aload 5 /* srcWrapper */
            invokevirtual sun.invoke.util.Wrapper.isSubwordOrInt:()Z
            ifeq 27
            getstatic sun.invoke.util.Wrapper.INT:Lsun/invoke/util/Wrapper;
            goto 28
      StackMap locals: java.lang.invoke.InvokerBytecodeGenerator java.lang.invoke.MethodTypeForm java.lang.invoke.MethodType java.lang.String java.lang.Class sun.invoke.util.Wrapper
      StackMap stack:
        27: aload 5 /* srcWrapper */
      StackMap locals:
      StackMap stack: sun.invoke.util.Wrapper
        28: astore 6 /* dstWrapper */
        start local 6 // sun.invoke.util.Wrapper dstWrapper
        29: .line 1871
            aload 0 /* this */
            aload 5 /* srcWrapper */
            aload 6 /* dstWrapper */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitPrimCast:(Lsun/invoke/util/Wrapper;Lsun/invoke/util/Wrapper;)V
        30: .line 1872
            aload 0 /* this */
            aload 6 /* dstWrapper */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitBoxing:(Lsun/invoke/util/Wrapper;)V
        end local 6 // sun.invoke.util.Wrapper dstWrapper
        end local 5 // sun.invoke.util.Wrapper srcWrapper
        31: .line 1876
      StackMap locals:
      StackMap stack:
            aload 4 /* rtype */
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            if_acmpne 33
        32: .line 1877
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iconst_1
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        33: .line 1879
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic java.lang.invoke.LambdaForm$BasicType.L_TYPE:Ljava/lang/invoke/LambdaForm$BasicType;
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.emitReturnInsn:(Ljava/lang/invoke/LambdaForm$BasicType;)V
        34: .line 1881
            aload 0 /* this */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.methodEpilogue:()V
        35: .line 1882
            aload 0 /* this */
            aload 2 /* dstType */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.bogusMethod:(Ljava/lang/Object;)V
        36: .line 1884
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.cw:Ljdk/internal/org/objectweb/asm/ClassWriter;
            invokevirtual jdk.internal.org.objectweb.asm.ClassWriter.toByteArray:()[B
            astore 5 /* classFile */
        start local 5 // byte[] classFile
        37: .line 1885
            aload 0 /* this */
            aload 5 /* classFile */
            invokevirtual java.lang.invoke.InvokerBytecodeGenerator.maybeDump:([B)V
        38: .line 1886
            aload 5 /* classFile */
            areturn
        end local 5 // byte[] classFile
        end local 4 // java.lang.Class rtype
        end local 3 // java.lang.String targetDesc
        end local 2 // java.lang.invoke.MethodType dstType
        end local 1 // java.lang.invoke.MethodTypeForm typeForm
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   39     0        this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0   39     1    typeForm  Ljava/lang/invoke/MethodTypeForm;
            1   39     2     dstType  Ljava/lang/invoke/MethodType;
            7   21     3           i  I
           12   19     4      dptype  Ljava/lang/Class<*>;
           14   19     5  dstWrapper  Lsun/invoke/util/Wrapper;
           17   19     6  srcWrapper  Lsun/invoke/util/Wrapper;
           22   39     3  targetDesc  Ljava/lang/String;
           24   39     4       rtype  Ljava/lang/Class<*>;
           26   31     5  srcWrapper  Lsun/invoke/util/Wrapper;
           29   31     6  dstWrapper  Lsun/invoke/util/Wrapper;
           37   39     5   classFile  [B
    MethodParameters:
          Name  Flags
      typeForm  

  private void bogusMethod(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // java.lang.invoke.InvokerBytecodeGenerator this
        start local 1 // java.lang.Object os
         0: .line 1894
            getstatic java.lang.invoke.MethodHandleStatics.DUMP_CLASS_FILES:Z
            ifeq 7
         1: .line 1895
            aload 0 /* this */
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.cw:Ljdk/internal/org/objectweb/asm/ClassWriter;
            bipush 8
            ldc "dummy"
            ldc "()V"
            aconst_null
            aconst_null
            invokevirtual jdk.internal.org.objectweb.asm.ClassWriter.visitMethod:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)Ljdk/internal/org/objectweb/asm/MethodVisitor;
            putfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
         2: .line 1896
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 1 /* os */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLdcInsn:(Ljava/lang/Object;)V
         3: .line 1897
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 87
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
         4: .line 1898
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 177
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
         5: .line 1899
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iconst_0
            iconst_0
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMaxs:(II)V
         6: .line 1900
            aload 0 /* this */
            getfield java.lang.invoke.InvokerBytecodeGenerator.mv:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitEnd:()V
         7: .line 1902
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object os
        end local 0 // java.lang.invoke.InvokerBytecodeGenerator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljava/lang/invoke/InvokerBytecodeGenerator;
            0    8     1    os  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      os    

  static int[] $SWITCH_TABLE$java$lang$invoke$LambdaForm$BasicType();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 58
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$SWITCH_TABLE$java$lang$invoke$LambdaForm$BasicType:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic java.lang.invoke.LambdaForm$BasicType.values:()[Ljava/lang/invoke/LambdaForm$BasicType;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic java.lang.invoke.LambdaForm$BasicType.D_TYPE:Ljava/lang/invoke/LambdaForm$BasicType;
            invokevirtual java.lang.invoke.LambdaForm$BasicType.ordinal:()I
            iconst_5
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic java.lang.invoke.LambdaForm$BasicType.F_TYPE:Ljava/lang/invoke/LambdaForm$BasicType;
            invokevirtual java.lang.invoke.LambdaForm$BasicType.ordinal:()I
            iconst_4
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic java.lang.invoke.LambdaForm$BasicType.I_TYPE:Ljava/lang/invoke/LambdaForm$BasicType;
            invokevirtual java.lang.invoke.LambdaForm$BasicType.ordinal:()I
            iconst_2
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic java.lang.invoke.LambdaForm$BasicType.J_TYPE:Ljava/lang/invoke/LambdaForm$BasicType;
            invokevirtual java.lang.invoke.LambdaForm$BasicType.ordinal:()I
            iconst_3
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic java.lang.invoke.LambdaForm$BasicType.L_TYPE:Ljava/lang/invoke/LambdaForm$BasicType;
            invokevirtual java.lang.invoke.LambdaForm$BasicType.ordinal:()I
            iconst_1
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic java.lang.invoke.LambdaForm$BasicType.V_TYPE:Ljava/lang/invoke/LambdaForm$BasicType;
            invokevirtual java.lang.invoke.LambdaForm$BasicType.ordinal:()I
            bipush 6
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            dup
            putstatic java.lang.invoke.InvokerBytecodeGenerator.$SWITCH_TABLE$java$lang$invoke$LambdaForm$BasicType:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError

  static int[] $SWITCH_TABLE$sun$invoke$util$Wrapper();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 58
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$SWITCH_TABLE$sun$invoke$util$Wrapper:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic sun.invoke.util.Wrapper.values:()[Lsun/invoke/util/Wrapper;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic sun.invoke.util.Wrapper.BOOLEAN:Lsun/invoke/util/Wrapper;
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            iconst_1
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic sun.invoke.util.Wrapper.BYTE:Lsun/invoke/util/Wrapper;
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            iconst_2
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic sun.invoke.util.Wrapper.CHAR:Lsun/invoke/util/Wrapper;
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            iconst_4
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic sun.invoke.util.Wrapper.DOUBLE:Lsun/invoke/util/Wrapper;
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            bipush 8
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic sun.invoke.util.Wrapper.FLOAT:Lsun/invoke/util/Wrapper;
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            bipush 7
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic sun.invoke.util.Wrapper.INT:Lsun/invoke/util/Wrapper;
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            iconst_5
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic sun.invoke.util.Wrapper.LONG:Lsun/invoke/util/Wrapper;
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            bipush 6
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic sun.invoke.util.Wrapper.OBJECT:Lsun/invoke/util/Wrapper;
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            bipush 9
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic sun.invoke.util.Wrapper.SHORT:Lsun/invoke/util/Wrapper;
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            iconst_3
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic sun.invoke.util.Wrapper.VOID:Lsun/invoke/util/Wrapper;
            invokevirtual sun.invoke.util.Wrapper.ordinal:()I
            bipush 10
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            dup
            putstatic java.lang.invoke.InvokerBytecodeGenerator.$SWITCH_TABLE$sun$invoke$util$Wrapper:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError
          29    30      31  Class java.lang.NoSuchFieldError

  static int[] $SWITCH_TABLE$java$lang$invoke$LambdaForm$Kind();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 58
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$SWITCH_TABLE$java$lang$invoke$LambdaForm$Kind:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic java.lang.invoke.LambdaForm$Kind.values:()[Ljava/lang/invoke/LambdaForm$Kind;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.BOUND_REINVOKER:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            iconst_4
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.COLLECT:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 57
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.CONVERT:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 58
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.DELEGATE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 6
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.DIRECT_INVOKE_INTERFACE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 18
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.DIRECT_INVOKE_SPECIAL:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 14
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.DIRECT_INVOKE_SPECIAL_IFC:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 15
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.DIRECT_INVOKE_STATIC:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 16
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.DIRECT_INVOKE_STATIC_INIT:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 19
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.DIRECT_INVOKE_VIRTUAL:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 13
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.DIRECT_NEW_INVOKE_SPECIAL:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 17
            iastore
        33: goto 35
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        34: pop
      StackMap locals:
      StackMap stack:
        35: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.EXACT_INVOKER:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 8
            iastore
        36: goto 38
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        37: pop
      StackMap locals:
      StackMap stack:
        38: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.EXACT_LINKER:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 7
            iastore
        39: goto 41
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        40: pop
      StackMap locals:
      StackMap stack:
        41: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.FIELD:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 61
            iastore
        42: goto 44
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        43: pop
      StackMap locals:
      StackMap stack:
        44: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.GENERIC:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            iconst_1
            iastore
        45: goto 47
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        46: pop
      StackMap locals:
      StackMap stack:
        47: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.GENERIC_INVOKER:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 10
            iastore
        48: goto 50
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        49: pop
      StackMap locals:
      StackMap stack:
        50: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.GENERIC_LINKER:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 9
            iastore
        51: goto 53
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        52: pop
      StackMap locals:
      StackMap stack:
        53: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.GET_BOOLEAN:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 28
            iastore
        54: goto 56
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        55: pop
      StackMap locals:
      StackMap stack:
        56: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.GET_BOOLEAN_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 30
            iastore
        57: goto 59
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        58: pop
      StackMap locals:
      StackMap stack:
        59: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.GET_BYTE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 32
            iastore
        60: goto 62
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        61: pop
      StackMap locals:
      StackMap stack:
        62: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.GET_BYTE_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 34
            iastore
        63: goto 65
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        64: pop
      StackMap locals:
      StackMap stack:
        65: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.GET_CHAR:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 36
            iastore
        66: goto 68
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        67: pop
      StackMap locals:
      StackMap stack:
        68: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.GET_CHAR_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 38
            iastore
        69: goto 71
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        70: pop
      StackMap locals:
      StackMap stack:
        71: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.GET_DOUBLE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 52
            iastore
        72: goto 74
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        73: pop
      StackMap locals:
      StackMap stack:
        74: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.GET_DOUBLE_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 54
            iastore
        75: goto 77
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        76: pop
      StackMap locals:
      StackMap stack:
        77: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.GET_FLOAT:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 48
            iastore
        78: goto 80
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        79: pop
      StackMap locals:
      StackMap stack:
        80: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.GET_FLOAT_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 50
            iastore
        81: goto 83
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        82: pop
      StackMap locals:
      StackMap stack:
        83: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.GET_INT:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 24
            iastore
        84: goto 86
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        85: pop
      StackMap locals:
      StackMap stack:
        86: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.GET_INT_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 26
            iastore
        87: goto 89
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        88: pop
      StackMap locals:
      StackMap stack:
        89: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.GET_LONG:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 44
            iastore
        90: goto 92
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        91: pop
      StackMap locals:
      StackMap stack:
        92: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.GET_LONG_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 46
            iastore
        93: goto 95
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        94: pop
      StackMap locals:
      StackMap stack:
        95: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.GET_OBJECT:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 20
            iastore
        96: goto 98
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        97: pop
      StackMap locals:
      StackMap stack:
        98: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.GET_OBJECT_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 22
            iastore
        99: goto 101
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       100: pop
      StackMap locals:
      StackMap stack:
       101: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.GET_SHORT:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 40
            iastore
       102: goto 104
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       103: pop
      StackMap locals:
      StackMap stack:
       104: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.GET_SHORT_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 42
            iastore
       105: goto 107
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       106: pop
      StackMap locals:
      StackMap stack:
       107: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.GUARD:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 62
            iastore
       108: goto 110
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       109: pop
      StackMap locals:
      StackMap stack:
       110: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.GUARD_WITH_CATCH:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 63
            iastore
       111: goto 113
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       112: pop
      StackMap locals:
      StackMap stack:
       113: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.IDENTITY:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            iconst_3
            iastore
       114: goto 116
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       115: pop
      StackMap locals:
      StackMap stack:
       116: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.LINK_TO_CALL_SITE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 12
            iastore
       117: goto 119
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       118: pop
      StackMap locals:
      StackMap stack:
       119: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.LINK_TO_TARGET_METHOD:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 11
            iastore
       120: goto 122
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       121: pop
      StackMap locals:
      StackMap stack:
       122: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.LOOP:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 60
            iastore
       123: goto 125
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       124: pop
      StackMap locals:
      StackMap stack:
       125: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_BOOLEAN:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 29
            iastore
       126: goto 128
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       127: pop
      StackMap locals:
      StackMap stack:
       128: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_BOOLEAN_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 31
            iastore
       129: goto 131
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       130: pop
      StackMap locals:
      StackMap stack:
       131: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_BYTE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 33
            iastore
       132: goto 134
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       133: pop
      StackMap locals:
      StackMap stack:
       134: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_BYTE_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 35
            iastore
       135: goto 137
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       136: pop
      StackMap locals:
      StackMap stack:
       137: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_CHAR:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 37
            iastore
       138: goto 140
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       139: pop
      StackMap locals:
      StackMap stack:
       140: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_CHAR_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 39
            iastore
       141: goto 143
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       142: pop
      StackMap locals:
      StackMap stack:
       143: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_DOUBLE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 53
            iastore
       144: goto 146
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       145: pop
      StackMap locals:
      StackMap stack:
       146: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_DOUBLE_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 55
            iastore
       147: goto 149
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       148: pop
      StackMap locals:
      StackMap stack:
       149: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_FLOAT:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 49
            iastore
       150: goto 152
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       151: pop
      StackMap locals:
      StackMap stack:
       152: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_FLOAT_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 51
            iastore
       153: goto 155
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       154: pop
      StackMap locals:
      StackMap stack:
       155: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_INT:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 25
            iastore
       156: goto 158
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       157: pop
      StackMap locals:
      StackMap stack:
       158: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_INT_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 27
            iastore
       159: goto 161
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       160: pop
      StackMap locals:
      StackMap stack:
       161: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_LONG:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 45
            iastore
       162: goto 164
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       163: pop
      StackMap locals:
      StackMap stack:
       164: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_LONG_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 47
            iastore
       165: goto 167
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       166: pop
      StackMap locals:
      StackMap stack:
       167: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_OBJECT:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 21
            iastore
       168: goto 170
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       169: pop
      StackMap locals:
      StackMap stack:
       170: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_OBJECT_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 23
            iastore
       171: goto 173
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       172: pop
      StackMap locals:
      StackMap stack:
       173: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_SHORT:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 41
            iastore
       174: goto 176
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       175: pop
      StackMap locals:
      StackMap stack:
       176: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.PUT_SHORT_VOLATILE:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 43
            iastore
       177: goto 179
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       178: pop
      StackMap locals:
      StackMap stack:
       179: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.REINVOKER:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            iconst_5
            iastore
       180: goto 182
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       181: pop
      StackMap locals:
      StackMap stack:
       182: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.SPREAD:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 59
            iastore
       183: goto 185
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       184: pop
      StackMap locals:
      StackMap stack:
       185: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.TRY_FINALLY:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 56
            iastore
       186: goto 188
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       187: pop
      StackMap locals:
      StackMap stack:
       188: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.VARHANDLE_EXACT_INVOKER:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 64
            iastore
       189: goto 191
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       190: pop
      StackMap locals:
      StackMap stack:
       191: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.VARHANDLE_INVOKER:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 65
            iastore
       192: goto 194
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       193: pop
      StackMap locals:
      StackMap stack:
       194: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.VARHANDLE_LINKER:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            bipush 66
            iastore
       195: goto 197
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       196: pop
      StackMap locals:
      StackMap stack:
       197: aload 0
            getstatic java.lang.invoke.LambdaForm$Kind.ZERO:Ljava/lang/invoke/LambdaForm$Kind;
            invokevirtual java.lang.invoke.LambdaForm$Kind.ordinal:()I
            iconst_2
            iastore
       198: goto 200
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
       199: pop
      StackMap locals:
      StackMap stack:
       200: aload 0
            dup
            putstatic java.lang.invoke.InvokerBytecodeGenerator.$SWITCH_TABLE$java$lang$invoke$LambdaForm$Kind:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError
          29    30      31  Class java.lang.NoSuchFieldError
          32    33      34  Class java.lang.NoSuchFieldError
          35    36      37  Class java.lang.NoSuchFieldError
          38    39      40  Class java.lang.NoSuchFieldError
          41    42      43  Class java.lang.NoSuchFieldError
          44    45      46  Class java.lang.NoSuchFieldError
          47    48      49  Class java.lang.NoSuchFieldError
          50    51      52  Class java.lang.NoSuchFieldError
          53    54      55  Class java.lang.NoSuchFieldError
          56    57      58  Class java.lang.NoSuchFieldError
          59    60      61  Class java.lang.NoSuchFieldError
          62    63      64  Class java.lang.NoSuchFieldError
          65    66      67  Class java.lang.NoSuchFieldError
          68    69      70  Class java.lang.NoSuchFieldError
          71    72      73  Class java.lang.NoSuchFieldError
          74    75      76  Class java.lang.NoSuchFieldError
          77    78      79  Class java.lang.NoSuchFieldError
          80    81      82  Class java.lang.NoSuchFieldError
          83    84      85  Class java.lang.NoSuchFieldError
          86    87      88  Class java.lang.NoSuchFieldError
          89    90      91  Class java.lang.NoSuchFieldError
          92    93      94  Class java.lang.NoSuchFieldError
          95    96      97  Class java.lang.NoSuchFieldError
          98    99     100  Class java.lang.NoSuchFieldError
         101   102     103  Class java.lang.NoSuchFieldError
         104   105     106  Class java.lang.NoSuchFieldError
         107   108     109  Class java.lang.NoSuchFieldError
         110   111     112  Class java.lang.NoSuchFieldError
         113   114     115  Class java.lang.NoSuchFieldError
         116   117     118  Class java.lang.NoSuchFieldError
         119   120     121  Class java.lang.NoSuchFieldError
         122   123     124  Class java.lang.NoSuchFieldError
         125   126     127  Class java.lang.NoSuchFieldError
         128   129     130  Class java.lang.NoSuchFieldError
         131   132     133  Class java.lang.NoSuchFieldError
         134   135     136  Class java.lang.NoSuchFieldError
         137   138     139  Class java.lang.NoSuchFieldError
         140   141     142  Class java.lang.NoSuchFieldError
         143   144     145  Class java.lang.NoSuchFieldError
         146   147     148  Class java.lang.NoSuchFieldError
         149   150     151  Class java.lang.NoSuchFieldError
         152   153     154  Class java.lang.NoSuchFieldError
         155   156     157  Class java.lang.NoSuchFieldError
         158   159     160  Class java.lang.NoSuchFieldError
         161   162     163  Class java.lang.NoSuchFieldError
         164   165     166  Class java.lang.NoSuchFieldError
         167   168     169  Class java.lang.NoSuchFieldError
         170   171     172  Class java.lang.NoSuchFieldError
         173   174     175  Class java.lang.NoSuchFieldError
         176   177     178  Class java.lang.NoSuchFieldError
         179   180     181  Class java.lang.NoSuchFieldError
         182   183     184  Class java.lang.NoSuchFieldError
         185   186     187  Class java.lang.NoSuchFieldError
         188   189     190  Class java.lang.NoSuchFieldError
         191   192     193  Class java.lang.NoSuchFieldError
         194   195     196  Class java.lang.NoSuchFieldError
         197   198     199  Class java.lang.NoSuchFieldError

  static int[] $SWITCH_TABLE$java$lang$invoke$MethodHandleImpl$Intrinsic();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 58
            getstatic java.lang.invoke.InvokerBytecodeGenerator.$SWITCH_TABLE$java$lang$invoke$MethodHandleImpl$Intrinsic:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic java.lang.invoke.MethodHandleImpl$Intrinsic.values:()[Ljava/lang/invoke/MethodHandleImpl$Intrinsic;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic java.lang.invoke.MethodHandleImpl$Intrinsic.ARRAY_LENGTH:Ljava/lang/invoke/MethodHandleImpl$Intrinsic;
            invokevirtual java.lang.invoke.MethodHandleImpl$Intrinsic.ordinal:()I
            bipush 8
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic java.lang.invoke.MethodHandleImpl$Intrinsic.ARRAY_LOAD:Ljava/lang/invoke/MethodHandleImpl$Intrinsic;
            invokevirtual java.lang.invoke.MethodHandleImpl$Intrinsic.ordinal:()I
            bipush 6
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic java.lang.invoke.MethodHandleImpl$Intrinsic.ARRAY_STORE:Ljava/lang/invoke/MethodHandleImpl$Intrinsic;
            invokevirtual java.lang.invoke.MethodHandleImpl$Intrinsic.ordinal:()I
            bipush 7
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic java.lang.invoke.MethodHandleImpl$Intrinsic.GUARD_WITH_CATCH:Ljava/lang/invoke/MethodHandleImpl$Intrinsic;
            invokevirtual java.lang.invoke.MethodHandleImpl$Intrinsic.ordinal:()I
            iconst_2
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic java.lang.invoke.MethodHandleImpl$Intrinsic.IDENTITY:Ljava/lang/invoke/MethodHandleImpl$Intrinsic;
            invokevirtual java.lang.invoke.MethodHandleImpl$Intrinsic.ordinal:()I
            bipush 9
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic java.lang.invoke.MethodHandleImpl$Intrinsic.LOOP:Ljava/lang/invoke/MethodHandleImpl$Intrinsic;
            invokevirtual java.lang.invoke.MethodHandleImpl$Intrinsic.ordinal:()I
            iconst_4
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic java.lang.invoke.MethodHandleImpl$Intrinsic.NEW_ARRAY:Ljava/lang/invoke/MethodHandleImpl$Intrinsic;
            invokevirtual java.lang.invoke.MethodHandleImpl$Intrinsic.ordinal:()I
            iconst_5
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic java.lang.invoke.MethodHandleImpl$Intrinsic.NONE:Ljava/lang/invoke/MethodHandleImpl$Intrinsic;
            invokevirtual java.lang.invoke.MethodHandleImpl$Intrinsic.ordinal:()I
            bipush 11
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic java.lang.invoke.MethodHandleImpl$Intrinsic.SELECT_ALTERNATIVE:Ljava/lang/invoke/MethodHandleImpl$Intrinsic;
            invokevirtual java.lang.invoke.MethodHandleImpl$Intrinsic.ordinal:()I
            iconst_1
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic java.lang.invoke.MethodHandleImpl$Intrinsic.TRY_FINALLY:Ljava/lang/invoke/MethodHandleImpl$Intrinsic;
            invokevirtual java.lang.invoke.MethodHandleImpl$Intrinsic.ordinal:()I
            iconst_3
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            getstatic java.lang.invoke.MethodHandleImpl$Intrinsic.ZERO:Ljava/lang/invoke/MethodHandleImpl$Intrinsic;
            invokevirtual java.lang.invoke.MethodHandleImpl$Intrinsic.ordinal:()I
            bipush 10
            iastore
        33: goto 35
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        34: pop
      StackMap locals:
      StackMap stack:
        35: aload 0
            dup
            putstatic java.lang.invoke.InvokerBytecodeGenerator.$SWITCH_TABLE$java$lang$invoke$MethodHandleImpl$Intrinsic:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError
          29    30      31  Class java.lang.NoSuchFieldError
          32    33      34  Class java.lang.NoSuchFieldError

  private static boolean lambda$0(java.lang.invoke.LambdaForm$BasicType);
    descriptor: (Ljava/lang/invoke/LambdaForm$BasicType;)Z
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.invoke.LambdaForm$BasicType bt
         0: .line 1463
            aload 0 /* bt */
            getstatic java.lang.invoke.LambdaForm$BasicType.V_TYPE:Ljava/lang/invoke/LambdaForm$BasicType;
            if_acmpeq 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // java.lang.invoke.LambdaForm$BasicType bt
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0    bt  Ljava/lang/invoke/LambdaForm$BasicType;

  private static java.lang.Class[] lambda$2(int);
    descriptor: (I)[Ljava/lang/Class;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            iload 0
            anewarray java.lang.Class
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "InvokerBytecodeGenerator.java"
NestMembers:
  java.lang.invoke.InvokerBytecodeGenerator$1  java.lang.invoke.InvokerBytecodeGenerator$BytecodeGenerationException  java.lang.invoke.InvokerBytecodeGenerator$CpPatch
InnerClasses:
  final SpeciesData = java.lang.invoke.BoundMethodHandle$SpeciesData of java.lang.invoke.BoundMethodHandle
  final Holder = java.lang.invoke.DelegatingMethodHandle$Holder of java.lang.invoke.DelegatingMethodHandle
  final Holder = java.lang.invoke.DirectMethodHandle$Holder of java.lang.invoke.DirectMethodHandle
  java.lang.invoke.InvokerBytecodeGenerator$1
  final BytecodeGenerationException = java.lang.invoke.InvokerBytecodeGenerator$BytecodeGenerationException of java.lang.invoke.InvokerBytecodeGenerator
  CpPatch = java.lang.invoke.InvokerBytecodeGenerator$CpPatch of java.lang.invoke.InvokerBytecodeGenerator
  final Holder = java.lang.invoke.Invokers$Holder of java.lang.invoke.Invokers
  final BasicType = java.lang.invoke.LambdaForm$BasicType of java.lang.invoke.LambdaForm
  final Holder = java.lang.invoke.LambdaForm$Holder of java.lang.invoke.LambdaForm
  final Kind = java.lang.invoke.LambdaForm$Kind of java.lang.invoke.LambdaForm
  final Name = java.lang.invoke.LambdaForm$Name of java.lang.invoke.LambdaForm
  NamedFunction = java.lang.invoke.LambdaForm$NamedFunction of java.lang.invoke.LambdaForm
  Factory = java.lang.invoke.MemberName$Factory of java.lang.invoke.MemberName
  final Intrinsic = java.lang.invoke.MethodHandleImpl$Intrinsic of java.lang.invoke.MethodHandleImpl
  LoopClauses = java.lang.invoke.MethodHandleImpl$LoopClauses of java.lang.invoke.MethodHandleImpl
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles