public class org.graalvm.compiler.replacements.classfile.ClassfileBytecode implements org.graalvm.compiler.bytecode.Bytecode
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.graalvm.compiler.replacements.classfile.ClassfileBytecode
  super_class: java.lang.Object
{
  private static final int EXCEPTION_HANDLER_TABLE_SIZE_IN_BYTES;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 8

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

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

  private final jdk.vm.ci.meta.ResolvedJavaMethod method;
    descriptor: Ljdk/vm/ci/meta/ResolvedJavaMethod;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.graalvm.compiler.replacements.classfile.ClassfileConstantPool constantPool;
    descriptor: Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private byte[] code;
    descriptor: [B
    flags: (0x0002) ACC_PRIVATE

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

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

  private byte[] exceptionTableBytes;
    descriptor: [B
    flags: (0x0002) ACC_PRIVATE

  private byte[] lineNumberTableBytes;
    descriptor: [B
    flags: (0x0002) ACC_PRIVATE

  private byte[] localVariableTableBytes;
    descriptor: [B
    flags: (0x0002) ACC_PRIVATE

  public void <init>(jdk.vm.ci.meta.ResolvedJavaMethod, java.io.DataInputStream, org.graalvm.compiler.replacements.classfile.ClassfileConstantPool);
    descriptor: (Ljdk/vm/ci/meta/ResolvedJavaMethod;Ljava/io/DataInputStream;Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
        start local 1 // jdk.vm.ci.meta.ResolvedJavaMethod method
        start local 2 // java.io.DataInputStream stream
        start local 3 // org.graalvm.compiler.replacements.classfile.ClassfileConstantPool constantPool
         0: .line 70
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 71
            aload 0 /* this */
            aload 1 /* method */
            putfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.method:Ljdk/vm/ci/meta/ResolvedJavaMethod;
         2: .line 72
            aload 0 /* this */
            aload 3 /* constantPool */
            putfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.constantPool:Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;
         3: .line 73
            aload 0 /* this */
            aload 2 /* stream */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            putfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.maxStack:I
         4: .line 74
            aload 0 /* this */
            aload 2 /* stream */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            putfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.maxLocals:I
         5: .line 75
            aload 2 /* stream */
            invokevirtual java.io.DataInputStream.readInt:()I
            istore 4 /* codeLength */
        start local 4 // int codeLength
         6: .line 76
            aload 0 /* this */
            iload 4 /* codeLength */
            newarray 8
            putfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.code:[B
         7: .line 77
            aload 2 /* stream */
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.code:[B
            invokevirtual java.io.DataInputStream.readFully:([B)V
         8: .line 78
            aload 2 /* stream */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            istore 5 /* exceptionTableLength */
        start local 5 // int exceptionTableLength
         9: .line 79
            aload 0 /* this */
            iload 5 /* exceptionTableLength */
            bipush 8
            imul
            newarray 8
            putfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.exceptionTableBytes:[B
        10: .line 80
            aload 2 /* stream */
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.exceptionTableBytes:[B
            invokevirtual java.io.DataInputStream.readFully:([B)V
        11: .line 81
            aload 0 /* this */
            aload 2 /* stream */
            invokevirtual org.graalvm.compiler.replacements.classfile.ClassfileBytecode.readCodeAttributes:(Ljava/io/DataInputStream;)V
        12: .line 82
            return
        end local 5 // int exceptionTableLength
        end local 4 // int codeLength
        end local 3 // org.graalvm.compiler.replacements.classfile.ClassfileConstantPool constantPool
        end local 2 // java.io.DataInputStream stream
        end local 1 // jdk.vm.ci.meta.ResolvedJavaMethod method
        end local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   13     0                  this  Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecode;
            0   13     1                method  Ljdk/vm/ci/meta/ResolvedJavaMethod;
            0   13     2                stream  Ljava/io/DataInputStream;
            0   13     3          constantPool  Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;
            6   13     4            codeLength  I
            9   13     5  exceptionTableLength  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
              Name  Flags
      method        
      stream        
      constantPool  

  public org.graalvm.compiler.bytecode.BytecodeProvider getOrigin();
    descriptor: ()Lorg/graalvm/compiler/bytecode/BytecodeProvider;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
         0: .line 86
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.constantPool:Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;
            getfield org.graalvm.compiler.replacements.classfile.ClassfileConstantPool.context:Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecodeProvider;
            areturn
        end local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecode;

  private void readCodeAttributes(java.io.DataInputStream);
    descriptor: (Ljava/io/DataInputStream;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=8, args_size=2
        start local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
        start local 1 // java.io.DataInputStream stream
         0: .line 90
            aload 1 /* stream */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            istore 2 /* count */
        start local 2 // int count
         1: .line 91
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         2: goto 18
         3: .line 92
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.constantPool:Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;
            ldc Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant$Utf8;
            aload 1 /* stream */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            invokevirtual org.graalvm.compiler.replacements.classfile.ClassfileConstantPool.get:(Ljava/lang/Class;I)Lorg/graalvm/compiler/replacements/classfile/ClassfileConstant;
            checkcast org.graalvm.compiler.replacements.classfile.ClassfileConstant$Utf8
            getfield org.graalvm.compiler.replacements.classfile.ClassfileConstant$Utf8.value:Ljava/lang/String;
            astore 4 /* attributeName */
        start local 4 // java.lang.String attributeName
         4: .line 93
            aload 1 /* stream */
            invokevirtual java.io.DataInputStream.readInt:()I
            istore 5 /* attributeLength */
        start local 5 // int attributeLength
         5: .line 94
            aload 4 /* attributeName */
            dup
            astore 6
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 2
           1690786087: 6
           1698628945: 7
              default: 16
          }
      StackMap locals: java.lang.String int java.lang.String
      StackMap stack:
         6: aload 6
            ldc "LocalVariableTable"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 8
            goto 16
      StackMap locals:
      StackMap stack:
         7: aload 6
            ldc "LineNumberTable"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 12
            goto 16
         8: .line 96
      StackMap locals:
      StackMap stack:
            aload 1 /* stream */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            istore 7 /* length */
        start local 7 // int length
         9: .line 97
            aload 0 /* this */
            iload 7 /* length */
            bipush 10
            imul
            newarray 8
            putfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.localVariableTableBytes:[B
        10: .line 98
            aload 1 /* stream */
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.localVariableTableBytes:[B
            invokevirtual java.io.DataInputStream.readFully:([B)V
        11: .line 99
            goto 17
        end local 7 // int length
        12: .line 102
      StackMap locals:
      StackMap stack:
            aload 1 /* stream */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            istore 7 /* length */
        start local 7 // int length
        13: .line 103
            aload 0 /* this */
            iload 7 /* length */
            iconst_4
            imul
            newarray 8
            putfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.lineNumberTableBytes:[B
        14: .line 104
            aload 1 /* stream */
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.lineNumberTableBytes:[B
            invokevirtual java.io.DataInputStream.readFully:([B)V
        15: .line 105
            goto 17
        end local 7 // int length
        16: .line 108
      StackMap locals:
      StackMap stack:
            aload 1 /* stream */
            iload 5 /* attributeLength */
            invokestatic org.graalvm.compiler.replacements.classfile.Classfile.skipFully:(Ljava/io/DataInputStream;I)V
        end local 5 // int attributeLength
        end local 4 // java.lang.String attributeName
        17: .line 91
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 3 /* i */
            iload 2 /* count */
            if_icmplt 3
        end local 3 // int i
        19: .line 113
            return
        end local 2 // int count
        end local 1 // java.io.DataInputStream stream
        end local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   20     0             this  Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecode;
            0   20     1           stream  Ljava/io/DataInputStream;
            1   20     2            count  I
            2   19     3                i  I
            4   17     4    attributeName  Ljava/lang/String;
            5   17     5  attributeLength  I
            9   12     7           length  I
           13   16     7           length  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      stream  

  public byte[] getCode();
    descriptor: ()[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
         0: .line 117
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.code:[B
            areturn
        end local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecode;

  public int getCodeSize();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
         0: .line 122
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.code:[B
            arraylength
            ireturn
        end local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecode;

  public int getMaxLocals();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
         0: .line 127
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.maxLocals:I
            ireturn
        end local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecode;

  public int getMaxStackSize();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
         0: .line 132
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.maxStack:I
            ireturn
        end local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecode;

  public jdk.vm.ci.meta.ExceptionHandler[] getExceptionHandlers();
    descriptor: ()[Ljdk/vm/ci/meta/ExceptionHandler;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=10, args_size=1
        start local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
         0: .line 137
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.exceptionTableBytes:[B
            ifnonnull 2
         1: .line 138
            iconst_0
            anewarray jdk.vm.ci.meta.ExceptionHandler
            areturn
         2: .line 141
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.exceptionTableBytes:[B
            arraylength
            bipush 8
            idiv
            istore 1 /* exceptionTableLength */
        start local 1 // int exceptionTableLength
         3: .line 142
            iload 1 /* exceptionTableLength */
            anewarray jdk.vm.ci.meta.ExceptionHandler
            astore 2 /* handlers */
        start local 2 // jdk.vm.ci.meta.ExceptionHandler[] handlers
         4: .line 143
            new java.io.DataInputStream
            dup
            new java.io.ByteArrayInputStream
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.exceptionTableBytes:[B
            invokespecial java.io.ByteArrayInputStream.<init>:([B)V
            invokespecial java.io.DataInputStream.<init>:(Ljava/io/InputStream;)V
            astore 3 /* stream */
        start local 3 // java.io.DataInputStream stream
         5: .line 145
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         6: goto 23
         7: .line 147
      StackMap locals: org.graalvm.compiler.replacements.classfile.ClassfileBytecode int jdk.vm.ci.meta.ExceptionHandler[] java.io.DataInputStream int
      StackMap stack:
            aload 3 /* stream */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            istore 5 /* startPc */
        start local 5 // int startPc
         8: .line 148
            aload 3 /* stream */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            istore 6 /* endPc */
        start local 6 // int endPc
         9: .line 149
            aload 3 /* stream */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            istore 7 /* handlerPc */
        start local 7 // int handlerPc
        10: .line 150
            aload 3 /* stream */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            istore 8 /* catchTypeIndex */
        start local 8 // int catchTypeIndex
        11: .line 153
            iload 8 /* catchTypeIndex */
            ifne 14
        12: .line 154
            aconst_null
            astore 9 /* catchType */
        start local 9 // jdk.vm.ci.meta.JavaType catchType
        13: .line 155
            goto 18
        end local 9 // jdk.vm.ci.meta.JavaType catchType
        14: .line 157
      StackMap locals: org.graalvm.compiler.replacements.classfile.ClassfileBytecode int jdk.vm.ci.meta.ExceptionHandler[] java.io.DataInputStream int int int int int
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.constantPool:Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;
            iload 8 /* catchTypeIndex */
            iconst_m1
            invokevirtual org.graalvm.compiler.replacements.classfile.ClassfileConstantPool.lookupType:(II)Ljdk/vm/ci/meta/JavaType;
            astore 9 /* catchType */
        start local 9 // jdk.vm.ci.meta.JavaType catchType
        15: .line 160
            aload 9 /* catchType */
            invokeinterface jdk.vm.ci.meta.JavaType.toJavaName:()Ljava/lang/String;
            ldc "java.lang.Throwable"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 18
        16: .line 161
            iconst_0
            istore 8 /* catchTypeIndex */
        17: .line 162
            aconst_null
            astore 9 /* catchType */
        18: .line 165
      StackMap locals: jdk.vm.ci.meta.JavaType
      StackMap stack:
            aload 2 /* handlers */
            iload 4 /* i */
            new jdk.vm.ci.meta.ExceptionHandler
            dup
            iload 5 /* startPc */
            iload 6 /* endPc */
            iload 7 /* handlerPc */
            iload 8 /* catchTypeIndex */
            aload 9 /* catchType */
            invokespecial jdk.vm.ci.meta.ExceptionHandler.<init>:(IIIILjdk/vm/ci/meta/JavaType;)V
            aastore
        end local 9 // jdk.vm.ci.meta.JavaType catchType
        end local 8 // int catchTypeIndex
        end local 7 // int handlerPc
        end local 6 // int endPc
        end local 5 // int startPc
        19: .line 166
            goto 22
      StackMap locals: org.graalvm.compiler.replacements.classfile.ClassfileBytecode int jdk.vm.ci.meta.ExceptionHandler[] java.io.DataInputStream int
      StackMap stack: java.io.IOException
        20: astore 5 /* e */
        start local 5 // java.io.IOException e
        21: .line 167
            new org.graalvm.compiler.debug.GraalError
            dup
            aload 5 /* e */
            invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 5 // java.io.IOException e
        22: .line 145
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        23: iload 4 /* i */
            iload 1 /* exceptionTableLength */
            if_icmplt 7
        end local 4 // int i
        24: .line 171
            aload 2 /* handlers */
            areturn
        end local 3 // java.io.DataInputStream stream
        end local 2 // jdk.vm.ci.meta.ExceptionHandler[] handlers
        end local 1 // int exceptionTableLength
        end local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0   25     0                  this  Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecode;
            3   25     1  exceptionTableLength  I
            4   25     2              handlers  [Ljdk/vm/ci/meta/ExceptionHandler;
            5   25     3                stream  Ljava/io/DataInputStream;
            6   24     4                     i  I
            8   19     5               startPc  I
            9   19     6                 endPc  I
           10   19     7             handlerPc  I
           11   19     8        catchTypeIndex  I
           13   14     9             catchType  Ljdk/vm/ci/meta/JavaType;
           15   19     9             catchType  Ljdk/vm/ci/meta/JavaType;
           21   22     5                     e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           7    19      20  Class java.io.IOException

  public java.lang.StackTraceElement asStackTraceElement(int);
    descriptor: (I)Ljava/lang/StackTraceElement;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
        start local 1 // int bci
         0: .line 176
            aload 0 /* this */
            invokevirtual org.graalvm.compiler.replacements.classfile.ClassfileBytecode.getLineNumberTable:()Ljdk/vm/ci/meta/LineNumberTable;
            iload 1 /* bci */
            invokevirtual jdk.vm.ci.meta.LineNumberTable.getLineNumber:(I)I
            istore 2 /* line */
        start local 2 // int line
         1: .line 177
            new java.lang.StackTraceElement
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.method:Ljdk/vm/ci/meta/ResolvedJavaMethod;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getDeclaringClass:()Ljdk/vm/ci/meta/ResolvedJavaType;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.toJavaName:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.method:Ljdk/vm/ci/meta/ResolvedJavaMethod;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getName:()Ljava/lang/String;
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.method:Ljdk/vm/ci/meta/ResolvedJavaMethod;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.getDeclaringClass:()Ljdk/vm/ci/meta/ResolvedJavaType;
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.getSourceFileName:()Ljava/lang/String;
            iload 2 /* line */
            invokespecial java.lang.StackTraceElement.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V
            areturn
        end local 2 // int line
        end local 1 // int bci
        end local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecode;
            0    2     1   bci  I
            1    2     2  line  I
    MethodParameters:
      Name  Flags
      bci   

  public jdk.vm.ci.meta.ConstantPool getConstantPool();
    descriptor: ()Ljdk/vm/ci/meta/ConstantPool;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
         0: .line 182
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.constantPool:Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;
            areturn
        end local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecode;

  public jdk.vm.ci.meta.LineNumberTable getLineNumberTable();
    descriptor: ()Ljdk/vm/ci/meta/LineNumberTable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=7, args_size=1
        start local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
         0: .line 187
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.lineNumberTableBytes:[B
            ifnonnull 2
         1: .line 188
            aconst_null
            areturn
         2: .line 191
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.lineNumberTableBytes:[B
            arraylength
            iconst_4
            idiv
            istore 1 /* lineNumberTableLength */
        start local 1 // int lineNumberTableLength
         3: .line 192
            new java.io.DataInputStream
            dup
            new java.io.ByteArrayInputStream
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.lineNumberTableBytes:[B
            invokespecial java.io.ByteArrayInputStream.<init>:([B)V
            invokespecial java.io.DataInputStream.<init>:(Ljava/io/InputStream;)V
            astore 2 /* stream */
        start local 2 // java.io.DataInputStream stream
         4: .line 193
            iload 1 /* lineNumberTableLength */
            newarray 10
            astore 3 /* bci */
        start local 3 // int[] bci
         5: .line 194
            iload 1 /* lineNumberTableLength */
            newarray 10
            astore 4 /* line */
        start local 4 // int[] line
         6: .line 196
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         7: goto 14
         8: .line 198
      StackMap locals: org.graalvm.compiler.replacements.classfile.ClassfileBytecode int java.io.DataInputStream int[] int[] int
      StackMap stack:
            aload 3 /* bci */
            iload 5 /* i */
            aload 2 /* stream */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            iastore
         9: .line 199
            aload 4 /* line */
            iload 5 /* i */
            aload 2 /* stream */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            iastore
        10: .line 200
            goto 13
      StackMap locals:
      StackMap stack: java.io.IOException
        11: astore 6 /* e */
        start local 6 // java.io.IOException e
        12: .line 201
            new org.graalvm.compiler.debug.GraalError
            dup
            aload 6 /* e */
            invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 6 // java.io.IOException e
        13: .line 196
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 5 /* i */
            iload 1 /* lineNumberTableLength */
            if_icmplt 8
        end local 5 // int i
        15: .line 205
            new jdk.vm.ci.meta.LineNumberTable
            dup
            aload 4 /* line */
            aload 3 /* bci */
            invokespecial jdk.vm.ci.meta.LineNumberTable.<init>:([I[I)V
            areturn
        end local 4 // int[] line
        end local 3 // int[] bci
        end local 2 // java.io.DataInputStream stream
        end local 1 // int lineNumberTableLength
        end local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   16     0                   this  Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecode;
            3   16     1  lineNumberTableLength  I
            4   16     2                 stream  Ljava/io/DataInputStream;
            5   16     3                    bci  [I
            6   16     4                   line  [I
            7   15     5                      i  I
           12   13     6                      e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           8    10      11  Class java.io.IOException

  public jdk.vm.ci.meta.LocalVariableTable getLocalVariableTable();
    descriptor: ()Ljdk/vm/ci/meta/LocalVariableTable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=14, args_size=1
        start local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
         0: .line 210
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.localVariableTableBytes:[B
            ifnonnull 2
         1: .line 211
            aconst_null
            areturn
         2: .line 214
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.localVariableTableBytes:[B
            arraylength
            bipush 10
            idiv
            istore 1 /* localVariableTableLength */
        start local 1 // int localVariableTableLength
         3: .line 215
            new java.io.DataInputStream
            dup
            new java.io.ByteArrayInputStream
            dup
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.localVariableTableBytes:[B
            invokespecial java.io.ByteArrayInputStream.<init>:([B)V
            invokespecial java.io.DataInputStream.<init>:(Ljava/io/InputStream;)V
            astore 2 /* stream */
        start local 2 // java.io.DataInputStream stream
         4: .line 216
            iload 1 /* localVariableTableLength */
            anewarray jdk.vm.ci.meta.Local
            astore 3 /* locals */
        start local 3 // jdk.vm.ci.meta.Local[] locals
         5: .line 218
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         6: goto 21
         7: .line 220
      StackMap locals: org.graalvm.compiler.replacements.classfile.ClassfileBytecode int java.io.DataInputStream jdk.vm.ci.meta.Local[] int
      StackMap stack:
            aload 2 /* stream */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            istore 5 /* startBci */
        start local 5 // int startBci
         8: .line 221
            iload 5 /* startBci */
            aload 2 /* stream */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            iadd
            istore 6 /* endBci */
        start local 6 // int endBci
         9: .line 222
            aload 2 /* stream */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            istore 7 /* nameCpIndex */
        start local 7 // int nameCpIndex
        10: .line 223
            aload 2 /* stream */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            istore 8 /* typeCpIndex */
        start local 8 // int typeCpIndex
        11: .line 224
            aload 2 /* stream */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            istore 9 /* slot */
        start local 9 // int slot
        12: .line 226
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.constantPool:Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;
            iload 7 /* nameCpIndex */
            invokevirtual org.graalvm.compiler.replacements.classfile.ClassfileConstantPool.lookupUtf8:(I)Ljava/lang/String;
            astore 10 /* localName */
        start local 10 // java.lang.String localName
        13: .line 227
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.constantPool:Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;
            iload 8 /* typeCpIndex */
            invokevirtual org.graalvm.compiler.replacements.classfile.ClassfileConstantPool.lookupUtf8:(I)Ljava/lang/String;
            astore 11 /* localType */
        start local 11 // java.lang.String localType
        14: .line 229
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.constantPool:Lorg/graalvm/compiler/replacements/classfile/ClassfileConstantPool;
            getfield org.graalvm.compiler.replacements.classfile.ClassfileConstantPool.context:Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecodeProvider;
            astore 12 /* context */
        start local 12 // org.graalvm.compiler.replacements.classfile.ClassfileBytecodeProvider context
        15: .line 230
            aload 12 /* context */
            aload 11 /* localType */
            invokevirtual org.graalvm.compiler.replacements.classfile.ClassfileBytecodeProvider.resolveToClass:(Ljava/lang/String;)Ljava/lang/Class;
            astore 13 /* c */
        start local 13 // java.lang.Class c
        16: .line 231
            aload 3 /* locals */
            iload 4 /* i */
            new jdk.vm.ci.meta.Local
            dup
            aload 10 /* localName */
            aload 12 /* context */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecodeProvider.metaAccess:Ljdk/vm/ci/meta/MetaAccessProvider;
            aload 13 /* c */
            invokeinterface jdk.vm.ci.meta.MetaAccessProvider.lookupJavaType:(Ljava/lang/Class;)Ljdk/vm/ci/meta/ResolvedJavaType;
            iload 5 /* startBci */
            iload 6 /* endBci */
            iload 9 /* slot */
            invokespecial jdk.vm.ci.meta.Local.<init>:(Ljava/lang/String;Ljdk/vm/ci/meta/JavaType;III)V
            aastore
        end local 13 // java.lang.Class c
        end local 12 // org.graalvm.compiler.replacements.classfile.ClassfileBytecodeProvider context
        end local 11 // java.lang.String localType
        end local 10 // java.lang.String localName
        end local 9 // int slot
        end local 8 // int typeCpIndex
        end local 7 // int nameCpIndex
        end local 6 // int endBci
        end local 5 // int startBci
        17: .line 232
            goto 20
      StackMap locals:
      StackMap stack: java.io.IOException
        18: astore 5 /* e */
        start local 5 // java.io.IOException e
        19: .line 233
            new org.graalvm.compiler.debug.GraalError
            dup
            aload 5 /* e */
            invokespecial org.graalvm.compiler.debug.GraalError.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 5 // java.io.IOException e
        20: .line 218
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        21: iload 4 /* i */
            iload 1 /* localVariableTableLength */
            if_icmplt 7
        end local 4 // int i
        22: .line 237
            new jdk.vm.ci.meta.LocalVariableTable
            dup
            aload 3 /* locals */
            invokespecial jdk.vm.ci.meta.LocalVariableTable.<init>:([Ljdk/vm/ci/meta/Local;)V
            areturn
        end local 3 // jdk.vm.ci.meta.Local[] locals
        end local 2 // java.io.DataInputStream stream
        end local 1 // int localVariableTableLength
        end local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0   23     0                      this  Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecode;
            3   23     1  localVariableTableLength  I
            4   23     2                    stream  Ljava/io/DataInputStream;
            5   23     3                    locals  [Ljdk/vm/ci/meta/Local;
            6   22     4                         i  I
            8   17     5                  startBci  I
            9   17     6                    endBci  I
           10   17     7               nameCpIndex  I
           11   17     8               typeCpIndex  I
           12   17     9                      slot  I
           13   17    10                 localName  Ljava/lang/String;
           14   17    11                 localType  Ljava/lang/String;
           15   17    12                   context  Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecodeProvider;
           16   17    13                         c  Ljava/lang/Class<*>;
           19   20     5                         e  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           7    17      18  Class java.io.IOException

  public jdk.vm.ci.meta.ResolvedJavaMethod getMethod();
    descriptor: ()Ljdk/vm/ci/meta/ResolvedJavaMethod;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
         0: .line 242
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.method:Ljdk/vm/ci/meta/ResolvedJavaMethod;
            areturn
        end local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecode;

  public jdk.vm.ci.meta.ProfilingInfo getProfilingInfo();
    descriptor: ()Ljdk/vm/ci/meta/ProfilingInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
         0: .line 247
            getstatic jdk.vm.ci.meta.TriState.FALSE:Ljdk/vm/ci/meta/TriState;
            invokestatic jdk.vm.ci.meta.DefaultProfilingInfo.get:(Ljdk/vm/ci/meta/TriState;)Ljdk/vm/ci/meta/ProfilingInfo;
            areturn
        end local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecode;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
         0: .line 252
            new java.lang.StringBuilder
            dup
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield org.graalvm.compiler.replacements.classfile.ClassfileBytecode.method:Ljdk/vm/ci/meta/ResolvedJavaMethod;
            ldc "<%H.%n(%p)>"
            invokeinterface jdk.vm.ci.meta.ResolvedJavaMethod.format:(Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // org.graalvm.compiler.replacements.classfile.ClassfileBytecode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/graalvm/compiler/replacements/classfile/ClassfileBytecode;
}
SourceFile: "ClassfileBytecode.java"
InnerClasses:
  Utf8 = org.graalvm.compiler.replacements.classfile.ClassfileConstant$Utf8 of org.graalvm.compiler.replacements.classfile.ClassfileConstant