final class jdk.tools.jaotc.CompiledMethodInfo
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: jdk.tools.jaotc.CompiledMethodInfo
  super_class: java.lang.Object
{
  private static final int UNINITIALIZED_OFFSET;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -1

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

  private org.graalvm.compiler.code.CompilationResult compilationResult;
    descriptor: Lorg/graalvm/compiler/code/CompilationResult;
    flags: (0x0002) ACC_PRIVATE

  private jdk.tools.jaotc.JavaMethodInfo methodInfo;
    descriptor: Ljdk/tools/jaotc/JavaMethodInfo;
    flags: (0x0002) ACC_PRIVATE

  private jdk.vm.ci.hotspot.HotSpotCompiledCode code;
    descriptor: Ljdk/vm/ci/hotspot/HotSpotCompiledCode;
    flags: (0x0002) ACC_PRIVATE

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

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

  private jdk.tools.jaotc.CompiledMethodInfo$AOTMethodOffsets methodOffsets;
    descriptor: Ljdk/tools/jaotc/CompiledMethodInfo$AOTMethodOffsets;
    flags: (0x0002) ACC_PRIVATE

  private java.util.HashMap<java.lang.String, jdk.tools.jaotc.StubInformation> stubs;
    descriptor: Ljava/util/HashMap;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/HashMap<Ljava/lang/String;Ljdk/tools/jaotc/StubInformation;>;

  private java.util.HashSet<jdk.tools.jaotc.AOTCompiledClass$AOTKlassData> dependentKlasses;
    descriptor: Ljava/util/HashSet;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/HashSet<Ljdk/tools/jaotc/AOTCompiledClass$AOTKlassData;>;

  private static final java.util.concurrent.atomic.AtomicInteger methodsCount;
    descriptor: Ljava/util/concurrent/atomic/AtomicInteger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  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=2, locals=0, args_size=0
         0: .line 40
            ldc Ljdk/tools/jaotc/CompiledMethodInfo;
            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.tools.jaotc.CompiledMethodInfo.$assertionsDisabled:Z
         3: .line 195
            new java.util.concurrent.atomic.AtomicInteger
            dup
            invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:()V
            putstatic jdk.tools.jaotc.CompiledMethodInfo.methodsCount:Ljava/util/concurrent/atomic/AtomicInteger;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(org.graalvm.compiler.code.CompilationResult, jdk.tools.jaotc.JavaMethodInfo);
    descriptor: (Lorg/graalvm/compiler/code/CompilationResult;Ljdk/tools/jaotc/JavaMethodInfo;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
        start local 1 // org.graalvm.compiler.code.CompilationResult compilationResult
        start local 2 // jdk.tools.jaotc.JavaMethodInfo methodInfo
         0: .line 197
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 185
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield jdk.tools.jaotc.CompiledMethodInfo.stubs:Ljava/util/HashMap;
         2: .line 190
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield jdk.tools.jaotc.CompiledMethodInfo.dependentKlasses:Ljava/util/HashSet;
         3: .line 198
            aload 0 /* this */
            aload 2 /* methodInfo */
            invokeinterface jdk.tools.jaotc.JavaMethodInfo.getNameAndSignature:()Ljava/lang/String;
            putfield jdk.tools.jaotc.CompiledMethodInfo.name:Ljava/lang/String;
         4: .line 199
            aload 0 /* this */
            aload 1 /* compilationResult */
            putfield jdk.tools.jaotc.CompiledMethodInfo.compilationResult:Lorg/graalvm/compiler/code/CompilationResult;
         5: .line 200
            aload 0 /* this */
            aload 2 /* methodInfo */
            putfield jdk.tools.jaotc.CompiledMethodInfo.methodInfo:Ljdk/tools/jaotc/JavaMethodInfo;
         6: .line 201
            aload 0 /* this */
            iconst_m1
            putfield jdk.tools.jaotc.CompiledMethodInfo.stubsOffset:I
         7: .line 202
            aload 0 /* this */
            new jdk.tools.jaotc.CompiledMethodInfo$AOTMethodOffsets
            dup
            invokespecial jdk.tools.jaotc.CompiledMethodInfo$AOTMethodOffsets.<init>:()V
            putfield jdk.tools.jaotc.CompiledMethodInfo.methodOffsets:Ljdk/tools/jaotc/CompiledMethodInfo$AOTMethodOffsets;
         8: .line 203
            return
        end local 2 // jdk.tools.jaotc.JavaMethodInfo methodInfo
        end local 1 // org.graalvm.compiler.code.CompilationResult compilationResult
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    9     0               this  Ljdk/tools/jaotc/CompiledMethodInfo;
            0    9     1  compilationResult  Lorg/graalvm/compiler/code/CompilationResult;
            0    9     2         methodInfo  Ljdk/tools/jaotc/JavaMethodInfo;
    MethodParameters:
                   Name  Flags
      compilationResult  
      methodInfo         

  java.lang.String name();
    descriptor: ()Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
         0: .line 206
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.name:Ljava/lang/String;
            areturn
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/tools/jaotc/CompiledMethodInfo;

  void addMethodOffsets(jdk.tools.jaotc.binformat.BinaryContainer, jdk.tools.jaotc.binformat.ReadOnlyDataContainer);
    descriptor: (Ljdk/tools/jaotc/binformat/BinaryContainer;Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
        start local 1 // jdk.tools.jaotc.binformat.BinaryContainer binaryContainer
        start local 2 // jdk.tools.jaotc.binformat.ReadOnlyDataContainer container
         0: .line 210
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.methodOffsets:Ljdk/tools/jaotc/CompiledMethodInfo$AOTMethodOffsets;
            aload 1 /* binaryContainer */
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.name:Ljava/lang/String;
            invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.addMetaspaceName:(Ljava/lang/String;)I
            invokevirtual jdk.tools.jaotc.CompiledMethodInfo$AOTMethodOffsets.setNameOffset:(I)V
         1: .line 211
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.methodOffsets:Ljdk/tools/jaotc/CompiledMethodInfo$AOTMethodOffsets;
            aload 2 /* container */
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.name:Ljava/lang/String;
            invokevirtual jdk.tools.jaotc.CompiledMethodInfo$AOTMethodOffsets.addMethodOffsets:(Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;Ljava/lang/String;)V
         2: .line 212
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.dependentKlasses:Ljava/util/HashSet;
            invokevirtual java.util.HashSet.iterator:()Ljava/util/Iterator;
            astore 4
            goto 5
      StackMap locals: jdk.tools.jaotc.CompiledMethodInfo jdk.tools.jaotc.binformat.BinaryContainer jdk.tools.jaotc.binformat.ReadOnlyDataContainer top java.util.Iterator
      StackMap stack:
         3: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.tools.jaotc.AOTCompiledClass$AOTKlassData
            astore 3 /* data */
        start local 3 // jdk.tools.jaotc.AOTCompiledClass$AOTKlassData data
         4: .line 213
            aload 3 /* data */
            aload 0 /* this */
            invokevirtual jdk.tools.jaotc.AOTCompiledClass$AOTKlassData.addDependentMethod:(Ljdk/tools/jaotc/CompiledMethodInfo;)Z
            pop
        end local 3 // jdk.tools.jaotc.AOTCompiledClass$AOTKlassData data
         5: .line 212
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         6: .line 215
            return
        end local 2 // jdk.tools.jaotc.binformat.ReadOnlyDataContainer container
        end local 1 // jdk.tools.jaotc.binformat.BinaryContainer binaryContainer
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    7     0             this  Ljdk/tools/jaotc/CompiledMethodInfo;
            0    7     1  binaryContainer  Ljdk/tools/jaotc/binformat/BinaryContainer;
            0    7     2        container  Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;
            4    5     3             data  Ljdk/tools/jaotc/AOTCompiledClass$AOTKlassData;
    MethodParameters:
                 Name  Flags
      binaryContainer  
      container        

  org.graalvm.compiler.code.CompilationResult getCompilationResult();
    descriptor: ()Lorg/graalvm/compiler/code/CompilationResult;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
         0: .line 218
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.compilationResult:Lorg/graalvm/compiler/code/CompilationResult;
            areturn
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/tools/jaotc/CompiledMethodInfo;

  jdk.tools.jaotc.JavaMethodInfo getMethodInfo();
    descriptor: ()Ljdk/tools/jaotc/JavaMethodInfo;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
         0: .line 222
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.methodInfo:Ljdk/tools/jaotc/JavaMethodInfo;
            areturn
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/tools/jaotc/CompiledMethodInfo;

  void setTextSectionOffset(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
        start local 1 // int textSectionOffset
         0: .line 226
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.methodOffsets:Ljdk/tools/jaotc/CompiledMethodInfo$AOTMethodOffsets;
            iload 1 /* textSectionOffset */
            invokevirtual jdk.tools.jaotc.CompiledMethodInfo$AOTMethodOffsets.setTextSectionOffset:(I)V
         1: .line 227
            return
        end local 1 // int textSectionOffset
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Ljdk/tools/jaotc/CompiledMethodInfo;
            0    2     1  textSectionOffset  I
    MethodParameters:
                   Name  Flags
      textSectionOffset  

  public int getTextSectionOffset();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
         0: .line 230
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.methodOffsets:Ljdk/tools/jaotc/CompiledMethodInfo$AOTMethodOffsets;
            invokevirtual jdk.tools.jaotc.CompiledMethodInfo$AOTMethodOffsets.getTextSectionOffset:()I
            ireturn
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/tools/jaotc/CompiledMethodInfo;

  void setCodeId();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
         0: .line 234
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.methodOffsets:Ljdk/tools/jaotc/CompiledMethodInfo$AOTMethodOffsets;
            invokestatic jdk.tools.jaotc.CompiledMethodInfo.getNextCodeId:()I
            invokevirtual jdk.tools.jaotc.CompiledMethodInfo$AOTMethodOffsets.setCodeId:(I)V
         1: .line 235
            return
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/tools/jaotc/CompiledMethodInfo;

  int getCodeId();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
         0: .line 238
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.methodOffsets:Ljdk/tools/jaotc/CompiledMethodInfo$AOTMethodOffsets;
            invokevirtual jdk.tools.jaotc.CompiledMethodInfo$AOTMethodOffsets.getCodeId:()I
            ireturn
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/tools/jaotc/CompiledMethodInfo;

  static int getMethodsCount();
    descriptor: ()I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 242
            getstatic jdk.tools.jaotc.CompiledMethodInfo.methodsCount:Ljava/util/concurrent/atomic/AtomicInteger;
            invokevirtual java.util.concurrent.atomic.AtomicInteger.get:()I
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static int getNextCodeId();
    descriptor: ()I
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 246
            getstatic jdk.tools.jaotc.CompiledMethodInfo.methodsCount:Ljava/util/concurrent/atomic/AtomicInteger;
            invokevirtual java.util.concurrent.atomic.AtomicInteger.getAndIncrement:()I
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  int getCodeSize();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
         0: .line 250
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.stubsOffset:I
            aload 0 /* this */
            invokevirtual jdk.tools.jaotc.CompiledMethodInfo.getStubCodeSize:()I
            iadd
            ireturn
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/tools/jaotc/CompiledMethodInfo;

  int getStubCodeSize();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
         0: .line 254
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.totalStubSize:I
            ireturn
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/tools/jaotc/CompiledMethodInfo;

  void setMetadataOffset(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
        start local 1 // int offset
         0: .line 258
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.methodOffsets:Ljdk/tools/jaotc/CompiledMethodInfo$AOTMethodOffsets;
            iload 1 /* offset */
            invokevirtual jdk.tools.jaotc.CompiledMethodInfo$AOTMethodOffsets.setMetadataOffset:(I)V
         1: .line 259
            return
        end local 1 // int offset
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Ljdk/tools/jaotc/CompiledMethodInfo;
            0    2     1  offset  I
    MethodParameters:
        Name  Flags
      offset  

  void setStubsOffset(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
        start local 1 // int offset
         0: .line 265
            aload 0 /* this */
            iload 1 /* offset */
            putfield jdk.tools.jaotc.CompiledMethodInfo.stubsOffset:I
         1: .line 266
            return
        end local 1 // int offset
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Ljdk/tools/jaotc/CompiledMethodInfo;
            0    2     1  offset  I
    MethodParameters:
        Name  Flags
      offset  

  int getStubsOffset();
    descriptor: ()I
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
         0: .line 269
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.stubsOffset:I
            ireturn
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/tools/jaotc/CompiledMethodInfo;

  void setMetadataGotOffset(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
        start local 1 // int metadataGotOffset
         0: .line 273
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.methodOffsets:Ljdk/tools/jaotc/CompiledMethodInfo$AOTMethodOffsets;
            iload 1 /* metadataGotOffset */
            invokevirtual jdk.tools.jaotc.CompiledMethodInfo$AOTMethodOffsets.setMetadataGotOffset:(I)V
         1: .line 274
            return
        end local 1 // int metadataGotOffset
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    2     0               this  Ljdk/tools/jaotc/CompiledMethodInfo;
            0    2     1  metadataGotOffset  I
    MethodParameters:
                   Name  Flags
      metadataGotOffset  

  void setMetadataGotSize(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
        start local 1 // int length
         0: .line 277
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.methodOffsets:Ljdk/tools/jaotc/CompiledMethodInfo$AOTMethodOffsets;
            iload 1 /* length */
            invokevirtual jdk.tools.jaotc.CompiledMethodInfo$AOTMethodOffsets.setMetadataGotSize:(I)V
         1: .line 278
            return
        end local 1 // int length
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Ljdk/tools/jaotc/CompiledMethodInfo;
            0    2     1  length  I
    MethodParameters:
        Name  Flags
      length  

  void addStubCode(java.lang.String, jdk.tools.jaotc.StubInformation);
    descriptor: (Ljava/lang/String;Ljdk/tools/jaotc/StubInformation;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
        start local 1 // java.lang.String call
        start local 2 // jdk.tools.jaotc.StubInformation stub
         0: .line 281
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.stubs:Ljava/util/HashMap;
            aload 1 /* call */
            aload 2 /* stub */
            invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 282
            aload 0 /* this */
            dup
            getfield jdk.tools.jaotc.CompiledMethodInfo.totalStubSize:I
            aload 2 /* stub */
            invokevirtual jdk.tools.jaotc.StubInformation.getSize:()I
            iadd
            putfield jdk.tools.jaotc.CompiledMethodInfo.totalStubSize:I
         2: .line 283
            return
        end local 2 // jdk.tools.jaotc.StubInformation stub
        end local 1 // java.lang.String call
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/tools/jaotc/CompiledMethodInfo;
            0    3     1  call  Ljava/lang/String;
            0    3     2  stub  Ljdk/tools/jaotc/StubInformation;
    MethodParameters:
      Name  Flags
      call  
      stub  

  jdk.tools.jaotc.StubInformation getStubFor(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljdk/tools/jaotc/StubInformation;
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
        start local 1 // java.lang.String call
         0: .line 286
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.stubs:Ljava/util/HashMap;
            aload 1 /* call */
            invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast jdk.tools.jaotc.StubInformation
            astore 2 /* stub */
        start local 2 // jdk.tools.jaotc.StubInformation stub
         1: .line 287
            getstatic jdk.tools.jaotc.CompiledMethodInfo.$assertionsDisabled:Z
            ifne 2
            aload 2 /* stub */
            ifnonnull 2
            new java.lang.AssertionError
            dup
            new java.lang.StringBuilder
            dup
            ldc "missing stub for call "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* call */
            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
         2: .line 288
      StackMap locals: jdk.tools.jaotc.StubInformation
      StackMap stack:
            aload 2 /* stub */
            invokevirtual jdk.tools.jaotc.StubInformation.verify:()V
         3: .line 289
            aload 2 /* stub */
            areturn
        end local 2 // jdk.tools.jaotc.StubInformation stub
        end local 1 // java.lang.String call
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljdk/tools/jaotc/CompiledMethodInfo;
            0    4     1  call  Ljava/lang/String;
            1    4     2  stub  Ljdk/tools/jaotc/StubInformation;
    MethodParameters:
      Name  Flags
      call  

  void addDependentKlassData(jdk.tools.jaotc.binformat.BinaryContainer, jdk.vm.ci.hotspot.HotSpotResolvedObjectType);
    descriptor: (Ljdk/tools/jaotc/binformat/BinaryContainer;Ljdk/vm/ci/hotspot/HotSpotResolvedObjectType;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
        start local 1 // jdk.tools.jaotc.binformat.BinaryContainer binaryContainer
        start local 2 // jdk.vm.ci.hotspot.HotSpotResolvedObjectType type
         0: .line 293
            aload 1 /* binaryContainer */
            aload 2 /* type */
            invokestatic jdk.tools.jaotc.AOTCompiledClass.addFingerprintKlassData:(Ljdk/tools/jaotc/binformat/BinaryContainer;Ljdk/vm/ci/hotspot/HotSpotResolvedObjectType;)Ljdk/tools/jaotc/AOTCompiledClass$AOTKlassData;
            astore 3 /* klassData */
        start local 3 // jdk.tools.jaotc.AOTCompiledClass$AOTKlassData klassData
         1: .line 294
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.dependentKlasses:Ljava/util/HashSet;
            aload 3 /* klassData */
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
         2: .line 295
            return
        end local 3 // jdk.tools.jaotc.AOTCompiledClass$AOTKlassData klassData
        end local 2 // jdk.vm.ci.hotspot.HotSpotResolvedObjectType type
        end local 1 // jdk.tools.jaotc.binformat.BinaryContainer binaryContainer
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    3     0             this  Ljdk/tools/jaotc/CompiledMethodInfo;
            0    3     1  binaryContainer  Ljdk/tools/jaotc/binformat/BinaryContainer;
            0    3     2             type  Ljdk/vm/ci/hotspot/HotSpotResolvedObjectType;
            1    3     3        klassData  Ljdk/tools/jaotc/AOTCompiledClass$AOTKlassData;
    MethodParameters:
                 Name  Flags
      binaryContainer  
      type             

  jdk.tools.jaotc.AOTCompiledClass$AOTKlassData getDependentKlassData(jdk.vm.ci.hotspot.HotSpotResolvedObjectType);
    descriptor: (Ljdk/vm/ci/hotspot/HotSpotResolvedObjectType;)Ljdk/tools/jaotc/AOTCompiledClass$AOTKlassData;
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
        start local 1 // jdk.vm.ci.hotspot.HotSpotResolvedObjectType type
         0: .line 298
            aload 1 /* type */
            invokestatic jdk.tools.jaotc.AOTCompiledClass.getAOTKlassData:(Ljdk/vm/ci/hotspot/HotSpotResolvedObjectType;)Ljdk/tools/jaotc/AOTCompiledClass$AOTKlassData;
            astore 2 /* klassData */
        start local 2 // jdk.tools.jaotc.AOTCompiledClass$AOTKlassData klassData
         1: .line 299
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.dependentKlasses:Ljava/util/HashSet;
            aload 2 /* klassData */
            invokevirtual java.util.HashSet.contains:(Ljava/lang/Object;)Z
            ifeq 3
         2: .line 300
            aload 2 /* klassData */
            areturn
         3: .line 302
      StackMap locals: jdk.tools.jaotc.AOTCompiledClass$AOTKlassData
      StackMap stack:
            aconst_null
            areturn
        end local 2 // jdk.tools.jaotc.AOTCompiledClass$AOTKlassData klassData
        end local 1 // jdk.vm.ci.hotspot.HotSpotResolvedObjectType type
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Ljdk/tools/jaotc/CompiledMethodInfo;
            0    4     1       type  Ljdk/vm/ci/hotspot/HotSpotResolvedObjectType;
            1    4     2  klassData  Ljdk/tools/jaotc/AOTCompiledClass$AOTKlassData;
    MethodParameters:
      Name  Flags
      type  

  boolean hasMark(jdk.vm.ci.code.site.Site, jdk.tools.jaotc.MarkId);
    descriptor: (Ljdk/vm/ci/code/site/Site;Ljdk/tools/jaotc/MarkId;)Z
    flags: (0x0000) 
    Code:
      stack=2, locals=6, args_size=3
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
        start local 1 // jdk.vm.ci.code.site.Site call
        start local 2 // jdk.tools.jaotc.MarkId id
         0: .line 306
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.compilationResult:Lorg/graalvm/compiler/code/CompilationResult;
            invokevirtual org.graalvm.compiler.code.CompilationResult.getMarks:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 5
      StackMap locals: jdk.tools.jaotc.CompiledMethodInfo jdk.vm.ci.code.site.Site jdk.tools.jaotc.MarkId top java.util.Iterator
      StackMap stack:
         1: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast jdk.vm.ci.code.site.Mark
            astore 3 /* m */
        start local 3 // jdk.vm.ci.code.site.Mark m
         2: .line 310
            aload 3 /* m */
            getfield jdk.vm.ci.code.site.Mark.pcOffset:I
            bipush -8
            iand
            bipush 7
            iadd
            istore 5 /* adjOffset */
        start local 5 // int adjOffset
         3: .line 312
            aload 1 /* call */
            getfield jdk.vm.ci.code.site.Site.pcOffset:I
            iload 5 /* adjOffset */
            if_icmpne 5
            aload 3 /* m */
            getfield jdk.vm.ci.code.site.Mark.id:Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            invokestatic jdk.tools.jaotc.MarkId.getEnum:(I)Ljdk/tools/jaotc/MarkId;
            aload 2 /* id */
            if_acmpne 5
         4: .line 313
            iconst_1
            ireturn
        end local 5 // int adjOffset
        end local 3 // jdk.vm.ci.code.site.Mark m
         5: .line 306
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
         6: .line 316
            iconst_0
            ireturn
        end local 2 // jdk.tools.jaotc.MarkId id
        end local 1 // jdk.vm.ci.code.site.Site call
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Ljdk/tools/jaotc/CompiledMethodInfo;
            0    7     1       call  Ljdk/vm/ci/code/site/Site;
            0    7     2         id  Ljdk/tools/jaotc/MarkId;
            2    5     3          m  Ljdk/vm/ci/code/site/Mark;
            3    5     5  adjOffset  I
    MethodParameters:
      Name  Flags
      call  
      id    

  java.lang.String asTag();
    descriptor: ()Ljava/lang/String;
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
         0: .line 320
            new java.lang.StringBuilder
            dup
            ldc "["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.methodInfo:Ljdk/tools/jaotc/JavaMethodInfo;
            invokeinterface jdk.tools.jaotc.JavaMethodInfo.getSymbolName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "]"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            areturn
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/tools/jaotc/CompiledMethodInfo;

  jdk.vm.ci.hotspot.HotSpotCompiledCode compiledCode();
    descriptor: ()Ljdk/vm/ci/hotspot/HotSpotCompiledCode;
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
         0: .line 324
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.code:Ljdk/vm/ci/hotspot/HotSpotCompiledCode;
            ifnonnull 2
         1: .line 325
            aload 0 /* this */
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.methodInfo:Ljdk/tools/jaotc/JavaMethodInfo;
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.compilationResult:Lorg/graalvm/compiler/code/CompilationResult;
            invokeinterface jdk.tools.jaotc.JavaMethodInfo.compiledCode:(Lorg/graalvm/compiler/code/CompilationResult;)Ljdk/vm/ci/hotspot/HotSpotCompiledCode;
            putfield jdk.tools.jaotc.CompiledMethodInfo.code:Ljdk/vm/ci/hotspot/HotSpotCompiledCode;
         2: .line 327
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield jdk.tools.jaotc.CompiledMethodInfo.code:Ljdk/vm/ci/hotspot/HotSpotCompiledCode;
            areturn
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/tools/jaotc/CompiledMethodInfo;

  void clear();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
         0: .line 332
            aload 0 /* this */
            aconst_null
            putfield jdk.tools.jaotc.CompiledMethodInfo.dependentKlasses:Ljava/util/HashSet;
         1: .line 333
            aload 0 /* this */
            aconst_null
            putfield jdk.tools.jaotc.CompiledMethodInfo.name:Ljava/lang/String;
         2: .line 334
            return
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljdk/tools/jaotc/CompiledMethodInfo;

  void clearCompileData();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // jdk.tools.jaotc.CompiledMethodInfo this
         0: .line 337
            aload 0 /* this */
            aconst_null
            putfield jdk.tools.jaotc.CompiledMethodInfo.code:Ljdk/vm/ci/hotspot/HotSpotCompiledCode;
         1: .line 338
            aload 0 /* this */
            aconst_null
            putfield jdk.tools.jaotc.CompiledMethodInfo.stubs:Ljava/util/HashMap;
         2: .line 339
            aload 0 /* this */
            aconst_null
            putfield jdk.tools.jaotc.CompiledMethodInfo.compilationResult:Lorg/graalvm/compiler/code/CompilationResult;
         3: .line 340
            aload 0 /* this */
            aconst_null
            putfield jdk.tools.jaotc.CompiledMethodInfo.methodInfo:Ljdk/tools/jaotc/JavaMethodInfo;
         4: .line 341
            return
        end local 0 // jdk.tools.jaotc.CompiledMethodInfo this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljdk/tools/jaotc/CompiledMethodInfo;
}
SourceFile: "CompiledMethodInfo.java"
NestMembers:
  jdk.tools.jaotc.CompiledMethodInfo$AOTMethodOffsets
InnerClasses:
  AOTKlassData = jdk.tools.jaotc.AOTCompiledClass$AOTKlassData of jdk.tools.jaotc.AOTCompiledClass
  private AOTMethodOffsets = jdk.tools.jaotc.CompiledMethodInfo$AOTMethodOffsets of jdk.tools.jaotc.CompiledMethodInfo