public abstract class com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl extends com.oracle.objectfile.BasicProgbitsSectionImpl
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl
  super_class: com.oracle.objectfile.BasicProgbitsSectionImpl
{
  protected final com.oracle.svm.hosted.image.RelocatableBuffer textBuffer;
    descriptor: Lcom/oracle/svm/hosted/image/RelocatableBuffer;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final com.oracle.objectfile.ObjectFile objectFile;
    descriptor: Lcom/oracle/objectfile/ObjectFile;
    flags: (0x0014) ACC_PROTECTED, ACC_FINAL

  protected final com.oracle.svm.hosted.image.NativeImageCodeCache codeCache;
    descriptor: Lcom/oracle/svm/hosted/image/NativeImageCodeCache;
    flags: (0x0014) ACC_PROTECTED, 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=1, locals=0, args_size=0
         0: .line 822
            ldc Lcom/oracle/svm/hosted/image/NativeBootImage;
            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 com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl factory(com.oracle.svm.hosted.image.RelocatableBuffer, com.oracle.objectfile.ObjectFile, com.oracle.svm.hosted.image.NativeImageCodeCache);
    descriptor: (Lcom/oracle/svm/hosted/image/RelocatableBuffer;Lcom/oracle/objectfile/ObjectFile;Lcom/oracle/svm/hosted/image/NativeImageCodeCache;)Lcom/oracle/svm/hosted/image/NativeBootImage$NativeTextSectionImpl;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // com.oracle.svm.hosted.image.RelocatableBuffer relocatableBuffer
        start local 1 // com.oracle.objectfile.ObjectFile objectFile
        start local 2 // com.oracle.svm.hosted.image.NativeImageCodeCache codeCache
         0: .line 825
            aload 2 /* codeCache */
            aload 0 /* relocatableBuffer */
            aload 1 /* objectFile */
            aload 2 /* codeCache */
            invokevirtual com.oracle.svm.hosted.image.NativeImageCodeCache.getTextSectionImpl:(Lcom/oracle/svm/hosted/image/RelocatableBuffer;Lcom/oracle/objectfile/ObjectFile;Lcom/oracle/svm/hosted/image/NativeImageCodeCache;)Lcom/oracle/svm/hosted/image/NativeBootImage$NativeTextSectionImpl;
            areturn
        end local 2 // com.oracle.svm.hosted.image.NativeImageCodeCache codeCache
        end local 1 // com.oracle.objectfile.ObjectFile objectFile
        end local 0 // com.oracle.svm.hosted.image.RelocatableBuffer relocatableBuffer
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    1     0  relocatableBuffer  Lcom/oracle/svm/hosted/image/RelocatableBuffer;
            0    1     1         objectFile  Lcom/oracle/objectfile/ObjectFile;
            0    1     2          codeCache  Lcom/oracle/svm/hosted/image/NativeImageCodeCache;
    MethodParameters:
                   Name  Flags
      relocatableBuffer  
      objectFile         
      codeCache          

  private com.oracle.objectfile.ObjectFile$Element getRodataSection();
    descriptor: ()Lcom/oracle/objectfile/ObjectFile$Element;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl this
         0: .line 829
            aload 0 /* this */
            invokevirtual com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.getElement:()Lcom/oracle/objectfile/ObjectFile$Section;
            invokevirtual com.oracle.objectfile.ObjectFile$Section.getOwner:()Lcom/oracle/objectfile/ObjectFile;
            getstatic com.oracle.objectfile.SectionName.RODATA:Lcom/oracle/objectfile/SectionName;
            aload 0 /* this */
            invokevirtual com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.getElement:()Lcom/oracle/objectfile/ObjectFile$Section;
            invokevirtual com.oracle.objectfile.ObjectFile$Section.getOwner:()Lcom/oracle/objectfile/ObjectFile;
            invokevirtual com.oracle.objectfile.ObjectFile.getFormat:()Lcom/oracle/objectfile/ObjectFile$Format;
            invokevirtual com.oracle.objectfile.SectionName.getFormatDependentName:(Lcom/oracle/objectfile/ObjectFile$Format;)Ljava/lang/String;
            invokevirtual com.oracle.objectfile.ObjectFile.elementForName:(Ljava/lang/String;)Lcom/oracle/objectfile/ObjectFile$Element;
            areturn
        end local 0 // com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/svm/hosted/image/NativeBootImage$NativeTextSectionImpl;

  public java.util.Set<com.oracle.objectfile.BuildDependency> getDependencies(java.util.Map<com.oracle.objectfile.ObjectFile$Element, com.oracle.objectfile.LayoutDecisionMap>);
    descriptor: (Ljava/util/Map;)Ljava/util/Set;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl this
        start local 1 // java.util.Map decisions
         0: .line 834
            aload 1 /* decisions */
            aload 0 /* this */
            invokevirtual com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.getElement:()Lcom/oracle/objectfile/ObjectFile$Section;
            invokestatic com.oracle.objectfile.ObjectFile.minimalDependencies:(Ljava/util/Map;Lcom/oracle/objectfile/ObjectFile$Element;)Ljava/util/HashSet;
            astore 2 /* deps */
        start local 2 // java.util.HashSet deps
         1: .line 835
            aload 1 /* decisions */
            aload 0 /* this */
            invokevirtual com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.getElement:()Lcom/oracle/objectfile/ObjectFile$Section;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.objectfile.LayoutDecisionMap
            getstatic com.oracle.objectfile.LayoutDecision$Kind.CONTENT:Lcom/oracle/objectfile/LayoutDecision$Kind;
            invokevirtual com.oracle.objectfile.LayoutDecisionMap.getDecision:(Lcom/oracle/objectfile/LayoutDecision$Kind;)Lcom/oracle/objectfile/LayoutDecision;
            astore 3 /* ourContent */
        start local 3 // com.oracle.objectfile.LayoutDecision ourContent
         2: .line 836
            aload 1 /* decisions */
            aload 0 /* this */
            invokevirtual com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.getElement:()Lcom/oracle/objectfile/ObjectFile$Section;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.objectfile.LayoutDecisionMap
            getstatic com.oracle.objectfile.LayoutDecision$Kind.VADDR:Lcom/oracle/objectfile/LayoutDecision$Kind;
            invokevirtual com.oracle.objectfile.LayoutDecisionMap.getDecision:(Lcom/oracle/objectfile/LayoutDecision$Kind;)Lcom/oracle/objectfile/LayoutDecision;
            astore 4 /* ourVaddr */
        start local 4 // com.oracle.objectfile.LayoutDecision ourVaddr
         3: .line 837
            aload 1 /* decisions */
            aload 0 /* this */
            invokevirtual com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.getRodataSection:()Lcom/oracle/objectfile/ObjectFile$Element;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.objectfile.LayoutDecisionMap
            getstatic com.oracle.objectfile.LayoutDecision$Kind.VADDR:Lcom/oracle/objectfile/LayoutDecision$Kind;
            invokevirtual com.oracle.objectfile.LayoutDecisionMap.getDecision:(Lcom/oracle/objectfile/LayoutDecision$Kind;)Lcom/oracle/objectfile/LayoutDecision;
            astore 5 /* rodataVaddr */
        start local 5 // com.oracle.objectfile.LayoutDecision rodataVaddr
         4: .line 838
            aload 2 /* deps */
            aload 3 /* ourContent */
            aload 4 /* ourVaddr */
            invokestatic com.oracle.objectfile.BuildDependency.createOrGet:(Lcom/oracle/objectfile/LayoutDecision;Lcom/oracle/objectfile/LayoutDecision;)Lcom/oracle/objectfile/BuildDependency;
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
         5: .line 839
            aload 2 /* deps */
            aload 3 /* ourContent */
            aload 5 /* rodataVaddr */
            invokestatic com.oracle.objectfile.BuildDependency.createOrGet:(Lcom/oracle/objectfile/LayoutDecision;Lcom/oracle/objectfile/LayoutDecision;)Lcom/oracle/objectfile/BuildDependency;
            invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
            pop
         6: .line 841
            aload 2 /* deps */
            areturn
        end local 5 // com.oracle.objectfile.LayoutDecision rodataVaddr
        end local 4 // com.oracle.objectfile.LayoutDecision ourVaddr
        end local 3 // com.oracle.objectfile.LayoutDecision ourContent
        end local 2 // java.util.HashSet deps
        end local 1 // java.util.Map decisions
        end local 0 // com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    7     0         this  Lcom/oracle/svm/hosted/image/NativeBootImage$NativeTextSectionImpl;
            0    7     1    decisions  Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;
            1    7     2         deps  Ljava/util/HashSet<Lcom/oracle/objectfile/BuildDependency;>;
            2    7     3   ourContent  Lcom/oracle/objectfile/LayoutDecision;
            3    7     4     ourVaddr  Lcom/oracle/objectfile/LayoutDecision;
            4    7     5  rodataVaddr  Lcom/oracle/objectfile/LayoutDecision;
    Signature: (Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;)Ljava/util/Set<Lcom/oracle/objectfile/BuildDependency;>;
    MethodParameters:
           Name  Flags
      decisions  

  public byte[] getOrDecideContent(java.util.Map<com.oracle.objectfile.ObjectFile$Element, com.oracle.objectfile.LayoutDecisionMap>, );
    descriptor: (Ljava/util/Map;[B)[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl this
        start local 1 // java.util.Map alreadyDecided
        start local 2 // byte[] contentHint
         0: .line 846
            aload 0 /* this */
            invokevirtual com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.getContent:()[B
            areturn
        end local 2 // byte[] contentHint
        end local 1 // java.util.Map alreadyDecided
        end local 0 // com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0            this  Lcom/oracle/svm/hosted/image/NativeBootImage$NativeTextSectionImpl;
            0    1     1  alreadyDecided  Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;
            0    1     2     contentHint  [B
    Signature: (Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;[B)[B
    MethodParameters:
                Name  Flags
      alreadyDecided  
      contentHint     

  protected abstract void defineMethodSymbol(java.lang.String, boolean, com.oracle.objectfile.ObjectFile$Element, com.oracle.svm.hosted.meta.HostedMethod, org.graalvm.compiler.code.CompilationResult);
    descriptor: (Ljava/lang/String;ZLcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/svm/hosted/meta/HostedMethod;Lorg/graalvm/compiler/code/CompilationResult;)V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    MethodParameters:
         Name  Flags
      name     
      global   
      section  
      method   
      result   

  protected void writeTextSection(org.graalvm.compiler.debug.DebugContext, com.oracle.objectfile.ObjectFile$Section, java.util.List<com.oracle.svm.hosted.meta.HostedMethod>);
    descriptor: (Lorg/graalvm/compiler/debug/DebugContext;Lcom/oracle/objectfile/ObjectFile$Section;Ljava/util/List;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=17, args_size=4
        start local 0 // com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl this
        start local 1 // org.graalvm.compiler.debug.DebugContext debug
        start local 2 // com.oracle.objectfile.ObjectFile$Section textSection
        start local 3 // java.util.List entryPoints
         0: .line 853
            aconst_null
            astore 4
            aconst_null
            astore 5
         1: aload 1 /* debug */
            ldc "TextImpl.writeTextSection"
            invokevirtual org.graalvm.compiler.debug.DebugContext.logAndIndent:(Ljava/lang/String;)Lorg/graalvm/compiler/debug/Indent;
            astore 6 /* indent */
        start local 6 // org.graalvm.compiler.debug.Indent indent
         2: .line 887
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 7 /* methodsBySignature */
        start local 7 // java.util.Map methodsBySignature
         3: .line 889
            aload 0 /* this */
            getfield com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.codeCache:Lcom/oracle/svm/hosted/image/NativeImageCodeCache;
            invokevirtual com.oracle.svm.hosted.image.NativeImageCodeCache.getCompilations:()Ljava/util/Map;
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 9
            goto 17
      StackMap locals: com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl org.graalvm.compiler.debug.DebugContext com.oracle.objectfile.ObjectFile$Section java.util.List java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.Map top java.util.Iterator
      StackMap stack:
         4: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 8 /* ent */
        start local 8 // java.util.Map$Entry ent
         5: .line 890
            aload 8 /* ent */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast jdk.vm.ci.meta.ResolvedJavaMethod
            invokestatic com.oracle.svm.hosted.image.NativeBootImage.localSymbolNameForMethod:(Ljdk/vm/ci/meta/ResolvedJavaMethod;)Ljava/lang/String;
            astore 10 /* symName */
        start local 10 // java.lang.String symName
         6: .line 891
            aload 8 /* ent */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast jdk.vm.ci.meta.ResolvedJavaMethod
            invokestatic com.oracle.svm.core.SubstrateUtil.uniqueShortName:(Ljdk/vm/ci/meta/ResolvedJavaMethod;)Ljava/lang/String;
            astore 11 /* signatureString */
        start local 11 // java.lang.String signatureString
         7: .line 892
            aload 7 /* methodsBySignature */
            aload 11 /* signatureString */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.svm.hosted.meta.HostedMethod
            astore 12 /* existing */
        start local 12 // com.oracle.svm.hosted.meta.HostedMethod existing
         8: .line 893
            aload 8 /* ent */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast com.oracle.svm.hosted.meta.HostedMethod
            astore 13 /* current */
        start local 13 // com.oracle.svm.hosted.meta.HostedMethod current
         9: .line 894
            aload 12 /* existing */
            ifnull 15
        10: .line 899
            aload 12 /* existing */
            invokevirtual com.oracle.svm.hosted.meta.HostedMethod.getSignature:()Ljdk/vm/ci/meta/Signature;
            aconst_null
            invokeinterface jdk.vm.ci.meta.Signature.getReturnType:(Ljdk/vm/ci/meta/ResolvedJavaType;)Ljdk/vm/ci/meta/JavaType;
            aload 12 /* existing */
            invokevirtual com.oracle.svm.hosted.meta.HostedMethod.getDeclaringClass:()Lcom/oracle/svm/hosted/meta/HostedType;
            invokeinterface jdk.vm.ci.meta.JavaType.resolve:(Ljdk/vm/ci/meta/ResolvedJavaType;)Ljdk/vm/ci/meta/ResolvedJavaType;
            astore 14 /* existingReturnType */
        start local 14 // jdk.vm.ci.meta.ResolvedJavaType existingReturnType
        11: .line 900
            aload 13 /* current */
            invokevirtual com.oracle.svm.hosted.meta.HostedMethod.getSignature:()Ljdk/vm/ci/meta/Signature;
            aconst_null
            invokeinterface jdk.vm.ci.meta.Signature.getReturnType:(Ljdk/vm/ci/meta/ResolvedJavaType;)Ljdk/vm/ci/meta/JavaType;
            aload 13 /* current */
            invokevirtual com.oracle.svm.hosted.meta.HostedMethod.getDeclaringClass:()Lcom/oracle/svm/hosted/meta/HostedType;
            invokeinterface jdk.vm.ci.meta.JavaType.resolve:(Ljdk/vm/ci/meta/ResolvedJavaType;)Ljdk/vm/ci/meta/ResolvedJavaType;
            astore 15 /* currentReturnType */
        start local 15 // jdk.vm.ci.meta.ResolvedJavaType currentReturnType
        12: .line 901
            aload 14 /* existingReturnType */
            aload 15 /* currentReturnType */
            invokeinterface jdk.vm.ci.meta.ResolvedJavaType.isAssignableFrom:(Ljdk/vm/ci/meta/ResolvedJavaType;)Z
            ifeq 16
        13: .line 903
            aload 7 /* methodsBySignature */
            aload 11 /* signatureString */
            aload 13 /* current */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.svm.hosted.meta.HostedMethod
            astore 16 /* replaced */
        start local 16 // com.oracle.svm.hosted.meta.HostedMethod replaced
        14: .line 904
            getstatic com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.$assertionsDisabled:Z
            ifne 16
            aload 16 /* replaced */
            aload 12 /* existing */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 16
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        end local 16 // com.oracle.svm.hosted.meta.HostedMethod replaced
        end local 15 // jdk.vm.ci.meta.ResolvedJavaType currentReturnType
        end local 14 // jdk.vm.ci.meta.ResolvedJavaType existingReturnType
        15: .line 907
      StackMap locals: com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl org.graalvm.compiler.debug.DebugContext com.oracle.objectfile.ObjectFile$Section java.util.List java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.Map java.util.Map$Entry java.util.Iterator java.lang.String java.lang.String com.oracle.svm.hosted.meta.HostedMethod com.oracle.svm.hosted.meta.HostedMethod
      StackMap stack:
            aload 7 /* methodsBySignature */
            aload 11 /* signatureString */
            aload 13 /* current */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        16: .line 909
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 10 /* symName */
            iconst_0
            aload 2 /* textSection */
            aload 13 /* current */
            aload 8 /* ent */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast org.graalvm.compiler.code.CompilationResult
            invokevirtual com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.defineMethodSymbol:(Ljava/lang/String;ZLcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/svm/hosted/meta/HostedMethod;Lorg/graalvm/compiler/code/CompilationResult;)V
        end local 13 // com.oracle.svm.hosted.meta.HostedMethod current
        end local 12 // com.oracle.svm.hosted.meta.HostedMethod existing
        end local 11 // java.lang.String signatureString
        end local 10 // java.lang.String symName
        end local 8 // java.util.Map$Entry ent
        17: .line 889
      StackMap locals: com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl org.graalvm.compiler.debug.DebugContext com.oracle.objectfile.ObjectFile$Section java.util.List java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.Map top java.util.Iterator
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
        18: .line 912
            aload 7 /* methodsBySignature */
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 9
            goto 35
      StackMap locals:
      StackMap stack:
        19: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 8 /* ent */
        start local 8 // java.util.Map$Entry ent
        20: .line 913
            aload 8 /* ent */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast com.oracle.svm.hosted.meta.HostedMethod
            astore 10 /* method */
        start local 10 // com.oracle.svm.hosted.meta.HostedMethod method
        21: .line 914
            aload 10 /* method */
            invokevirtual com.oracle.svm.hosted.meta.HostedMethod.getWrapped:()Lcom/oracle/graal/pointsto/meta/AnalysisMethod;
            invokevirtual com.oracle.graal.pointsto.meta.AnalysisMethod.getEntryPointData:()Ljava/lang/Object;
            astore 11 /* data */
        start local 11 // java.lang.Object data
        22: .line 915
            aload 11 /* data */
            instanceof com.oracle.svm.hosted.code.CEntryPointData
            ifeq 23
            aload 11 /* data */
            checkcast com.oracle.svm.hosted.code.CEntryPointData
            goto 24
      StackMap locals: com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl org.graalvm.compiler.debug.DebugContext com.oracle.objectfile.ObjectFile$Section java.util.List java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.Map java.util.Map$Entry java.util.Iterator com.oracle.svm.hosted.meta.HostedMethod java.lang.Object
      StackMap stack:
        23: aconst_null
      StackMap locals:
      StackMap stack: com.oracle.svm.hosted.code.CEntryPointData
        24: astore 12 /* cEntryData */
        start local 12 // com.oracle.svm.hosted.code.CEntryPointData cEntryData
        25: .line 916
            aload 12 /* cEntryData */
            ifnull 27
            aload 12 /* cEntryData */
            invokevirtual com.oracle.svm.hosted.code.CEntryPointData.getPublishAs:()Lcom/oracle/svm/core/c/function/CEntryPointOptions$Publish;
            getstatic com.oracle.svm.core.c.function.CEntryPointOptions$Publish.NotPublished:Lcom/oracle/svm/core/c/function/CEntryPointOptions$Publish;
            if_acmpne 27
        26: .line 917
            goto 35
        27: .line 920
      StackMap locals: com.oracle.svm.hosted.code.CEntryPointData
      StackMap stack:
            aload 3 /* entryPoints */
            aload 10 /* method */
            invokeinterface java.util.List.indexOf:(Ljava/lang/Object;)I
            istore 13 /* entryPointIndex */
        start local 13 // int entryPointIndex
        28: .line 921
            iload 13 /* entryPointIndex */
            iconst_m1
            if_icmpeq 35
        29: .line 922
            aload 8 /* ent */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            invokestatic com.oracle.svm.core.SubstrateUtil.mangleName:(Ljava/lang/String;)Ljava/lang/String;
            astore 14 /* mangledSignature */
        start local 14 // java.lang.String mangledSignature
        30: .line 923
            getstatic com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.$assertionsDisabled:Z
            ifne 31
            aload 14 /* mangledSignature */
            aload 10 /* method */
            invokestatic com.oracle.svm.hosted.image.NativeBootImage.globalSymbolNameForMethod:(Ljdk/vm/ci/meta/ResolvedJavaMethod;)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 31
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        31: .line 924
      StackMap locals: int java.lang.String
      StackMap stack:
            aload 0 /* this */
            aload 14 /* mangledSignature */
            iconst_1
            aload 2 /* textSection */
            aload 10 /* method */
            aconst_null
            invokevirtual com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.defineMethodSymbol:(Ljava/lang/String;ZLcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/svm/hosted/meta/HostedMethod;Lorg/graalvm/compiler/code/CompilationResult;)V
        32: .line 927
            aload 12 /* cEntryData */
            ifnull 35
        33: .line 928
            getstatic com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.$assertionsDisabled:Z
            ifne 34
            aload 12 /* cEntryData */
            invokevirtual com.oracle.svm.hosted.code.CEntryPointData.getSymbolName:()Ljava/lang/String;
            invokevirtual java.lang.String.isEmpty:()Z
            ifeq 34
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        34: .line 930
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 12 /* cEntryData */
            invokevirtual com.oracle.svm.hosted.code.CEntryPointData.getSymbolName:()Ljava/lang/String;
            iconst_1
            aload 2 /* textSection */
            aload 10 /* method */
            aload 0 /* this */
            getfield com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.codeCache:Lcom/oracle/svm/hosted/image/NativeImageCodeCache;
            invokevirtual com.oracle.svm.hosted.image.NativeImageCodeCache.getCompilations:()Ljava/util/Map;
            aload 10 /* method */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.graalvm.compiler.code.CompilationResult
            invokevirtual com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.defineMethodSymbol:(Ljava/lang/String;ZLcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/svm/hosted/meta/HostedMethod;Lorg/graalvm/compiler/code/CompilationResult;)V
        end local 14 // java.lang.String mangledSignature
        end local 13 // int entryPointIndex
        end local 12 // com.oracle.svm.hosted.code.CEntryPointData cEntryData
        end local 11 // java.lang.Object data
        end local 10 // com.oracle.svm.hosted.meta.HostedMethod method
        end local 8 // java.util.Map$Entry ent
        35: .line 912
      StackMap locals: com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl org.graalvm.compiler.debug.DebugContext com.oracle.objectfile.ObjectFile$Section java.util.List java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.Map top java.util.Iterator
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 19
        36: .line 940
            getstatic com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.$assertionsDisabled:Z
            ifne 37
            aload 0 /* this */
            getfield com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.textBuffer:Lcom/oracle/svm/hosted/image/RelocatableBuffer;
            invokevirtual com.oracle.svm.hosted.image.RelocatableBuffer.hasRelocations:()Z
            ifeq 37
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        37: .line 941
      StackMap locals: com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl org.graalvm.compiler.debug.DebugContext com.oracle.objectfile.ObjectFile$Section java.util.List java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent java.util.Map
      StackMap stack:
            aload 0 /* this */
            getfield com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.codeCache:Lcom/oracle/svm/hosted/image/NativeImageCodeCache;
            aload 1 /* debug */
            aload 0 /* this */
            getfield com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.textBuffer:Lcom/oracle/svm/hosted/image/RelocatableBuffer;
            aload 0 /* this */
            getfield com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.objectFile:Lcom/oracle/objectfile/ObjectFile;
            invokevirtual com.oracle.svm.hosted.image.NativeImageCodeCache.patchMethods:(Lorg/graalvm/compiler/debug/DebugContext;Lcom/oracle/svm/hosted/image/RelocatableBuffer;Lcom/oracle/objectfile/ObjectFile;)V
        38: .line 948
            aload 0 /* this */
            getfield com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.codeCache:Lcom/oracle/svm/hosted/image/NativeImageCodeCache;
            aload 0 /* this */
            getfield com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.textBuffer:Lcom/oracle/svm/hosted/image/RelocatableBuffer;
            invokevirtual com.oracle.svm.hosted.image.NativeImageCodeCache.writeCode:(Lcom/oracle/svm/hosted/image/RelocatableBuffer;)V
        end local 7 // java.util.Map methodsBySignature
        39: .line 949
            aload 6 /* indent */
            ifnull 45
            aload 6 /* indent */
            invokeinterface org.graalvm.compiler.debug.Indent.close:()V
            goto 45
      StackMap locals: com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl org.graalvm.compiler.debug.DebugContext com.oracle.objectfile.ObjectFile$Section java.util.List java.lang.Throwable java.lang.Throwable org.graalvm.compiler.debug.Indent
      StackMap stack: java.lang.Throwable
        40: astore 4
            aload 6 /* indent */
            ifnull 41
            aload 6 /* indent */
            invokeinterface org.graalvm.compiler.debug.Indent.close:()V
        end local 6 // org.graalvm.compiler.debug.Indent indent
      StackMap locals:
      StackMap stack:
        41: aload 4
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        42: astore 5
            aload 4
            ifnonnull 43
            aload 5
            astore 4
            goto 44
      StackMap locals:
      StackMap stack:
        43: aload 4
            aload 5
            if_acmpeq 44
            aload 4
            aload 5
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        44: aload 4
            athrow
        45: .line 950
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.util.List entryPoints
        end local 2 // com.oracle.objectfile.ObjectFile$Section textSection
        end local 1 // org.graalvm.compiler.debug.DebugContext debug
        end local 0 // com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   46     0                this  Lcom/oracle/svm/hosted/image/NativeBootImage$NativeTextSectionImpl;
            0   46     1               debug  Lorg/graalvm/compiler/debug/DebugContext;
            0   46     2         textSection  Lcom/oracle/objectfile/ObjectFile$Section;
            0   46     3         entryPoints  Ljava/util/List<Lcom/oracle/svm/hosted/meta/HostedMethod;>;
            2   41     6              indent  Lorg/graalvm/compiler/debug/Indent;
            3   39     7  methodsBySignature  Ljava/util/Map<Ljava/lang/String;Lcom/oracle/svm/hosted/meta/HostedMethod;>;
            5   17     8                 ent  Ljava/util/Map$Entry<Lcom/oracle/svm/hosted/meta/HostedMethod;Lorg/graalvm/compiler/code/CompilationResult;>;
            6   17    10             symName  Ljava/lang/String;
            7   17    11     signatureString  Ljava/lang/String;
            8   17    12            existing  Lcom/oracle/svm/hosted/meta/HostedMethod;
            9   17    13             current  Lcom/oracle/svm/hosted/meta/HostedMethod;
           11   15    14  existingReturnType  Ljdk/vm/ci/meta/ResolvedJavaType;
           12   15    15   currentReturnType  Ljdk/vm/ci/meta/ResolvedJavaType;
           14   15    16            replaced  Lcom/oracle/svm/hosted/meta/HostedMethod;
           20   35     8                 ent  Ljava/util/Map$Entry<Ljava/lang/String;Lcom/oracle/svm/hosted/meta/HostedMethod;>;
           21   35    10              method  Lcom/oracle/svm/hosted/meta/HostedMethod;
           22   35    11                data  Ljava/lang/Object;
           25   35    12          cEntryData  Lcom/oracle/svm/hosted/code/CEntryPointData;
           28   35    13     entryPointIndex  I
           30   35    14    mangledSignature  Ljava/lang/String;
      Exception table:
        from    to  target  type
           2    39      40  any
           1    42      42  any
    Signature: (Lorg/graalvm/compiler/debug/DebugContext;Lcom/oracle/objectfile/ObjectFile$Section;Ljava/util/List<Lcom/oracle/svm/hosted/meta/HostedMethod;>;)V
    MethodParameters:
             Name  Flags
      debug        
      textSection  final
      entryPoints  final

  protected void <init>(com.oracle.svm.hosted.image.RelocatableBuffer, com.oracle.objectfile.ObjectFile, com.oracle.svm.hosted.image.NativeImageCodeCache);
    descriptor: (Lcom/oracle/svm/hosted/image/RelocatableBuffer;Lcom/oracle/objectfile/ObjectFile;Lcom/oracle/svm/hosted/image/NativeImageCodeCache;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl this
        start local 1 // com.oracle.svm.hosted.image.RelocatableBuffer relocatableBuffer
        start local 2 // com.oracle.objectfile.ObjectFile objectFile
        start local 3 // com.oracle.svm.hosted.image.NativeImageCodeCache codeCache
         0: .line 954
            aload 0 /* this */
            aload 1 /* relocatableBuffer */
            invokevirtual com.oracle.svm.hosted.image.RelocatableBuffer.getBackingArray:()[B
            invokespecial com.oracle.objectfile.BasicProgbitsSectionImpl.<init>:([B)V
         1: .line 955
            aload 0 /* this */
            aload 1 /* relocatableBuffer */
            putfield com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.textBuffer:Lcom/oracle/svm/hosted/image/RelocatableBuffer;
         2: .line 956
            aload 0 /* this */
            aload 2 /* objectFile */
            putfield com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.objectFile:Lcom/oracle/objectfile/ObjectFile;
         3: .line 957
            aload 0 /* this */
            aload 3 /* codeCache */
            putfield com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.codeCache:Lcom/oracle/svm/hosted/image/NativeImageCodeCache;
         4: .line 958
            return
        end local 3 // com.oracle.svm.hosted.image.NativeImageCodeCache codeCache
        end local 2 // com.oracle.objectfile.ObjectFile objectFile
        end local 1 // com.oracle.svm.hosted.image.RelocatableBuffer relocatableBuffer
        end local 0 // com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    5     0               this  Lcom/oracle/svm/hosted/image/NativeBootImage$NativeTextSectionImpl;
            0    5     1  relocatableBuffer  Lcom/oracle/svm/hosted/image/RelocatableBuffer;
            0    5     2         objectFile  Lcom/oracle/objectfile/ObjectFile;
            0    5     3          codeCache  Lcom/oracle/svm/hosted/image/NativeImageCodeCache;
    MethodParameters:
                   Name  Flags
      relocatableBuffer  
      objectFile         
      codeCache          

  public java.lang.Iterable getDependencies(java.util.Map);
    descriptor: (Ljava/util/Map;)Ljava/lang/Iterable;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl.getDependencies:(Ljava/util/Map;)Ljava/util/Set;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "NativeBootImage.java"
NestHost: com.oracle.svm.hosted.image.NativeBootImage
InnerClasses:
  public final Kind = com.oracle.objectfile.LayoutDecision$Kind of com.oracle.objectfile.LayoutDecision
  public abstract Element = com.oracle.objectfile.ObjectFile$Element of com.oracle.objectfile.ObjectFile
  public final Format = com.oracle.objectfile.ObjectFile$Format of com.oracle.objectfile.ObjectFile
  public abstract Section = com.oracle.objectfile.ObjectFile$Section of com.oracle.objectfile.ObjectFile
  public final Publish = com.oracle.svm.core.c.function.CEntryPointOptions$Publish of com.oracle.svm.core.c.function.CEntryPointOptions
  public abstract NativeTextSectionImpl = com.oracle.svm.hosted.image.NativeBootImage$NativeTextSectionImpl of com.oracle.svm.hosted.image.NativeBootImage
  public abstract Entry = java.util.Map$Entry of java.util.Map