public class jdk.nashorn.internal.codegen.MethodEmitter
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: jdk.nashorn.internal.codegen.MethodEmitter
  super_class: java.lang.Object
{
  private final jdk.internal.org.objectweb.asm.MethodVisitor method;
    descriptor: Ljdk/internal/org/objectweb/asm/MethodVisitor;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final jdk.nashorn.internal.codegen.ClassEmitter classEmitter;
    descriptor: Ljdk/nashorn/internal/codegen/ClassEmitter;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected jdk.nashorn.internal.ir.FunctionNode functionNode;
    descriptor: Ljdk/nashorn/internal/ir/FunctionNode;
    flags: (0x0004) ACC_PROTECTED

  private jdk.nashorn.internal.codegen.Label$Stack stack;
    descriptor: Ljdk/nashorn/internal/codegen/Label$Stack;
    flags: (0x0002) ACC_PRIVATE

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

  private final java.util.Map<jdk.nashorn.internal.ir.Symbol, jdk.nashorn.internal.codegen.MethodEmitter$LocalVariableDef> localVariableDefs;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljdk/nashorn/internal/ir/Symbol;Ljdk/nashorn/internal/codegen/MethodEmitter$LocalVariableDef;>;

  private final jdk.nashorn.internal.runtime.Context context;
    descriptor: Ljdk/nashorn/internal/runtime/Context;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static final int LARGE_STRING_THRESHOLD;
    descriptor: I
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: 32768

  private final jdk.nashorn.internal.runtime.logging.DebugLogger log;
    descriptor: Ljdk/nashorn/internal/runtime/logging/DebugLogger;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean debug;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static final int DEBUG_TRACE_LINE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final jdk.internal.org.objectweb.asm.Handle LINKERBOOTSTRAP;
    descriptor: Ljdk/internal/org/objectweb/asm/Handle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final jdk.internal.org.objectweb.asm.Handle POPULATE_ARRAY_BOOTSTRAP;
    descriptor: Ljdk/internal/org/objectweb/asm/Handle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private final jdk.nashorn.internal.codegen.CompilerConstants$FieldAccess ERR_STREAM;
    descriptor: Ljdk/nashorn/internal/codegen/CompilerConstants$FieldAccess;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final jdk.nashorn.internal.codegen.CompilerConstants$Call PRINT;
    descriptor: Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final jdk.nashorn.internal.codegen.CompilerConstants$Call PRINTLN;
    descriptor: Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final jdk.nashorn.internal.codegen.CompilerConstants$Call PRINT_STACKTRACE;
    descriptor: Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private static int linePrefix;
    descriptor: I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

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

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=2, args_size=0
         0: .line 129
            ldc Ljdk/nashorn/internal/codegen/MethodEmitter;
            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 jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
         3: .line 163
            ldc "nashorn.codegen.debug.trace"
            ldc "-1"
            invokestatic jdk.nashorn.internal.runtime.options.Options.getStringProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            astore 0 /* tl */
        start local 0 // java.lang.String tl
         4: .line 164
            iconst_m1
            istore 1 /* line */
        start local 1 // int line
         5: .line 166
            aload 0 /* tl */
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 1 /* line */
         6: .line 167
            goto 8
      StackMap locals: java.lang.String int
      StackMap stack: java.lang.NumberFormatException
         7: pop
         8: .line 170
      StackMap locals:
      StackMap stack:
            iload 1 /* line */
            putstatic jdk.nashorn.internal.codegen.MethodEmitter.DEBUG_TRACE_LINE:I
        end local 1 // int line
        end local 0 // java.lang.String tl
         9: .line 174
            new jdk.internal.org.objectweb.asm.Handle
            dup
            bipush 6
            getstatic jdk.nashorn.internal.runtime.linker.Bootstrap.BOOTSTRAP:Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants$Call.className:()Ljava/lang/String;
            getstatic jdk.nashorn.internal.runtime.linker.Bootstrap.BOOTSTRAP:Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants$Call.name:()Ljava/lang/String;
            getstatic jdk.nashorn.internal.runtime.linker.Bootstrap.BOOTSTRAP:Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants$Call.descriptor:()Ljava/lang/String;
            iconst_0
            invokespecial jdk.internal.org.objectweb.asm.Handle.<init>:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
            putstatic jdk.nashorn.internal.codegen.MethodEmitter.LINKERBOOTSTRAP:Ljdk/internal/org/objectweb/asm/Handle;
        10: .line 177
            new jdk.internal.org.objectweb.asm.Handle
            dup
            bipush 6
            getstatic jdk.nashorn.internal.runtime.RewriteException.BOOTSTRAP:Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants$Call.className:()Ljava/lang/String;
            getstatic jdk.nashorn.internal.runtime.RewriteException.BOOTSTRAP:Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants$Call.name:()Ljava/lang/String;
            getstatic jdk.nashorn.internal.runtime.RewriteException.BOOTSTRAP:Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants$Call.descriptor:()Ljava/lang/String;
            iconst_0
            invokespecial jdk.internal.org.objectweb.asm.Handle.<init>:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
            putstatic jdk.nashorn.internal.codegen.MethodEmitter.POPULATE_ARRAY_BOOTSTRAP:Ljdk/internal/org/objectweb/asm/Handle;
        11: .line 2654
            iconst_0
            putstatic jdk.nashorn.internal.codegen.MethodEmitter.linePrefix:I
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            4    9     0    tl  Ljava/lang/String;
            5    9     1  line  I
      Exception table:
        from    to  target  type
           5     6       7  Class java.lang.NumberFormatException

  void <init>(jdk.nashorn.internal.codegen.ClassEmitter, jdk.internal.org.objectweb.asm.MethodVisitor);
    descriptor: (Ljdk/nashorn/internal/codegen/ClassEmitter;Ljdk/internal/org/objectweb/asm/MethodVisitor;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.ClassEmitter classEmitter
        start local 2 // jdk.internal.org.objectweb.asm.MethodVisitor method
         0: .line 187
            aload 0 /* this */
            aload 1 /* classEmitter */
            aload 2 /* method */
            aconst_null
            invokespecial jdk.nashorn.internal.codegen.MethodEmitter.<init>:(Ljdk/nashorn/internal/codegen/ClassEmitter;Ljdk/internal/org/objectweb/asm/MethodVisitor;Ljdk/nashorn/internal/ir/FunctionNode;)V
         1: .line 188
            return
        end local 2 // jdk.internal.org.objectweb.asm.MethodVisitor method
        end local 1 // jdk.nashorn.internal.codegen.ClassEmitter classEmitter
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    2     1  classEmitter  Ljdk/nashorn/internal/codegen/ClassEmitter;
            0    2     2        method  Ljdk/internal/org/objectweb/asm/MethodVisitor;
    MethodParameters:
              Name  Flags
      classEmitter  final
      method        final

  void <init>(jdk.nashorn.internal.codegen.ClassEmitter, jdk.internal.org.objectweb.asm.MethodVisitor, jdk.nashorn.internal.ir.FunctionNode);
    descriptor: (Ljdk/nashorn/internal/codegen/ClassEmitter;Ljdk/internal/org/objectweb/asm/MethodVisitor;Ljdk/nashorn/internal/ir/FunctionNode;)V
    flags: (0x0000) 
    Code:
      stack=8, locals=4, args_size=4
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.ClassEmitter classEmitter
        start local 2 // jdk.internal.org.objectweb.asm.MethodVisitor method
        start local 3 // jdk.nashorn.internal.ir.FunctionNode functionNode
         0: .line 198
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 147
            aload 0 /* this */
            new java.util.IdentityHashMap
            dup
            invokespecial java.util.IdentityHashMap.<init>:()V
            putfield jdk.nashorn.internal.codegen.MethodEmitter.localVariableDefs:Ljava/util/Map;
         2: .line 2599
            aload 0 /* this */
            ldc Ljava/lang/System;
            ldc "err"
            ldc Ljava/io/PrintStream;
            invokestatic jdk.nashorn.internal.codegen.CompilerConstants.staticField:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljdk/nashorn/internal/codegen/CompilerConstants$FieldAccess;
            putfield jdk.nashorn.internal.codegen.MethodEmitter.ERR_STREAM:Ljdk/nashorn/internal/codegen/CompilerConstants$FieldAccess;
         3: .line 2600
            aload 0 /* this */
            ldc Ljava/io/PrintStream;
            ldc "print"
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Object;
            aastore
            invokestatic jdk.nashorn.internal.codegen.CompilerConstants.virtualCallNoLookup:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            putfield jdk.nashorn.internal.codegen.MethodEmitter.PRINT:Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
         4: .line 2601
            aload 0 /* this */
            ldc Ljava/io/PrintStream;
            ldc "println"
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Object;
            aastore
            invokestatic jdk.nashorn.internal.codegen.CompilerConstants.virtualCallNoLookup:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            putfield jdk.nashorn.internal.codegen.MethodEmitter.PRINTLN:Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
         5: .line 2602
            aload 0 /* this */
            ldc Ljava/lang/Throwable;
            ldc "printStackTrace"
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            iconst_0
            anewarray java.lang.Class
            invokestatic jdk.nashorn.internal.codegen.CompilerConstants.virtualCallNoLookup:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            putfield jdk.nashorn.internal.codegen.MethodEmitter.PRINT_STACKTRACE:Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
         6: .line 199
            aload 0 /* this */
            aload 1 /* classEmitter */
            invokevirtual jdk.nashorn.internal.codegen.ClassEmitter.getContext:()Ljdk/nashorn/internal/runtime/Context;
            putfield jdk.nashorn.internal.codegen.MethodEmitter.context:Ljdk/nashorn/internal/runtime/Context;
         7: .line 200
            aload 0 /* this */
            aload 1 /* classEmitter */
            putfield jdk.nashorn.internal.codegen.MethodEmitter.classEmitter:Ljdk/nashorn/internal/codegen/ClassEmitter;
         8: .line 201
            aload 0 /* this */
            aload 2 /* method */
            putfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
         9: .line 202
            aload 0 /* this */
            aload 3 /* functionNode */
            putfield jdk.nashorn.internal.codegen.MethodEmitter.functionNode:Ljdk/nashorn/internal/ir/FunctionNode;
        10: .line 203
            aload 0 /* this */
            aconst_null
            putfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
        11: .line 204
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.context:Ljdk/nashorn/internal/runtime/Context;
            ldc Ljdk/nashorn/internal/codegen/CodeGenerator;
            invokevirtual jdk.nashorn.internal.runtime.Context.getLogger:(Ljava/lang/Class;)Ljdk/nashorn/internal/runtime/logging/DebugLogger;
            putfield jdk.nashorn.internal.codegen.MethodEmitter.log:Ljdk/nashorn/internal/runtime/logging/DebugLogger;
        12: .line 205
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.log:Ljdk/nashorn/internal/runtime/logging/DebugLogger;
            invokevirtual jdk.nashorn.internal.runtime.logging.DebugLogger.isEnabled:()Z
            putfield jdk.nashorn.internal.codegen.MethodEmitter.debug:Z
        13: .line 206
            return
        end local 3 // jdk.nashorn.internal.ir.FunctionNode functionNode
        end local 2 // jdk.internal.org.objectweb.asm.MethodVisitor method
        end local 1 // jdk.nashorn.internal.codegen.ClassEmitter classEmitter
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   14     0          this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0   14     1  classEmitter  Ljdk/nashorn/internal/codegen/ClassEmitter;
            0   14     2        method  Ljdk/internal/org/objectweb/asm/MethodVisitor;
            0   14     3  functionNode  Ljdk/nashorn/internal/ir/FunctionNode;
    MethodParameters:
              Name  Flags
      classEmitter  final
      method        final
      functionNode  final

  public void begin();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 212
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.classEmitter:Ljdk/nashorn/internal/codegen/ClassEmitter;
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.ClassEmitter.beginMethod:(Ljdk/nashorn/internal/codegen/MethodEmitter;)V
         1: .line 213
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.newStack:()V
         2: .line 214
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitCode:()V
         3: .line 215
            return
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  public void end();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 221
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iconst_0
            iconst_0
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMaxs:(II)V
         1: .line 222
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitEnd:()V
         2: .line 224
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.classEmitter:Ljdk/nashorn/internal/codegen/ClassEmitter;
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.ClassEmitter.endMethod:(Ljdk/nashorn/internal/codegen/MethodEmitter;)V
         3: .line 225
            return
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  boolean isReachable();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 228
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            ifnull 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  private void doesNotContinueSequentially();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 232
            aload 0 /* this */
            aconst_null
            putfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
         1: .line 233
            return
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  private void newStack();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 236
            aload 0 /* this */
            new jdk.nashorn.internal.codegen.Label$Stack
            dup
            invokespecial jdk.nashorn.internal.codegen.Label$Stack.<init>:()V
            putfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
         1: .line 237
            return
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 241
            new java.lang.StringBuilder
            dup
            ldc "methodEmitter: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.functionNode:Ljdk/nashorn/internal/ir/FunctionNode;
            ifnonnull 1
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            goto 2
      StackMap locals:
      StackMap stack: java.lang.StringBuilder
         1: aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.functionNode:Ljdk/nashorn/internal/ir/FunctionNode;
            invokevirtual jdk.nashorn.internal.ir.FunctionNode.getName:()Ljava/lang/String;
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter
      StackMap stack: java.lang.StringBuilder java.lang.Object
         2: invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokestatic jdk.nashorn.internal.runtime.Debug.id:(Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  void pushType(jdk.nashorn.internal.codegen.types.Type);
    descriptor: (Ljdk/nashorn/internal/codegen/types/Type;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.types.Type type
         0: .line 249
            aload 1 /* type */
            ifnull 2
         1: .line 250
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.push:(Ljdk/nashorn/internal/codegen/types/Type;)V
         2: .line 252
      StackMap locals:
      StackMap stack:
            return
        end local 1 // jdk.nashorn.internal.codegen.types.Type type
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  type  Ljdk/nashorn/internal/codegen/types/Type;
    MethodParameters:
      Name  Flags
      type  final

  private jdk.nashorn.internal.codegen.types.Type popType(jdk.nashorn.internal.codegen.types.Type);
    descriptor: (Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.types.Type expected
         0: .line 262
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 2 /* type */
        start local 2 // jdk.nashorn.internal.codegen.types.Type type
         1: .line 263
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 2
            aload 2 /* type */
            aload 1 /* expected */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isEquivalentTo:(Ljdk/nashorn/internal/codegen/types/Type;)Z
            ifne 2
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 2 /* type */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " is not compatible with "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* expected */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         2: .line 264
      StackMap locals: jdk.nashorn.internal.codegen.types.Type
      StackMap stack:
            aload 2 /* type */
            areturn
        end local 2 // jdk.nashorn.internal.codegen.types.Type type
        end local 1 // jdk.nashorn.internal.codegen.types.Type expected
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  expected  Ljdk/nashorn/internal/codegen/types/Type;
            1    3     2      type  Ljdk/nashorn/internal/codegen/types/Type;
    MethodParameters:
          Name  Flags
      expected  final

  private jdk.nashorn.internal.codegen.types.Type popType();
    descriptor: ()Ljdk/nashorn/internal/codegen/types/Type;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 273
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.pop:()Ljdk/nashorn/internal/codegen/types/Type;
            areturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  private jdk.nashorn.internal.codegen.types.NumericType popNumeric();
    descriptor: ()Ljdk/nashorn/internal/codegen/types/NumericType;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 282
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 1 /* type */
        start local 1 // jdk.nashorn.internal.codegen.types.Type type
         1: .line 283
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isBoolean:()Z
            ifeq 3
         2: .line 285
            getstatic jdk.nashorn.internal.codegen.types.Type.INT:Ljdk/nashorn/internal/codegen/types/BitwiseType;
            areturn
         3: .line 287
      StackMap locals: jdk.nashorn.internal.codegen.types.Type
      StackMap stack:
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 4
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isNumeric:()Z
            ifne 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 288
      StackMap locals:
      StackMap stack:
            aload 1 /* type */
            checkcast jdk.nashorn.internal.codegen.types.NumericType
            areturn
        end local 1 // jdk.nashorn.internal.codegen.types.Type type
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            1    5     1  type  Ljdk/nashorn/internal/codegen/types/Type;

  private jdk.nashorn.internal.codegen.types.BitwiseType popBitwise();
    descriptor: ()Ljdk/nashorn/internal/codegen/types/BitwiseType;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 298
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 1 /* type */
        start local 1 // jdk.nashorn.internal.codegen.types.Type type
         1: .line 299
            aload 1 /* type */
            getstatic jdk.nashorn.internal.codegen.types.Type.BOOLEAN:Ljdk/nashorn/internal/codegen/types/Type;
            if_acmpne 3
         2: .line 300
            getstatic jdk.nashorn.internal.codegen.types.Type.INT:Ljdk/nashorn/internal/codegen/types/BitwiseType;
            areturn
         3: .line 302
      StackMap locals: jdk.nashorn.internal.codegen.types.Type
      StackMap stack:
            aload 1 /* type */
            checkcast jdk.nashorn.internal.codegen.types.BitwiseType
            areturn
        end local 1 // jdk.nashorn.internal.codegen.types.Type type
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            1    4     1  type  Ljdk/nashorn/internal/codegen/types/Type;

  private jdk.nashorn.internal.codegen.types.BitwiseType popInteger();
    descriptor: ()Ljdk/nashorn/internal/codegen/types/BitwiseType;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 306
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 1 /* type */
        start local 1 // jdk.nashorn.internal.codegen.types.Type type
         1: .line 307
            aload 1 /* type */
            getstatic jdk.nashorn.internal.codegen.types.Type.BOOLEAN:Ljdk/nashorn/internal/codegen/types/Type;
            if_acmpne 3
         2: .line 308
            getstatic jdk.nashorn.internal.codegen.types.Type.INT:Ljdk/nashorn/internal/codegen/types/BitwiseType;
            areturn
         3: .line 310
      StackMap locals: jdk.nashorn.internal.codegen.types.Type
      StackMap stack:
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 4
            aload 1 /* type */
            getstatic jdk.nashorn.internal.codegen.types.Type.INT:Ljdk/nashorn/internal/codegen/types/BitwiseType;
            if_acmpeq 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 311
      StackMap locals:
      StackMap stack:
            aload 1 /* type */
            checkcast jdk.nashorn.internal.codegen.types.BitwiseType
            areturn
        end local 1 // jdk.nashorn.internal.codegen.types.Type type
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            1    5     1  type  Ljdk/nashorn/internal/codegen/types/Type;

  private jdk.nashorn.internal.codegen.types.ArrayType popArray();
    descriptor: ()Ljdk/nashorn/internal/codegen/types/ArrayType;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 321
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 1 /* type */
        start local 1 // jdk.nashorn.internal.codegen.types.Type type
         1: .line 322
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 2
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isArray:()Z
            ifne 2
            new java.lang.AssertionError
            dup
            aload 1 /* type */
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         2: .line 323
      StackMap locals: jdk.nashorn.internal.codegen.types.Type
      StackMap stack:
            aload 1 /* type */
            checkcast jdk.nashorn.internal.codegen.types.ArrayType
            areturn
        end local 1 // jdk.nashorn.internal.codegen.types.Type type
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            1    3     1  type  Ljdk/nashorn/internal/codegen/types/Type;

  final jdk.nashorn.internal.codegen.types.Type peekType(int);
    descriptor: (I)Ljdk/nashorn/internal/codegen/types/Type;
    flags: (0x0010) ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int pos
         0: .line 335
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 1 /* pos */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.peek:(I)Ljdk/nashorn/internal/codegen/types/Type;
            areturn
        end local 1 // int pos
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    1     1   pos  I
    MethodParameters:
      Name  Flags
      pos   final

  final jdk.nashorn.internal.codegen.types.Type peekType();
    descriptor: ()Ljdk/nashorn/internal/codegen/types/Type;
    flags: (0x0010) ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 344
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.peek:()Ljdk/nashorn/internal/codegen/types/Type;
            areturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  jdk.nashorn.internal.codegen.MethodEmitter _new(java.lang.String, jdk.nashorn.internal.codegen.types.Type);
    descriptor: (Ljava/lang/String;Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.String classDescriptor
        start local 2 // jdk.nashorn.internal.codegen.types.Type type
         0: .line 357
            aload 0 /* this */
            ldc "new"
            aload 1 /* classDescriptor */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 358
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 187
            aload 1 /* classDescriptor */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitTypeInsn:(ILjava/lang/String;)V
         2: .line 359
            aload 0 /* this */
            aload 2 /* type */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         3: .line 360
            aload 0 /* this */
            areturn
        end local 2 // jdk.nashorn.internal.codegen.types.Type type
        end local 1 // java.lang.String classDescriptor
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    4     0             this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    4     1  classDescriptor  Ljava/lang/String;
            0    4     2             type  Ljdk/nashorn/internal/codegen/types/Type;
    MethodParameters:
                 Name  Flags
      classDescriptor  final
      type             final

  jdk.nashorn.internal.codegen.MethodEmitter _new(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.Class clazz
         0: .line 372
            aload 0 /* this */
            aload 1 /* clazz */
            invokestatic jdk.nashorn.internal.codegen.CompilerConstants.className:(Ljava/lang/Class;)Ljava/lang/String;
            aload 1 /* clazz */
            invokestatic jdk.nashorn.internal.codegen.types.Type.typeFor:(Ljava/lang/Class;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter._new:(Ljava/lang/String;Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            areturn
        end local 1 // java.lang.Class clazz
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    1     1  clazz  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    MethodParameters:
       Name  Flags
      clazz  final

  jdk.nashorn.internal.codegen.MethodEmitter newInstance(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.Class clazz
         0: .line 383
            aload 0 /* this */
            aload 1 /* clazz */
            invokestatic jdk.nashorn.internal.codegen.CompilerConstants.constructorNoLookup:(Ljava/lang/Class;)Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.invoke:(Ljdk/nashorn/internal/codegen/CompilerConstants$Call;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            areturn
        end local 1 // java.lang.Class clazz
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    1     1  clazz  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    MethodParameters:
       Name  Flags
      clazz  final

  jdk.nashorn.internal.codegen.MethodEmitter dup(int);
    descriptor: (I)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int depth
         0: .line 397
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 1 /* depth */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.dup:(Ljdk/internal/org/objectweb/asm/MethodVisitor;I)Ljdk/nashorn/internal/codegen/types/Type;
            ifnonnull 2
         1: .line 398
            aconst_null
            areturn
         2: .line 401
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "dup"
            iload 1 /* depth */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         3: .line 403
            iload 1 /* depth */
            tableswitch { // 0 - 2
                    0: 4
                    1: 8
                    2: 19
              default: 34
          }
         4: .line 405
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.getTopLocalLoad:()I
            istore 2 /* l0 */
        start local 2 // int l0
         5: .line 406
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         6: .line 407
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 2 /* l0 */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.markLocalLoad:(I)V
         7: .line 408
            goto 36
        end local 2 // int l0
         8: .line 411
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.getTopLocalLoad:()I
            istore 2 /* l0 */
        start local 2 // int l0
         9: .line 412
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 3 /* p0 */
        start local 3 // jdk.nashorn.internal.codegen.types.Type p0
        10: .line 413
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.getTopLocalLoad:()I
            istore 4 /* l1 */
        start local 4 // int l1
        11: .line 414
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 5 /* p1 */
        start local 5 // jdk.nashorn.internal.codegen.types.Type p1
        12: .line 415
            aload 0 /* this */
            aload 3 /* p0 */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
        13: .line 416
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 2 /* l0 */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.markLocalLoad:(I)V
        14: .line 417
            aload 0 /* this */
            aload 5 /* p1 */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
        15: .line 418
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 4 /* l1 */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.markLocalLoad:(I)V
        16: .line 419
            aload 0 /* this */
            aload 3 /* p0 */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
        17: .line 420
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 2 /* l0 */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.markLocalLoad:(I)V
        18: .line 421
            goto 36
        end local 5 // jdk.nashorn.internal.codegen.types.Type p1
        end local 4 // int l1
        end local 3 // jdk.nashorn.internal.codegen.types.Type p0
        end local 2 // int l0
        19: .line 424
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.getTopLocalLoad:()I
            istore 2 /* l0 */
        start local 2 // int l0
        20: .line 425
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 3 /* p0 */
        start local 3 // jdk.nashorn.internal.codegen.types.Type p0
        21: .line 426
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.getTopLocalLoad:()I
            istore 4 /* l1 */
        start local 4 // int l1
        22: .line 427
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 5 /* p1 */
        start local 5 // jdk.nashorn.internal.codegen.types.Type p1
        23: .line 428
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.getTopLocalLoad:()I
            istore 6 /* l2 */
        start local 6 // int l2
        24: .line 429
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 7 /* p2 */
        start local 7 // jdk.nashorn.internal.codegen.types.Type p2
        25: .line 430
            aload 0 /* this */
            aload 3 /* p0 */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
        26: .line 431
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 2 /* l0 */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.markLocalLoad:(I)V
        27: .line 432
            aload 0 /* this */
            aload 7 /* p2 */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
        28: .line 433
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 6 /* l2 */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.markLocalLoad:(I)V
        29: .line 434
            aload 0 /* this */
            aload 5 /* p1 */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
        30: .line 435
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 4 /* l1 */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.markLocalLoad:(I)V
        31: .line 436
            aload 0 /* this */
            aload 3 /* p0 */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
        32: .line 437
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 2 /* l0 */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.markLocalLoad:(I)V
        33: .line 438
            goto 36
        end local 7 // jdk.nashorn.internal.codegen.types.Type p2
        end local 6 // int l2
        end local 5 // jdk.nashorn.internal.codegen.types.Type p1
        end local 4 // int l1
        end local 3 // jdk.nashorn.internal.codegen.types.Type p0
        end local 2 // int l0
        34: .line 441
      StackMap locals:
      StackMap stack:
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 35
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "illegal dup depth = "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* depth */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        35: .line 442
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        36: .line 445
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 1 // int depth
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   37     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0   37     1  depth  I
            5    8     2     l0  I
            9   19     2     l0  I
           10   19     3     p0  Ljdk/nashorn/internal/codegen/types/Type;
           11   19     4     l1  I
           12   19     5     p1  Ljdk/nashorn/internal/codegen/types/Type;
           20   34     2     l0  I
           21   34     3     p0  Ljdk/nashorn/internal/codegen/types/Type;
           22   34     4     l1  I
           23   34     5     p1  Ljdk/nashorn/internal/codegen/types/Type;
           24   34     6     l2  I
           25   34     7     p2  Ljdk/nashorn/internal/codegen/types/Type;
    MethodParameters:
       Name  Flags
      depth  final

  jdk.nashorn.internal.codegen.MethodEmitter dup2();
    descriptor: ()Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 456
            aload 0 /* this */
            ldc "dup2"
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/String;)V
         1: .line 458
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isCategory2:()Z
            ifeq 6
         2: .line 459
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.getTopLocalLoad:()I
            istore 1 /* l0 */
        start local 1 // int l0
         3: .line 460
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         4: .line 461
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 1 /* l0 */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.markLocalLoad:(I)V
        end local 1 // int l0
         5: .line 462
            goto 18
         6: .line 463
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.getTopLocalLoad:()I
            istore 1 /* l0 */
        start local 1 // int l0
         7: .line 464
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 2 /* p0 */
        start local 2 // jdk.nashorn.internal.codegen.types.Type p0
         8: .line 465
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.getTopLocalLoad:()I
            istore 3 /* l1 */
        start local 3 // int l1
         9: .line 466
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 4 /* p1 */
        start local 4 // jdk.nashorn.internal.codegen.types.Type p1
        10: .line 467
            aload 0 /* this */
            aload 2 /* p0 */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
        11: .line 468
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 1 /* l0 */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.markLocalLoad:(I)V
        12: .line 469
            aload 0 /* this */
            aload 4 /* p1 */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
        13: .line 470
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 3 /* l1 */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.markLocalLoad:(I)V
        14: .line 471
            aload 0 /* this */
            aload 2 /* p0 */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
        15: .line 472
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 1 /* l0 */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.markLocalLoad:(I)V
        16: .line 473
            aload 0 /* this */
            aload 4 /* p1 */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
        17: .line 474
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 3 /* l1 */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.markLocalLoad:(I)V
        end local 4 // jdk.nashorn.internal.codegen.types.Type p1
        end local 3 // int l1
        end local 2 // jdk.nashorn.internal.codegen.types.Type p0
        end local 1 // int l0
        18: .line 476
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            bipush 92
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
        19: .line 477
            aload 0 /* this */
            areturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   20     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            3    5     1    l0  I
            7   18     1    l0  I
            8   18     2    p0  Ljdk/nashorn/internal/codegen/types/Type;
            9   18     3    l1  I
           10   18     4    p1  Ljdk/nashorn/internal/codegen/types/Type;

  jdk.nashorn.internal.codegen.MethodEmitter dup();
    descriptor: ()Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 486
            aload 0 /* this */
            iconst_0
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.dup:(I)Ljdk/nashorn/internal/codegen/MethodEmitter;
            areturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  jdk.nashorn.internal.codegen.MethodEmitter pop();
    descriptor: ()Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 495
            aload 0 /* this */
            ldc "pop"
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 496
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            invokevirtual jdk.nashorn.internal.codegen.types.Type.pop:(Ljdk/internal/org/objectweb/asm/MethodVisitor;)Ljdk/nashorn/internal/codegen/types/Type;
            pop
         2: .line 497
            aload 0 /* this */
            areturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  jdk.nashorn.internal.codegen.MethodEmitter pop2();
    descriptor: ()Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 507
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isCategory2:()Z
            ifeq 3
         1: .line 508
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            pop
         2: .line 509
            goto 4
         3: .line 510
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.get2n:()Ljdk/nashorn/internal/codegen/types/NumericType;
            pop
         4: .line 512
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  jdk.nashorn.internal.codegen.MethodEmitter swap();
    descriptor: ()Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 522
            aload 0 /* this */
            ldc "swap"
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/String;)V
         1: .line 524
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.getTopLocalLoad:()I
            istore 1 /* l0 */
        start local 1 // int l0
         2: .line 525
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 2 /* p0 */
        start local 2 // jdk.nashorn.internal.codegen.types.Type p0
         3: .line 526
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.getTopLocalLoad:()I
            istore 3 /* l1 */
        start local 3 // int l1
         4: .line 527
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 4 /* p1 */
        start local 4 // jdk.nashorn.internal.codegen.types.Type p1
         5: .line 528
            aload 2 /* p0 */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 4 /* p1 */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.swap:(Ljdk/internal/org/objectweb/asm/MethodVisitor;Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            pop
         6: .line 530
            aload 0 /* this */
            aload 2 /* p0 */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         7: .line 531
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 1 /* l0 */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.markLocalLoad:(I)V
         8: .line 532
            aload 0 /* this */
            aload 4 /* p1 */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         9: .line 533
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 3 /* l1 */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.markLocalLoad:(I)V
        10: .line 534
            aload 0 /* this */
            areturn
        end local 4 // jdk.nashorn.internal.codegen.types.Type p1
        end local 3 // int l1
        end local 2 // jdk.nashorn.internal.codegen.types.Type p0
        end local 1 // int l0
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            2   11     1    l0  I
            3   11     2    p0  Ljdk/nashorn/internal/codegen/types/Type;
            4   11     3    l1  I
            5   11     4    p1  Ljdk/nashorn/internal/codegen/types/Type;

  void pack();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 538
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 1 /* type */
        start local 1 // jdk.nashorn.internal.codegen.types.Type type
         1: .line 539
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isInteger:()Z
            ifeq 4
         2: .line 540
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.ObjectClassGenerator.PRIMITIVE_FIELD_TYPE:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.convert:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         3: .line 541
            goto 9
      StackMap locals: jdk.nashorn.internal.codegen.types.Type
      StackMap stack:
         4: aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isLong:()Z
            ifne 9
         5: .line 543
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isNumber:()Z
            ifeq 8
         6: .line 544
            aload 0 /* this */
            ldc "java/lang/Double"
            ldc "doubleToRawLongBits"
            ldc "(D)J"
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.invokestatic:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         7: .line 545
            goto 9
         8: .line 546
      StackMap locals:
      StackMap stack:
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 9
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 1 /* type */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " cannot be packed!"
            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
         9: .line 548
      StackMap locals:
      StackMap stack:
            return
        end local 1 // jdk.nashorn.internal.codegen.types.Type type
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            1   10     1  type  Ljdk/nashorn/internal/codegen/types/Type;

  void initializeMethodParameter(jdk.nashorn.internal.ir.Symbol, jdk.nashorn.internal.codegen.types.Type, jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/ir/Symbol;Ljdk/nashorn/internal/codegen/types/Type;Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.ir.Symbol symbol
        start local 2 // jdk.nashorn.internal.codegen.types.Type type
        start local 3 // jdk.nashorn.internal.codegen.Label start
         0: .line 557
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 1
            aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isBytecodeLocal:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 558
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.localVariableDefs:Ljava/util/Map;
            aload 1 /* symbol */
            new jdk.nashorn.internal.codegen.MethodEmitter$LocalVariableDef
            dup
            aload 3 /* start */
            invokevirtual jdk.nashorn.internal.codegen.Label.getLabel:()Ljdk/internal/org/objectweb/asm/Label;
            aload 2 /* type */
            invokespecial jdk.nashorn.internal.codegen.MethodEmitter$LocalVariableDef.<init>:(Ljdk/internal/org/objectweb/asm/Label;Ljdk/nashorn/internal/codegen/types/Type;)V
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 559
            return
        end local 3 // jdk.nashorn.internal.codegen.Label start
        end local 2 // jdk.nashorn.internal.codegen.types.Type type
        end local 1 // jdk.nashorn.internal.ir.Symbol symbol
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  symbol  Ljdk/nashorn/internal/ir/Symbol;
            0    3     2    type  Ljdk/nashorn/internal/codegen/types/Type;
            0    3     3   start  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
        Name  Flags
      symbol  final
      type    final
      start   final

  jdk.nashorn.internal.codegen.MethodEmitter newStringBuilder();
    descriptor: ()Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 567
            aload 0 /* this */
            ldc Ljava/lang/StringBuilder;
            invokestatic jdk.nashorn.internal.codegen.CompilerConstants.constructorNoLookup:(Ljava/lang/Class;)Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.invoke:(Ljdk/nashorn/internal/codegen/CompilerConstants$Call;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.dup:()Ljdk/nashorn/internal/codegen/MethodEmitter;
            areturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  jdk.nashorn.internal.codegen.MethodEmitter stringBuilderAppend();
    descriptor: ()Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=8, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 578
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.STRING:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.convert:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         1: .line 579
            aload 0 /* this */
            ldc Ljava/lang/StringBuilder;
            ldc "append"
            ldc Ljava/lang/StringBuilder;
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/String;
            aastore
            invokestatic jdk.nashorn.internal.codegen.CompilerConstants.virtualCallNoLookup:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.invoke:(Ljdk/nashorn/internal/codegen/CompilerConstants$Call;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            areturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  jdk.nashorn.internal.codegen.MethodEmitter and();
    descriptor: ()Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 589
            aload 0 /* this */
            ldc "and"
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/String;)V
         1: .line 590
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.get2i:()Ljdk/nashorn/internal/codegen/types/BitwiseType;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            invokevirtual jdk.nashorn.internal.codegen.types.BitwiseType.and:(Ljdk/internal/org/objectweb/asm/MethodVisitor;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         2: .line 591
            aload 0 /* this */
            areturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  jdk.nashorn.internal.codegen.MethodEmitter or();
    descriptor: ()Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 601
            aload 0 /* this */
            ldc "or"
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/String;)V
         1: .line 602
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.get2i:()Ljdk/nashorn/internal/codegen/types/BitwiseType;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            invokevirtual jdk.nashorn.internal.codegen.types.BitwiseType.or:(Ljdk/internal/org/objectweb/asm/MethodVisitor;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         2: .line 603
            aload 0 /* this */
            areturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  jdk.nashorn.internal.codegen.MethodEmitter xor();
    descriptor: ()Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 613
            aload 0 /* this */
            ldc "xor"
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/String;)V
         1: .line 614
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.get2i:()Ljdk/nashorn/internal/codegen/types/BitwiseType;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            invokevirtual jdk.nashorn.internal.codegen.types.BitwiseType.xor:(Ljdk/internal/org/objectweb/asm/MethodVisitor;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         2: .line 615
            aload 0 /* this */
            areturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  jdk.nashorn.internal.codegen.MethodEmitter shr();
    descriptor: ()Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 625
            aload 0 /* this */
            ldc "shr"
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/String;)V
         1: .line 626
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popInteger:()Ljdk/nashorn/internal/codegen/types/BitwiseType;
            pop
         2: .line 627
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popBitwise:()Ljdk/nashorn/internal/codegen/types/BitwiseType;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            invokevirtual jdk.nashorn.internal.codegen.types.BitwiseType.shr:(Ljdk/internal/org/objectweb/asm/MethodVisitor;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         3: .line 628
            aload 0 /* this */
            areturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  jdk.nashorn.internal.codegen.MethodEmitter shl();
    descriptor: ()Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 638
            aload 0 /* this */
            ldc "shl"
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/String;)V
         1: .line 639
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popInteger:()Ljdk/nashorn/internal/codegen/types/BitwiseType;
            pop
         2: .line 640
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popBitwise:()Ljdk/nashorn/internal/codegen/types/BitwiseType;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            invokevirtual jdk.nashorn.internal.codegen.types.BitwiseType.shl:(Ljdk/internal/org/objectweb/asm/MethodVisitor;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         3: .line 641
            aload 0 /* this */
            areturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  jdk.nashorn.internal.codegen.MethodEmitter sar();
    descriptor: ()Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 651
            aload 0 /* this */
            ldc "sar"
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/String;)V
         1: .line 652
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popInteger:()Ljdk/nashorn/internal/codegen/types/BitwiseType;
            pop
         2: .line 653
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popBitwise:()Ljdk/nashorn/internal/codegen/types/BitwiseType;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            invokevirtual jdk.nashorn.internal.codegen.types.BitwiseType.sar:(Ljdk/internal/org/objectweb/asm/MethodVisitor;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         3: .line 654
            aload 0 /* this */
            areturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  jdk.nashorn.internal.codegen.MethodEmitter neg(int);
    descriptor: (I)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int programPoint
         0: .line 663
            aload 0 /* this */
            ldc "neg"
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/String;)V
         1: .line 664
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popNumeric:()Ljdk/nashorn/internal/codegen/types/NumericType;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 1 /* programPoint */
            invokevirtual jdk.nashorn.internal.codegen.types.NumericType.neg:(Ljdk/internal/org/objectweb/asm/MethodVisitor;I)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         2: .line 665
            aload 0 /* this */
            areturn
        end local 1 // int programPoint
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  programPoint  I
    MethodParameters:
              Name  Flags
      programPoint  final

  void _catch(jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label recovery
         0: .line 677
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            ifnull 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 678
      StackMap locals:
      StackMap stack:
            aload 1 /* recovery */
            invokevirtual jdk.nashorn.internal.codegen.Label.onCatch:()V
         2: .line 679
            aload 0 /* this */
            aload 1 /* recovery */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.label:(Ljdk/nashorn/internal/codegen/Label;)V
         3: .line 680
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.beginCatchBlock:()V
         4: .line 681
            return
        end local 1 // jdk.nashorn.internal.codegen.Label recovery
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0      this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    5     1  recovery  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
          Name  Flags
      recovery  final

  void _catch(java.util.Collection<jdk.nashorn.internal.codegen.Label>);
    descriptor: (Ljava/util/Collection;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.util.Collection recoveries
         0: .line 690
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            ifnull 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 691
      StackMap locals:
      StackMap stack:
            aload 1 /* recoveries */
            invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
            astore 3
            goto 4
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter java.util.Collection top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.nashorn.internal.codegen.Label
            astore 2 /* l */
        start local 2 // jdk.nashorn.internal.codegen.Label l
         3: .line 692
            aload 0 /* this */
            aload 2 /* l */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.label:(Ljdk/nashorn/internal/codegen/Label;)V
        end local 2 // jdk.nashorn.internal.codegen.Label l
         4: .line 691
      StackMap locals:
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         5: .line 694
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.beginCatchBlock:()V
         6: .line 695
            return
        end local 1 // java.util.Collection recoveries
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0        this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    7     1  recoveries  Ljava/util/Collection<Ljdk/nashorn/internal/codegen/Label;>;
            3    4     2           l  Ljdk/nashorn/internal/codegen/Label;
    Signature: (Ljava/util/Collection<Ljdk/nashorn/internal/codegen/Label;>;)V
    MethodParameters:
            Name  Flags
      recoveries  final

  private void beginCatchBlock();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 700
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.isReachable:()Z
            ifne 2
         1: .line 701
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.newStack:()V
         2: .line 703
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc Ljava/lang/Throwable;
            invokestatic jdk.nashorn.internal.codegen.types.Type.typeFor:(Ljava/lang/Class;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         3: .line 704
            return
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  void _try(jdk.nashorn.internal.codegen.Label, jdk.nashorn.internal.codegen.Label, jdk.nashorn.internal.codegen.Label, java.lang.Class<?>, );
    descriptor: (Ljdk/nashorn/internal/codegen/Label;Ljdk/nashorn/internal/codegen/Label;Ljdk/nashorn/internal/codegen/Label;Ljava/lang/Class;Z)V
    flags: (0x0000) 
    Code:
      stack=5, locals=7, args_size=6
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label entry
        start local 2 // jdk.nashorn.internal.codegen.Label exit
        start local 3 // jdk.nashorn.internal.codegen.Label recovery
        start local 4 // java.lang.Class clazz
        start local 5 // boolean isOptimismHandler
         0: .line 718
            aload 3 /* recovery */
            aload 1 /* entry */
            invokevirtual jdk.nashorn.internal.codegen.Label.getStack:()Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 5 /* isOptimismHandler */
            invokevirtual jdk.nashorn.internal.codegen.Label.joinFromTry:(Ljdk/nashorn/internal/codegen/Label$Stack;Z)V
         1: .line 719
            aload 4 /* clazz */
            ifnonnull 2
            aconst_null
            goto 3
      StackMap locals:
      StackMap stack:
         2: aload 4 /* clazz */
            invokestatic jdk.nashorn.internal.codegen.CompilerConstants.className:(Ljava/lang/Class;)Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         3: astore 6 /* typeDescriptor */
        start local 6 // java.lang.String typeDescriptor
         4: .line 720
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 1 /* entry */
            invokevirtual jdk.nashorn.internal.codegen.Label.getLabel:()Ljdk/internal/org/objectweb/asm/Label;
            aload 2 /* exit */
            invokevirtual jdk.nashorn.internal.codegen.Label.getLabel:()Ljdk/internal/org/objectweb/asm/Label;
            aload 3 /* recovery */
            invokevirtual jdk.nashorn.internal.codegen.Label.getLabel:()Ljdk/internal/org/objectweb/asm/Label;
            aload 6 /* typeDescriptor */
            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
         5: .line 721
            return
        end local 6 // java.lang.String typeDescriptor
        end local 5 // boolean isOptimismHandler
        end local 4 // java.lang.Class clazz
        end local 3 // jdk.nashorn.internal.codegen.Label recovery
        end local 2 // jdk.nashorn.internal.codegen.Label exit
        end local 1 // jdk.nashorn.internal.codegen.Label entry
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    6     0               this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    6     1              entry  Ljdk/nashorn/internal/codegen/Label;
            0    6     2               exit  Ljdk/nashorn/internal/codegen/Label;
            0    6     3           recovery  Ljdk/nashorn/internal/codegen/Label;
            0    6     4              clazz  Ljava/lang/Class<*>;
            0    6     5  isOptimismHandler  Z
            4    6     6     typeDescriptor  Ljava/lang/String;
    Signature: (Ljdk/nashorn/internal/codegen/Label;Ljdk/nashorn/internal/codegen/Label;Ljdk/nashorn/internal/codegen/Label;Ljava/lang/Class<*>;Z)V
    MethodParameters:
                   Name  Flags
      entry              final
      exit               final
      recovery           final
      clazz              final
      isOptimismHandler  final

  void _try(jdk.nashorn.internal.codegen.Label, jdk.nashorn.internal.codegen.Label, jdk.nashorn.internal.codegen.Label, java.lang.Class<?>);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;Ljdk/nashorn/internal/codegen/Label;Ljdk/nashorn/internal/codegen/Label;Ljava/lang/Class;)V
    flags: (0x0000) 
    Code:
      stack=7, locals=5, args_size=5
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label entry
        start local 2 // jdk.nashorn.internal.codegen.Label exit
        start local 3 // jdk.nashorn.internal.codegen.Label recovery
        start local 4 // java.lang.Class clazz
         0: .line 732
            aload 0 /* this */
            aload 1 /* entry */
            aload 2 /* exit */
            aload 3 /* recovery */
            aload 4 /* clazz */
            aload 4 /* clazz */
            ldc Ljdk/nashorn/internal/runtime/UnwarrantedOptimismException;
            if_acmpne 1
            iconst_1
            goto 2
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.codegen.Label jdk.nashorn.internal.codegen.Label jdk.nashorn.internal.codegen.Label java.lang.Class
      StackMap stack: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.codegen.Label jdk.nashorn.internal.codegen.Label jdk.nashorn.internal.codegen.Label java.lang.Class
         1: iconst_0
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.codegen.Label jdk.nashorn.internal.codegen.Label jdk.nashorn.internal.codegen.Label java.lang.Class
      StackMap stack: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.codegen.Label jdk.nashorn.internal.codegen.Label jdk.nashorn.internal.codegen.Label java.lang.Class int
         2: invokevirtual jdk.nashorn.internal.codegen.MethodEmitter._try:(Ljdk/nashorn/internal/codegen/Label;Ljdk/nashorn/internal/codegen/Label;Ljdk/nashorn/internal/codegen/Label;Ljava/lang/Class;Z)V
         3: .line 733
            return
        end local 4 // java.lang.Class clazz
        end local 3 // jdk.nashorn.internal.codegen.Label recovery
        end local 2 // jdk.nashorn.internal.codegen.Label exit
        end local 1 // jdk.nashorn.internal.codegen.Label entry
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    4     1     entry  Ljdk/nashorn/internal/codegen/Label;
            0    4     2      exit  Ljdk/nashorn/internal/codegen/Label;
            0    4     3  recovery  Ljdk/nashorn/internal/codegen/Label;
            0    4     4     clazz  Ljava/lang/Class<*>;
    Signature: (Ljdk/nashorn/internal/codegen/Label;Ljdk/nashorn/internal/codegen/Label;Ljdk/nashorn/internal/codegen/Label;Ljava/lang/Class<*>;)V
    MethodParameters:
          Name  Flags
      entry     final
      exit      final
      recovery  final
      clazz     final

  void _try(jdk.nashorn.internal.codegen.Label, jdk.nashorn.internal.codegen.Label, jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;Ljdk/nashorn/internal/codegen/Label;Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label entry
        start local 2 // jdk.nashorn.internal.codegen.Label exit
        start local 3 // jdk.nashorn.internal.codegen.Label recovery
         0: .line 743
            aload 0 /* this */
            aload 1 /* entry */
            aload 2 /* exit */
            aload 3 /* recovery */
            aconst_null
            iconst_0
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter._try:(Ljdk/nashorn/internal/codegen/Label;Ljdk/nashorn/internal/codegen/Label;Ljdk/nashorn/internal/codegen/Label;Ljava/lang/Class;Z)V
         1: .line 744
            return
        end local 3 // jdk.nashorn.internal.codegen.Label recovery
        end local 2 // jdk.nashorn.internal.codegen.Label exit
        end local 1 // jdk.nashorn.internal.codegen.Label entry
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    2     1     entry  Ljdk/nashorn/internal/codegen/Label;
            0    2     2      exit  Ljdk/nashorn/internal/codegen/Label;
            0    2     3  recovery  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
          Name  Flags
      entry     final
      exit      final
      recovery  final

  void markLabelAsOptimisticCatchHandler(jdk.nashorn.internal.codegen.Label, int);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;I)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label label
        start local 2 // int liveLocalCount
         0: .line 747
            aload 1 /* label */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 2 /* liveLocalCount */
            invokevirtual jdk.nashorn.internal.codegen.Label.markAsOptimisticCatchHandler:(Ljdk/nashorn/internal/codegen/Label$Stack;I)V
         1: .line 748
            return
        end local 2 // int liveLocalCount
        end local 1 // jdk.nashorn.internal.codegen.Label label
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    2     1           label  Ljdk/nashorn/internal/codegen/Label;
            0    2     2  liveLocalCount  I
    MethodParameters:
                Name  Flags
      label           final
      liveLocalCount  final

  jdk.nashorn.internal.codegen.MethodEmitter loadConstants();
    descriptor: ()Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 755
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.classEmitter:Ljdk/nashorn/internal/codegen/ClassEmitter;
            invokevirtual jdk.nashorn.internal.codegen.ClassEmitter.getUnitClassName:()Ljava/lang/String;
            getstatic jdk.nashorn.internal.codegen.CompilerConstants.CONSTANTS:Ljdk/nashorn/internal/codegen/CompilerConstants;
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants.symbolName:()Ljava/lang/String;
            getstatic jdk.nashorn.internal.codegen.CompilerConstants.CONSTANTS:Ljdk/nashorn/internal/codegen/CompilerConstants;
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants.descriptor:()Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.getStatic:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         1: .line 756
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 2
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isArray:()Z
            ifne 2
            new java.lang.AssertionError
            dup
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         2: .line 757
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  jdk.nashorn.internal.codegen.MethodEmitter loadUndefined(jdk.nashorn.internal.codegen.types.Type);
    descriptor: (Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.types.Type type
         0: .line 770
            aload 0 /* this */
            ldc "load undefined "
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 771
            aload 0 /* this */
            aload 1 /* type */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            invokevirtual jdk.nashorn.internal.codegen.types.Type.loadUndefined:(Ljdk/internal/org/objectweb/asm/MethodVisitor;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         2: .line 772
            aload 0 /* this */
            areturn
        end local 1 // jdk.nashorn.internal.codegen.types.Type type
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  type  Ljdk/nashorn/internal/codegen/types/Type;
    MethodParameters:
      Name  Flags
      type  final

  jdk.nashorn.internal.codegen.MethodEmitter loadForcedInitializer(jdk.nashorn.internal.codegen.types.Type);
    descriptor: (Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.types.Type type
         0: .line 776
            aload 0 /* this */
            ldc "load forced initializer "
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 777
            aload 0 /* this */
            aload 1 /* type */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            invokevirtual jdk.nashorn.internal.codegen.types.Type.loadForcedInitializer:(Ljdk/internal/org/objectweb/asm/MethodVisitor;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         2: .line 778
            aload 0 /* this */
            areturn
        end local 1 // jdk.nashorn.internal.codegen.types.Type type
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  type  Ljdk/nashorn/internal/codegen/types/Type;
    MethodParameters:
      Name  Flags
      type  final

  jdk.nashorn.internal.codegen.MethodEmitter loadEmpty(jdk.nashorn.internal.codegen.types.Type);
    descriptor: (Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.types.Type type
         0: .line 788
            aload 0 /* this */
            ldc "load empty "
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 789
            aload 0 /* this */
            aload 1 /* type */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            invokevirtual jdk.nashorn.internal.codegen.types.Type.loadEmpty:(Ljdk/internal/org/objectweb/asm/MethodVisitor;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         2: .line 790
            aload 0 /* this */
            areturn
        end local 1 // jdk.nashorn.internal.codegen.types.Type type
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  type  Ljdk/nashorn/internal/codegen/types/Type;
    MethodParameters:
      Name  Flags
      type  final

  jdk.nashorn.internal.codegen.MethodEmitter loadNull();
    descriptor: ()Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 799
            aload 0 /* this */
            ldc "aconst_null"
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/String;)V
         1: .line 800
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aconst_null
            invokevirtual jdk.nashorn.internal.codegen.types.Type.ldc:(Ljdk/internal/org/objectweb/asm/MethodVisitor;Ljava/lang/Object;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         2: .line 801
            aload 0 /* this */
            areturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  jdk.nashorn.internal.codegen.MethodEmitter loadType(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.String className
         0: .line 812
            aload 0 /* this */
            ldc "load type"
            aload 1 /* className */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 813
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 1 /* className */
            invokestatic jdk.internal.org.objectweb.asm.Type.getObjectType:(Ljava/lang/String;)Ljdk/internal/org/objectweb/asm/Type;
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLdcInsn:(Ljava/lang/Object;)V
         2: .line 814
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         3: .line 815
            aload 0 /* this */
            areturn
        end local 1 // java.lang.String className
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    4     1  className  Ljava/lang/String;
    MethodParameters:
           Name  Flags
      className  final

  jdk.nashorn.internal.codegen.MethodEmitter load(boolean);
    descriptor: (Z)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // boolean b
         0: .line 826
            aload 0 /* this */
            ldc "load boolean"
            iload 1 /* b */
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 827
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.BOOLEAN:Ljdk/nashorn/internal/codegen/types/Type;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 1 /* b */
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokevirtual jdk.nashorn.internal.codegen.types.Type.ldc:(Ljdk/internal/org/objectweb/asm/MethodVisitor;Ljava/lang/Object;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         2: .line 828
            aload 0 /* this */
            areturn
        end local 1 // boolean b
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1     b  Z
    MethodParameters:
      Name  Flags
      b     final

  jdk.nashorn.internal.codegen.MethodEmitter load(int);
    descriptor: (I)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int i
         0: .line 839
            aload 0 /* this */
            ldc "load int"
            iload 1 /* i */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 840
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.INT:Ljdk/nashorn/internal/codegen/types/BitwiseType;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 1 /* i */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual jdk.nashorn.internal.codegen.types.BitwiseType.ldc:(Ljdk/internal/org/objectweb/asm/MethodVisitor;Ljava/lang/Object;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         2: .line 841
            aload 0 /* this */
            areturn
        end local 1 // int i
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1     i  I
    MethodParameters:
      Name  Flags
      i     final

  jdk.nashorn.internal.codegen.MethodEmitter load(double);
    descriptor: (D)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // double d
         0: .line 852
            aload 0 /* this */
            ldc "load double"
            dload 1 /* d */
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 853
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.NUMBER:Ljdk/nashorn/internal/codegen/types/NumericType;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            dload 1 /* d */
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            invokevirtual jdk.nashorn.internal.codegen.types.NumericType.ldc:(Ljdk/internal/org/objectweb/asm/MethodVisitor;Ljava/lang/Object;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         2: .line 854
            aload 0 /* this */
            areturn
        end local 1 // double d
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1     d  D
    MethodParameters:
      Name  Flags
      d     final

  jdk.nashorn.internal.codegen.MethodEmitter load(long);
    descriptor: (J)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // long l
         0: .line 865
            aload 0 /* this */
            ldc "load long"
            lload 1 /* l */
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 866
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.LONG:Ljdk/nashorn/internal/codegen/types/Type;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            lload 1 /* l */
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            invokevirtual jdk.nashorn.internal.codegen.types.Type.ldc:(Ljdk/internal/org/objectweb/asm/MethodVisitor;Ljava/lang/Object;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         2: .line 867
            aload 0 /* this */
            areturn
        end local 1 // long l
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1     l  J
    MethodParameters:
      Name  Flags
      l     final

  jdk.nashorn.internal.codegen.MethodEmitter arraylength();
    descriptor: ()Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 875
            aload 0 /* this */
            ldc "arraylength"
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/String;)V
         1: .line 876
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            pop
         2: .line 877
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT_ARRAY:Ljdk/nashorn/internal/codegen/types/ArrayType;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            invokevirtual jdk.nashorn.internal.codegen.types.ArrayType.arraylength:(Ljdk/internal/org/objectweb/asm/MethodVisitor;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         3: .line 878
            aload 0 /* this */
            areturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  jdk.nashorn.internal.codegen.MethodEmitter load(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.String s
         0: .line 889
            aload 0 /* this */
            ldc "load string"
            aload 1 /* s */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 891
            aload 1 /* s */
            ifnonnull 4
         2: .line 892
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.loadNull:()Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         3: .line 893
            aload 0 /* this */
            areturn
         4: .line 897
      StackMap locals:
      StackMap stack:
            aload 1 /* s */
            invokevirtual java.lang.String.length:()I
            istore 2 /* length */
        start local 2 // int length
         5: .line 898
            iload 2 /* length */
            ldc 32768
            if_icmple 19
         6: .line 900
            aload 0 /* this */
            ldc Ljava/lang/StringBuilder;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter._new:(Ljava/lang/Class;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         7: .line 901
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.dup:()Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         8: .line 902
            aload 0 /* this */
            iload 2 /* length */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.load:(I)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         9: .line 903
            aload 0 /* this */
            ldc Ljava/lang/StringBuilder;
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            aastore
            invokestatic jdk.nashorn.internal.codegen.CompilerConstants.constructorNoLookup:(Ljava/lang/Class;[Ljava/lang/Class;)Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.invoke:(Ljdk/nashorn/internal/codegen/CompilerConstants$Call;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        10: .line 905
            iconst_0
            istore 3 /* n */
        start local 3 // int n
        11: goto 16
        12: .line 906
      StackMap locals: int int
      StackMap stack:
            aload 1 /* s */
            iload 3 /* n */
            iload 3 /* n */
            ldc 32768
            iadd
            iload 2 /* length */
            invokestatic java.lang.Math.min:(II)I
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 4 /* part */
        start local 4 // java.lang.String part
        13: .line 907
            aload 0 /* this */
            aload 4 /* part */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.load:(Ljava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        14: .line 908
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.stringBuilderAppend:()Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        end local 4 // java.lang.String part
        15: .line 905
            iload 3 /* n */
            ldc 32768
            iadd
            istore 3 /* n */
      StackMap locals:
      StackMap stack:
        16: iload 3 /* n */
            iload 2 /* length */
            if_icmplt 12
        end local 3 // int n
        17: .line 911
            aload 0 /* this */
            ldc Ljava/lang/StringBuilder;
            ldc "toString"
            ldc Ljava/lang/String;
            iconst_0
            anewarray java.lang.Class
            invokestatic jdk.nashorn.internal.codegen.CompilerConstants.virtualCallNoLookup:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Class;)Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.invoke:(Ljdk/nashorn/internal/codegen/CompilerConstants$Call;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        18: .line 913
            aload 0 /* this */
            areturn
        19: .line 916
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 1 /* s */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.ldc:(Ljdk/internal/org/objectweb/asm/MethodVisitor;Ljava/lang/Object;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
        20: .line 917
            aload 0 /* this */
            areturn
        end local 2 // int length
        end local 1 // java.lang.String s
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   21     0    this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0   21     1       s  Ljava/lang/String;
            5   21     2  length  I
           11   17     3       n  I
           13   15     4    part  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      s     final

  jdk.nashorn.internal.codegen.MethodEmitter load(jdk.nashorn.internal.ir.IdentNode);
    descriptor: (Ljdk/nashorn/internal/ir/IdentNode;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.ir.IdentNode ident
         0: .line 929
            aload 0 /* this */
            aload 1 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getSymbol:()Ljdk/nashorn/internal/ir/Symbol;
            aload 1 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getType:()Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.load:(Ljdk/nashorn/internal/ir/Symbol;Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            areturn
        end local 1 // jdk.nashorn.internal.ir.IdentNode ident
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    1     1  ident  Ljdk/nashorn/internal/ir/IdentNode;
    MethodParameters:
       Name  Flags
      ident  final

  jdk.nashorn.internal.codegen.MethodEmitter load(jdk.nashorn.internal.ir.Symbol, jdk.nashorn.internal.codegen.types.Type);
    descriptor: (Ljdk/nashorn/internal/ir/Symbol;Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=7, locals=4, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.ir.Symbol symbol
        start local 2 // jdk.nashorn.internal.codegen.types.Type type
         0: .line 943
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 1
            aload 1 /* symbol */
            ifnonnull 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 944
      StackMap locals:
      StackMap stack:
            aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.hasSlot:()Z
            ifeq 6
         2: .line 945
            aload 1 /* symbol */
            aload 2 /* type */
            invokevirtual jdk.nashorn.internal.ir.Symbol.getSlot:(Ljdk/nashorn/internal/codegen/types/Type;)I
            istore 3 /* slot */
        start local 3 // int slot
         3: .line 946
            aload 0 /* this */
            ldc "load symbol"
            aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.getName:()Ljava/lang/String;
            ldc " slot="
            iload 3 /* slot */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "type="
            aload 2 /* type */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         4: .line 947
            aload 0 /* this */
            aload 2 /* type */
            iload 3 /* slot */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.load:(Ljdk/nashorn/internal/codegen/types/Type;I)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        end local 3 // int slot
         5: .line 950
            goto 19
      StackMap locals:
      StackMap stack:
         6: aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isParam:()Z
            ifeq 19
         7: .line 951
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 8
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.functionNode:Ljdk/nashorn/internal/ir/FunctionNode;
            invokevirtual jdk.nashorn.internal.ir.FunctionNode.isVarArg:()Z
            ifne 8
            new java.lang.AssertionError
            dup
            ldc "Non-vararg functions have slotted parameters"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         8: .line 952
      StackMap locals:
      StackMap stack:
            aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.getFieldIndex:()I
            istore 3 /* index */
        start local 3 // int index
         9: .line 953
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.functionNode:Ljdk/nashorn/internal/ir/FunctionNode;
            invokevirtual jdk.nashorn.internal.ir.FunctionNode.needsArguments:()Z
            ifeq 15
        10: .line 955
            aload 0 /* this */
            ldc "load symbol"
            aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.getName:()Ljava/lang/String;
            ldc " arguments index="
            iload 3 /* index */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
        11: .line 956
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.CompilerConstants.ARGUMENTS:Ljdk/nashorn/internal/codegen/CompilerConstants;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.loadCompilerConstant:(Ljdk/nashorn/internal/codegen/CompilerConstants;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        12: .line 957
            aload 0 /* this */
            iload 3 /* index */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.load:(I)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        13: .line 958
            getstatic jdk.nashorn.internal.runtime.ScriptObject.GET_ARGUMENT:Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants$Call.invoke:(Ljdk/nashorn/internal/codegen/MethodEmitter;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        14: .line 959
            goto 19
        15: .line 961
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            ldc "load symbol"
            aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.getName:()Ljava/lang/String;
            ldc " array index="
            iload 3 /* index */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
        16: .line 962
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.CompilerConstants.VARARGS:Ljdk/nashorn/internal/codegen/CompilerConstants;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.loadCompilerConstant:(Ljdk/nashorn/internal/codegen/CompilerConstants;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        17: .line 963
            aload 0 /* this */
            aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.getFieldIndex:()I
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.load:(I)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        18: .line 964
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.arrayload:()Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        end local 3 // int index
        19: .line 967
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 2 // jdk.nashorn.internal.codegen.types.Type type
        end local 1 // jdk.nashorn.internal.ir.Symbol symbol
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   20     0    this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0   20     1  symbol  Ljdk/nashorn/internal/ir/Symbol;
            0   20     2    type  Ljdk/nashorn/internal/codegen/types/Type;
            3    5     3    slot  I
            9   19     3   index  I
    MethodParameters:
        Name  Flags
      symbol  final
      type    final

  jdk.nashorn.internal.codegen.MethodEmitter load(jdk.nashorn.internal.codegen.types.Type, int);
    descriptor: (Ljdk/nashorn/internal/codegen/types/Type;I)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.types.Type type
        start local 2 // int slot
         0: .line 981
            aload 0 /* this */
            ldc "explicit load"
            aload 1 /* type */
            iload 2 /* slot */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 982
            aload 1 /* type */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 2 /* slot */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.load:(Ljdk/internal/org/objectweb/asm/MethodVisitor;I)Ljdk/nashorn/internal/codegen/types/Type;
            astore 3 /* loadType */
        start local 3 // jdk.nashorn.internal.codegen.types.Type loadType
         2: .line 983
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 3
            aload 3 /* loadType */
            ifnonnull 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 984
      StackMap locals: jdk.nashorn.internal.codegen.types.Type
      StackMap stack:
            aload 0 /* this */
            aload 3 /* loadType */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            if_acmpne 4
            aload 0 /* this */
            iload 2 /* slot */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.isThisSlot:(I)Z
            ifeq 4
            getstatic jdk.nashorn.internal.codegen.types.Type.THIS:Ljdk/nashorn/internal/codegen/types/Type;
            goto 5
      StackMap locals:
      StackMap stack: jdk.nashorn.internal.codegen.MethodEmitter
         4: aload 3 /* loadType */
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.codegen.types.Type int jdk.nashorn.internal.codegen.types.Type
      StackMap stack: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.codegen.types.Type
         5: invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         6: .line 985
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 9
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.preventUndefinedLoad:Z
            ifeq 9
            iload 2 /* slot */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            getfield jdk.nashorn.internal.codegen.Label$Stack.localVariableTypes:Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmpge 7
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            getfield jdk.nashorn.internal.codegen.Label$Stack.localVariableTypes:Ljava/util/List;
            iload 2 /* slot */
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            getstatic jdk.nashorn.internal.codegen.types.Type.UNKNOWN:Ljdk/nashorn/internal/codegen/types/Type;
            if_acmpne 9
      StackMap locals:
      StackMap stack:
         7: new java.lang.AssertionError
            dup
         8: .line 986
            new java.lang.StringBuilder
            dup
            ldc "Attempted load of uninitialized slot "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* slot */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " (as type "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* type */
            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;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         9: .line 987
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 2 /* slot */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.markLocalLoad:(I)V
        10: .line 988
            aload 0 /* this */
            areturn
        end local 3 // jdk.nashorn.internal.codegen.types.Type loadType
        end local 2 // int slot
        end local 1 // jdk.nashorn.internal.codegen.types.Type type
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0      this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0   11     1      type  Ljdk/nashorn/internal/codegen/types/Type;
            0   11     2      slot  I
            2   11     3  loadType  Ljdk/nashorn/internal/codegen/types/Type;
    MethodParameters:
      Name  Flags
      type  final
      slot  final

  private boolean isThisSlot(int);
    descriptor: (I)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int slot
         0: .line 992
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.functionNode:Ljdk/nashorn/internal/ir/FunctionNode;
            ifnonnull 3
         1: .line 993
            iload 1 /* slot */
            getstatic jdk.nashorn.internal.codegen.CompilerConstants.JAVA_THIS:Ljdk/nashorn/internal/codegen/CompilerConstants;
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants.slot:()I
            if_icmpne 2
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         2: iconst_0
            ireturn
         3: .line 995
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.CompilerConstants.THIS:Ljdk/nashorn/internal/codegen/CompilerConstants;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.getCompilerConstantSymbol:(Ljdk/nashorn/internal/codegen/CompilerConstants;)Ljdk/nashorn/internal/ir/Symbol;
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.ir.Symbol.getSlot:(Ljdk/nashorn/internal/codegen/types/Type;)I
            istore 2 /* thisSlot */
        start local 2 // int thisSlot
         4: .line 996
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 5
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.functionNode:Ljdk/nashorn/internal/ir/FunctionNode;
            invokevirtual jdk.nashorn.internal.ir.FunctionNode.needsCallee:()Z
            ifeq 5
            iload 2 /* thisSlot */
            iconst_1
            if_icmpeq 5
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         5: .line 997
      StackMap locals: int
      StackMap stack:
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 6
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.functionNode:Ljdk/nashorn/internal/ir/FunctionNode;
            invokevirtual jdk.nashorn.internal.ir.FunctionNode.needsCallee:()Z
            ifne 6
            iload 2 /* thisSlot */
            ifeq 6
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         6: .line 998
      StackMap locals:
      StackMap stack:
            iload 1 /* slot */
            iload 2 /* thisSlot */
            if_icmpne 7
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         7: iconst_0
            ireturn
        end local 2 // int thisSlot
        end local 1 // int slot
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    8     1      slot  I
            4    8     2  thisSlot  I
    MethodParameters:
      Name  Flags
      slot  final

  jdk.nashorn.internal.codegen.MethodEmitter loadHandle(java.lang.String, java.lang.String, java.lang.String, java.util.EnumSet<jdk.nashorn.internal.codegen.ClassEmitter$Flag>);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/EnumSet;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=11, locals=6, args_size=5
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.String className
        start local 2 // java.lang.String methodName
        start local 3 // java.lang.String descName
        start local 4 // java.util.EnumSet flags
         0: .line 1012
            aload 4 /* flags */
            invokestatic jdk.nashorn.internal.codegen.ClassEmitter$Flag.getValue:(Ljava/util/EnumSet;)I
            istore 5 /* flag */
        start local 5 // int flag
         1: .line 1013
            aload 0 /* this */
            ldc "load handle "
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/String;)V
         2: .line 1014
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
         3: new jdk.internal.org.objectweb.asm.Handle
            dup
            iload 5 /* flag */
            aload 1 /* className */
            aload 2 /* methodName */
            aload 3 /* descName */
            iload 5 /* flag */
            bipush 9
            if_icmpne 4
            iconst_1
            goto 5
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter java.lang.String java.lang.String java.lang.String java.util.EnumSet int
      StackMap stack: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.codegen.types.Type jdk.internal.org.objectweb.asm.MethodVisitor new 3 new 3 int java.lang.String java.lang.String java.lang.String
         4: iconst_0
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter java.lang.String java.lang.String java.lang.String java.util.EnumSet int
      StackMap stack: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.codegen.types.Type jdk.internal.org.objectweb.asm.MethodVisitor new 3 new 3 int java.lang.String java.lang.String java.lang.String int
         5: invokespecial jdk.internal.org.objectweb.asm.Handle.<init>:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
            invokevirtual jdk.nashorn.internal.codegen.types.Type.ldc:(Ljdk/internal/org/objectweb/asm/MethodVisitor;Ljava/lang/Object;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         6: .line 1015
            aload 0 /* this */
            areturn
        end local 5 // int flag
        end local 4 // java.util.EnumSet flags
        end local 3 // java.lang.String descName
        end local 2 // java.lang.String methodName
        end local 1 // java.lang.String className
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0        this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    7     1   className  Ljava/lang/String;
            0    7     2  methodName  Ljava/lang/String;
            0    7     3    descName  Ljava/lang/String;
            0    7     4       flags  Ljava/util/EnumSet<Ljdk/nashorn/internal/codegen/ClassEmitter$Flag;>;
            1    7     5        flag  I
    Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/EnumSet<Ljdk/nashorn/internal/codegen/ClassEmitter$Flag;>;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    MethodParameters:
            Name  Flags
      className   final
      methodName  final
      descName    final
      flags       final

  private jdk.nashorn.internal.ir.Symbol getCompilerConstantSymbol(jdk.nashorn.internal.codegen.CompilerConstants);
    descriptor: (Ljdk/nashorn/internal/codegen/CompilerConstants;)Ljdk/nashorn/internal/ir/Symbol;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.CompilerConstants cc
         0: .line 1019
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.functionNode:Ljdk/nashorn/internal/ir/FunctionNode;
            invokevirtual jdk.nashorn.internal.ir.FunctionNode.getBody:()Ljdk/nashorn/internal/ir/Block;
            aload 1 /* cc */
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants.symbolName:()Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.ir.Block.getExistingSymbol:(Ljava/lang/String;)Ljdk/nashorn/internal/ir/Symbol;
            areturn
        end local 1 // jdk.nashorn.internal.codegen.CompilerConstants cc
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    1     1    cc  Ljdk/nashorn/internal/codegen/CompilerConstants;
    MethodParameters:
      Name  Flags
      cc    final

  boolean hasScope();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 1028
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.CompilerConstants.SCOPE:Ljdk/nashorn/internal/codegen/CompilerConstants;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.getCompilerConstantSymbol:(Ljdk/nashorn/internal/codegen/CompilerConstants;)Ljdk/nashorn/internal/ir/Symbol;
            invokevirtual jdk.nashorn.internal.ir.Symbol.hasSlot:()Z
            ireturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  jdk.nashorn.internal.codegen.MethodEmitter loadCompilerConstant(jdk.nashorn.internal.codegen.CompilerConstants);
    descriptor: (Ljdk/nashorn/internal/codegen/CompilerConstants;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.CompilerConstants cc
         0: .line 1032
            aload 0 /* this */
            aload 1 /* cc */
            aconst_null
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.loadCompilerConstant:(Ljdk/nashorn/internal/codegen/CompilerConstants;Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            areturn
        end local 1 // jdk.nashorn.internal.codegen.CompilerConstants cc
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    1     1    cc  Ljdk/nashorn/internal/codegen/CompilerConstants;
    MethodParameters:
      Name  Flags
      cc    final

  jdk.nashorn.internal.codegen.MethodEmitter loadCompilerConstant(jdk.nashorn.internal.codegen.CompilerConstants, jdk.nashorn.internal.codegen.types.Type);
    descriptor: (Ljdk/nashorn/internal/codegen/CompilerConstants;Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.CompilerConstants cc
        start local 2 // jdk.nashorn.internal.codegen.types.Type type
         0: .line 1036
            aload 1 /* cc */
            getstatic jdk.nashorn.internal.codegen.CompilerConstants.SCOPE:Ljdk/nashorn/internal/codegen/CompilerConstants;
            if_acmpne 3
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            getstatic jdk.nashorn.internal.codegen.types.Type.SCOPE:Ljdk/nashorn/internal/codegen/types/Type;
            if_acmpne 3
         1: .line 1037
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.dup:()Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         2: .line 1038
            aload 0 /* this */
            areturn
         3: .line 1040
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* cc */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.getCompilerConstantSymbol:(Ljdk/nashorn/internal/codegen/CompilerConstants;)Ljdk/nashorn/internal/ir/Symbol;
            aload 2 /* type */
            ifnull 4
            aload 2 /* type */
            goto 5
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.codegen.CompilerConstants jdk.nashorn.internal.codegen.types.Type
      StackMap stack: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.ir.Symbol
         4: aload 1 /* cc */
            invokestatic jdk.nashorn.internal.codegen.MethodEmitter.getCompilerConstantType:(Ljdk/nashorn/internal/codegen/CompilerConstants;)Ljdk/nashorn/internal/codegen/types/Type;
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.codegen.CompilerConstants jdk.nashorn.internal.codegen.types.Type
      StackMap stack: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.ir.Symbol jdk.nashorn.internal.codegen.types.Type
         5: invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.load:(Ljdk/nashorn/internal/ir/Symbol;Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            areturn
        end local 2 // jdk.nashorn.internal.codegen.types.Type type
        end local 1 // jdk.nashorn.internal.codegen.CompilerConstants cc
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    6     1    cc  Ljdk/nashorn/internal/codegen/CompilerConstants;
            0    6     2  type  Ljdk/nashorn/internal/codegen/types/Type;
    MethodParameters:
      Name  Flags
      cc    final
      type  final

  jdk.nashorn.internal.codegen.MethodEmitter loadScope();
    descriptor: ()Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 1044
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.CompilerConstants.SCOPE:Ljdk/nashorn/internal/codegen/CompilerConstants;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.loadCompilerConstant:(Ljdk/nashorn/internal/codegen/CompilerConstants;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            ldc Ljdk/nashorn/internal/runtime/Scope;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.checkcast:(Ljava/lang/Class;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            areturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  jdk.nashorn.internal.codegen.MethodEmitter setSplitState(int);
    descriptor: (I)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int state
         0: .line 1048
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.loadScope:()Ljdk/nashorn/internal/codegen/MethodEmitter;
            iload 1 /* state */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.load:(I)Ljdk/nashorn/internal/codegen/MethodEmitter;
            getstatic jdk.nashorn.internal.runtime.Scope.SET_SPLIT_STATE:Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.invoke:(Ljdk/nashorn/internal/codegen/CompilerConstants$Call;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            areturn
        end local 1 // int state
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    1     1  state  I
    MethodParameters:
       Name  Flags
      state  final

  void storeCompilerConstant(jdk.nashorn.internal.codegen.CompilerConstants);
    descriptor: (Ljdk/nashorn/internal/codegen/CompilerConstants;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.CompilerConstants cc
         0: .line 1052
            aload 0 /* this */
            aload 1 /* cc */
            aconst_null
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.storeCompilerConstant:(Ljdk/nashorn/internal/codegen/CompilerConstants;Ljdk/nashorn/internal/codegen/types/Type;)V
         1: .line 1053
            return
        end local 1 // jdk.nashorn.internal.codegen.CompilerConstants cc
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    2     1    cc  Ljdk/nashorn/internal/codegen/CompilerConstants;
    MethodParameters:
      Name  Flags
      cc    final

  void storeCompilerConstant(jdk.nashorn.internal.codegen.CompilerConstants, jdk.nashorn.internal.codegen.types.Type);
    descriptor: (Ljdk/nashorn/internal/codegen/CompilerConstants;Ljdk/nashorn/internal/codegen/types/Type;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.CompilerConstants cc
        start local 2 // jdk.nashorn.internal.codegen.types.Type type
         0: .line 1056
            aload 0 /* this */
            aload 1 /* cc */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.getCompilerConstantSymbol:(Ljdk/nashorn/internal/codegen/CompilerConstants;)Ljdk/nashorn/internal/ir/Symbol;
            astore 3 /* symbol */
        start local 3 // jdk.nashorn.internal.ir.Symbol symbol
         1: .line 1057
            aload 3 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.hasSlot:()Z
            ifne 3
         2: .line 1058
            return
         3: .line 1060
      StackMap locals: jdk.nashorn.internal.ir.Symbol
      StackMap stack:
            aload 0 /* this */
            ldc "store compiler constant "
            aload 3 /* symbol */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         4: .line 1061
            aload 0 /* this */
            aload 3 /* symbol */
            aload 2 /* type */
            ifnull 5
            aload 2 /* type */
            goto 6
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.codegen.CompilerConstants jdk.nashorn.internal.codegen.types.Type jdk.nashorn.internal.ir.Symbol
      StackMap stack: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.ir.Symbol
         5: aload 1 /* cc */
            invokestatic jdk.nashorn.internal.codegen.MethodEmitter.getCompilerConstantType:(Ljdk/nashorn/internal/codegen/CompilerConstants;)Ljdk/nashorn/internal/codegen/types/Type;
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.codegen.CompilerConstants jdk.nashorn.internal.codegen.types.Type jdk.nashorn.internal.ir.Symbol
      StackMap stack: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.ir.Symbol jdk.nashorn.internal.codegen.types.Type
         6: invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.store:(Ljdk/nashorn/internal/ir/Symbol;Ljdk/nashorn/internal/codegen/types/Type;)V
         7: .line 1062
            return
        end local 3 // jdk.nashorn.internal.ir.Symbol symbol
        end local 2 // jdk.nashorn.internal.codegen.types.Type type
        end local 1 // jdk.nashorn.internal.codegen.CompilerConstants cc
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    8     1      cc  Ljdk/nashorn/internal/codegen/CompilerConstants;
            0    8     2    type  Ljdk/nashorn/internal/codegen/types/Type;
            1    8     3  symbol  Ljdk/nashorn/internal/ir/Symbol;
    MethodParameters:
      Name  Flags
      cc    final
      type  final

  private static jdk.nashorn.internal.codegen.types.Type getCompilerConstantType(jdk.nashorn.internal.codegen.CompilerConstants);
    descriptor: (Ljdk/nashorn/internal/codegen/CompilerConstants;)Ljdk/nashorn/internal/codegen/types/Type;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.CompilerConstants cc
         0: .line 1065
            aload 0 /* cc */
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants.type:()Ljava/lang/Class;
            astore 1 /* constantType */
        start local 1 // java.lang.Class constantType
         1: .line 1066
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 2
            aload 1 /* constantType */
            ifnonnull 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1067
      StackMap locals: java.lang.Class
      StackMap stack:
            aload 1 /* constantType */
            invokestatic jdk.nashorn.internal.codegen.types.Type.typeFor:(Ljava/lang/Class;)Ljdk/nashorn/internal/codegen/types/Type;
            areturn
        end local 1 // java.lang.Class constantType
        end local 0 // jdk.nashorn.internal.codegen.CompilerConstants cc
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0            cc  Ljdk/nashorn/internal/codegen/CompilerConstants;
            1    3     1  constantType  Ljava/lang/Class<*>;
    MethodParameters:
      Name  Flags
      cc    final

  jdk.nashorn.internal.codegen.MethodEmitter arrayload();
    descriptor: ()Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 1075
            aload 0 /* this */
            ldc "Xaload"
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/String;)V
         1: .line 1076
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.INT:Ljdk/nashorn/internal/codegen/types/BitwiseType;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            pop
         2: .line 1077
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popArray:()Ljdk/nashorn/internal/codegen/types/ArrayType;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            invokevirtual jdk.nashorn.internal.codegen.types.ArrayType.aload:(Ljdk/internal/org/objectweb/asm/MethodVisitor;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         3: .line 1078
            aload 0 /* this */
            areturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  void arraystore();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=5, locals=4, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 1086
            aload 0 /* this */
            ldc "Xastore"
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/String;)V
         1: .line 1087
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 1 /* value */
        start local 1 // jdk.nashorn.internal.codegen.types.Type value
         2: .line 1088
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.INT:Ljdk/nashorn/internal/codegen/types/BitwiseType;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            astore 2 /* index */
        start local 2 // jdk.nashorn.internal.codegen.types.Type index
         3: .line 1089
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 4
            aload 2 /* index */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isInteger:()Z
            ifne 4
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "array index is not integer, but "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 2 /* index */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         4: .line 1090
      StackMap locals: jdk.nashorn.internal.codegen.types.Type jdk.nashorn.internal.codegen.types.Type
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popArray:()Ljdk/nashorn/internal/codegen/types/ArrayType;
            astore 3 /* array */
        start local 3 // jdk.nashorn.internal.codegen.types.ArrayType array
         5: .line 1092
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 6
            aload 1 /* value */
            aload 3 /* array */
            invokevirtual jdk.nashorn.internal.codegen.types.ArrayType.getElementType:()Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isEquivalentTo:(Ljdk/nashorn/internal/codegen/types/Type;)Z
            ifne 6
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Storing "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* value */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " into "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* array */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         6: .line 1093
      StackMap locals: jdk.nashorn.internal.codegen.types.ArrayType
      StackMap stack:
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 7
            aload 3 /* array */
            invokevirtual jdk.nashorn.internal.codegen.types.ArrayType.isObject:()Z
            ifne 7
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         7: .line 1094
      StackMap locals:
      StackMap stack:
            aload 3 /* array */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            invokevirtual jdk.nashorn.internal.codegen.types.ArrayType.astore:(Ljdk/internal/org/objectweb/asm/MethodVisitor;)V
         8: .line 1095
            return
        end local 3 // jdk.nashorn.internal.codegen.types.ArrayType array
        end local 2 // jdk.nashorn.internal.codegen.types.Type index
        end local 1 // jdk.nashorn.internal.codegen.types.Type value
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    9     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            2    9     1  value  Ljdk/nashorn/internal/codegen/types/Type;
            3    9     2  index  Ljdk/nashorn/internal/codegen/types/Type;
            5    9     3  array  Ljdk/nashorn/internal/codegen/types/ArrayType;

  void store(jdk.nashorn.internal.ir.IdentNode);
    descriptor: (Ljdk/nashorn/internal/ir/IdentNode;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.ir.IdentNode ident
         0: .line 1104
            aload 1 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 2 /* type */
        start local 2 // jdk.nashorn.internal.codegen.types.Type type
         1: .line 1105
            aload 1 /* ident */
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getSymbol:()Ljdk/nashorn/internal/ir/Symbol;
            astore 3 /* symbol */
        start local 3 // jdk.nashorn.internal.ir.Symbol symbol
         2: .line 1106
            aload 2 /* type */
            getstatic jdk.nashorn.internal.codegen.types.Type.UNDEFINED:Ljdk/nashorn/internal/codegen/types/Type;
            if_acmpne 6
         3: .line 1107
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 4
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            getstatic jdk.nashorn.internal.codegen.types.Type.UNDEFINED:Ljdk/nashorn/internal/codegen/types/Type;
            if_acmpeq 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 1108
      StackMap locals: jdk.nashorn.internal.codegen.types.Type jdk.nashorn.internal.ir.Symbol
      StackMap stack:
            aload 0 /* this */
            aload 3 /* symbol */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.store:(Ljdk/nashorn/internal/ir/Symbol;Ljdk/nashorn/internal/codegen/types/Type;)V
         5: .line 1109
            goto 7
         6: .line 1110
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* symbol */
            aload 2 /* type */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.store:(Ljdk/nashorn/internal/ir/Symbol;Ljdk/nashorn/internal/codegen/types/Type;)V
         7: .line 1112
      StackMap locals:
      StackMap stack:
            return
        end local 3 // jdk.nashorn.internal.ir.Symbol symbol
        end local 2 // jdk.nashorn.internal.codegen.types.Type type
        end local 1 // jdk.nashorn.internal.ir.IdentNode ident
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    8     1   ident  Ljdk/nashorn/internal/ir/IdentNode;
            1    8     2    type  Ljdk/nashorn/internal/codegen/types/Type;
            2    8     3  symbol  Ljdk/nashorn/internal/ir/Symbol;
    MethodParameters:
       Name  Flags
      ident  final

  void closeLocalVariable(jdk.nashorn.internal.ir.Symbol, jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/ir/Symbol;Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.ir.Symbol symbol
        start local 2 // jdk.nashorn.internal.codegen.Label label
         0: .line 1131
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.localVariableDefs:Ljava/util/Map;
            aload 1 /* symbol */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast jdk.nashorn.internal.codegen.MethodEmitter$LocalVariableDef
            astore 3 /* def */
        start local 3 // jdk.nashorn.internal.codegen.MethodEmitter$LocalVariableDef def
         1: .line 1132
            aload 3 /* def */
            ifnull 3
         2: .line 1133
            aload 0 /* this */
            aload 1 /* symbol */
            aload 3 /* def */
            aload 2 /* label */
            invokevirtual jdk.nashorn.internal.codegen.Label.getLabel:()Ljdk/internal/org/objectweb/asm/Label;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.endLocalValueDef:(Ljdk/nashorn/internal/ir/Symbol;Ljdk/nashorn/internal/codegen/MethodEmitter$LocalVariableDef;Ljdk/internal/org/objectweb/asm/Label;)V
         3: .line 1135
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter$LocalVariableDef
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.isReachable:()Z
            ifeq 5
         4: .line 1136
            aload 0 /* this */
            aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.markDeadLocalVariable:(Ljdk/nashorn/internal/ir/Symbol;)V
         5: .line 1138
      StackMap locals:
      StackMap stack:
            return
        end local 3 // jdk.nashorn.internal.codegen.MethodEmitter$LocalVariableDef def
        end local 2 // jdk.nashorn.internal.codegen.Label label
        end local 1 // jdk.nashorn.internal.ir.Symbol symbol
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    6     1  symbol  Ljdk/nashorn/internal/ir/Symbol;
            0    6     2   label  Ljdk/nashorn/internal/codegen/Label;
            1    6     3     def  Ljdk/nashorn/internal/codegen/MethodEmitter$LocalVariableDef;
    MethodParameters:
        Name  Flags
      symbol  final
      label   final

  void markDeadLocalVariable(jdk.nashorn.internal.ir.Symbol);
    descriptor: (Ljdk/nashorn/internal/ir/Symbol;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.ir.Symbol symbol
         0: .line 1141
            aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isDead:()Z
            ifne 2
         1: .line 1142
            aload 0 /* this */
            aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.getFirstSlot:()I
            aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.slotCount:()I
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.markDeadSlots:(II)V
         2: .line 1144
      StackMap locals:
      StackMap stack:
            return
        end local 1 // jdk.nashorn.internal.ir.Symbol symbol
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  symbol  Ljdk/nashorn/internal/ir/Symbol;
    MethodParameters:
        Name  Flags
      symbol  final

  void markDeadSlots(int, int);
    descriptor: (II)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int firstSlot
        start local 2 // int slotCount
         0: .line 1147
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 1 /* firstSlot */
            iload 2 /* slotCount */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.markDeadLocalVariables:(II)V
         1: .line 1148
            return
        end local 2 // int slotCount
        end local 1 // int firstSlot
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    2     1  firstSlot  I
            0    2     2  slotCount  I
    MethodParameters:
           Name  Flags
      firstSlot  final
      slotCount  final

  private void endLocalValueDef(jdk.nashorn.internal.ir.Symbol, jdk.nashorn.internal.codegen.MethodEmitter$LocalVariableDef, jdk.internal.org.objectweb.asm.Label);
    descriptor: (Ljdk/nashorn/internal/ir/Symbol;Ljdk/nashorn/internal/codegen/MethodEmitter$LocalVariableDef;Ljdk/internal/org/objectweb/asm/Label;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=5, args_size=4
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.ir.Symbol symbol
        start local 2 // jdk.nashorn.internal.codegen.MethodEmitter$LocalVariableDef def
        start local 3 // jdk.internal.org.objectweb.asm.Label label
         0: .line 1151
            aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.getName:()Ljava/lang/String;
            astore 4 /* name */
        start local 4 // java.lang.String name
         1: .line 1152
            aload 4 /* name */
            getstatic jdk.nashorn.internal.codegen.CompilerConstants.THIS:Ljdk/nashorn/internal/codegen/CompilerConstants;
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants.symbolName:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 3
         2: .line 1153
            getstatic jdk.nashorn.internal.codegen.CompilerConstants.THIS_DEBUGGER:Ljdk/nashorn/internal/codegen/CompilerConstants;
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants.symbolName:()Ljava/lang/String;
            astore 4 /* name */
         3: .line 1155
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 4 /* name */
            aload 2 /* def */
            getfield jdk.nashorn.internal.codegen.MethodEmitter$LocalVariableDef.type:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.types.Type.getDescriptor:()Ljava/lang/String;
            aconst_null
            aload 2 /* def */
            getfield jdk.nashorn.internal.codegen.MethodEmitter$LocalVariableDef.label:Ljdk/internal/org/objectweb/asm/Label;
            aload 3 /* label */
            aload 1 /* symbol */
            aload 2 /* def */
            getfield jdk.nashorn.internal.codegen.MethodEmitter$LocalVariableDef.type:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.ir.Symbol.getSlot:(Ljdk/nashorn/internal/codegen/types/Type;)I
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLocalVariable:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljdk/internal/org/objectweb/asm/Label;Ljdk/internal/org/objectweb/asm/Label;I)V
         4: .line 1156
            return
        end local 4 // java.lang.String name
        end local 3 // jdk.internal.org.objectweb.asm.Label label
        end local 2 // jdk.nashorn.internal.codegen.MethodEmitter$LocalVariableDef def
        end local 1 // jdk.nashorn.internal.ir.Symbol symbol
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    5     1  symbol  Ljdk/nashorn/internal/ir/Symbol;
            0    5     2     def  Ljdk/nashorn/internal/codegen/MethodEmitter$LocalVariableDef;
            0    5     3   label  Ljdk/internal/org/objectweb/asm/Label;
            1    5     4    name  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      symbol  final
      def     final
      label   final

  void store(jdk.nashorn.internal.ir.Symbol, jdk.nashorn.internal.codegen.types.Type);
    descriptor: (Ljdk/nashorn/internal/ir/Symbol;Ljdk/nashorn/internal/codegen/types/Type;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.ir.Symbol symbol
        start local 2 // jdk.nashorn.internal.codegen.types.Type type
         0: .line 1159
            aload 0 /* this */
            aload 1 /* symbol */
            aload 2 /* type */
            iconst_1
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.store:(Ljdk/nashorn/internal/ir/Symbol;Ljdk/nashorn/internal/codegen/types/Type;Z)V
         1: .line 1160
            return
        end local 2 // jdk.nashorn.internal.codegen.types.Type type
        end local 1 // jdk.nashorn.internal.ir.Symbol symbol
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    2     1  symbol  Ljdk/nashorn/internal/ir/Symbol;
            0    2     2    type  Ljdk/nashorn/internal/codegen/types/Type;
    MethodParameters:
        Name  Flags
      symbol  final
      type    final

  void store(jdk.nashorn.internal.ir.Symbol, jdk.nashorn.internal.codegen.types.Type, boolean);
    descriptor: (Ljdk/nashorn/internal/ir/Symbol;Ljdk/nashorn/internal/codegen/types/Type;Z)V
    flags: (0x0000) 
    Code:
      stack=7, locals=8, args_size=4
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.ir.Symbol symbol
        start local 2 // jdk.nashorn.internal.codegen.types.Type type
        start local 3 // boolean onlySymbolLiveValue
         0: .line 1174
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 1
            aload 1 /* symbol */
            ifnonnull 1
            new java.lang.AssertionError
            dup
            ldc "No symbol to store"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         1: .line 1175
      StackMap locals:
      StackMap stack:
            aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.hasSlot:()Z
            ifeq 22
         2: .line 1176
            aload 1 /* symbol */
            aload 2 /* type */
            invokevirtual jdk.nashorn.internal.ir.Symbol.hasSlotFor:(Ljdk/nashorn/internal/codegen/types/Type;)Z
            istore 4 /* isLiveType */
        start local 4 // boolean isLiveType
         3: .line 1177
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.localVariableDefs:Ljava/util/Map;
            aload 1 /* symbol */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast jdk.nashorn.internal.codegen.MethodEmitter$LocalVariableDef
            astore 5 /* existingDef */
        start local 5 // jdk.nashorn.internal.codegen.MethodEmitter$LocalVariableDef existingDef
         4: .line 1178
            aload 5 /* existingDef */
            ifnull 5
            aload 5 /* existingDef */
            getfield jdk.nashorn.internal.codegen.MethodEmitter$LocalVariableDef.type:Ljdk/nashorn/internal/codegen/types/Type;
            aload 2 /* type */
            if_acmpeq 12
         5: .line 1179
      StackMap locals: int jdk.nashorn.internal.codegen.MethodEmitter$LocalVariableDef
      StackMap stack:
            new jdk.internal.org.objectweb.asm.Label
            dup
            invokespecial jdk.internal.org.objectweb.asm.Label.<init>:()V
            astore 6 /* here */
        start local 6 // jdk.internal.org.objectweb.asm.Label here
         6: .line 1180
            iload 4 /* isLiveType */
            ifeq 9
         7: .line 1181
            new jdk.nashorn.internal.codegen.MethodEmitter$LocalVariableDef
            dup
            aload 6 /* here */
            aload 2 /* type */
            invokespecial jdk.nashorn.internal.codegen.MethodEmitter$LocalVariableDef.<init>:(Ljdk/internal/org/objectweb/asm/Label;Ljdk/nashorn/internal/codegen/types/Type;)V
            astore 7 /* newDef */
        start local 7 // jdk.nashorn.internal.codegen.MethodEmitter$LocalVariableDef newDef
         8: .line 1182
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.localVariableDefs:Ljava/util/Map;
            aload 1 /* symbol */
            aload 7 /* newDef */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 7 // jdk.nashorn.internal.codegen.MethodEmitter$LocalVariableDef newDef
         9: .line 1184
      StackMap locals: jdk.internal.org.objectweb.asm.Label
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 6 /* here */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLabel:(Ljdk/internal/org/objectweb/asm/Label;)V
        10: .line 1185
            aload 5 /* existingDef */
            ifnull 12
        11: .line 1186
            aload 0 /* this */
            aload 1 /* symbol */
            aload 5 /* existingDef */
            aload 6 /* here */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.endLocalValueDef:(Ljdk/nashorn/internal/ir/Symbol;Ljdk/nashorn/internal/codegen/MethodEmitter$LocalVariableDef;Ljdk/internal/org/objectweb/asm/Label;)V
        end local 6 // jdk.internal.org.objectweb.asm.Label here
        12: .line 1189
      StackMap locals:
      StackMap stack:
            iload 4 /* isLiveType */
            ifeq 17
        13: .line 1190
            aload 1 /* symbol */
            aload 2 /* type */
            invokevirtual jdk.nashorn.internal.ir.Symbol.getSlot:(Ljdk/nashorn/internal/codegen/types/Type;)I
            istore 6 /* slot */
        start local 6 // int slot
        14: .line 1191
            aload 0 /* this */
            ldc "store symbol"
            aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.getName:()Ljava/lang/String;
            ldc " type="
            aload 2 /* type */
            ldc " slot="
            iload 6 /* slot */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
        15: .line 1192
            aload 0 /* this */
            aload 2 /* type */
            iload 6 /* slot */
            iload 3 /* onlySymbolLiveValue */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.storeHidden:(Ljdk/nashorn/internal/codegen/types/Type;IZ)V
        end local 6 // int slot
        16: .line 1193
            goto 41
        17: .line 1194
      StackMap locals:
      StackMap stack:
            iload 3 /* onlySymbolLiveValue */
            ifeq 19
        18: .line 1195
            aload 0 /* this */
            aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.markDeadLocalVariable:(Ljdk/nashorn/internal/ir/Symbol;)V
        19: .line 1197
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "dead store symbol "
            aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.getName:()Ljava/lang/String;
            ldc " type="
            aload 2 /* type */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
        20: .line 1198
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pop:()Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        end local 5 // jdk.nashorn.internal.codegen.MethodEmitter$LocalVariableDef existingDef
        end local 4 // boolean isLiveType
        21: .line 1200
            goto 41
      StackMap locals:
      StackMap stack:
        22: aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isParam:()Z
            ifeq 39
        23: .line 1201
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 24
            aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isScope:()Z
            ifeq 24
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        24: .line 1202
      StackMap locals:
      StackMap stack:
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 25
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.functionNode:Ljdk/nashorn/internal/ir/FunctionNode;
            invokevirtual jdk.nashorn.internal.ir.FunctionNode.isVarArg:()Z
            ifne 25
            new java.lang.AssertionError
            dup
            ldc "Non-vararg functions have slotted parameters"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        25: .line 1203
      StackMap locals:
      StackMap stack:
            aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.getFieldIndex:()I
            istore 4 /* index */
        start local 4 // int index
        26: .line 1204
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.functionNode:Ljdk/nashorn/internal/ir/FunctionNode;
            invokevirtual jdk.nashorn.internal.ir.FunctionNode.needsArguments:()Z
            ifeq 33
        27: .line 1205
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.convert:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        28: .line 1206
            aload 0 /* this */
            ldc "store symbol"
            aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.getName:()Ljava/lang/String;
            ldc " arguments index="
            iload 4 /* index */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
        29: .line 1207
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.CompilerConstants.ARGUMENTS:Ljdk/nashorn/internal/codegen/CompilerConstants;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.loadCompilerConstant:(Ljdk/nashorn/internal/codegen/CompilerConstants;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        30: .line 1208
            aload 0 /* this */
            iload 4 /* index */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.load:(I)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        31: .line 1209
            getstatic jdk.nashorn.internal.runtime.ArgumentSetter.SET_ARGUMENT:Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants$Call.invoke:(Ljdk/nashorn/internal/codegen/MethodEmitter;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        32: .line 1210
            goto 41
        33: .line 1211
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.convert:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        34: .line 1213
            aload 0 /* this */
            ldc "store symbol"
            aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.getName:()Ljava/lang/String;
            ldc " array index="
            iload 4 /* index */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
        35: .line 1214
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.CompilerConstants.VARARGS:Ljdk/nashorn/internal/codegen/CompilerConstants;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.loadCompilerConstant:(Ljdk/nashorn/internal/codegen/CompilerConstants;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        36: .line 1215
            aload 0 /* this */
            iload 4 /* index */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.load:(I)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        37: .line 1216
            getstatic jdk.nashorn.internal.runtime.ArgumentSetter.SET_ARRAY_ELEMENT:Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants$Call.invoke:(Ljdk/nashorn/internal/codegen/MethodEmitter;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        end local 4 // int index
        38: .line 1218
            goto 41
        39: .line 1219
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "dead store symbol "
            aload 1 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.getName:()Ljava/lang/String;
            ldc " type="
            aload 2 /* type */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
        40: .line 1220
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pop:()Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        41: .line 1222
      StackMap locals:
      StackMap stack:
            return
        end local 3 // boolean onlySymbolLiveValue
        end local 2 // jdk.nashorn.internal.codegen.types.Type type
        end local 1 // jdk.nashorn.internal.ir.Symbol symbol
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   42     0                 this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0   42     1               symbol  Ljdk/nashorn/internal/ir/Symbol;
            0   42     2                 type  Ljdk/nashorn/internal/codegen/types/Type;
            0   42     3  onlySymbolLiveValue  Z
            3   21     4           isLiveType  Z
            4   21     5          existingDef  Ljdk/nashorn/internal/codegen/MethodEmitter$LocalVariableDef;
            6   12     6                 here  Ljdk/internal/org/objectweb/asm/Label;
            8    9     7               newDef  Ljdk/nashorn/internal/codegen/MethodEmitter$LocalVariableDef;
           14   16     6                 slot  I
           26   38     4                index  I
    MethodParameters:
                     Name  Flags
      symbol               final
      type                 final
      onlySymbolLiveValue  final

  void storeHidden(jdk.nashorn.internal.codegen.types.Type, int);
    descriptor: (Ljdk/nashorn/internal/codegen/types/Type;I)V
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.types.Type type
        start local 2 // int slot
         0: .line 1235
            aload 0 /* this */
            aload 1 /* type */
            iload 2 /* slot */
            iconst_1
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.storeHidden:(Ljdk/nashorn/internal/codegen/types/Type;IZ)V
         1: .line 1236
            return
        end local 2 // int slot
        end local 1 // jdk.nashorn.internal.codegen.types.Type type
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    2     1  type  Ljdk/nashorn/internal/codegen/types/Type;
            0    2     2  slot  I
    MethodParameters:
      Name  Flags
      type  final
      slot  final

  void storeHidden(jdk.nashorn.internal.codegen.types.Type, int, boolean);
    descriptor: (Ljdk/nashorn/internal/codegen/types/Type;IZ)V
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.types.Type type
        start local 2 // int slot
        start local 3 // boolean onlyLiveSymbolValue
         0: .line 1239
            aload 0 /* this */
            aload 1 /* type */
            iload 2 /* slot */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.explicitStore:(Ljdk/nashorn/internal/codegen/types/Type;I)V
         1: .line 1240
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            aload 1 /* type */
            iload 2 /* slot */
            iload 3 /* onlyLiveSymbolValue */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.onLocalStore:(Ljdk/nashorn/internal/codegen/types/Type;IZ)V
         2: .line 1241
            return
        end local 3 // boolean onlyLiveSymbolValue
        end local 2 // int slot
        end local 1 // jdk.nashorn.internal.codegen.types.Type type
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0    3     0                 this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1                 type  Ljdk/nashorn/internal/codegen/types/Type;
            0    3     2                 slot  I
            0    3     3  onlyLiveSymbolValue  Z
    MethodParameters:
                     Name  Flags
      type                 final
      slot                 final
      onlyLiveSymbolValue  final

  void storeTemp(jdk.nashorn.internal.codegen.types.Type, int);
    descriptor: (Ljdk/nashorn/internal/codegen/types/Type;I)V
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.types.Type type
        start local 2 // int slot
         0: .line 1244
            aload 0 /* this */
            aload 1 /* type */
            iload 2 /* slot */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.explicitStore:(Ljdk/nashorn/internal/codegen/types/Type;I)V
         1: .line 1245
            aload 0 /* this */
            iload 2 /* slot */
            iload 2 /* slot */
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.getSlots:()I
            iadd
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.defineTemporaryLocalVariable:(II)V
         2: .line 1246
            aload 0 /* this */
            aload 1 /* type */
            iload 2 /* slot */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.onLocalStore:(Ljdk/nashorn/internal/codegen/types/Type;I)V
         3: .line 1247
            return
        end local 2 // int slot
        end local 1 // jdk.nashorn.internal.codegen.types.Type type
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    4     1  type  Ljdk/nashorn/internal/codegen/types/Type;
            0    4     2  slot  I
    MethodParameters:
      Name  Flags
      type  final
      slot  final

  void onLocalStore(jdk.nashorn.internal.codegen.types.Type, int);
    descriptor: (Ljdk/nashorn/internal/codegen/types/Type;I)V
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.types.Type type
        start local 2 // int slot
         0: .line 1250
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            aload 1 /* type */
            iload 2 /* slot */
            iconst_1
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.onLocalStore:(Ljdk/nashorn/internal/codegen/types/Type;IZ)V
         1: .line 1251
            return
        end local 2 // int slot
        end local 1 // jdk.nashorn.internal.codegen.types.Type type
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    2     1  type  Ljdk/nashorn/internal/codegen/types/Type;
            0    2     2  slot  I
    MethodParameters:
      Name  Flags
      type  final
      slot  final

  private void explicitStore(jdk.nashorn.internal.codegen.types.Type, int);
    descriptor: (Ljdk/nashorn/internal/codegen/types/Type;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.types.Type type
        start local 2 // int slot
         0: .line 1254
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 1
            iload 2 /* slot */
            iconst_m1
            if_icmpne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1255
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "explicit store"
            aload 1 /* type */
            iload 2 /* slot */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 1256
            aload 0 /* this */
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            pop
         3: .line 1257
            aload 1 /* type */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 2 /* slot */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.store:(Ljdk/internal/org/objectweb/asm/MethodVisitor;I)V
         4: .line 1258
            return
        end local 2 // int slot
        end local 1 // jdk.nashorn.internal.codegen.types.Type type
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    5     1  type  Ljdk/nashorn/internal/codegen/types/Type;
            0    5     2  slot  I
    MethodParameters:
      Name  Flags
      type  final
      slot  final

  void defineBlockLocalVariable(int, int);
    descriptor: (II)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int fromSlot
        start local 2 // int toSlot
         0: .line 1267
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 1 /* fromSlot */
            iload 2 /* toSlot */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.defineBlockLocalVariable:(II)V
         1: .line 1268
            return
        end local 2 // int toSlot
        end local 1 // int fromSlot
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    2     1  fromSlot  I
            0    2     2    toSlot  I
    MethodParameters:
          Name  Flags
      fromSlot  final
      toSlot    final

  void defineTemporaryLocalVariable(int, int);
    descriptor: (II)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int fromSlot
        start local 2 // int toSlot
         0: .line 1277
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 1 /* fromSlot */
            iload 2 /* toSlot */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.defineTemporaryLocalVariable:(II)V
         1: .line 1278
            return
        end local 2 // int toSlot
        end local 1 // int fromSlot
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    2     1  fromSlot  I
            0    2     2    toSlot  I
    MethodParameters:
          Name  Flags
      fromSlot  final
      toSlot    final

  int defineTemporaryLocalVariable(int);
    descriptor: (I)I
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int width
         0: .line 1286
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 1 /* width */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.defineTemporaryLocalVariable:(I)I
            ireturn
        end local 1 // int width
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    1     1  width  I
    MethodParameters:
       Name  Flags
      width  final

  void undefineLocalVariables(int, boolean);
    descriptor: (IZ)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int fromSlot
        start local 2 // boolean canTruncateSymbol
         0: .line 1290
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.isReachable:()Z
            ifeq 2
         1: .line 1291
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 1 /* fromSlot */
            iload 2 /* canTruncateSymbol */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.undefineLocalVariables:(IZ)V
         2: .line 1293
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean canTruncateSymbol
        end local 1 // int fromSlot
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    3     0               this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1           fromSlot  I
            0    3     2  canTruncateSymbol  Z
    MethodParameters:
                   Name  Flags
      fromSlot           final
      canTruncateSymbol  final

  java.util.List<jdk.nashorn.internal.codegen.types.Type> getLocalVariableTypes();
    descriptor: ()Ljava/util/List;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 1296
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            getfield jdk.nashorn.internal.codegen.Label$Stack.localVariableTypes:Ljava/util/List;
            areturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
    Signature: ()Ljava/util/List<Ljdk/nashorn/internal/codegen/types/Type;>;

  java.util.List<jdk.nashorn.internal.codegen.types.Type> getWidestLiveLocals(java.util.List<jdk.nashorn.internal.codegen.types.Type>);
    descriptor: (Ljava/util/List;)Ljava/util/List;
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.util.List localTypes
         0: .line 1300
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            aload 1 /* localTypes */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.getWidestLiveLocals:(Ljava/util/List;)Ljava/util/List;
            areturn
        end local 1 // java.util.List localTypes
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    1     1  localTypes  Ljava/util/List<Ljdk/nashorn/internal/codegen/types/Type;>;
    Signature: (Ljava/util/List<Ljdk/nashorn/internal/codegen/types/Type;>;)Ljava/util/List<Ljdk/nashorn/internal/codegen/types/Type;>;
    MethodParameters:
            Name  Flags
      localTypes  final

  java.lang.String markSymbolBoundariesInLvarTypesDescriptor(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.String lvarDescriptor
         0: .line 1304
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            aload 1 /* lvarDescriptor */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.markSymbolBoundariesInLvarTypesDescriptor:(Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 1 // java.lang.String lvarDescriptor
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0            this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    1     1  lvarDescriptor  Ljava/lang/String;
    MethodParameters:
                Name  Flags
      lvarDescriptor  final

  void iinc(int, int);
    descriptor: (II)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int slot
        start local 2 // int increment
         0: .line 1314
            aload 0 /* this */
            ldc "iinc"
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/String;)V
         1: .line 1315
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 1 /* slot */
            iload 2 /* increment */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitIincInsn:(II)V
         2: .line 1316
            return
        end local 2 // int increment
        end local 1 // int slot
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1       slot  I
            0    3     2  increment  I
    MethodParameters:
           Name  Flags
      slot       final
      increment  final

  public void athrow();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 1323
            aload 0 /* this */
            ldc "athrow"
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/String;)V
         1: .line 1324
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            astore 1 /* receiver */
        start local 1 // jdk.nashorn.internal.codegen.types.Type receiver
         2: .line 1325
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 3
            ldc Ljava/lang/Throwable;
            aload 1 /* receiver */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.getTypeClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifne 3
            new java.lang.AssertionError
            dup
            aload 1 /* receiver */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.getTypeClass:()Ljava/lang/Class;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         3: .line 1326
      StackMap locals: jdk.nashorn.internal.codegen.types.Type
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 191
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
         4: .line 1327
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.doesNotContinueSequentially:()V
         5: .line 1328
            return
        end local 1 // jdk.nashorn.internal.codegen.types.Type receiver
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            2    6     1  receiver  Ljdk/nashorn/internal/codegen/types/Type;

  jdk.nashorn.internal.codegen.MethodEmitter _instanceof(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.String classDescriptor
         0: .line 1340
            aload 0 /* this */
            ldc "instanceof"
            aload 1 /* classDescriptor */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1341
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            pop
         2: .line 1342
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 193
            aload 1 /* classDescriptor */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitTypeInsn:(ILjava/lang/String;)V
         3: .line 1343
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.INT:Ljdk/nashorn/internal/codegen/types/BitwiseType;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         4: .line 1344
            aload 0 /* this */
            areturn
        end local 1 // java.lang.String classDescriptor
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    5     0             this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    5     1  classDescriptor  Ljava/lang/String;
    MethodParameters:
                 Name  Flags
      classDescriptor  final

  jdk.nashorn.internal.codegen.MethodEmitter _instanceof(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.Class clazz
         0: .line 1357
            aload 0 /* this */
            aload 1 /* clazz */
            invokestatic jdk.nashorn.internal.codegen.CompilerConstants.className:(Ljava/lang/Class;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter._instanceof:(Ljava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            areturn
        end local 1 // java.lang.Class clazz
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    1     1  clazz  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    MethodParameters:
       Name  Flags
      clazz  final

  jdk.nashorn.internal.codegen.MethodEmitter checkcast(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.String classDescriptor
         0: .line 1369
            aload 0 /* this */
            ldc "checkcast"
            aload 1 /* classDescriptor */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1370
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 2
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isObject:()Z
            ifne 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 1371
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 192
            aload 1 /* classDescriptor */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitTypeInsn:(ILjava/lang/String;)V
         3: .line 1372
            aload 0 /* this */
            areturn
        end local 1 // java.lang.String classDescriptor
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    4     0             this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    4     1  classDescriptor  Ljava/lang/String;
    MethodParameters:
                 Name  Flags
      classDescriptor  final

  jdk.nashorn.internal.codegen.MethodEmitter checkcast(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.Class clazz
         0: .line 1384
            aload 0 /* this */
            aload 1 /* clazz */
            invokestatic jdk.nashorn.internal.codegen.CompilerConstants.className:(Ljava/lang/Class;)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.checkcast:(Ljava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            areturn
        end local 1 // java.lang.Class clazz
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    1     1  clazz  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    MethodParameters:
       Name  Flags
      clazz  final

  jdk.nashorn.internal.codegen.MethodEmitter newarray(jdk.nashorn.internal.codegen.types.ArrayType);
    descriptor: (Ljdk/nashorn/internal/codegen/types/ArrayType;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.types.ArrayType arrayType
         0: .line 1396
            aload 0 /* this */
            ldc "newarray "
            ldc "arrayType="
            aload 1 /* arrayType */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1397
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.INT:Ljdk/nashorn/internal/codegen/types/BitwiseType;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            pop
         2: .line 1398
            aload 0 /* this */
            aload 1 /* arrayType */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            invokevirtual jdk.nashorn.internal.codegen.types.ArrayType.newarray:(Ljdk/internal/org/objectweb/asm/MethodVisitor;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         3: .line 1399
            aload 0 /* this */
            areturn
        end local 1 // jdk.nashorn.internal.codegen.types.ArrayType arrayType
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    4     1  arrayType  Ljdk/nashorn/internal/codegen/types/ArrayType;
    MethodParameters:
           Name  Flags
      arrayType  final

  jdk.nashorn.internal.codegen.MethodEmitter multinewarray(jdk.nashorn.internal.codegen.types.ArrayType, int);
    descriptor: (Ljdk/nashorn/internal/codegen/types/ArrayType;I)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.types.ArrayType arrayType
        start local 2 // int dims
         0: .line 1412
            aload 0 /* this */
            ldc "multianewarray "
            aload 1 /* arrayType */
            iload 2 /* dims */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1413
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 5
         3: .line 1414
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.INT:Ljdk/nashorn/internal/codegen/types/BitwiseType;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            pop
         4: .line 1413
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 3 /* i */
            iload 2 /* dims */
            if_icmplt 3
        end local 3 // int i
         6: .line 1416
            aload 0 /* this */
            aload 1 /* arrayType */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 2 /* dims */
            invokevirtual jdk.nashorn.internal.codegen.types.ArrayType.newarray:(Ljdk/internal/org/objectweb/asm/MethodVisitor;I)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         7: .line 1417
            aload 0 /* this */
            areturn
        end local 2 // int dims
        end local 1 // jdk.nashorn.internal.codegen.types.ArrayType arrayType
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    8     1  arrayType  Ljdk/nashorn/internal/codegen/types/ArrayType;
            0    8     2       dims  I
            2    6     3          i  I
    MethodParameters:
           Name  Flags
      arrayType  final
      dims       final

  private jdk.nashorn.internal.codegen.types.Type fixParamStack(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljdk/nashorn/internal/codegen/types/Type;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.String signature
         0: .line 1429
            aload 1 /* signature */
            invokestatic jdk.nashorn.internal.codegen.types.Type.getMethodArguments:(Ljava/lang/String;)[Ljdk/nashorn/internal/codegen/types/Type;
            astore 2 /* params */
        start local 2 // jdk.nashorn.internal.codegen.types.Type[] params
         1: .line 1430
            aload 2 /* params */
            arraylength
            iconst_1
            isub
            istore 3 /* i */
        start local 3 // int i
         2: goto 5
         3: .line 1431
      StackMap locals: jdk.nashorn.internal.codegen.types.Type[] int
      StackMap stack:
            aload 0 /* this */
            aload 2 /* params */
            iload 3 /* i */
            aaload
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            pop
         4: .line 1430
            iinc 3 /* i */ -1
      StackMap locals:
      StackMap stack:
         5: iload 3 /* i */
            ifge 3
        end local 3 // int i
         6: .line 1433
            aload 1 /* signature */
            invokestatic jdk.nashorn.internal.codegen.types.Type.getMethodReturnType:(Ljava/lang/String;)Ljdk/nashorn/internal/codegen/types/Type;
            astore 3 /* returnType */
        start local 3 // jdk.nashorn.internal.codegen.types.Type returnType
         7: .line 1434
            aload 3 /* returnType */
            areturn
        end local 3 // jdk.nashorn.internal.codegen.types.Type returnType
        end local 2 // jdk.nashorn.internal.codegen.types.Type[] params
        end local 1 // java.lang.String signature
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0        this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    8     1   signature  Ljava/lang/String;
            1    8     2      params  [Ljdk/nashorn/internal/codegen/types/Type;
            2    6     3           i  I
            7    8     3  returnType  Ljdk/nashorn/internal/codegen/types/Type;
    MethodParameters:
           Name  Flags
      signature  final

  jdk.nashorn.internal.codegen.MethodEmitter invoke(jdk.nashorn.internal.codegen.CompilerConstants$Call);
    descriptor: (Ljdk/nashorn/internal/codegen/CompilerConstants$Call;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.CompilerConstants$Call call
         0: .line 1446
            aload 1 /* call */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants$Call.invoke:(Ljdk/nashorn/internal/codegen/MethodEmitter;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            areturn
        end local 1 // jdk.nashorn.internal.codegen.CompilerConstants$Call call
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    1     1  call  Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
    MethodParameters:
      Name  Flags
      call  final

  private jdk.nashorn.internal.codegen.MethodEmitter invoke(int, java.lang.String, java.lang.String, java.lang.String, boolean);
    descriptor: (ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=7, args_size=6
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int opcode
        start local 2 // java.lang.String className
        start local 3 // java.lang.String methodName
        start local 4 // java.lang.String methodDescriptor
        start local 5 // boolean hasReceiver
         0: .line 1450
            aload 0 /* this */
            aload 4 /* methodDescriptor */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.fixParamStack:(Ljava/lang/String;)Ljdk/nashorn/internal/codegen/types/Type;
            astore 6 /* returnType */
        start local 6 // jdk.nashorn.internal.codegen.types.Type returnType
         1: .line 1452
            iload 5 /* hasReceiver */
            ifeq 3
         2: .line 1453
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            pop
         3: .line 1456
      StackMap locals: jdk.nashorn.internal.codegen.types.Type
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 1 /* opcode */
            aload 2 /* className */
            aload 3 /* methodName */
            aload 4 /* methodDescriptor */
            iload 1 /* opcode */
            sipush 185
            if_icmpne 4
            iconst_1
            goto 5
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter int java.lang.String java.lang.String java.lang.String int jdk.nashorn.internal.codegen.types.Type
      StackMap stack: jdk.internal.org.objectweb.asm.MethodVisitor int java.lang.String java.lang.String java.lang.String
         4: iconst_0
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter int java.lang.String java.lang.String java.lang.String int jdk.nashorn.internal.codegen.types.Type
      StackMap stack: jdk.internal.org.objectweb.asm.MethodVisitor int java.lang.String java.lang.String java.lang.String int
         5: invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitMethodInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
         6: .line 1458
            aload 6 /* returnType */
            ifnull 8
         7: .line 1459
            aload 0 /* this */
            aload 6 /* returnType */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         8: .line 1462
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 6 // jdk.nashorn.internal.codegen.types.Type returnType
        end local 5 // boolean hasReceiver
        end local 4 // java.lang.String methodDescriptor
        end local 3 // java.lang.String methodName
        end local 2 // java.lang.String className
        end local 1 // int opcode
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    9     0              this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    9     1            opcode  I
            0    9     2         className  Ljava/lang/String;
            0    9     3        methodName  Ljava/lang/String;
            0    9     4  methodDescriptor  Ljava/lang/String;
            0    9     5       hasReceiver  Z
            1    9     6        returnType  Ljdk/nashorn/internal/codegen/types/Type;
    MethodParameters:
                  Name  Flags
      opcode            final
      className         final
      methodName        final
      methodDescriptor  final
      hasReceiver       final

  jdk.nashorn.internal.codegen.MethodEmitter invokespecial(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.String className
        start local 2 // java.lang.String methodName
        start local 3 // java.lang.String methodDescriptor
         0: .line 1475
            aload 0 /* this */
            ldc "invokespecial"
            aload 1 /* className */
            ldc "."
            aload 2 /* methodName */
            aload 3 /* methodDescriptor */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1476
            aload 0 /* this */
            sipush 183
            aload 1 /* className */
            aload 2 /* methodName */
            aload 3 /* methodDescriptor */
            iconst_1
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.invoke:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Ljdk/nashorn/internal/codegen/MethodEmitter;
            areturn
        end local 3 // java.lang.String methodDescriptor
        end local 2 // java.lang.String methodName
        end local 1 // java.lang.String className
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    2     1         className  Ljava/lang/String;
            0    2     2        methodName  Ljava/lang/String;
            0    2     3  methodDescriptor  Ljava/lang/String;
    MethodParameters:
                  Name  Flags
      className         final
      methodName        final
      methodDescriptor  final

  jdk.nashorn.internal.codegen.MethodEmitter invokevirtual(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=8, locals=4, args_size=4
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.String className
        start local 2 // java.lang.String methodName
        start local 3 // java.lang.String methodDescriptor
         0: .line 1489
            aload 0 /* this */
            ldc "invokevirtual"
            aload 1 /* className */
            ldc "."
            aload 2 /* methodName */
            aload 3 /* methodDescriptor */
            ldc " "
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1490
            aload 0 /* this */
            sipush 182
            aload 1 /* className */
            aload 2 /* methodName */
            aload 3 /* methodDescriptor */
            iconst_1
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.invoke:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Ljdk/nashorn/internal/codegen/MethodEmitter;
            areturn
        end local 3 // java.lang.String methodDescriptor
        end local 2 // java.lang.String methodName
        end local 1 // java.lang.String className
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    2     1         className  Ljava/lang/String;
            0    2     2        methodName  Ljava/lang/String;
            0    2     3  methodDescriptor  Ljava/lang/String;
    MethodParameters:
                  Name  Flags
      className         final
      methodName        final
      methodDescriptor  final

  jdk.nashorn.internal.codegen.MethodEmitter invokestatic(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.String className
        start local 2 // java.lang.String methodName
        start local 3 // java.lang.String methodDescriptor
         0: .line 1503
            aload 0 /* this */
            ldc "invokestatic"
            aload 1 /* className */
            ldc "."
            aload 2 /* methodName */
            aload 3 /* methodDescriptor */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1504
            aload 0 /* this */
            sipush 184
            aload 1 /* className */
            aload 2 /* methodName */
            aload 3 /* methodDescriptor */
            iconst_0
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.invoke:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         2: .line 1505
            aload 0 /* this */
            areturn
        end local 3 // java.lang.String methodDescriptor
        end local 2 // java.lang.String methodName
        end local 1 // java.lang.String className
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    3     0              this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1         className  Ljava/lang/String;
            0    3     2        methodName  Ljava/lang/String;
            0    3     3  methodDescriptor  Ljava/lang/String;
    MethodParameters:
                  Name  Flags
      className         final
      methodName        final
      methodDescriptor  final

  jdk.nashorn.internal.codegen.MethodEmitter invokestatic(java.lang.String, java.lang.String, java.lang.String, jdk.nashorn.internal.codegen.types.Type);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.String className
        start local 2 // java.lang.String methodName
        start local 3 // java.lang.String methodDescriptor
        start local 4 // jdk.nashorn.internal.codegen.types.Type returnType
         0: .line 1520
            aload 0 /* this */
            aload 1 /* className */
            aload 2 /* methodName */
            aload 3 /* methodDescriptor */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.invokestatic:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         1: .line 1521
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            pop
         2: .line 1522
            aload 0 /* this */
            aload 4 /* returnType */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         3: .line 1523
            aload 0 /* this */
            areturn
        end local 4 // jdk.nashorn.internal.codegen.types.Type returnType
        end local 3 // java.lang.String methodDescriptor
        end local 2 // java.lang.String methodName
        end local 1 // java.lang.String className
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    4     0              this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    4     1         className  Ljava/lang/String;
            0    4     2        methodName  Ljava/lang/String;
            0    4     3  methodDescriptor  Ljava/lang/String;
            0    4     4        returnType  Ljdk/nashorn/internal/codegen/types/Type;
    MethodParameters:
                  Name  Flags
      className         final
      methodName        final
      methodDescriptor  final
      returnType        final

  jdk.nashorn.internal.codegen.MethodEmitter invokeinterface(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.String className
        start local 2 // java.lang.String methodName
        start local 3 // java.lang.String methodDescriptor
         0: .line 1536
            aload 0 /* this */
            ldc "invokeinterface"
            aload 1 /* className */
            ldc "."
            aload 2 /* methodName */
            aload 3 /* methodDescriptor */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1537
            aload 0 /* this */
            sipush 185
            aload 1 /* className */
            aload 2 /* methodName */
            aload 3 /* methodDescriptor */
            iconst_1
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.invoke:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Ljdk/nashorn/internal/codegen/MethodEmitter;
            areturn
        end local 3 // java.lang.String methodDescriptor
        end local 2 // java.lang.String methodName
        end local 1 // java.lang.String className
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    2     1         className  Ljava/lang/String;
            0    2     2        methodName  Ljava/lang/String;
            0    2     3  methodDescriptor  Ljava/lang/String;
    MethodParameters:
                  Name  Flags
      className         final
      methodName        final
      methodDescriptor  final

  static jdk.internal.org.objectweb.asm.Label[] getLabels(jdk.nashorn.internal.codegen.Label[]);
    descriptor: ([Ljdk/nashorn/internal/codegen/Label;)[Ljdk/internal/org/objectweb/asm/Label;
    flags: (0x0088) ACC_STATIC, ACC_VARARGS
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.Label[] table
         0: .line 1541
            aload 0 /* table */
            arraylength
            anewarray jdk.internal.org.objectweb.asm.Label
            astore 1 /* internalLabels */
        start local 1 // jdk.internal.org.objectweb.asm.Label[] internalLabels
         1: .line 1542
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 5
         3: .line 1543
      StackMap locals: jdk.internal.org.objectweb.asm.Label[] int
      StackMap stack:
            aload 1 /* internalLabels */
            iload 2 /* i */
            aload 0 /* table */
            iload 2 /* i */
            aaload
            invokevirtual jdk.nashorn.internal.codegen.Label.getLabel:()Ljdk/internal/org/objectweb/asm/Label;
            aastore
         4: .line 1542
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            aload 0 /* table */
            arraylength
            if_icmplt 3
        end local 2 // int i
         6: .line 1545
            aload 1 /* internalLabels */
            areturn
        end local 1 // jdk.internal.org.objectweb.asm.Label[] internalLabels
        end local 0 // jdk.nashorn.internal.codegen.Label[] table
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    7     0           table  [Ljdk/nashorn/internal/codegen/Label;
            1    7     1  internalLabels  [Ljdk/internal/org/objectweb/asm/Label;
            2    6     2               i  I
    MethodParameters:
       Name  Flags
      table  final

  void lookupswitch(jdk.nashorn.internal.codegen.Label, int[], jdk.nashorn.internal.codegen.Label[]);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;[I[Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0080) ACC_VARARGS
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label defaultLabel
        start local 2 // int[] values
        start local 3 // jdk.nashorn.internal.codegen.Label[] table
         0: .line 1556
            aload 0 /* this */
            ldc "lookupswitch"
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1557
            aload 0 /* this */
            aload 1 /* defaultLabel */
            aload 3 /* table */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.adjustStackForSwitch:(Ljdk/nashorn/internal/codegen/Label;[Ljdk/nashorn/internal/codegen/Label;)V
         2: .line 1558
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 1 /* defaultLabel */
            invokevirtual jdk.nashorn.internal.codegen.Label.getLabel:()Ljdk/internal/org/objectweb/asm/Label;
            aload 2 /* values */
            aload 3 /* table */
            invokestatic jdk.nashorn.internal.codegen.MethodEmitter.getLabels:([Ljdk/nashorn/internal/codegen/Label;)[Ljdk/internal/org/objectweb/asm/Label;
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLookupSwitchInsn:(Ljdk/internal/org/objectweb/asm/Label;[I[Ljdk/internal/org/objectweb/asm/Label;)V
         3: .line 1559
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.doesNotContinueSequentially:()V
         4: .line 1560
            return
        end local 3 // jdk.nashorn.internal.codegen.Label[] table
        end local 2 // int[] values
        end local 1 // jdk.nashorn.internal.codegen.Label defaultLabel
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0          this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    5     1  defaultLabel  Ljdk/nashorn/internal/codegen/Label;
            0    5     2        values  [I
            0    5     3         table  [Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
              Name  Flags
      defaultLabel  final
      values        final
      table         final

  void tableswitch(int, int, jdk.nashorn.internal.codegen.Label, jdk.nashorn.internal.codegen.Label[]);
    descriptor: (IILjdk/nashorn/internal/codegen/Label;[Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0080) ACC_VARARGS
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int lo
        start local 2 // int hi
        start local 3 // jdk.nashorn.internal.codegen.Label defaultLabel
        start local 4 // jdk.nashorn.internal.codegen.Label[] table
         0: .line 1570
            aload 0 /* this */
            ldc "tableswitch"
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1571
            aload 0 /* this */
            aload 3 /* defaultLabel */
            aload 4 /* table */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.adjustStackForSwitch:(Ljdk/nashorn/internal/codegen/Label;[Ljdk/nashorn/internal/codegen/Label;)V
         2: .line 1572
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 1 /* lo */
            iload 2 /* hi */
            aload 3 /* defaultLabel */
            invokevirtual jdk.nashorn.internal.codegen.Label.getLabel:()Ljdk/internal/org/objectweb/asm/Label;
            aload 4 /* table */
            invokestatic jdk.nashorn.internal.codegen.MethodEmitter.getLabels:([Ljdk/nashorn/internal/codegen/Label;)[Ljdk/internal/org/objectweb/asm/Label;
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitTableSwitchInsn:(IILjdk/internal/org/objectweb/asm/Label;[Ljdk/internal/org/objectweb/asm/Label;)V
         3: .line 1573
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.doesNotContinueSequentially:()V
         4: .line 1574
            return
        end local 4 // jdk.nashorn.internal.codegen.Label[] table
        end local 3 // jdk.nashorn.internal.codegen.Label defaultLabel
        end local 2 // int hi
        end local 1 // int lo
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    5     0          this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    5     1            lo  I
            0    5     2            hi  I
            0    5     3  defaultLabel  Ljdk/nashorn/internal/codegen/Label;
            0    5     4         table  [Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
              Name  Flags
      lo            final
      hi            final
      defaultLabel  final
      table         final

  private void adjustStackForSwitch(jdk.nashorn.internal.codegen.Label, jdk.nashorn.internal.codegen.Label[]);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;[Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0082) ACC_PRIVATE, ACC_VARARGS
    Code:
      stack=2, locals=7, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label defaultLabel
        start local 2 // jdk.nashorn.internal.codegen.Label[] table
         0: .line 1577
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.INT:Ljdk/nashorn/internal/codegen/types/BitwiseType;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            pop
         1: .line 1578
            aload 0 /* this */
            aload 1 /* defaultLabel */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.joinTo:(Ljdk/nashorn/internal/codegen/Label;)V
         2: .line 1579
            aload 2 /* table */
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 6
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.codegen.Label jdk.nashorn.internal.codegen.Label[] top int int jdk.nashorn.internal.codegen.Label[]
      StackMap stack:
         3: aload 6
            iload 4
            aaload
            astore 3 /* label */
        start local 3 // jdk.nashorn.internal.codegen.Label label
         4: .line 1580
            aload 0 /* this */
            aload 3 /* label */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.joinTo:(Ljdk/nashorn/internal/codegen/Label;)V
        end local 3 // jdk.nashorn.internal.codegen.Label label
         5: .line 1579
            iinc 4 1
      StackMap locals:
      StackMap stack:
         6: iload 4
            iload 5
            if_icmplt 3
         7: .line 1582
            return
        end local 2 // jdk.nashorn.internal.codegen.Label[] table
        end local 1 // jdk.nashorn.internal.codegen.Label defaultLabel
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    8     0          this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    8     1  defaultLabel  Ljdk/nashorn/internal/codegen/Label;
            0    8     2         table  [Ljdk/nashorn/internal/codegen/Label;
            4    5     3         label  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
              Name  Flags
      defaultLabel  final
      table         final

  void conditionalJump(jdk.nashorn.internal.codegen.Condition, jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Condition;Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Condition cond
        start local 2 // jdk.nashorn.internal.codegen.Label trueLabel
         0: .line 1593
            aload 0 /* this */
            aload 1 /* cond */
            aload 1 /* cond */
            getstatic jdk.nashorn.internal.codegen.Condition.GT:Ljdk/nashorn/internal/codegen/Condition;
            if_acmpeq 1
            aload 1 /* cond */
            getstatic jdk.nashorn.internal.codegen.Condition.GE:Ljdk/nashorn/internal/codegen/Condition;
            if_acmpeq 1
            iconst_1
            goto 2
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.codegen.Condition jdk.nashorn.internal.codegen.Label
      StackMap stack: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.codegen.Condition
         1: iconst_0
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.codegen.Condition jdk.nashorn.internal.codegen.Label
      StackMap stack: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.codegen.Condition int
         2: aload 2 /* trueLabel */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.conditionalJump:(Ljdk/nashorn/internal/codegen/Condition;ZLjdk/nashorn/internal/codegen/Label;)V
         3: .line 1594
            return
        end local 2 // jdk.nashorn.internal.codegen.Label trueLabel
        end local 1 // jdk.nashorn.internal.codegen.Condition cond
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    4     1       cond  Ljdk/nashorn/internal/codegen/Condition;
            0    4     2  trueLabel  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
           Name  Flags
      cond       final
      trueLabel  final

  void conditionalJump(jdk.nashorn.internal.codegen.Condition, boolean, jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Condition;ZLjdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Condition cond
        start local 2 // boolean isCmpG
        start local 3 // jdk.nashorn.internal.codegen.Label trueLabel
         0: .line 1605
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isCategory2:()Z
            ifeq 5
         1: .line 1606
            aload 0 /* this */
            ldc "[ld]cmp isCmpG="
            iload 2 /* isCmpG */
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 1607
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.get2n:()Ljdk/nashorn/internal/codegen/types/NumericType;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 2 /* isCmpG */
            invokevirtual jdk.nashorn.internal.codegen.types.NumericType.cmp:(Ljdk/internal/org/objectweb/asm/MethodVisitor;Z)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         3: .line 1608
            aload 0 /* this */
            aload 1 /* cond */
            invokestatic jdk.nashorn.internal.codegen.Condition.toUnary:(Ljdk/nashorn/internal/codegen/Condition;)I
            aload 3 /* trueLabel */
            iconst_1
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.jump:(ILjdk/nashorn/internal/codegen/Label;I)V
         4: .line 1609
            goto 7
         5: .line 1610
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "if"
            aload 1 /* cond */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         6: .line 1611
            aload 0 /* this */
            aload 1 /* cond */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isObject:()Z
            invokestatic jdk.nashorn.internal.codegen.Condition.toBinary:(Ljdk/nashorn/internal/codegen/Condition;Z)I
            aload 3 /* trueLabel */
            iconst_2
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.jump:(ILjdk/nashorn/internal/codegen/Label;I)V
         7: .line 1613
      StackMap locals:
      StackMap stack:
            return
        end local 3 // jdk.nashorn.internal.codegen.Label trueLabel
        end local 2 // boolean isCmpG
        end local 1 // jdk.nashorn.internal.codegen.Condition cond
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    8     1       cond  Ljdk/nashorn/internal/codegen/Condition;
            0    8     2     isCmpG  Z
            0    8     3  trueLabel  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
           Name  Flags
      cond       final
      isCmpG     final
      trueLabel  final

  void _return(jdk.nashorn.internal.codegen.types.Type);
    descriptor: (Ljdk/nashorn/internal/codegen/types/Type;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.types.Type type
         0: .line 1621
            aload 0 /* this */
            ldc "return"
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1622
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 2
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.size:()I
            iconst_1
            if_icmpeq 2
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Only return value on stack allowed at return point - depth="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.size:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " stack = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         2: .line 1623
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 2 /* stackType */
        start local 2 // jdk.nashorn.internal.codegen.types.Type stackType
         3: .line 1624
            aload 1 /* type */
            aload 2 /* stackType */
            invokestatic jdk.nashorn.internal.codegen.types.Type.areEquivalent:(Ljdk/nashorn/internal/codegen/types/Type;Ljdk/nashorn/internal/codegen/types/Type;)Z
            ifne 5
         4: .line 1625
            aload 0 /* this */
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.convert:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         5: .line 1627
      StackMap locals: jdk.nashorn.internal.codegen.types.Type
      StackMap stack:
            aload 0 /* this */
            aload 1 /* type */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            invokevirtual jdk.nashorn.internal.codegen.types.Type._return:(Ljdk/internal/org/objectweb/asm/MethodVisitor;)V
         6: .line 1628
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.doesNotContinueSequentially:()V
         7: .line 1629
            return
        end local 2 // jdk.nashorn.internal.codegen.types.Type stackType
        end local 1 // jdk.nashorn.internal.codegen.types.Type type
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    8     1       type  Ljdk/nashorn/internal/codegen/types/Type;
            3    8     2  stackType  Ljdk/nashorn/internal/codegen/types/Type;
    MethodParameters:
      Name  Flags
      type  final

  void _return();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 1635
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter._return:(Ljdk/nashorn/internal/codegen/types/Type;)V
         1: .line 1636
            return
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  void returnVoid();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 1642
            aload 0 /* this */
            ldc "return [void]"
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/String;)V
         1: .line 1643
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 2
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.isEmpty:()Z
            ifne 2
            new java.lang.AssertionError
            dup
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         2: .line 1644
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 177
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInsn:(I)V
         3: .line 1645
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.doesNotContinueSequentially:()V
         4: .line 1646
            return
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  jdk.nashorn.internal.codegen.MethodEmitter cmp(boolean);
    descriptor: (Z)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // boolean isCmpG
         0: .line 1656
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.get2n:()Ljdk/nashorn/internal/codegen/types/NumericType;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 1 /* isCmpG */
            invokevirtual jdk.nashorn.internal.codegen.types.NumericType.cmp:(Ljdk/internal/org/objectweb/asm/MethodVisitor;Z)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         1: .line 1657
            aload 0 /* this */
            areturn
        end local 1 // boolean isCmpG
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    2     1  isCmpG  Z
    MethodParameters:
        Name  Flags
      isCmpG  final

  private void jump(int, jdk.nashorn.internal.codegen.Label, int);
    descriptor: (ILjdk/nashorn/internal/codegen/Label;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int opcode
        start local 2 // jdk.nashorn.internal.codegen.Label label
        start local 3 // int n
         0: .line 1667
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         1: goto 5
         2: .line 1668
      StackMap locals: int
      StackMap stack:
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 3
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isInteger:()Z
            ifne 3
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isBoolean:()Z
            ifne 3
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isObject:()Z
            ifne 3
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "expecting integer type or object for jump, but found "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         3: .line 1669
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            pop
         4: .line 1667
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 4 /* i */
            iload 3 /* n */
            if_icmplt 2
        end local 4 // int i
         6: .line 1671
            aload 0 /* this */
            aload 2 /* label */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.joinTo:(Ljdk/nashorn/internal/codegen/Label;)V
         7: .line 1672
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 1 /* opcode */
            aload 2 /* label */
            invokevirtual jdk.nashorn.internal.codegen.Label.getLabel:()Ljdk/internal/org/objectweb/asm/Label;
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitJumpInsn:(ILjdk/internal/org/objectweb/asm/Label;)V
         8: .line 1673
            return
        end local 3 // int n
        end local 2 // jdk.nashorn.internal.codegen.Label label
        end local 1 // int opcode
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    9     1  opcode  I
            0    9     2   label  Ljdk/nashorn/internal/codegen/Label;
            0    9     3       n  I
            1    6     4       i  I
    MethodParameters:
        Name  Flags
      opcode  final
      label   final
      n       final

  void if_acmpeq(jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label label
         0: .line 1681
            aload 0 /* this */
            ldc "if_acmpeq"
            aload 1 /* label */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1682
            aload 0 /* this */
            sipush 165
            aload 1 /* label */
            iconst_2
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.jump:(ILjdk/nashorn/internal/codegen/Label;I)V
         2: .line 1683
            return
        end local 1 // jdk.nashorn.internal.codegen.Label label
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  label  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
       Name  Flags
      label  final

  void if_acmpne(jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label label
         0: .line 1691
            aload 0 /* this */
            ldc "if_acmpne"
            aload 1 /* label */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1692
            aload 0 /* this */
            sipush 166
            aload 1 /* label */
            iconst_2
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.jump:(ILjdk/nashorn/internal/codegen/Label;I)V
         2: .line 1693
            return
        end local 1 // jdk.nashorn.internal.codegen.Label label
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  label  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
       Name  Flags
      label  final

  void ifnull(jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label label
         0: .line 1701
            aload 0 /* this */
            ldc "ifnull"
            aload 1 /* label */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1702
            aload 0 /* this */
            sipush 198
            aload 1 /* label */
            iconst_1
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.jump:(ILjdk/nashorn/internal/codegen/Label;I)V
         2: .line 1703
            return
        end local 1 // jdk.nashorn.internal.codegen.Label label
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  label  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
       Name  Flags
      label  final

  void ifnonnull(jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label label
         0: .line 1711
            aload 0 /* this */
            ldc "ifnonnull"
            aload 1 /* label */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1712
            aload 0 /* this */
            sipush 199
            aload 1 /* label */
            iconst_1
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.jump:(ILjdk/nashorn/internal/codegen/Label;I)V
         2: .line 1713
            return
        end local 1 // jdk.nashorn.internal.codegen.Label label
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  label  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
       Name  Flags
      label  final

  void ifeq(jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label label
         0: .line 1721
            aload 0 /* this */
            ldc "ifeq "
            aload 1 /* label */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1722
            aload 0 /* this */
            sipush 153
            aload 1 /* label */
            iconst_1
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.jump:(ILjdk/nashorn/internal/codegen/Label;I)V
         2: .line 1723
            return
        end local 1 // jdk.nashorn.internal.codegen.Label label
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  label  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
       Name  Flags
      label  final

  void if_icmpeq(jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label label
         0: .line 1731
            aload 0 /* this */
            ldc "if_icmpeq"
            aload 1 /* label */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1732
            aload 0 /* this */
            sipush 159
            aload 1 /* label */
            iconst_2
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.jump:(ILjdk/nashorn/internal/codegen/Label;I)V
         2: .line 1733
            return
        end local 1 // jdk.nashorn.internal.codegen.Label label
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  label  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
       Name  Flags
      label  final

  void ifne(jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label label
         0: .line 1741
            aload 0 /* this */
            ldc "ifne"
            aload 1 /* label */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1742
            aload 0 /* this */
            sipush 154
            aload 1 /* label */
            iconst_1
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.jump:(ILjdk/nashorn/internal/codegen/Label;I)V
         2: .line 1743
            return
        end local 1 // jdk.nashorn.internal.codegen.Label label
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  label  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
       Name  Flags
      label  final

  void if_icmpne(jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label label
         0: .line 1751
            aload 0 /* this */
            ldc "if_icmpne"
            aload 1 /* label */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1752
            aload 0 /* this */
            sipush 160
            aload 1 /* label */
            iconst_2
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.jump:(ILjdk/nashorn/internal/codegen/Label;I)V
         2: .line 1753
            return
        end local 1 // jdk.nashorn.internal.codegen.Label label
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  label  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
       Name  Flags
      label  final

  void iflt(jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label label
         0: .line 1761
            aload 0 /* this */
            ldc "iflt"
            aload 1 /* label */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1762
            aload 0 /* this */
            sipush 155
            aload 1 /* label */
            iconst_1
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.jump:(ILjdk/nashorn/internal/codegen/Label;I)V
         2: .line 1763
            return
        end local 1 // jdk.nashorn.internal.codegen.Label label
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  label  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
       Name  Flags
      label  final

  void if_icmplt(jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label label
         0: .line 1771
            aload 0 /* this */
            ldc "if_icmplt"
            aload 1 /* label */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1772
            aload 0 /* this */
            sipush 161
            aload 1 /* label */
            iconst_2
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.jump:(ILjdk/nashorn/internal/codegen/Label;I)V
         2: .line 1773
            return
        end local 1 // jdk.nashorn.internal.codegen.Label label
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  label  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
       Name  Flags
      label  final

  void ifle(jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label label
         0: .line 1781
            aload 0 /* this */
            ldc "ifle"
            aload 1 /* label */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1782
            aload 0 /* this */
            sipush 158
            aload 1 /* label */
            iconst_1
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.jump:(ILjdk/nashorn/internal/codegen/Label;I)V
         2: .line 1783
            return
        end local 1 // jdk.nashorn.internal.codegen.Label label
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  label  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
       Name  Flags
      label  final

  void if_icmple(jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label label
         0: .line 1791
            aload 0 /* this */
            ldc "if_icmple"
            aload 1 /* label */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1792
            aload 0 /* this */
            sipush 164
            aload 1 /* label */
            iconst_2
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.jump:(ILjdk/nashorn/internal/codegen/Label;I)V
         2: .line 1793
            return
        end local 1 // jdk.nashorn.internal.codegen.Label label
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  label  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
       Name  Flags
      label  final

  void ifgt(jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label label
         0: .line 1801
            aload 0 /* this */
            ldc "ifgt"
            aload 1 /* label */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1802
            aload 0 /* this */
            sipush 157
            aload 1 /* label */
            iconst_1
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.jump:(ILjdk/nashorn/internal/codegen/Label;I)V
         2: .line 1803
            return
        end local 1 // jdk.nashorn.internal.codegen.Label label
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  label  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
       Name  Flags
      label  final

  void if_icmpgt(jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label label
         0: .line 1811
            aload 0 /* this */
            ldc "if_icmpgt"
            aload 1 /* label */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1812
            aload 0 /* this */
            sipush 163
            aload 1 /* label */
            iconst_2
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.jump:(ILjdk/nashorn/internal/codegen/Label;I)V
         2: .line 1813
            return
        end local 1 // jdk.nashorn.internal.codegen.Label label
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  label  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
       Name  Flags
      label  final

  void ifge(jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label label
         0: .line 1821
            aload 0 /* this */
            ldc "ifge"
            aload 1 /* label */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1822
            aload 0 /* this */
            sipush 156
            aload 1 /* label */
            iconst_1
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.jump:(ILjdk/nashorn/internal/codegen/Label;I)V
         2: .line 1823
            return
        end local 1 // jdk.nashorn.internal.codegen.Label label
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  label  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
       Name  Flags
      label  final

  void if_icmpge(jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label label
         0: .line 1831
            aload 0 /* this */
            ldc "if_icmpge"
            aload 1 /* label */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1832
            aload 0 /* this */
            sipush 162
            aload 1 /* label */
            iconst_2
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.jump:(ILjdk/nashorn/internal/codegen/Label;I)V
         2: .line 1833
            return
        end local 1 // jdk.nashorn.internal.codegen.Label label
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  label  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
       Name  Flags
      label  final

  void _goto(jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label label
         0: .line 1841
            aload 0 /* this */
            ldc "goto"
            aload 1 /* label */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1842
            aload 0 /* this */
            sipush 167
            aload 1 /* label */
            iconst_0
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.jump:(ILjdk/nashorn/internal/codegen/Label;I)V
         2: .line 1843
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.doesNotContinueSequentially:()V
         3: .line 1844
            return
        end local 1 // jdk.nashorn.internal.codegen.Label label
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    4     1  label  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
       Name  Flags
      label  final

  void gotoLoopStart(jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label loopStart
         0: .line 1855
            aload 0 /* this */
            ldc "goto (loop)"
            aload 1 /* loopStart */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 1856
            aload 0 /* this */
            sipush 167
            aload 1 /* loopStart */
            iconst_0
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.jump:(ILjdk/nashorn/internal/codegen/Label;I)V
         2: .line 1857
            return
        end local 1 // jdk.nashorn.internal.codegen.Label loopStart
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  loopStart  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
           Name  Flags
      loopStart  final

  void uncheckedGoto(jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label target
         0: .line 1866
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 167
            aload 1 /* target */
            invokevirtual jdk.nashorn.internal.codegen.Label.getLabel:()Ljdk/internal/org/objectweb/asm/Label;
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitJumpInsn:(ILjdk/internal/org/objectweb/asm/Label;)V
         1: .line 1867
            return
        end local 1 // jdk.nashorn.internal.codegen.Label target
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    2     1  target  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
        Name  Flags
      target  final

  void canThrow(jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label catchLabel
         0: .line 1875
            aload 1 /* catchLabel */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iconst_0
            invokevirtual jdk.nashorn.internal.codegen.Label.joinFromTry:(Ljdk/nashorn/internal/codegen/Label$Stack;Z)V
         1: .line 1876
            return
        end local 1 // jdk.nashorn.internal.codegen.Label catchLabel
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    2     1  catchLabel  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
            Name  Flags
      catchLabel  final

  private void joinTo(jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label label
         0: .line 1888
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 1
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.isReachable:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 1889
      StackMap locals:
      StackMap stack:
            aload 1 /* label */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.Label.joinFrom:(Ljdk/nashorn/internal/codegen/Label$Stack;)V
         2: .line 1890
            return
        end local 1 // jdk.nashorn.internal.codegen.Label label
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  label  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
       Name  Flags
      label  final

  void label(jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label label
         0: .line 1897
            aload 0 /* this */
            aload 1 /* label */
            iconst_m1
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.breakLabel:(Ljdk/nashorn/internal/codegen/Label;I)V
         1: .line 1898
            return
        end local 1 // jdk.nashorn.internal.codegen.Label label
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    2     1  label  Ljdk/nashorn/internal/codegen/Label;
    MethodParameters:
       Name  Flags
      label  final

  void breakLabel(jdk.nashorn.internal.codegen.Label, int);
    descriptor: (Ljdk/nashorn/internal/codegen/Label;I)V
    flags: (0x0000) 
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.Label label
        start local 2 // int liveLocals
         0: .line 1907
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.isReachable:()Z
            ifne 4
         1: .line 1909
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 5
            aload 1 /* label */
            invokevirtual jdk.nashorn.internal.codegen.Label.getStack:()Ljdk/nashorn/internal/codegen/Label$Stack;
            ifnonnull 2
            iconst_1
            goto 3
      StackMap locals:
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: aload 1 /* label */
            invokevirtual jdk.nashorn.internal.codegen.Label.isReachable:()Z
            if_icmpne 5
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 1911
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* label */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.joinTo:(Ljdk/nashorn/internal/codegen/Label;)V
         5: .line 1914
      StackMap locals:
      StackMap stack:
            aload 1 /* label */
            invokevirtual jdk.nashorn.internal.codegen.Label.getStack:()Ljdk/nashorn/internal/codegen/Label$Stack;
            astore 3 /* labelStack */
        start local 3 // jdk.nashorn.internal.codegen.Label$Stack labelStack
         6: .line 1915
            aload 0 /* this */
            aload 3 /* labelStack */
            ifnonnull 7
            aconst_null
            goto 8
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.codegen.Label int jdk.nashorn.internal.codegen.Label$Stack
      StackMap stack: jdk.nashorn.internal.codegen.MethodEmitter
         7: aload 3 /* labelStack */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.clone:()Ljdk/nashorn/internal/codegen/Label$Stack;
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.codegen.Label int jdk.nashorn.internal.codegen.Label$Stack
      StackMap stack: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.codegen.Label$Stack
         8: putfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
         9: .line 1916
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            ifnull 12
            aload 1 /* label */
            invokevirtual jdk.nashorn.internal.codegen.Label.isBreakTarget:()Z
            ifeq 12
            iload 2 /* liveLocals */
            iconst_m1
            if_icmpeq 12
        10: .line 1923
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 11
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            getfield jdk.nashorn.internal.codegen.Label$Stack.firstTemp:I
            iload 2 /* liveLocals */
            if_icmpge 11
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        11: .line 1924
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 2 /* liveLocals */
            putfield jdk.nashorn.internal.codegen.Label$Stack.firstTemp:I
        12: .line 1926
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* label */
            aastore
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug_label:([Ljava/lang/Object;)V
        13: .line 1927
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 1 /* label */
            invokevirtual jdk.nashorn.internal.codegen.Label.getLabel:()Ljdk/internal/org/objectweb/asm/Label;
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLabel:(Ljdk/internal/org/objectweb/asm/Label;)V
        14: .line 1928
            return
        end local 3 // jdk.nashorn.internal.codegen.Label$Stack labelStack
        end local 2 // int liveLocals
        end local 1 // jdk.nashorn.internal.codegen.Label label
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   15     0        this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0   15     1       label  Ljdk/nashorn/internal/codegen/Label;
            0   15     2  liveLocals  I
            6   15     3  labelStack  Ljdk/nashorn/internal/codegen/Label$Stack;
    MethodParameters:
            Name  Flags
      label       final
      liveLocals  final

  jdk.nashorn.internal.codegen.MethodEmitter convert(jdk.nashorn.internal.codegen.types.Type);
    descriptor: (Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.types.Type to
         0: .line 1938
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 2 /* from */
        start local 2 // jdk.nashorn.internal.codegen.types.Type from
         1: .line 1939
            aload 2 /* from */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 1 /* to */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.convert:(Ljdk/internal/org/objectweb/asm/MethodVisitor;Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            astore 3 /* type */
        start local 3 // jdk.nashorn.internal.codegen.types.Type type
         2: .line 1940
            aload 3 /* type */
            ifnull 11
         3: .line 1941
            aload 2 /* from */
            aload 1 /* to */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isEquivalentTo:(Ljdk/nashorn/internal/codegen/types/Type;)Z
            ifne 5
         4: .line 1942
            aload 0 /* this */
            ldc "convert"
            aload 2 /* from */
            ldc "->"
            aload 1 /* to */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         5: .line 1944
      StackMap locals: jdk.nashorn.internal.codegen.types.Type jdk.nashorn.internal.codegen.types.Type
      StackMap stack:
            aload 3 /* type */
            aload 2 /* from */
            if_acmpeq 11
         6: .line 1945
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.getTopLocalLoad:()I
            istore 4 /* l0 */
        start local 4 // int l0
         7: .line 1946
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            pop
         8: .line 1947
            aload 0 /* this */
            aload 3 /* type */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         9: .line 1960
            aload 2 /* from */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isObject:()Z
            ifne 11
        10: .line 1961
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 4 /* l0 */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.markLocalLoad:(I)V
        end local 4 // int l0
        11: .line 1965
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 3 // jdk.nashorn.internal.codegen.types.Type type
        end local 2 // jdk.nashorn.internal.codegen.types.Type from
        end local 1 // jdk.nashorn.internal.codegen.types.Type to
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0   12     1    to  Ljdk/nashorn/internal/codegen/types/Type;
            1   12     2  from  Ljdk/nashorn/internal/codegen/types/Type;
            2   12     3  type  Ljdk/nashorn/internal/codegen/types/Type;
            7   11     4    l0  I
    MethodParameters:
      Name  Flags
      to    final

  private jdk.nashorn.internal.codegen.types.Type get2();
    descriptor: ()Ljdk/nashorn/internal/codegen/types/Type;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 1974
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 1 /* p0 */
        start local 1 // jdk.nashorn.internal.codegen.types.Type p0
         1: .line 1975
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 2 /* p1 */
        start local 2 // jdk.nashorn.internal.codegen.types.Type p1
         2: .line 1976
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 3
            aload 1 /* p0 */
            aload 2 /* p1 */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isEquivalentTo:(Ljdk/nashorn/internal/codegen/types/Type;)Z
            ifne 3
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "expecting equivalent types on stack but got "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* p0 */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* p1 */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         3: .line 1977
      StackMap locals: jdk.nashorn.internal.codegen.types.Type jdk.nashorn.internal.codegen.types.Type
      StackMap stack:
            aload 1 /* p0 */
            areturn
        end local 2 // jdk.nashorn.internal.codegen.types.Type p1
        end local 1 // jdk.nashorn.internal.codegen.types.Type p0
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            1    4     1    p0  Ljdk/nashorn/internal/codegen/types/Type;
            2    4     2    p1  Ljdk/nashorn/internal/codegen/types/Type;

  private jdk.nashorn.internal.codegen.types.BitwiseType get2i();
    descriptor: ()Ljdk/nashorn/internal/codegen/types/BitwiseType;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 1986
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popBitwise:()Ljdk/nashorn/internal/codegen/types/BitwiseType;
            astore 1 /* p0 */
        start local 1 // jdk.nashorn.internal.codegen.types.BitwiseType p0
         1: .line 1987
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popBitwise:()Ljdk/nashorn/internal/codegen/types/BitwiseType;
            astore 2 /* p1 */
        start local 2 // jdk.nashorn.internal.codegen.types.BitwiseType p1
         2: .line 1988
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 3
            aload 1 /* p0 */
            aload 2 /* p1 */
            invokevirtual jdk.nashorn.internal.codegen.types.BitwiseType.isEquivalentTo:(Ljdk/nashorn/internal/codegen/types/Type;)Z
            ifne 3
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "expecting equivalent types on stack but got "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* p0 */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* p1 */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         3: .line 1989
      StackMap locals: jdk.nashorn.internal.codegen.types.BitwiseType jdk.nashorn.internal.codegen.types.BitwiseType
      StackMap stack:
            aload 1 /* p0 */
            areturn
        end local 2 // jdk.nashorn.internal.codegen.types.BitwiseType p1
        end local 1 // jdk.nashorn.internal.codegen.types.BitwiseType p0
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            1    4     1    p0  Ljdk/nashorn/internal/codegen/types/BitwiseType;
            2    4     2    p1  Ljdk/nashorn/internal/codegen/types/BitwiseType;

  private jdk.nashorn.internal.codegen.types.NumericType get2n();
    descriptor: ()Ljdk/nashorn/internal/codegen/types/NumericType;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 1998
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popNumeric:()Ljdk/nashorn/internal/codegen/types/NumericType;
            astore 1 /* p0 */
        start local 1 // jdk.nashorn.internal.codegen.types.NumericType p0
         1: .line 1999
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popNumeric:()Ljdk/nashorn/internal/codegen/types/NumericType;
            astore 2 /* p1 */
        start local 2 // jdk.nashorn.internal.codegen.types.NumericType p1
         2: .line 2000
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 3
            aload 1 /* p0 */
            aload 2 /* p1 */
            invokevirtual jdk.nashorn.internal.codegen.types.NumericType.isEquivalentTo:(Ljdk/nashorn/internal/codegen/types/Type;)Z
            ifne 3
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "expecting equivalent types on stack but got "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* p0 */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " and "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 2 /* p1 */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
         3: .line 2001
      StackMap locals: jdk.nashorn.internal.codegen.types.NumericType jdk.nashorn.internal.codegen.types.NumericType
      StackMap stack:
            aload 1 /* p0 */
            areturn
        end local 2 // jdk.nashorn.internal.codegen.types.NumericType p1
        end local 1 // jdk.nashorn.internal.codegen.types.NumericType p0
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            1    4     1    p0  Ljdk/nashorn/internal/codegen/types/NumericType;
            2    4     2    p1  Ljdk/nashorn/internal/codegen/types/NumericType;

  jdk.nashorn.internal.codegen.MethodEmitter add(int);
    descriptor: (I)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int programPoint
         0: .line 2010
            aload 0 /* this */
            ldc "add"
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/String;)V
         1: .line 2011
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.get2:()Ljdk/nashorn/internal/codegen/types/Type;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 1 /* programPoint */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.add:(Ljdk/internal/org/objectweb/asm/MethodVisitor;I)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         2: .line 2012
            aload 0 /* this */
            areturn
        end local 1 // int programPoint
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  programPoint  I
    MethodParameters:
              Name  Flags
      programPoint  final

  jdk.nashorn.internal.codegen.MethodEmitter sub(int);
    descriptor: (I)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int programPoint
         0: .line 2021
            aload 0 /* this */
            ldc "sub"
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/String;)V
         1: .line 2022
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.get2n:()Ljdk/nashorn/internal/codegen/types/NumericType;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 1 /* programPoint */
            invokevirtual jdk.nashorn.internal.codegen.types.NumericType.sub:(Ljdk/internal/org/objectweb/asm/MethodVisitor;I)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         2: .line 2023
            aload 0 /* this */
            areturn
        end local 1 // int programPoint
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  programPoint  I
    MethodParameters:
              Name  Flags
      programPoint  final

  jdk.nashorn.internal.codegen.MethodEmitter mul(int);
    descriptor: (I)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int programPoint
         0: .line 2032
            aload 0 /* this */
            ldc "mul "
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/String;)V
         1: .line 2033
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.get2n:()Ljdk/nashorn/internal/codegen/types/NumericType;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 1 /* programPoint */
            invokevirtual jdk.nashorn.internal.codegen.types.NumericType.mul:(Ljdk/internal/org/objectweb/asm/MethodVisitor;I)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         2: .line 2034
            aload 0 /* this */
            areturn
        end local 1 // int programPoint
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  programPoint  I
    MethodParameters:
              Name  Flags
      programPoint  final

  jdk.nashorn.internal.codegen.MethodEmitter div(int);
    descriptor: (I)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int programPoint
         0: .line 2043
            aload 0 /* this */
            ldc "div"
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/String;)V
         1: .line 2044
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.get2n:()Ljdk/nashorn/internal/codegen/types/NumericType;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 1 /* programPoint */
            invokevirtual jdk.nashorn.internal.codegen.types.NumericType.div:(Ljdk/internal/org/objectweb/asm/MethodVisitor;I)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         2: .line 2045
            aload 0 /* this */
            areturn
        end local 1 // int programPoint
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  programPoint  I
    MethodParameters:
              Name  Flags
      programPoint  final

  jdk.nashorn.internal.codegen.MethodEmitter rem(int);
    descriptor: (I)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int programPoint
         0: .line 2054
            aload 0 /* this */
            ldc "rem"
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/String;)V
         1: .line 2055
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.get2n:()Ljdk/nashorn/internal/codegen/types/NumericType;
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 1 /* programPoint */
            invokevirtual jdk.nashorn.internal.codegen.types.NumericType.rem:(Ljdk/internal/org/objectweb/asm/MethodVisitor;I)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         2: .line 2056
            aload 0 /* this */
            areturn
        end local 1 // int programPoint
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0          this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  programPoint  I
    MethodParameters:
              Name  Flags
      programPoint  final

  protected jdk.nashorn.internal.codegen.types.Type[] getTypesFromStack(int);
    descriptor: (I)[Ljdk/nashorn/internal/codegen/types/Type;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int count
         0: .line 2066
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 1 /* count */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.getTopTypes:(I)[Ljdk/nashorn/internal/codegen/types/Type;
            areturn
        end local 1 // int count
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    1     1  count  I
    MethodParameters:
       Name  Flags
      count  final

  int[] getLocalLoadsOnStack(int, int);
    descriptor: (II)[I
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int from
        start local 2 // int to
         0: .line 2070
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 1 /* from */
            iload 2 /* to */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.getLocalLoads:(II)[I
            areturn
        end local 2 // int to
        end local 1 // int from
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    1     1  from  I
            0    1     2    to  I
    MethodParameters:
      Name  Flags
      from  final
      to    final

  int getStackSize();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 2074
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.size:()I
            ireturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  int getFirstTemp();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 2078
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            getfield jdk.nashorn.internal.codegen.Label$Stack.firstTemp:I
            ireturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  int getUsedSlotsWithLiveTemporaries();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 2082
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.getUsedSlotsWithLiveTemporaries:()I
            ireturn
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  private java.lang.String getDynamicSignature(jdk.nashorn.internal.codegen.types.Type, int);
    descriptor: (Ljdk/nashorn/internal/codegen/types/Type;I)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.types.Type returnType
        start local 2 // int argCount
         0: .line 2095
            iload 2 /* argCount */
            anewarray jdk.nashorn.internal.codegen.types.Type
            astore 3 /* paramTypes */
        start local 3 // jdk.nashorn.internal.codegen.types.Type[] paramTypes
         1: .line 2097
            iconst_0
            istore 4 /* pos */
        start local 4 // int pos
         2: .line 2098
            iload 2 /* argCount */
            iconst_1
            isub
            istore 5 /* i */
        start local 5 // int i
         3: goto 10
         4: .line 2099
      StackMap locals: jdk.nashorn.internal.codegen.types.Type[] int int
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 4 /* pos */
            iinc 4 /* pos */ 1
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.peek:(I)Ljdk/nashorn/internal/codegen/types/Type;
            astore 6 /* pt */
        start local 6 // jdk.nashorn.internal.codegen.types.Type pt
         5: .line 2102
            ldc Ljdk/nashorn/internal/runtime/ScriptObject;
            aload 6 /* pt */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.getTypeClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifeq 8
         6: .line 2103
            ldc Ljdk/nashorn/internal/objects/NativeArray;
            aload 6 /* pt */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.getTypeClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
            ifne 8
         7: .line 2104
            getstatic jdk.nashorn.internal.codegen.types.Type.SCRIPT_OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            astore 6 /* pt */
         8: .line 2106
      StackMap locals: jdk.nashorn.internal.codegen.types.Type
      StackMap stack:
            aload 3 /* paramTypes */
            iload 5 /* i */
            aload 6 /* pt */
            aastore
        end local 6 // jdk.nashorn.internal.codegen.types.Type pt
         9: .line 2098
            iinc 5 /* i */ -1
      StackMap locals:
      StackMap stack:
        10: iload 5 /* i */
            ifge 4
        end local 5 // int i
        11: .line 2108
            aload 1 /* returnType */
            aload 3 /* paramTypes */
            invokestatic jdk.nashorn.internal.codegen.types.Type.getMethodDescriptor:(Ljdk/nashorn/internal/codegen/types/Type;[Ljdk/nashorn/internal/codegen/types/Type;)Ljava/lang/String;
            astore 5 /* descriptor */
        start local 5 // java.lang.String descriptor
        12: .line 2109
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        13: goto 16
        14: .line 2110
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.codegen.types.Type int jdk.nashorn.internal.codegen.types.Type[] int java.lang.String int
      StackMap stack:
            aload 0 /* this */
            aload 3 /* paramTypes */
            iload 2 /* argCount */
            iload 6 /* i */
            isub
            iconst_1
            isub
            aaload
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            pop
        15: .line 2109
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        16: iload 6 /* i */
            iload 2 /* argCount */
            if_icmplt 14
        end local 6 // int i
        17: .line 2113
            aload 5 /* descriptor */
            areturn
        end local 5 // java.lang.String descriptor
        end local 4 // int pos
        end local 3 // jdk.nashorn.internal.codegen.types.Type[] paramTypes
        end local 2 // int argCount
        end local 1 // jdk.nashorn.internal.codegen.types.Type returnType
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   18     0        this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0   18     1  returnType  Ljdk/nashorn/internal/codegen/types/Type;
            0   18     2    argCount  I
            1   18     3  paramTypes  [Ljdk/nashorn/internal/codegen/types/Type;
            2   18     4         pos  I
            3   11     5           i  I
            5    9     6          pt  Ljdk/nashorn/internal/codegen/types/Type;
           12   18     5  descriptor  Ljava/lang/String;
           13   17     6           i  I
    MethodParameters:
            Name  Flags
      returnType  final
      argCount    final

  jdk.nashorn.internal.codegen.MethodEmitter invalidateSpecialName(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.String name
         0: .line 2117
            aload 1 /* name */
            dup
            astore 2
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 2
              3045982: 1
             93029230: 2
              default: 7
          }
      StackMap locals: java.lang.String
      StackMap stack:
         1: aload 2
            ldc "call"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 3
            goto 7
      StackMap locals:
      StackMap stack:
         2: aload 2
            ldc "apply"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 3
            goto 7
         3: .line 2120
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "invalidate_name"
            ldc "name="
            aload 1 /* name */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         4: .line 2121
            aload 0 /* this */
            ldc "Function"
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.load:(Ljava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         5: .line 2122
            aload 0 /* this */
            getstatic jdk.nashorn.internal.runtime.ScriptRuntime.INVALIDATE_RESERVED_BUILTIN_NAME:Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.invoke:(Ljdk/nashorn/internal/codegen/CompilerConstants$Call;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         6: .line 2123
            goto 7
         7: .line 2127
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 1 // java.lang.String name
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    8     1  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  final

  jdk.nashorn.internal.codegen.MethodEmitter dynamicNew(int, int);
    descriptor: (II)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int argCount
        start local 2 // int flags
         0: .line 2139
            aload 0 /* this */
            iload 1 /* argCount */
            iload 2 /* flags */
            aconst_null
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.dynamicNew:(IILjava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            areturn
        end local 2 // int flags
        end local 1 // int argCount
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    1     1  argCount  I
            0    1     2     flags  I
    MethodParameters:
          Name  Flags
      argCount  final
      flags     final

  jdk.nashorn.internal.codegen.MethodEmitter dynamicNew(int, int, java.lang.String);
    descriptor: (IILjava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=9, locals=5, args_size=4
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int argCount
        start local 2 // int flags
        start local 3 // java.lang.String msg
         0: .line 2152
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 1
            iload 2 /* flags */
            invokestatic jdk.nashorn.internal.codegen.MethodEmitter.isOptimistic:(I)Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2153
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "dynamic_new"
            ldc "argcount="
            iload 1 /* argCount */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 2154
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            iload 1 /* argCount */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.getDynamicSignature:(Ljdk/nashorn/internal/codegen/types/Type;I)Ljava/lang/String;
            astore 4 /* signature */
        start local 4 // java.lang.String signature
         3: .line 2155
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
         4: .line 2156
            aload 3 /* msg */
            ifnull 5
            aload 3 /* msg */
            invokevirtual java.lang.String.length:()I
            ldc 32768
            if_icmpge 5
            aload 3 /* msg */
            invokestatic jdk.nashorn.internal.runtime.linker.NameCodec.encode:(Ljava/lang/String;)Ljava/lang/String;
            goto 6
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter int int java.lang.String java.lang.String
      StackMap stack: jdk.internal.org.objectweb.asm.MethodVisitor
         5: getstatic jdk.nashorn.internal.runtime.linker.NameCodec.EMPTY_NAME:Ljava/lang/String;
         6: .line 2157
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter int int java.lang.String java.lang.String
      StackMap stack: jdk.internal.org.objectweb.asm.MethodVisitor java.lang.String
            aload 4 /* signature */
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.LINKERBOOTSTRAP:Ljdk/internal/org/objectweb/asm/Handle;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 2 /* flags */
            bipush 9
            ior
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
         7: .line 2155
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInvokeDynamicInsn:(Ljava/lang/String;Ljava/lang/String;Ljdk/internal/org/objectweb/asm/Handle;[Ljava/lang/Object;)V
         8: .line 2158
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         9: .line 2159
            aload 0 /* this */
            areturn
        end local 4 // java.lang.String signature
        end local 3 // java.lang.String msg
        end local 2 // int flags
        end local 1 // int argCount
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   10     0       this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0   10     1   argCount  I
            0   10     2      flags  I
            0   10     3        msg  Ljava/lang/String;
            3   10     4  signature  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      argCount  final
      flags     final
      msg       final

  jdk.nashorn.internal.codegen.MethodEmitter dynamicCall(jdk.nashorn.internal.codegen.types.Type, int, int);
    descriptor: (Ljdk/nashorn/internal/codegen/types/Type;II)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.types.Type returnType
        start local 2 // int argCount
        start local 3 // int flags
         0: .line 2172
            aload 0 /* this */
            aload 1 /* returnType */
            iload 2 /* argCount */
            iload 3 /* flags */
            aconst_null
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.dynamicCall:(Ljdk/nashorn/internal/codegen/types/Type;IILjava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            areturn
        end local 3 // int flags
        end local 2 // int argCount
        end local 1 // jdk.nashorn.internal.codegen.types.Type returnType
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    1     0        this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    1     1  returnType  Ljdk/nashorn/internal/codegen/types/Type;
            0    1     2    argCount  I
            0    1     3       flags  I
    MethodParameters:
            Name  Flags
      returnType  final
      argCount    final
      flags       final

  jdk.nashorn.internal.codegen.MethodEmitter dynamicCall(jdk.nashorn.internal.codegen.types.Type, int, int, java.lang.String);
    descriptor: (Ljdk/nashorn/internal/codegen/types/Type;IILjava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=9, locals=6, args_size=5
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.types.Type returnType
        start local 2 // int argCount
        start local 3 // int flags
        start local 4 // java.lang.String msg
         0: .line 2186
            aload 0 /* this */
            ldc "dynamic_call"
            ldc "args="
            iload 2 /* argCount */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "returnType="
            aload 1 /* returnType */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 2187
            aload 0 /* this */
            aload 1 /* returnType */
            iload 2 /* argCount */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.getDynamicSignature:(Ljdk/nashorn/internal/codegen/types/Type;I)Ljava/lang/String;
            astore 5 /* signature */
        start local 5 // java.lang.String signature
         2: .line 2188
            aload 0 /* this */
            ldc "   signature"
            aload 5 /* signature */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         3: .line 2189
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
         4: .line 2190
            aload 4 /* msg */
            ifnull 5
            aload 4 /* msg */
            invokevirtual java.lang.String.length:()I
            ldc 32768
            if_icmpge 5
            aload 4 /* msg */
            invokestatic jdk.nashorn.internal.runtime.linker.NameCodec.encode:(Ljava/lang/String;)Ljava/lang/String;
            goto 6
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.codegen.types.Type int int java.lang.String java.lang.String
      StackMap stack: jdk.internal.org.objectweb.asm.MethodVisitor
         5: getstatic jdk.nashorn.internal.runtime.linker.NameCodec.EMPTY_NAME:Ljava/lang/String;
         6: .line 2191
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter jdk.nashorn.internal.codegen.types.Type int int java.lang.String java.lang.String
      StackMap stack: jdk.internal.org.objectweb.asm.MethodVisitor java.lang.String
            aload 5 /* signature */
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.LINKERBOOTSTRAP:Ljdk/internal/org/objectweb/asm/Handle;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 3 /* flags */
            bipush 8
            ior
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
         7: .line 2189
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInvokeDynamicInsn:(Ljava/lang/String;Ljava/lang/String;Ljdk/internal/org/objectweb/asm/Handle;[Ljava/lang/Object;)V
         8: .line 2192
            aload 0 /* this */
            aload 1 /* returnType */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         9: .line 2194
            aload 0 /* this */
            areturn
        end local 5 // java.lang.String signature
        end local 4 // java.lang.String msg
        end local 3 // int flags
        end local 2 // int argCount
        end local 1 // jdk.nashorn.internal.codegen.types.Type returnType
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0   10     1  returnType  Ljdk/nashorn/internal/codegen/types/Type;
            0   10     2    argCount  I
            0   10     3       flags  I
            0   10     4         msg  Ljava/lang/String;
            2   10     5   signature  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      returnType  final
      argCount    final
      flags       final
      msg         final

  jdk.nashorn.internal.codegen.MethodEmitter dynamicArrayPopulatorCall(int, int);
    descriptor: (II)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=8, locals=4, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int argCount
        start local 2 // int startIndex
         0: .line 2198
            aload 0 /* this */
            ldc "populate_array"
            ldc "args="
            iload 1 /* argCount */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            ldc "startIndex="
            iload 2 /* startIndex */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 2199
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT_ARRAY:Ljdk/nashorn/internal/codegen/types/ArrayType;
            iload 1 /* argCount */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.getDynamicSignature:(Ljdk/nashorn/internal/codegen/types/Type;I)Ljava/lang/String;
            astore 3 /* signature */
        start local 3 // java.lang.String signature
         2: .line 2200
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            ldc "populateArray"
            aload 3 /* signature */
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.POPULATE_ARRAY_BOOTSTRAP:Ljdk/internal/org/objectweb/asm/Handle;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 2 /* startIndex */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInvokeDynamicInsn:(Ljava/lang/String;Ljava/lang/String;Ljdk/internal/org/objectweb/asm/Handle;[Ljava/lang/Object;)V
         3: .line 2201
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT_ARRAY:Ljdk/nashorn/internal/codegen/types/ArrayType;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         4: .line 2202
            aload 0 /* this */
            areturn
        end local 3 // java.lang.String signature
        end local 2 // int startIndex
        end local 1 // int argCount
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    5     0        this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    5     1    argCount  I
            0    5     2  startIndex  I
            2    5     3   signature  Ljava/lang/String;
    MethodParameters:
            Name  Flags
      argCount    final
      startIndex  final

  jdk.nashorn.internal.codegen.MethodEmitter dynamicGet(jdk.nashorn.internal.codegen.types.Type, java.lang.String, int, boolean, boolean);
    descriptor: (Ljdk/nashorn/internal/codegen/types/Type;Ljava/lang/String;IZZ)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=10, locals=7, args_size=6
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.types.Type valueType
        start local 2 // java.lang.String name
        start local 3 // int flags
        start local 4 // boolean isMethod
        start local 5 // boolean isIndex
         0: .line 2216
            aload 2 /* name */
            invokevirtual java.lang.String.length:()I
            ldc 32768
            if_icmple 2
         1: .line 2217
            aload 0 /* this */
            aload 2 /* name */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.load:(Ljava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            aload 1 /* valueType */
            iload 3 /* flags */
            iload 4 /* isMethod */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.dynamicGetIndex:(Ljdk/nashorn/internal/codegen/types/Type;IZ)Ljdk/nashorn/internal/codegen/MethodEmitter;
            areturn
         2: .line 2220
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "dynamic_get"
            aload 2 /* name */
            aload 1 /* valueType */
            iload 3 /* flags */
            invokestatic jdk.nashorn.internal.codegen.MethodEmitter.getProgramPoint:(I)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         3: .line 2222
            aload 1 /* valueType */
            astore 6 /* type */
        start local 6 // jdk.nashorn.internal.codegen.types.Type type
         4: .line 2223
            aload 6 /* type */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isObject:()Z
            ifne 5
            aload 6 /* type */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isBoolean:()Z
            ifeq 6
         5: .line 2224
      StackMap locals: jdk.nashorn.internal.codegen.types.Type
      StackMap stack:
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            astore 6 /* type */
         6: .line 2227
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            pop
         7: .line 2228
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 2 /* name */
            invokestatic jdk.nashorn.internal.runtime.linker.NameCodec.encode:(Ljava/lang/String;)Ljava/lang/String;
         8: .line 2229
            aload 6 /* type */
            iconst_1
            anewarray jdk.nashorn.internal.codegen.types.Type
            dup
            iconst_0
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            aastore
            invokestatic jdk.nashorn.internal.codegen.types.Type.getMethodDescriptor:(Ljdk/nashorn/internal/codegen/types/Type;[Ljdk/nashorn/internal/codegen/types/Type;)Ljava/lang/String;
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.LINKERBOOTSTRAP:Ljdk/internal/org/objectweb/asm/Handle;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 3 /* flags */
            iload 4 /* isMethod */
            iload 5 /* isIndex */
            invokestatic jdk.nashorn.internal.codegen.MethodEmitter.dynGetOperation:(ZZ)I
            ior
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
         9: .line 2228
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInvokeDynamicInsn:(Ljava/lang/String;Ljava/lang/String;Ljdk/internal/org/objectweb/asm/Handle;[Ljava/lang/Object;)V
        10: .line 2231
            aload 0 /* this */
            aload 6 /* type */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
        11: .line 2232
            aload 0 /* this */
            aload 1 /* valueType */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.convert:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        12: .line 2234
            aload 0 /* this */
            areturn
        end local 6 // jdk.nashorn.internal.codegen.types.Type type
        end local 5 // boolean isIndex
        end local 4 // boolean isMethod
        end local 3 // int flags
        end local 2 // java.lang.String name
        end local 1 // jdk.nashorn.internal.codegen.types.Type valueType
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   13     0       this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0   13     1  valueType  Ljdk/nashorn/internal/codegen/types/Type;
            0   13     2       name  Ljava/lang/String;
            0   13     3      flags  I
            0   13     4   isMethod  Z
            0   13     5    isIndex  Z
            4   13     6       type  Ljdk/nashorn/internal/codegen/types/Type;
    MethodParameters:
           Name  Flags
      valueType  final
      name       final
      flags      final
      isMethod   final
      isIndex    final

  void dynamicSet(java.lang.String, int, boolean);
    descriptor: (Ljava/lang/String;IZ)V
    flags: (0x0000) 
    Code:
      stack=9, locals=5, args_size=4
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.String name
        start local 2 // int flags
        start local 3 // boolean isIndex
         0: .line 2245
            aload 1 /* name */
            invokevirtual java.lang.String.length:()I
            ldc 32768
            if_icmple 3
         1: .line 2246
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.load:(Ljava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.swap:()Ljdk/nashorn/internal/codegen/MethodEmitter;
            iload 2 /* flags */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.dynamicSetIndex:(I)V
         2: .line 2247
            return
         3: .line 2250
      StackMap locals:
      StackMap stack:
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 4
            iload 2 /* flags */
            invokestatic jdk.nashorn.internal.codegen.MethodEmitter.isOptimistic:(I)Z
            ifeq 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 2251
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "dynamic_set"
            aload 1 /* name */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         5: .line 2253
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 4 /* type */
        start local 4 // jdk.nashorn.internal.codegen.types.Type type
         6: .line 2254
            aload 4 /* type */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isObject:()Z
            ifne 7
            aload 4 /* type */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isBoolean:()Z
            ifeq 9
         7: .line 2255
      StackMap locals: jdk.nashorn.internal.codegen.types.Type
      StackMap stack:
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            astore 4 /* type */
         8: .line 2256
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.convert:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         9: .line 2258
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* type */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            pop
        10: .line 2259
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            pop
        11: .line 2261
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 1 /* name */
            invokestatic jdk.nashorn.internal.runtime.linker.NameCodec.encode:(Ljava/lang/String;)Ljava/lang/String;
        12: .line 2262
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            iconst_2
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/lang/Object;
            aastore
            dup
            iconst_1
            aload 4 /* type */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.getTypeClass:()Ljava/lang/Class;
            aastore
            invokestatic jdk.nashorn.internal.codegen.CompilerConstants.methodDescriptor:(Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/String;
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.LINKERBOOTSTRAP:Ljdk/internal/org/objectweb/asm/Handle;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 2 /* flags */
            iload 3 /* isIndex */
            invokestatic jdk.nashorn.internal.codegen.MethodEmitter.dynSetOperation:(Z)I
            ior
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
        13: .line 2261
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInvokeDynamicInsn:(Ljava/lang/String;Ljava/lang/String;Ljdk/internal/org/objectweb/asm/Handle;[Ljava/lang/Object;)V
        14: .line 2263
            return
        end local 4 // jdk.nashorn.internal.codegen.types.Type type
        end local 3 // boolean isIndex
        end local 2 // int flags
        end local 1 // java.lang.String name
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   15     0     this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0   15     1     name  Ljava/lang/String;
            0   15     2    flags  I
            0   15     3  isIndex  Z
            6   15     4     type  Ljdk/nashorn/internal/codegen/types/Type;
    MethodParameters:
         Name  Flags
      name     final
      flags    final
      isIndex  final

  jdk.nashorn.internal.codegen.MethodEmitter dynamicRemove(java.lang.String, int, boolean);
    descriptor: (Ljava/lang/String;IZ)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=9, locals=4, args_size=4
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.String name
        start local 2 // int flags
        start local 3 // boolean isIndex
         0: .line 2273
            aload 1 /* name */
            invokevirtual java.lang.String.length:()I
            ldc 32768
            if_icmple 2
         1: .line 2274
            aload 0 /* this */
            aload 1 /* name */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.load:(Ljava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            iload 2 /* flags */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.dynamicRemoveIndex:(I)Ljdk/nashorn/internal/codegen/MethodEmitter;
            areturn
         2: .line 2277
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "dynamic_remove"
            aload 1 /* name */
            getstatic jdk.nashorn.internal.codegen.types.Type.BOOLEAN:Ljdk/nashorn/internal/codegen/types/Type;
            iload 2 /* flags */
            invokestatic jdk.nashorn.internal.codegen.MethodEmitter.getProgramPoint:(I)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         3: .line 2279
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            pop
         4: .line 2281
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 1 /* name */
            invokestatic jdk.nashorn.internal.runtime.linker.NameCodec.encode:(Ljava/lang/String;)Ljava/lang/String;
         5: .line 2282
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            iconst_1
            anewarray jdk.nashorn.internal.codegen.types.Type
            dup
            iconst_0
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            aastore
            invokestatic jdk.nashorn.internal.codegen.types.Type.getMethodDescriptor:(Ljdk/nashorn/internal/codegen/types/Type;[Ljdk/nashorn/internal/codegen/types/Type;)Ljava/lang/String;
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.LINKERBOOTSTRAP:Ljdk/internal/org/objectweb/asm/Handle;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 2 /* flags */
            iload 3 /* isIndex */
            invokestatic jdk.nashorn.internal.codegen.MethodEmitter.dynRemoveOperation:(Z)I
            ior
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
         6: .line 2281
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInvokeDynamicInsn:(Ljava/lang/String;Ljava/lang/String;Ljdk/internal/org/objectweb/asm/Handle;[Ljava/lang/Object;)V
         7: .line 2284
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         8: .line 2285
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.BOOLEAN:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.convert:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         9: .line 2287
            aload 0 /* this */
            areturn
        end local 3 // boolean isIndex
        end local 2 // int flags
        end local 1 // java.lang.String name
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   10     0     this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0   10     1     name  Ljava/lang/String;
            0   10     2    flags  I
            0   10     3  isIndex  Z
    MethodParameters:
         Name  Flags
      name     final
      flags    final
      isIndex  final

  jdk.nashorn.internal.codegen.MethodEmitter dynamicGetIndex(jdk.nashorn.internal.codegen.types.Type, int, boolean);
    descriptor: (Ljdk/nashorn/internal/codegen/types/Type;IZ)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=10, locals=7, args_size=4
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.types.Type result
        start local 2 // int flags
        start local 3 // boolean isMethod
         0: .line 2301
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 1
            aload 1 /* result */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.getTypeClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.isPrimitive:()Z
            ifne 1
            aload 1 /* result */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.getTypeClass:()Ljava/lang/Class;
            ldc Ljava/lang/Object;
            if_acmpeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2302
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "dynamic_get_index"
            aload 0 /* this */
            iconst_1
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:(I)Ljdk/nashorn/internal/codegen/types/Type;
            ldc "["
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            ldc "]"
            iload 2 /* flags */
            invokestatic jdk.nashorn.internal.codegen.MethodEmitter.getProgramPoint:(I)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 2304
            aload 1 /* result */
            astore 4 /* resultType */
        start local 4 // jdk.nashorn.internal.codegen.types.Type resultType
         3: .line 2305
            aload 1 /* result */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isBoolean:()Z
            ifeq 5
         4: .line 2306
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            astore 4 /* resultType */
         5: .line 2309
      StackMap locals: jdk.nashorn.internal.codegen.types.Type
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 5 /* index */
        start local 5 // jdk.nashorn.internal.codegen.types.Type index
         6: .line 2310
            aload 5 /* index */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isObject:()Z
            ifne 7
            aload 5 /* index */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isBoolean:()Z
            ifeq 9
         7: .line 2311
      StackMap locals: jdk.nashorn.internal.codegen.types.Type
      StackMap stack:
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            astore 5 /* index */
         8: .line 2312
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.convert:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         9: .line 2314
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            pop
        10: .line 2316
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            pop
        11: .line 2318
            aload 4 /* resultType */
            iconst_2
            anewarray jdk.nashorn.internal.codegen.types.Type
            dup
            iconst_0
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            aastore
            dup
            iconst_1
            aload 5 /* index */
            aastore
            invokestatic jdk.nashorn.internal.codegen.types.Type.getMethodDescriptor:(Ljdk/nashorn/internal/codegen/types/Type;[Ljdk/nashorn/internal/codegen/types/Type;)Ljava/lang/String;
            astore 6 /* signature */
        start local 6 // java.lang.String signature
        12: .line 2320
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            getstatic jdk.nashorn.internal.runtime.linker.NameCodec.EMPTY_NAME:Ljava/lang/String;
            aload 6 /* signature */
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.LINKERBOOTSTRAP:Ljdk/internal/org/objectweb/asm/Handle;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 2 /* flags */
            iload 3 /* isMethod */
            iconst_1
            invokestatic jdk.nashorn.internal.codegen.MethodEmitter.dynGetOperation:(ZZ)I
            ior
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInvokeDynamicInsn:(Ljava/lang/String;Ljava/lang/String;Ljdk/internal/org/objectweb/asm/Handle;[Ljava/lang/Object;)V
        13: .line 2321
            aload 0 /* this */
            aload 4 /* resultType */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
        14: .line 2323
            aload 1 /* result */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isBoolean:()Z
            ifeq 16
        15: .line 2324
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.BOOLEAN:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.convert:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        16: .line 2327
      StackMap locals: java.lang.String
      StackMap stack:
            aload 0 /* this */
            areturn
        end local 6 // java.lang.String signature
        end local 5 // jdk.nashorn.internal.codegen.types.Type index
        end local 4 // jdk.nashorn.internal.codegen.types.Type resultType
        end local 3 // boolean isMethod
        end local 2 // int flags
        end local 1 // jdk.nashorn.internal.codegen.types.Type result
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   17     0        this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0   17     1      result  Ljdk/nashorn/internal/codegen/types/Type;
            0   17     2       flags  I
            0   17     3    isMethod  Z
            3   17     4  resultType  Ljdk/nashorn/internal/codegen/types/Type;
            6   17     5       index  Ljdk/nashorn/internal/codegen/types/Type;
           12   17     6   signature  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      result    final
      flags     final
      isMethod  final

  private static java.lang.String getProgramPoint(int);
    descriptor: (I)Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int flags
         0: .line 2331
            iload 0 /* flags */
            sipush 128
            iand
            ifne 2
         1: .line 2332
            ldc ""
            areturn
         2: .line 2334
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "pp="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 0 /* flags */
            sipush -32768
            iand
            bipush 15
            ishr
            invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // int flags
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0  flags  I
    MethodParameters:
       Name  Flags
      flags  final

  void dynamicSetIndex(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=9, locals=5, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int flags
         0: .line 2344
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 1
            iload 1 /* flags */
            invokestatic jdk.nashorn.internal.codegen.MethodEmitter.isOptimistic:(I)Z
            ifeq 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 2345
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "dynamic_set_index"
            aload 0 /* this */
            iconst_2
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:(I)Ljdk/nashorn/internal/codegen/types/Type;
            ldc "["
            aload 0 /* this */
            iconst_1
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:(I)Ljdk/nashorn/internal/codegen/types/Type;
            ldc "] ="
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 2347
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 2 /* value */
        start local 2 // jdk.nashorn.internal.codegen.types.Type value
         3: .line 2348
            aload 2 /* value */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isObject:()Z
            ifne 4
            aload 2 /* value */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isBoolean:()Z
            ifeq 6
         4: .line 2349
      StackMap locals: jdk.nashorn.internal.codegen.types.Type
      StackMap stack:
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            astore 2 /* value */
         5: .line 2350
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.convert:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         6: .line 2352
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            pop
         7: .line 2354
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 3 /* index */
        start local 3 // jdk.nashorn.internal.codegen.types.Type index
         8: .line 2355
            aload 3 /* index */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isObject:()Z
            ifne 9
            aload 3 /* index */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isBoolean:()Z
            ifeq 11
         9: .line 2356
      StackMap locals: jdk.nashorn.internal.codegen.types.Type
      StackMap stack:
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            astore 3 /* index */
        10: .line 2357
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.convert:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        11: .line 2359
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* index */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            pop
        12: .line 2361
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            astore 4 /* receiver */
        start local 4 // jdk.nashorn.internal.codegen.types.Type receiver
        13: .line 2362
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 14
            aload 4 /* receiver */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isObject:()Z
            ifne 14
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        14: .line 2364
      StackMap locals: jdk.nashorn.internal.codegen.types.Type
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            getstatic jdk.nashorn.internal.runtime.linker.NameCodec.EMPTY_NAME:Ljava/lang/String;
        15: .line 2365
            getstatic java.lang.Void.TYPE:Ljava/lang/Class;
            iconst_3
            anewarray java.lang.Class
            dup
            iconst_0
            aload 4 /* receiver */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.getTypeClass:()Ljava/lang/Class;
            aastore
            dup
            iconst_1
            aload 3 /* index */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.getTypeClass:()Ljava/lang/Class;
            aastore
            dup
            iconst_2
            aload 2 /* value */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.getTypeClass:()Ljava/lang/Class;
            aastore
            invokestatic jdk.nashorn.internal.codegen.CompilerConstants.methodDescriptor:(Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/String;
        16: .line 2366
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.LINKERBOOTSTRAP:Ljdk/internal/org/objectweb/asm/Handle;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 1 /* flags */
            iconst_5
            ior
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
        17: .line 2364
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInvokeDynamicInsn:(Ljava/lang/String;Ljava/lang/String;Ljdk/internal/org/objectweb/asm/Handle;[Ljava/lang/Object;)V
        18: .line 2367
            return
        end local 4 // jdk.nashorn.internal.codegen.types.Type receiver
        end local 3 // jdk.nashorn.internal.codegen.types.Type index
        end local 2 // jdk.nashorn.internal.codegen.types.Type value
        end local 1 // int flags
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   19     0      this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0   19     1     flags  I
            3   19     2     value  Ljdk/nashorn/internal/codegen/types/Type;
            8   19     3     index  Ljdk/nashorn/internal/codegen/types/Type;
           13   19     4  receiver  Ljdk/nashorn/internal/codegen/types/Type;
    MethodParameters:
       Name  Flags
      flags  final

  jdk.nashorn.internal.codegen.MethodEmitter dynamicRemoveIndex(int);
    descriptor: (I)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=9, locals=4, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int flags
         0: .line 2378
            aload 0 /* this */
            ldc "dynamic_remove_index"
            aload 0 /* this */
            iconst_1
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:(I)Ljdk/nashorn/internal/codegen/types/Type;
            ldc "["
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            ldc "]"
            iload 1 /* flags */
            invokestatic jdk.nashorn.internal.codegen.MethodEmitter.getProgramPoint:(I)Ljava/lang/String;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 2380
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 2 /* index */
        start local 2 // jdk.nashorn.internal.codegen.types.Type index
         2: .line 2381
            aload 2 /* index */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isObject:()Z
            ifne 3
            aload 2 /* index */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isBoolean:()Z
            ifeq 5
         3: .line 2382
      StackMap locals: jdk.nashorn.internal.codegen.types.Type
      StackMap stack:
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            astore 2 /* index */
         4: .line 2383
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.convert:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         5: .line 2385
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            pop
         6: .line 2387
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            pop
         7: .line 2389
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            iconst_2
            anewarray jdk.nashorn.internal.codegen.types.Type
            dup
            iconst_0
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            aastore
            dup
            iconst_1
            aload 2 /* index */
            aastore
            invokestatic jdk.nashorn.internal.codegen.types.Type.getMethodDescriptor:(Ljdk/nashorn/internal/codegen/types/Type;[Ljdk/nashorn/internal/codegen/types/Type;)Ljava/lang/String;
            astore 3 /* signature */
        start local 3 // java.lang.String signature
         8: .line 2391
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            getstatic jdk.nashorn.internal.runtime.linker.NameCodec.EMPTY_NAME:Ljava/lang/String;
            aload 3 /* signature */
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.LINKERBOOTSTRAP:Ljdk/internal/org/objectweb/asm/Handle;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iload 1 /* flags */
            iconst_1
            invokestatic jdk.nashorn.internal.codegen.MethodEmitter.dynRemoveOperation:(Z)I
            ior
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitInvokeDynamicInsn:(Ljava/lang/String;Ljava/lang/String;Ljdk/internal/org/objectweb/asm/Handle;[Ljava/lang/Object;)V
         9: .line 2392
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
        10: .line 2393
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.BOOLEAN:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.convert:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
        11: .line 2395
            aload 0 /* this */
            areturn
        end local 3 // java.lang.String signature
        end local 2 // jdk.nashorn.internal.codegen.types.Type index
        end local 1 // int flags
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0       this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0   12     1      flags  I
            2   12     2      index  Ljdk/nashorn/internal/codegen/types/Type;
            8   12     3  signature  Ljava/lang/String;
    MethodParameters:
       Name  Flags
      flags  final

  jdk.nashorn.internal.codegen.MethodEmitter loadKey(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.Object key
         0: .line 2405
            aload 1 /* key */
            instanceof jdk.nashorn.internal.ir.IdentNode
            ifeq 3
         1: .line 2406
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 1 /* key */
            checkcast jdk.nashorn.internal.ir.IdentNode
            invokevirtual jdk.nashorn.internal.ir.IdentNode.getName:()Ljava/lang/String;
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLdcInsn:(Ljava/lang/Object;)V
         2: .line 2407
            goto 7
      StackMap locals:
      StackMap stack:
         3: aload 1 /* key */
            instanceof jdk.nashorn.internal.ir.LiteralNode
            ifeq 6
         4: .line 2408
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 1 /* key */
            checkcast jdk.nashorn.internal.ir.LiteralNode
            invokevirtual jdk.nashorn.internal.ir.LiteralNode.getString:()Ljava/lang/String;
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLdcInsn:(Ljava/lang/Object;)V
         5: .line 2409
            goto 7
         6: .line 2410
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 1 /* key */
            invokestatic jdk.nashorn.internal.runtime.JSType.toString:(Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLdcInsn:(Ljava/lang/Object;)V
         7: .line 2412
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         8: .line 2413
            aload 0 /* this */
            areturn
        end local 1 // java.lang.Object key
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    9     1   key  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      key   final

  private static jdk.nashorn.internal.codegen.types.Type fieldType(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljdk/nashorn/internal/codegen/types/Type;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // java.lang.String desc
         0: .line 2418
            aload 0 /* desc */
            dup
            astore 1
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 8
                   66: 1
                   67: 2
                   68: 3
                   70: 4
                   73: 5
                   74: 6
                   83: 7
                   90: 8
              default: 13
          }
      StackMap locals: java.lang.String
      StackMap stack:
         1: aload 1
            ldc "B"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 9
            goto 13
      StackMap locals:
      StackMap stack:
         2: aload 1
            ldc "C"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 9
            goto 13
      StackMap locals:
      StackMap stack:
         3: aload 1
            ldc "D"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 11
            goto 13
      StackMap locals:
      StackMap stack:
         4: aload 1
            ldc "F"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 10
            goto 13
      StackMap locals:
      StackMap stack:
         5: aload 1
            ldc "I"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 9
            goto 13
      StackMap locals:
      StackMap stack:
         6: aload 1
            ldc "J"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 12
            goto 13
      StackMap locals:
      StackMap stack:
         7: aload 1
            ldc "S"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 9
            goto 13
      StackMap locals:
      StackMap stack:
         8: aload 1
            ldc "Z"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 9
            goto 13
         9: .line 2424
      StackMap locals:
      StackMap stack:
            getstatic jdk.nashorn.internal.codegen.types.Type.INT:Ljdk/nashorn/internal/codegen/types/BitwiseType;
            areturn
        10: .line 2426
      StackMap locals:
      StackMap stack:
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 11
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        11: .line 2428
      StackMap locals:
      StackMap stack:
            getstatic jdk.nashorn.internal.codegen.types.Type.NUMBER:Ljdk/nashorn/internal/codegen/types/NumericType;
            areturn
        12: .line 2430
      StackMap locals:
      StackMap stack:
            getstatic jdk.nashorn.internal.codegen.types.Type.LONG:Ljdk/nashorn/internal/codegen/types/Type;
            areturn
        13: .line 2432
      StackMap locals:
      StackMap stack:
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 14
            aload 0 /* desc */
            ldc "["
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 14
            aload 0 /* desc */
            ldc "L"
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 14
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            aload 0 /* desc */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc " is not an object type"
            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
        14: .line 2433
      StackMap locals:
      StackMap stack:
            aload 0 /* desc */
            iconst_0
            invokevirtual java.lang.String.charAt:(I)C
            lookupswitch { // 2
                   76: 15
                   91: 16
              default: 17
          }
        15: .line 2435
      StackMap locals:
      StackMap stack:
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            areturn
        16: .line 2437
      StackMap locals:
      StackMap stack:
            aload 0 /* desc */
            iconst_1
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            invokestatic jdk.nashorn.internal.codegen.MethodEmitter.fieldType:(Ljava/lang/String;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.types.Type.getTypeClass:()Ljava/lang/Class;
            iconst_0
            invokestatic java.lang.reflect.Array.newInstance:(Ljava/lang/Class;I)Ljava/lang/Object;
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokestatic jdk.nashorn.internal.codegen.types.Type.typeFor:(Ljava/lang/Class;)Ljdk/nashorn/internal/codegen/types/Type;
            areturn
        17: .line 2439
      StackMap locals:
      StackMap stack:
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 18
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        18: .line 2441
      StackMap locals:
      StackMap stack:
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            areturn
        end local 0 // java.lang.String desc
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   19     0  desc  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      desc  final

  jdk.nashorn.internal.codegen.MethodEmitter getField(jdk.nashorn.internal.codegen.CompilerConstants$FieldAccess);
    descriptor: (Ljdk/nashorn/internal/codegen/CompilerConstants$FieldAccess;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.CompilerConstants$FieldAccess fa
         0: .line 2453
            aload 1 /* fa */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants$FieldAccess.get:(Ljdk/nashorn/internal/codegen/MethodEmitter;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            areturn
        end local 1 // jdk.nashorn.internal.codegen.CompilerConstants$FieldAccess fa
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    1     1    fa  Ljdk/nashorn/internal/codegen/CompilerConstants$FieldAccess;
    MethodParameters:
      Name  Flags
      fa    final

  void putField(jdk.nashorn.internal.codegen.CompilerConstants$FieldAccess);
    descriptor: (Ljdk/nashorn/internal/codegen/CompilerConstants$FieldAccess;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.codegen.CompilerConstants$FieldAccess fa
         0: .line 2462
            aload 1 /* fa */
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.CompilerConstants$FieldAccess.put:(Ljdk/nashorn/internal/codegen/MethodEmitter;)V
         1: .line 2463
            return
        end local 1 // jdk.nashorn.internal.codegen.CompilerConstants$FieldAccess fa
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    2     1    fa  Ljdk/nashorn/internal/codegen/CompilerConstants$FieldAccess;
    MethodParameters:
      Name  Flags
      fa    final

  jdk.nashorn.internal.codegen.MethodEmitter getField(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=8, locals=5, args_size=4
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.String className
        start local 2 // java.lang.String fieldName
        start local 3 // java.lang.String fieldDescriptor
         0: .line 2476
            aload 0 /* this */
            ldc "getfield"
            ldc "receiver="
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            aload 1 /* className */
            ldc "."
            aload 2 /* fieldName */
            aload 3 /* fieldDescriptor */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 2477
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 4 /* receiver */
        start local 4 // jdk.nashorn.internal.codegen.types.Type receiver
         2: .line 2478
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 3
            aload 4 /* receiver */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isObject:()Z
            ifne 3
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         3: .line 2479
      StackMap locals: jdk.nashorn.internal.codegen.types.Type
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 180
            aload 1 /* className */
            aload 2 /* fieldName */
            aload 3 /* fieldDescriptor */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitFieldInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         4: .line 2480
            aload 0 /* this */
            aload 3 /* fieldDescriptor */
            invokestatic jdk.nashorn.internal.codegen.MethodEmitter.fieldType:(Ljava/lang/String;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         5: .line 2481
            aload 0 /* this */
            areturn
        end local 4 // jdk.nashorn.internal.codegen.types.Type receiver
        end local 3 // java.lang.String fieldDescriptor
        end local 2 // java.lang.String fieldName
        end local 1 // java.lang.String className
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    6     0             this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    6     1        className  Ljava/lang/String;
            0    6     2        fieldName  Ljava/lang/String;
            0    6     3  fieldDescriptor  Ljava/lang/String;
            2    6     4         receiver  Ljdk/nashorn/internal/codegen/types/Type;
    MethodParameters:
                 Name  Flags
      className        final
      fieldName        final
      fieldDescriptor  final

  jdk.nashorn.internal.codegen.MethodEmitter getStatic(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
    flags: (0x0000) 
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.String className
        start local 2 // java.lang.String fieldName
        start local 3 // java.lang.String fieldDescriptor
         0: .line 2494
            aload 0 /* this */
            ldc "getstatic"
            aload 1 /* className */
            ldc "."
            aload 2 /* fieldName */
            ldc "."
            aload 3 /* fieldDescriptor */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 2495
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 178
            aload 1 /* className */
            aload 2 /* fieldName */
            aload 3 /* fieldDescriptor */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitFieldInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         2: .line 2496
            aload 0 /* this */
            aload 3 /* fieldDescriptor */
            invokestatic jdk.nashorn.internal.codegen.MethodEmitter.fieldType:(Ljava/lang/String;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.pushType:(Ljdk/nashorn/internal/codegen/types/Type;)V
         3: .line 2497
            aload 0 /* this */
            areturn
        end local 3 // java.lang.String fieldDescriptor
        end local 2 // java.lang.String fieldName
        end local 1 // java.lang.String className
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    4     0             this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    4     1        className  Ljava/lang/String;
            0    4     2        fieldName  Ljava/lang/String;
            0    4     3  fieldDescriptor  Ljava/lang/String;
    MethodParameters:
                 Name  Flags
      className        final
      fieldName        final
      fieldDescriptor  final

  void putField(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.String className
        start local 2 // java.lang.String fieldName
        start local 3 // java.lang.String fieldDescriptor
         0: .line 2508
            aload 0 /* this */
            ldc "putfield"
            ldc "receiver="
            aload 0 /* this */
            iconst_1
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:(I)Ljdk/nashorn/internal/codegen/types/Type;
            ldc "value="
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 2509
            aload 0 /* this */
            aload 3 /* fieldDescriptor */
            invokestatic jdk.nashorn.internal.codegen.MethodEmitter.fieldType:(Ljava/lang/String;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            pop
         2: .line 2510
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            pop
         3: .line 2511
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 181
            aload 1 /* className */
            aload 2 /* fieldName */
            aload 3 /* fieldDescriptor */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitFieldInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         4: .line 2512
            return
        end local 3 // java.lang.String fieldDescriptor
        end local 2 // java.lang.String fieldName
        end local 1 // java.lang.String className
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    5     0             this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    5     1        className  Ljava/lang/String;
            0    5     2        fieldName  Ljava/lang/String;
            0    5     3  fieldDescriptor  Ljava/lang/String;
    MethodParameters:
                 Name  Flags
      className        final
      fieldName        final
      fieldDescriptor  final

  void putStatic(java.lang.String, java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.String className
        start local 2 // java.lang.String fieldName
        start local 3 // java.lang.String fieldDescriptor
         0: .line 2522
            aload 0 /* this */
            ldc "putfield"
            ldc "value="
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.peekType:()Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
         1: .line 2523
            aload 0 /* this */
            aload 3 /* fieldDescriptor */
            invokestatic jdk.nashorn.internal.codegen.MethodEmitter.fieldType:(Ljava/lang/String;)Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.popType:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/types/Type;
            pop
         2: .line 2524
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            sipush 179
            aload 1 /* className */
            aload 2 /* fieldName */
            aload 3 /* fieldDescriptor */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitFieldInsn:(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
         3: .line 2525
            return
        end local 3 // java.lang.String fieldDescriptor
        end local 2 // java.lang.String fieldName
        end local 1 // java.lang.String className
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    4     0             this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    4     1        className  Ljava/lang/String;
            0    4     2        fieldName  Ljava/lang/String;
            0    4     3  fieldDescriptor  Ljava/lang/String;
    MethodParameters:
                 Name  Flags
      className        final
      fieldName        final
      fieldDescriptor  final

  void lineNumber(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int line
         0: .line 2533
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.context:Ljdk/nashorn/internal/runtime/Context;
            invokevirtual jdk.nashorn.internal.runtime.Context.getEnv:()Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            getfield jdk.nashorn.internal.runtime.ScriptEnvironment._debug_lines:Z
            ifeq 5
         1: .line 2534
            aload 0 /* this */
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "[LINE]"
            aastore
            dup
            iconst_1
            iload 1 /* line */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug_label:([Ljava/lang/Object;)V
         2: .line 2535
            new jdk.internal.org.objectweb.asm.Label
            dup
            invokespecial jdk.internal.org.objectweb.asm.Label.<init>:()V
            astore 2 /* l */
        start local 2 // jdk.internal.org.objectweb.asm.Label l
         3: .line 2536
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            aload 2 /* l */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLabel:(Ljdk/internal/org/objectweb/asm/Label;)V
         4: .line 2537
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.method:Ljdk/internal/org/objectweb/asm/MethodVisitor;
            iload 1 /* line */
            aload 2 /* l */
            invokevirtual jdk.internal.org.objectweb.asm.MethodVisitor.visitLineNumber:(ILjdk/internal/org/objectweb/asm/Label;)V
        end local 2 // jdk.internal.org.objectweb.asm.Label l
         5: .line 2539
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int line
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    6     1  line  I
            3    5     2     l  Ljdk/internal/org/objectweb/asm/Label;
    MethodParameters:
      Name  Flags
      line  final

  void beforeJoinPoint(jdk.nashorn.internal.ir.JoinPredecessor);
    descriptor: (Ljdk/nashorn/internal/ir/JoinPredecessor;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.ir.JoinPredecessor joinPredecessor
         0: .line 2542
            aload 1 /* joinPredecessor */
            invokeinterface jdk.nashorn.internal.ir.JoinPredecessor.getLocalVariableConversion:()Ljdk/nashorn/internal/ir/LocalVariableConversion;
            astore 2 /* next */
        start local 2 // jdk.nashorn.internal.ir.LocalVariableConversion next
         1: .line 2543
            goto 8
         2: .line 2544
      StackMap locals: jdk.nashorn.internal.ir.LocalVariableConversion
      StackMap stack:
            aload 2 /* next */
            invokevirtual jdk.nashorn.internal.ir.LocalVariableConversion.getSymbol:()Ljdk/nashorn/internal/ir/Symbol;
            astore 3 /* symbol */
        start local 3 // jdk.nashorn.internal.ir.Symbol symbol
         3: .line 2545
            aload 2 /* next */
            invokevirtual jdk.nashorn.internal.ir.LocalVariableConversion.isLive:()Z
            ifeq 6
         4: .line 2546
            aload 0 /* this */
            aload 2 /* next */
            iconst_1
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.emitLocalVariableConversion:(Ljdk/nashorn/internal/ir/LocalVariableConversion;Z)Ljdk/nashorn/internal/codegen/types/Type;
            pop
         5: .line 2547
            goto 7
         6: .line 2548
      StackMap locals: jdk.nashorn.internal.ir.Symbol
      StackMap stack:
            aload 0 /* this */
            aload 3 /* symbol */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.markDeadLocalVariable:(Ljdk/nashorn/internal/ir/Symbol;)V
         7: .line 2550
      StackMap locals:
      StackMap stack:
            aload 2 /* next */
            invokevirtual jdk.nashorn.internal.ir.LocalVariableConversion.getNext:()Ljdk/nashorn/internal/ir/LocalVariableConversion;
            astore 2 /* next */
        end local 3 // jdk.nashorn.internal.ir.Symbol symbol
         8: .line 2543
      StackMap locals:
      StackMap stack:
            aload 2 /* next */
            ifnonnull 2
         9: .line 2552
            return
        end local 2 // jdk.nashorn.internal.ir.LocalVariableConversion next
        end local 1 // jdk.nashorn.internal.ir.JoinPredecessor joinPredecessor
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   10     0             this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0   10     1  joinPredecessor  Ljdk/nashorn/internal/ir/JoinPredecessor;
            1   10     2             next  Ljdk/nashorn/internal/ir/LocalVariableConversion;
            3    8     3           symbol  Ljdk/nashorn/internal/ir/Symbol;
    MethodParameters:
                 Name  Flags
      joinPredecessor  final

  void beforeTry(jdk.nashorn.internal.ir.TryNode, jdk.nashorn.internal.codegen.Label);
    descriptor: (Ljdk/nashorn/internal/ir/TryNode;Ljdk/nashorn/internal/codegen/Label;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.ir.TryNode tryNode
        start local 2 // jdk.nashorn.internal.codegen.Label recovery
         0: .line 2555
            aload 1 /* tryNode */
            invokevirtual jdk.nashorn.internal.ir.TryNode.getLocalVariableConversion:()Ljdk/nashorn/internal/ir/LocalVariableConversion;
            astore 3 /* next */
        start local 3 // jdk.nashorn.internal.ir.LocalVariableConversion next
         1: .line 2556
            goto 6
         2: .line 2557
      StackMap locals: jdk.nashorn.internal.ir.LocalVariableConversion
      StackMap stack:
            aload 3 /* next */
            invokevirtual jdk.nashorn.internal.ir.LocalVariableConversion.isLive:()Z
            ifeq 5
         3: .line 2558
            aload 0 /* this */
            aload 3 /* next */
            iconst_0
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.emitLocalVariableConversion:(Ljdk/nashorn/internal/ir/LocalVariableConversion;Z)Ljdk/nashorn/internal/codegen/types/Type;
            astore 4 /* to */
        start local 4 // jdk.nashorn.internal.codegen.types.Type to
         4: .line 2559
            aload 2 /* recovery */
            invokevirtual jdk.nashorn.internal.codegen.Label.getStack:()Ljdk/nashorn/internal/codegen/Label$Stack;
            aload 4 /* to */
            aload 3 /* next */
            invokevirtual jdk.nashorn.internal.ir.LocalVariableConversion.getSymbol:()Ljdk/nashorn/internal/ir/Symbol;
            aload 4 /* to */
            invokevirtual jdk.nashorn.internal.ir.Symbol.getSlot:(Ljdk/nashorn/internal/codegen/types/Type;)I
            iconst_1
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.onLocalStore:(Ljdk/nashorn/internal/codegen/types/Type;IZ)V
        end local 4 // jdk.nashorn.internal.codegen.types.Type to
         5: .line 2561
      StackMap locals:
      StackMap stack:
            aload 3 /* next */
            invokevirtual jdk.nashorn.internal.ir.LocalVariableConversion.getNext:()Ljdk/nashorn/internal/ir/LocalVariableConversion;
            astore 3 /* next */
         6: .line 2556
      StackMap locals:
      StackMap stack:
            aload 3 /* next */
            ifnonnull 2
         7: .line 2563
            return
        end local 3 // jdk.nashorn.internal.ir.LocalVariableConversion next
        end local 2 // jdk.nashorn.internal.codegen.Label recovery
        end local 1 // jdk.nashorn.internal.ir.TryNode tryNode
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    8     1   tryNode  Ljdk/nashorn/internal/ir/TryNode;
            0    8     2  recovery  Ljdk/nashorn/internal/codegen/Label;
            1    8     3      next  Ljdk/nashorn/internal/ir/LocalVariableConversion;
            4    5     4        to  Ljdk/nashorn/internal/codegen/types/Type;
    MethodParameters:
          Name  Flags
      tryNode   final
      recovery  final

  private static int dynGetOperation(boolean, boolean);
    descriptor: (ZZ)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // boolean isMethod
        start local 1 // boolean isIndex
         0: .line 2566
            iload 0 /* isMethod */
            ifeq 4
         1: .line 2567
            iload 1 /* isIndex */
            ifeq 2
            iconst_3
            goto 3
      StackMap locals:
      StackMap stack:
         2: iconst_2
      StackMap locals:
      StackMap stack: int
         3: ireturn
         4: .line 2569
      StackMap locals:
      StackMap stack:
            iload 1 /* isIndex */
            ifeq 5
            iconst_1
            goto 6
      StackMap locals:
      StackMap stack:
         5: iconst_0
      StackMap locals:
      StackMap stack: int
         6: ireturn
        end local 1 // boolean isIndex
        end local 0 // boolean isMethod
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0  isMethod  Z
            0    7     1   isIndex  Z
    MethodParameters:
          Name  Flags
      isMethod  final
      isIndex   final

  private static int dynSetOperation(boolean);
    descriptor: (Z)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // boolean isIndex
         0: .line 2574
            iload 0 /* isIndex */
            ifeq 1
            iconst_5
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_4
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // boolean isIndex
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  isIndex  Z
    MethodParameters:
         Name  Flags
      isIndex  final

  private static int dynRemoveOperation(boolean);
    descriptor: (Z)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // boolean isIndex
         0: .line 2578
            iload 0 /* isIndex */
            ifeq 1
            bipush 7
            goto 2
      StackMap locals:
      StackMap stack:
         1: bipush 6
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // boolean isIndex
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0  isIndex  Z
    MethodParameters:
         Name  Flags
      isIndex  final

  private jdk.nashorn.internal.codegen.types.Type emitLocalVariableConversion(jdk.nashorn.internal.ir.LocalVariableConversion, boolean);
    descriptor: (Ljdk/nashorn/internal/ir/LocalVariableConversion;Z)Ljdk/nashorn/internal/codegen/types/Type;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.ir.LocalVariableConversion conversion
        start local 2 // boolean onlySymbolLiveValue
         0: .line 2582
            aload 1 /* conversion */
            invokevirtual jdk.nashorn.internal.ir.LocalVariableConversion.getFrom:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 3 /* from */
        start local 3 // jdk.nashorn.internal.codegen.types.Type from
         1: .line 2583
            aload 1 /* conversion */
            invokevirtual jdk.nashorn.internal.ir.LocalVariableConversion.getTo:()Ljdk/nashorn/internal/codegen/types/Type;
            astore 4 /* to */
        start local 4 // jdk.nashorn.internal.codegen.types.Type to
         2: .line 2584
            aload 1 /* conversion */
            invokevirtual jdk.nashorn.internal.ir.LocalVariableConversion.getSymbol:()Ljdk/nashorn/internal/ir/Symbol;
            astore 5 /* symbol */
        start local 5 // jdk.nashorn.internal.ir.Symbol symbol
         3: .line 2585
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.$assertionsDisabled:Z
            ifne 4
            aload 5 /* symbol */
            invokevirtual jdk.nashorn.internal.ir.Symbol.isBytecodeLocal:()Z
            ifne 4
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         4: .line 2586
      StackMap locals: jdk.nashorn.internal.codegen.types.Type jdk.nashorn.internal.codegen.types.Type jdk.nashorn.internal.ir.Symbol
      StackMap stack:
            aload 3 /* from */
            getstatic jdk.nashorn.internal.codegen.types.Type.UNDEFINED:Ljdk/nashorn/internal/codegen/types/Type;
            if_acmpne 7
         5: .line 2587
            aload 0 /* this */
            aload 4 /* to */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.loadUndefined:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         6: .line 2588
            goto 8
         7: .line 2589
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 5 /* symbol */
            aload 3 /* from */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.load:(Ljdk/nashorn/internal/ir/Symbol;Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            aload 4 /* to */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.convert:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         8: .line 2591
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 5 /* symbol */
            aload 4 /* to */
            iload 2 /* onlySymbolLiveValue */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.store:(Ljdk/nashorn/internal/ir/Symbol;Ljdk/nashorn/internal/codegen/types/Type;Z)V
         9: .line 2592
            aload 4 /* to */
            areturn
        end local 5 // jdk.nashorn.internal.ir.Symbol symbol
        end local 4 // jdk.nashorn.internal.codegen.types.Type to
        end local 3 // jdk.nashorn.internal.codegen.types.Type from
        end local 2 // boolean onlySymbolLiveValue
        end local 1 // jdk.nashorn.internal.ir.LocalVariableConversion conversion
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   10     0                 this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0   10     1           conversion  Ljdk/nashorn/internal/ir/LocalVariableConversion;
            0   10     2  onlySymbolLiveValue  Z
            1   10     3                 from  Ljdk/nashorn/internal/codegen/types/Type;
            2   10     4                   to  Ljdk/nashorn/internal/codegen/types/Type;
            3   10     5               symbol  Ljdk/nashorn/internal/ir/Symbol;
    MethodParameters:
                     Name  Flags
      conversion           final
      onlySymbolLiveValue  final

  void print();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 2608
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.ERR_STREAM:Ljdk/nashorn/internal/codegen/CompilerConstants$FieldAccess;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.getField:(Ljdk/nashorn/internal/codegen/CompilerConstants$FieldAccess;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         1: .line 2609
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.swap:()Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         2: .line 2610
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.convert:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         3: .line 2611
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.PRINT:Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.invoke:(Ljdk/nashorn/internal/codegen/CompilerConstants$Call;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         4: .line 2612
            return
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  void println();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 2618
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.ERR_STREAM:Ljdk/nashorn/internal/codegen/CompilerConstants$FieldAccess;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.getField:(Ljdk/nashorn/internal/codegen/CompilerConstants$FieldAccess;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         1: .line 2619
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.swap:()Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         2: .line 2620
            aload 0 /* this */
            getstatic jdk.nashorn.internal.codegen.types.Type.OBJECT:Ljdk/nashorn/internal/codegen/types/Type;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.convert:(Ljdk/nashorn/internal/codegen/types/Type;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         3: .line 2621
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.PRINTLN:Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.invoke:(Ljdk/nashorn/internal/codegen/CompilerConstants$Call;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         4: .line 2622
            return
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  void print(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.String string
         0: .line 2629
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.ERR_STREAM:Ljdk/nashorn/internal/codegen/CompilerConstants$FieldAccess;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.getField:(Ljdk/nashorn/internal/codegen/CompilerConstants$FieldAccess;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         1: .line 2630
            aload 0 /* this */
            aload 1 /* string */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.load:(Ljava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         2: .line 2631
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.PRINT:Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.invoke:(Ljdk/nashorn/internal/codegen/CompilerConstants$Call;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         3: .line 2632
            return
        end local 1 // java.lang.String string
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    4     1  string  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      string  final

  void println(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.String string
         0: .line 2639
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.ERR_STREAM:Ljdk/nashorn/internal/codegen/CompilerConstants$FieldAccess;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.getField:(Ljdk/nashorn/internal/codegen/CompilerConstants$FieldAccess;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         1: .line 2640
            aload 0 /* this */
            aload 1 /* string */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.load:(Ljava/lang/String;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         2: .line 2641
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.PRINTLN:Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.invoke:(Ljdk/nashorn/internal/codegen/CompilerConstants$Call;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         3: .line 2642
            return
        end local 1 // java.lang.String string
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    4     1  string  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      string  final

  void stacktrace();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 2648
            aload 0 /* this */
            ldc Ljava/lang/Throwable;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter._new:(Ljava/lang/Class;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         1: .line 2649
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.dup:()Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         2: .line 2650
            aload 0 /* this */
            ldc Ljava/lang/Throwable;
            invokestatic jdk.nashorn.internal.codegen.CompilerConstants.constructorNoLookup:(Ljava/lang/Class;)Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.invoke:(Ljdk/nashorn/internal/codegen/CompilerConstants$Call;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         3: .line 2651
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.PRINT_STACKTRACE:Ljdk/nashorn/internal/codegen/CompilerConstants$Call;
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.invoke:(Ljdk/nashorn/internal/codegen/CompilerConstants$Call;)Ljdk/nashorn/internal/codegen/MethodEmitter;
            pop
         4: .line 2652
            return
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  private void debug(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)V
    flags: (0x0082) ACC_PRIVATE, ACC_VARARGS
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.Object[] args
         0: .line 2663
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.debug:Z
            ifeq 2
         1: .line 2664
            aload 0 /* this */
            bipush 30
            aload 1 /* args */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(I[Ljava/lang/Object;)V
         2: .line 2666
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object[] args
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  args  [Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      args  final

  private void debug(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.String arg
         0: .line 2669
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.debug:Z
            ifeq 2
         1: .line 2670
            aload 0 /* this */
            bipush 30
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aload 1 /* arg */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 2672
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String arg
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1   arg  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      arg   final

  private void debug(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.Object arg0
        start local 2 // java.lang.Object arg1
         0: .line 2675
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.debug:Z
            ifeq 2
         1: .line 2676
            aload 0 /* this */
            bipush 30
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* arg0 */
            aastore
            dup
            iconst_1
            aload 2 /* arg1 */
            aastore
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(I[Ljava/lang/Object;)V
         2: .line 2678
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.Object arg1
        end local 1 // java.lang.Object arg0
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  arg0  Ljava/lang/Object;
            0    3     2  arg1  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      arg0  final
      arg1  final

  private void debug(java.lang.Object, java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.Object arg0
        start local 2 // java.lang.Object arg1
        start local 3 // java.lang.Object arg2
         0: .line 2681
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.debug:Z
            ifeq 2
         1: .line 2682
            aload 0 /* this */
            bipush 30
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* arg0 */
            aastore
            dup
            iconst_1
            aload 2 /* arg1 */
            aastore
            dup
            iconst_2
            aload 3 /* arg2 */
            aastore
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(I[Ljava/lang/Object;)V
         2: .line 2684
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.Object arg2
        end local 2 // java.lang.Object arg1
        end local 1 // java.lang.Object arg0
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  arg0  Ljava/lang/Object;
            0    3     2  arg1  Ljava/lang/Object;
            0    3     3  arg2  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      arg0  final
      arg1  final
      arg2  final

  private void debug(java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.Object arg0
        start local 2 // java.lang.Object arg1
        start local 3 // java.lang.Object arg2
        start local 4 // java.lang.Object arg3
         0: .line 2687
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.debug:Z
            ifeq 2
         1: .line 2688
            aload 0 /* this */
            bipush 30
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* arg0 */
            aastore
            dup
            iconst_1
            aload 2 /* arg1 */
            aastore
            dup
            iconst_2
            aload 3 /* arg2 */
            aastore
            dup
            iconst_3
            aload 4 /* arg3 */
            aastore
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(I[Ljava/lang/Object;)V
         2: .line 2690
      StackMap locals:
      StackMap stack:
            return
        end local 4 // java.lang.Object arg3
        end local 3 // java.lang.Object arg2
        end local 2 // java.lang.Object arg1
        end local 1 // java.lang.Object arg0
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  arg0  Ljava/lang/Object;
            0    3     2  arg1  Ljava/lang/Object;
            0    3     3  arg2  Ljava/lang/Object;
            0    3     4  arg3  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      arg0  final
      arg1  final
      arg2  final
      arg3  final

  private void debug(java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=6, args_size=6
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.Object arg0
        start local 2 // java.lang.Object arg1
        start local 3 // java.lang.Object arg2
        start local 4 // java.lang.Object arg3
        start local 5 // java.lang.Object arg4
         0: .line 2693
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.debug:Z
            ifeq 2
         1: .line 2694
            aload 0 /* this */
            bipush 30
            iconst_5
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* arg0 */
            aastore
            dup
            iconst_1
            aload 2 /* arg1 */
            aastore
            dup
            iconst_2
            aload 3 /* arg2 */
            aastore
            dup
            iconst_3
            aload 4 /* arg3 */
            aastore
            dup
            iconst_4
            aload 5 /* arg4 */
            aastore
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(I[Ljava/lang/Object;)V
         2: .line 2696
      StackMap locals:
      StackMap stack:
            return
        end local 5 // java.lang.Object arg4
        end local 4 // java.lang.Object arg3
        end local 3 // java.lang.Object arg2
        end local 2 // java.lang.Object arg1
        end local 1 // java.lang.Object arg0
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  arg0  Ljava/lang/Object;
            0    3     2  arg1  Ljava/lang/Object;
            0    3     3  arg2  Ljava/lang/Object;
            0    3     4  arg3  Ljava/lang/Object;
            0    3     5  arg4  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      arg0  final
      arg1  final
      arg2  final
      arg3  final
      arg4  final

  private void debug(java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=7, args_size=7
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.Object arg0
        start local 2 // java.lang.Object arg1
        start local 3 // java.lang.Object arg2
        start local 4 // java.lang.Object arg3
        start local 5 // java.lang.Object arg4
        start local 6 // java.lang.Object arg5
         0: .line 2699
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.debug:Z
            ifeq 2
         1: .line 2700
            aload 0 /* this */
            bipush 30
            bipush 6
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* arg0 */
            aastore
            dup
            iconst_1
            aload 2 /* arg1 */
            aastore
            dup
            iconst_2
            aload 3 /* arg2 */
            aastore
            dup
            iconst_3
            aload 4 /* arg3 */
            aastore
            dup
            iconst_4
            aload 5 /* arg4 */
            aastore
            dup
            iconst_5
            aload 6 /* arg5 */
            aastore
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(I[Ljava/lang/Object;)V
         2: .line 2702
      StackMap locals:
      StackMap stack:
            return
        end local 6 // java.lang.Object arg5
        end local 5 // java.lang.Object arg4
        end local 4 // java.lang.Object arg3
        end local 3 // java.lang.Object arg2
        end local 2 // java.lang.Object arg1
        end local 1 // java.lang.Object arg0
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  arg0  Ljava/lang/Object;
            0    3     2  arg1  Ljava/lang/Object;
            0    3     3  arg2  Ljava/lang/Object;
            0    3     4  arg3  Ljava/lang/Object;
            0    3     5  arg4  Ljava/lang/Object;
            0    3     6  arg5  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      arg0  final
      arg1  final
      arg2  final
      arg3  final
      arg4  final
      arg5  final

  private void debug(java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=8, args_size=8
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.Object arg0
        start local 2 // java.lang.Object arg1
        start local 3 // java.lang.Object arg2
        start local 4 // java.lang.Object arg3
        start local 5 // java.lang.Object arg4
        start local 6 // java.lang.Object arg5
        start local 7 // java.lang.Object arg6
         0: .line 2705
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.debug:Z
            ifeq 2
         1: .line 2706
            aload 0 /* this */
            bipush 30
            bipush 7
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* arg0 */
            aastore
            dup
            iconst_1
            aload 2 /* arg1 */
            aastore
            dup
            iconst_2
            aload 3 /* arg2 */
            aastore
            dup
            iconst_3
            aload 4 /* arg3 */
            aastore
            dup
            iconst_4
            aload 5 /* arg4 */
            aastore
            dup
            iconst_5
            aload 6 /* arg5 */
            aastore
            dup
            bipush 6
            aload 7 /* arg6 */
            aastore
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(I[Ljava/lang/Object;)V
         2: .line 2708
      StackMap locals:
      StackMap stack:
            return
        end local 7 // java.lang.Object arg6
        end local 6 // java.lang.Object arg5
        end local 5 // java.lang.Object arg4
        end local 4 // java.lang.Object arg3
        end local 3 // java.lang.Object arg2
        end local 2 // java.lang.Object arg1
        end local 1 // java.lang.Object arg0
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  arg0  Ljava/lang/Object;
            0    3     2  arg1  Ljava/lang/Object;
            0    3     3  arg2  Ljava/lang/Object;
            0    3     4  arg3  Ljava/lang/Object;
            0    3     5  arg4  Ljava/lang/Object;
            0    3     6  arg5  Ljava/lang/Object;
            0    3     7  arg6  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      arg0  final
      arg1  final
      arg2  final
      arg3  final
      arg4  final
      arg5  final
      arg6  final

  private void debug_label(java.lang.Object[]);
    descriptor: ([Ljava/lang/Object;)V
    flags: (0x0082) ACC_PRIVATE, ACC_VARARGS
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // java.lang.Object[] args
         0: .line 2717
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.debug:Z
            ifeq 2
         1: .line 2718
            aload 0 /* this */
            bipush 22
            aload 1 /* args */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.debug:(I[Ljava/lang/Object;)V
         2: .line 2720
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object[] args
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    3     1  args  [Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      args  final

  private void debug(int, java.lang.Object[]);
    descriptor: (I[Ljava/lang/Object;)V
    flags: (0x0082) ACC_PRIVATE, ACC_VARARGS
    Code:
      stack=5, locals=10, args_size=3
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // int padConstant
        start local 2 // java.lang.Object[] args
         0: .line 2723
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.debug:Z
            ifeq 63
         1: .line 2724
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 3 /* sb */
        start local 3 // java.lang.StringBuilder sb
         2: .line 2727
            aload 3 /* sb */
            bipush 35
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         3: .line 2728
            aload 3 /* sb */
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.linePrefix:I
            iconst_1
            iadd
            dup
            putstatic jdk.nashorn.internal.codegen.MethodEmitter.linePrefix:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            pop
         4: .line 2730
            iconst_5
            aload 3 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            isub
            istore 4 /* pad */
        start local 4 // int pad
         5: .line 2731
            goto 8
         6: .line 2732
      StackMap locals: java.lang.StringBuilder int
      StackMap stack:
            aload 3 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
         7: .line 2733
            iinc 4 /* pad */ -1
         8: .line 2731
      StackMap locals:
      StackMap stack:
            iload 4 /* pad */
            ifgt 6
         9: .line 2736
            aload 0 /* this */
            invokevirtual jdk.nashorn.internal.codegen.MethodEmitter.isReachable:()Z
            ifeq 48
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.isEmpty:()Z
            ifne 48
        10: .line 2737
            aload 3 /* sb */
            ldc "{"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 2738
            aload 3 /* sb */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.size:()I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            pop
        12: .line 2739
            aload 3 /* sb */
            ldc ":"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        13: .line 2740
            iconst_0
            istore 5 /* pos */
        start local 5 // int pos
        14: goto 45
        15: .line 2741
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            iload 5 /* pos */
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.peek:(I)Ljdk/nashorn/internal/codegen/types/Type;
            astore 6 /* t */
        start local 6 // jdk.nashorn.internal.codegen.types.Type t
        16: .line 2743
            aload 6 /* t */
            getstatic jdk.nashorn.internal.codegen.types.Type.SCOPE:Ljdk/nashorn/internal/codegen/types/Type;
            if_acmpne 19
        17: .line 2744
            aload 3 /* sb */
            ldc "scope"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        18: .line 2745
            goto 39
      StackMap locals: jdk.nashorn.internal.codegen.types.Type
      StackMap stack:
        19: aload 6 /* t */
            getstatic jdk.nashorn.internal.codegen.types.Type.THIS:Ljdk/nashorn/internal/codegen/types/Type;
            if_acmpne 22
        20: .line 2746
            aload 3 /* sb */
            ldc "this"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        21: .line 2747
            goto 39
      StackMap locals:
      StackMap stack:
        22: aload 6 /* t */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.isObject:()Z
            ifeq 38
        23: .line 2748
            aload 6 /* t */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.getDescriptor:()Ljava/lang/String;
            astore 7 /* desc */
        start local 7 // java.lang.String desc
        24: .line 2750
            iconst_0
            istore 8 /* i */
        start local 8 // int i
        25: goto 28
        26: .line 2751
      StackMap locals: java.lang.String int
      StackMap stack:
            aload 3 /* sb */
            bipush 91
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        27: .line 2750
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        28: aload 7 /* desc */
            iload 8 /* i */
            invokevirtual java.lang.String.charAt:(I)C
            bipush 91
            if_icmpne 29
            iload 8 /* i */
            aload 7 /* desc */
            invokevirtual java.lang.String.length:()I
            if_icmplt 26
        29: .line 2753
      StackMap locals:
      StackMap stack:
            aload 7 /* desc */
            iload 8 /* i */
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 7 /* desc */
        30: .line 2754
            aload 7 /* desc */
            bipush 47
            invokevirtual java.lang.String.lastIndexOf:(I)I
            istore 9 /* slash */
        start local 9 // int slash
        31: .line 2755
            iload 9 /* slash */
            iconst_m1
            if_icmpeq 33
        32: .line 2756
            aload 7 /* desc */
            iload 9 /* slash */
            iconst_1
            iadd
            aload 7 /* desc */
            invokevirtual java.lang.String.length:()I
            iconst_1
            isub
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            astore 7 /* desc */
        33: .line 2758
      StackMap locals: int
      StackMap stack:
            ldc "Object"
            aload 7 /* desc */
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 36
        34: .line 2759
            aload 3 /* sb */
            bipush 79
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        35: .line 2760
            goto 39
        36: .line 2761
      StackMap locals:
      StackMap stack:
            aload 3 /* sb */
            aload 7 /* desc */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        end local 9 // int slash
        end local 8 // int i
        end local 7 // java.lang.String desc
        37: .line 2763
            goto 39
        38: .line 2764
      StackMap locals:
      StackMap stack:
            aload 3 /* sb */
            aload 6 /* t */
            invokevirtual jdk.nashorn.internal.codegen.types.Type.getDescriptor:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        39: .line 2766
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            getfield jdk.nashorn.internal.codegen.Label$Stack.localLoads:[I
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            getfield jdk.nashorn.internal.codegen.Label$Stack.sp:I
            iconst_1
            isub
            iload 5 /* pos */
            isub
            iaload
            istore 7 /* loadIndex */
        start local 7 // int loadIndex
        40: .line 2767
            iload 7 /* loadIndex */
            iconst_m1
            if_icmpeq 42
        41: .line 2768
            aload 3 /* sb */
            bipush 40
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            iload 7 /* loadIndex */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            bipush 41
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        42: .line 2770
      StackMap locals: int
      StackMap stack:
            iload 5 /* pos */
            iconst_1
            iadd
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.size:()I
            if_icmpge 44
        43: .line 2771
            aload 3 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 7 // int loadIndex
        end local 6 // jdk.nashorn.internal.codegen.types.Type t
        44: .line 2740
      StackMap locals:
      StackMap stack:
            iinc 5 /* pos */ 1
      StackMap locals:
      StackMap stack:
        45: iload 5 /* pos */
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.stack:Ljdk/nashorn/internal/codegen/Label$Stack;
            invokevirtual jdk.nashorn.internal.codegen.Label$Stack.size:()I
            if_icmplt 15
        end local 5 // int pos
        46: .line 2774
            aload 3 /* sb */
            bipush 125
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        47: .line 2775
            aload 3 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        48: .line 2778
      StackMap locals:
      StackMap stack:
            iload 1 /* padConstant */
            aload 3 /* sb */
            invokevirtual java.lang.StringBuilder.length:()I
            isub
            istore 4 /* pad */
        49: .line 2779
            goto 52
        50: .line 2780
      StackMap locals:
      StackMap stack:
            aload 3 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        51: .line 2781
            iinc 4 /* pad */ -1
        52: .line 2779
      StackMap locals:
      StackMap stack:
            iload 4 /* pad */
            ifgt 50
        53: .line 2784
            aload 2 /* args */
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 58
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter int java.lang.Object[] java.lang.StringBuilder int top int int java.lang.Object[]
      StackMap stack:
        54: aload 8
            iload 6
            aaload
            astore 5 /* arg */
        start local 5 // java.lang.Object arg
        55: .line 2785
            aload 3 /* sb */
            aload 5 /* arg */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            pop
        56: .line 2786
            aload 3 /* sb */
            bipush 32
            invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
            pop
        end local 5 // java.lang.Object arg
        57: .line 2784
            iinc 6 1
      StackMap locals:
      StackMap stack:
        58: iload 6
            iload 7
            if_icmplt 54
        59: .line 2789
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.context:Ljdk/nashorn/internal/runtime/Context;
            invokevirtual jdk.nashorn.internal.runtime.Context.getEnv:()Ljdk/nashorn/internal/runtime/ScriptEnvironment;
            ifnull 63
        60: .line 2790
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.log:Ljdk/nashorn/internal/runtime/logging/DebugLogger;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 3 /* sb */
            aastore
            invokevirtual jdk.nashorn.internal.runtime.logging.DebugLogger.info:([Ljava/lang/Object;)V
        61: .line 2791
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.DEBUG_TRACE_LINE:I
            getstatic jdk.nashorn.internal.codegen.MethodEmitter.linePrefix:I
            if_icmpne 63
        62: .line 2792
            new java.lang.Throwable
            dup
            invokespecial java.lang.Throwable.<init>:()V
            aload 0 /* this */
            getfield jdk.nashorn.internal.codegen.MethodEmitter.log:Ljdk/nashorn/internal/runtime/logging/DebugLogger;
            invokevirtual jdk.nashorn.internal.runtime.logging.DebugLogger.getOutputStream:()Ljava/io/PrintWriter;
            invokevirtual java.lang.Throwable.printStackTrace:(Ljava/io/PrintWriter;)V
        end local 4 // int pad
        end local 3 // java.lang.StringBuilder sb
        63: .line 2796
      StackMap locals: jdk.nashorn.internal.codegen.MethodEmitter int java.lang.Object[]
      StackMap stack:
            return
        end local 2 // java.lang.Object[] args
        end local 1 // int padConstant
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   64     0         this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0   64     1  padConstant  I
            0   64     2         args  [Ljava/lang/Object;
            2   63     3           sb  Ljava/lang/StringBuilder;
            5   63     4          pad  I
           14   46     5          pos  I
           16   44     6            t  Ljdk/nashorn/internal/codegen/types/Type;
           24   37     7         desc  Ljava/lang/String;
           25   37     8            i  I
           31   37     9        slash  I
           40   44     7    loadIndex  I
           55   57     5          arg  Ljava/lang/Object;
    MethodParameters:
             Name  Flags
      padConstant  final
      args         final

  void setFunctionNode(jdk.nashorn.internal.ir.FunctionNode);
    descriptor: (Ljdk/nashorn/internal/ir/FunctionNode;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
        start local 1 // jdk.nashorn.internal.ir.FunctionNode functionNode
         0: .line 2803
            aload 0 /* this */
            aload 1 /* functionNode */
            putfield jdk.nashorn.internal.codegen.MethodEmitter.functionNode:Ljdk/nashorn/internal/ir/FunctionNode;
         1: .line 2804
            return
        end local 1 // jdk.nashorn.internal.ir.FunctionNode functionNode
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Ljdk/nashorn/internal/codegen/MethodEmitter;
            0    2     1  functionNode  Ljdk/nashorn/internal/ir/FunctionNode;
    MethodParameters:
              Name  Flags
      functionNode  final

  void setPreventUndefinedLoad();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
         0: .line 2813
            aload 0 /* this */
            iconst_1
            putfield jdk.nashorn.internal.codegen.MethodEmitter.preventUndefinedLoad:Z
         1: .line 2814
            return
        end local 0 // jdk.nashorn.internal.codegen.MethodEmitter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/nashorn/internal/codegen/MethodEmitter;

  private static boolean isOptimistic(int);
    descriptor: (I)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // int flags
         0: .line 2817
            iload 0 /* flags */
            sipush 128
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // int flags
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0  flags  I
    MethodParameters:
       Name  Flags
      flags  final
}
SourceFile: "MethodEmitter.java"
NestMembers:
  jdk.nashorn.internal.codegen.MethodEmitter$LocalVariableDef
InnerClasses:
  final Flag = jdk.nashorn.internal.codegen.ClassEmitter$Flag of jdk.nashorn.internal.codegen.ClassEmitter
  public abstract Call = jdk.nashorn.internal.codegen.CompilerConstants$Call of jdk.nashorn.internal.codegen.CompilerConstants
  public abstract FieldAccess = jdk.nashorn.internal.codegen.CompilerConstants$FieldAccess of jdk.nashorn.internal.codegen.CompilerConstants
  final Stack = jdk.nashorn.internal.codegen.Label$Stack of jdk.nashorn.internal.codegen.Label
  private LocalVariableDef = jdk.nashorn.internal.codegen.MethodEmitter$LocalVariableDef of jdk.nashorn.internal.codegen.MethodEmitter