public class com.oracle.objectfile.elf.ELFObjectFile$ELFHeader extends com.oracle.objectfile.ObjectFile$Header
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.oracle.objectfile.elf.ELFObjectFile$ELFHeader
  super_class: com.oracle.objectfile.ObjectFile$Header
{
  final com.oracle.objectfile.elf.ELFObjectFile this$0;
    descriptor: Lcom/oracle/objectfile/elf/ELFObjectFile;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  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 464
            ldc Lcom/oracle/objectfile/elf/ELFObjectFile;
            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.objectfile.elf.ELFObjectFile$ELFHeader.$assertionsDisabled:Z
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(com.oracle.objectfile.elf.ELFObjectFile, java.lang.String);
    descriptor: (Lcom/oracle/objectfile/elf/ELFObjectFile;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.objectfile.elf.ELFObjectFile$ELFHeader this
        start local 2 // java.lang.String name
         0: .line 584
            aload 0 /* this */
            aload 1
            putfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
         1: .line 585
            aload 0 /* this */
            aload 1
            aload 2 /* name */
            invokespecial com.oracle.objectfile.ObjectFile$Header.<init>:(Lcom/oracle/objectfile/ObjectFile;Ljava/lang/String;)V
         2: .line 586
            aload 1
            iconst_1
            putfield com.oracle.objectfile.elf.ELFObjectFile.version:C
         3: .line 587
            aload 1
            lconst_0
            putfield com.oracle.objectfile.elf.ELFObjectFile.processorSpecificFlags:J
         4: .line 588
            return
        end local 2 // java.lang.String name
        end local 0 // com.oracle.objectfile.elf.ELFObjectFile$ELFHeader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/oracle/objectfile/elf/ELFObjectFile$ELFHeader;
            0    5     2  name  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      this$0  final
      name    

  public java.lang.Iterable<com.oracle.objectfile.BuildDependency> getDependencies(java.util.Map<com.oracle.objectfile.ObjectFile$Element, com.oracle.objectfile.LayoutDecisionMap>);
    descriptor: (Ljava/util/Map;)Ljava/lang/Iterable;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=8, args_size=2
        start local 0 // com.oracle.objectfile.elf.ELFObjectFile$ELFHeader this
        start local 1 // java.util.Map decisions
         0: .line 600
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 2 /* dependencies */
        start local 2 // java.util.HashSet dependencies
         1: .line 602
            aload 1 /* decisions */
            aload 0 /* this */
            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 603
            aload 1 /* decisions */
            aload 0 /* this */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.objectfile.LayoutDecisionMap
            getstatic com.oracle.objectfile.LayoutDecision$Kind.OFFSET:Lcom/oracle/objectfile/LayoutDecision$Kind;
            invokevirtual com.oracle.objectfile.LayoutDecisionMap.getDecision:(Lcom/oracle/objectfile/LayoutDecision$Kind;)Lcom/oracle/objectfile/LayoutDecision;
            astore 4 /* ourOffset */
        start local 4 // com.oracle.objectfile.LayoutDecision ourOffset
         3: .line 604
            aload 1 /* decisions */
            aload 0 /* this */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.objectfile.LayoutDecisionMap
            getstatic com.oracle.objectfile.LayoutDecision$Kind.SIZE:Lcom/oracle/objectfile/LayoutDecision$Kind;
            invokevirtual com.oracle.objectfile.LayoutDecisionMap.getDecision:(Lcom/oracle/objectfile/LayoutDecision$Kind;)Lcom/oracle/objectfile/LayoutDecision;
            astore 5 /* ourSize */
        start local 5 // com.oracle.objectfile.LayoutDecision ourSize
         4: .line 606
            aload 1 /* decisions */
            aload 0 /* this */
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
            getfield com.oracle.objectfile.elf.ELFObjectFile.sht:Lcom/oracle/objectfile/elf/ELFObjectFile$SectionHeaderTable;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.objectfile.LayoutDecisionMap
            getstatic com.oracle.objectfile.LayoutDecision$Kind.SIZE:Lcom/oracle/objectfile/LayoutDecision$Kind;
            invokevirtual com.oracle.objectfile.LayoutDecisionMap.getDecision:(Lcom/oracle/objectfile/LayoutDecision$Kind;)Lcom/oracle/objectfile/LayoutDecision;
            astore 6 /* shtSize */
        start local 6 // com.oracle.objectfile.LayoutDecision shtSize
         5: .line 607
            aload 1 /* decisions */
            aload 0 /* this */
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
            getfield com.oracle.objectfile.elf.ELFObjectFile.sht:Lcom/oracle/objectfile/elf/ELFObjectFile$SectionHeaderTable;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.objectfile.LayoutDecisionMap
            getstatic com.oracle.objectfile.LayoutDecision$Kind.OFFSET:Lcom/oracle/objectfile/LayoutDecision$Kind;
            invokevirtual com.oracle.objectfile.LayoutDecisionMap.getDecision:(Lcom/oracle/objectfile/LayoutDecision$Kind;)Lcom/oracle/objectfile/LayoutDecision;
            astore 7 /* shtOffset */
        start local 7 // com.oracle.objectfile.LayoutDecision shtOffset
         6: .line 610
            aload 2 /* dependencies */
            aload 4 /* ourOffset */
            aload 5 /* ourSize */
            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
         7: .line 611
            aload 2 /* dependencies */
            aload 3 /* ourContent */
            aload 6 /* shtSize */
            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
         8: .line 612
            aload 2 /* dependencies */
            aload 3 /* ourContent */
            aload 7 /* shtOffset */
            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
         9: .line 614
            aload 2 /* dependencies */
            areturn
        end local 7 // com.oracle.objectfile.LayoutDecision shtOffset
        end local 6 // com.oracle.objectfile.LayoutDecision shtSize
        end local 5 // com.oracle.objectfile.LayoutDecision ourSize
        end local 4 // com.oracle.objectfile.LayoutDecision ourOffset
        end local 3 // com.oracle.objectfile.LayoutDecision ourContent
        end local 2 // java.util.HashSet dependencies
        end local 1 // java.util.Map decisions
        end local 0 // com.oracle.objectfile.elf.ELFObjectFile$ELFHeader this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   10     0          this  Lcom/oracle/objectfile/elf/ELFObjectFile$ELFHeader;
            0   10     1     decisions  Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;
            1   10     2  dependencies  Ljava/util/HashSet<Lcom/oracle/objectfile/BuildDependency;>;
            2   10     3    ourContent  Lcom/oracle/objectfile/LayoutDecision;
            3   10     4     ourOffset  Lcom/oracle/objectfile/LayoutDecision;
            4   10     5       ourSize  Lcom/oracle/objectfile/LayoutDecision;
            5   10     6       shtSize  Lcom/oracle/objectfile/LayoutDecision;
            6   10     7     shtOffset  Lcom/oracle/objectfile/LayoutDecision;
    Signature: (Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;)Ljava/lang/Iterable<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=4, locals=9, args_size=3
        start local 0 // com.oracle.objectfile.elf.ELFObjectFile$ELFHeader this
        start local 1 // java.util.Map alreadyDecided
        start local 2 // byte[] contentHint
         0: .line 620
            aload 0 /* this */
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
            invokevirtual com.oracle.objectfile.elf.ELFObjectFile.getDataEncoding:()Lcom/oracle/objectfile/elf/ELFObjectFile$ELFEncoding;
            invokevirtual com.oracle.objectfile.elf.ELFObjectFile$ELFEncoding.toByteOrder:()Ljava/nio/ByteOrder;
            invokestatic com.oracle.objectfile.io.AssemblyBuffer.createOutputAssembler:(Ljava/nio/ByteOrder;)Lcom/oracle/objectfile/io/OutputAssembler;
            astore 3 /* oa */
        start local 3 // com.oracle.objectfile.io.OutputAssembler oa
         1: .line 621
            new com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct
            dup
            aload 0 /* this */
            invokespecial com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct.<init>:(Lcom/oracle/objectfile/elf/ELFObjectFile$ELFHeader;)V
            astore 4 /* contents */
        start local 4 // com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct contents
         2: .line 624
            aload 4 /* contents */
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct.ident:Lcom/oracle/objectfile/elf/ELFObjectFile$ELFHeader$Struct$IdentStruct;
            aload 0 /* this */
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
            invokevirtual com.oracle.objectfile.elf.ELFObjectFile.getFileClass:()Lcom/oracle/objectfile/elf/ELFObjectFile$ELFClass;
            putfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct$IdentStruct.fileClass:Lcom/oracle/objectfile/elf/ELFObjectFile$ELFClass;
         3: .line 625
            aload 4 /* contents */
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct.ident:Lcom/oracle/objectfile/elf/ELFObjectFile$ELFHeader$Struct$IdentStruct;
            aload 0 /* this */
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
            invokevirtual com.oracle.objectfile.elf.ELFObjectFile.getDataEncoding:()Lcom/oracle/objectfile/elf/ELFObjectFile$ELFEncoding;
            putfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct$IdentStruct.dataEncoding:Lcom/oracle/objectfile/elf/ELFObjectFile$ELFEncoding;
         4: .line 626
            aload 4 /* contents */
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct.ident:Lcom/oracle/objectfile/elf/ELFObjectFile$ELFHeader$Struct$IdentStruct;
            aload 0 /* this */
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
            invokevirtual com.oracle.objectfile.elf.ELFObjectFile.getVersion:()C
            putfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct$IdentStruct.version:C
         5: .line 627
            aload 4 /* contents */
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct.ident:Lcom/oracle/objectfile/elf/ELFObjectFile$ELFHeader$Struct$IdentStruct;
            aload 0 /* this */
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
            invokevirtual com.oracle.objectfile.elf.ELFObjectFile.getOsAbi:()Lcom/oracle/objectfile/elf/ELFObjectFile$ELFOsAbi;
            putfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct$IdentStruct.osabi:Lcom/oracle/objectfile/elf/ELFObjectFile$ELFOsAbi;
         6: .line 628
            aload 4 /* contents */
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct.ident:Lcom/oracle/objectfile/elf/ELFObjectFile$ELFHeader$Struct$IdentStruct;
            aload 0 /* this */
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
            invokevirtual com.oracle.objectfile.elf.ELFObjectFile.getAbiVersion:()I
            i2c
            putfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct$IdentStruct.abiVersion:C
         7: .line 629
            aload 4 /* contents */
            aload 0 /* this */
            invokevirtual com.oracle.objectfile.elf.ELFObjectFile$ELFHeader.getType:()Lcom/oracle/objectfile/elf/ELFObjectFile$ELFType;
            putfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct.type:Lcom/oracle/objectfile/elf/ELFObjectFile$ELFType;
         8: .line 630
            aload 4 /* contents */
            aload 0 /* this */
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
            invokevirtual com.oracle.objectfile.elf.ELFObjectFile.getMachine:()Lcom/oracle/objectfile/elf/ELFMachine;
            putfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct.machine:Lcom/oracle/objectfile/elf/ELFMachine;
         9: .line 631
            aload 4 /* contents */
            aload 0 /* this */
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
            invokevirtual com.oracle.objectfile.elf.ELFObjectFile.getVersion:()C
            putfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct.version:I
        10: .line 632
            aload 4 /* contents */
            lconst_0
            putfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct.entry:J
        11: .line 633
            aload 4 /* contents */
            aload 1 /* alreadyDecided */
            aload 0 /* this */
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
            getfield com.oracle.objectfile.elf.ELFObjectFile.sht:Lcom/oracle/objectfile/elf/ELFObjectFile$SectionHeaderTable;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.objectfile.LayoutDecisionMap
            getstatic com.oracle.objectfile.LayoutDecision$Kind.OFFSET:Lcom/oracle/objectfile/LayoutDecision$Kind;
            invokevirtual com.oracle.objectfile.LayoutDecisionMap.getDecidedValue:(Lcom/oracle/objectfile/LayoutDecision$Kind;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            i2l
            putfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct.shoff:J
        12: .line 634
            aload 4 /* contents */
            aload 0 /* this */
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
            invokevirtual com.oracle.objectfile.elf.ELFObjectFile.getFlags:()J
            l2i
            putfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct.flags:I
        13: .line 636
            aload 4 /* contents */
            aload 4 /* contents */
            invokevirtual com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct.getWrittenSize:()I
            i2s
            putfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct.ehsize:S
        14: .line 637
            aload 4 /* contents */
            new com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct
            dup
            aload 0 /* this */
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
            invokespecial com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct.<init>:(Lcom/oracle/objectfile/elf/ELFObjectFile;)V
            invokevirtual com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct.getWrittenSize:()I
            i2s
            putfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct.shentsize:S
        15: .line 638
            aload 1 /* alreadyDecided */
            aload 0 /* this */
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
            getfield com.oracle.objectfile.elf.ELFObjectFile.sht:Lcom/oracle/objectfile/elf/ELFObjectFile$SectionHeaderTable;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.oracle.objectfile.LayoutDecisionMap
            getstatic com.oracle.objectfile.LayoutDecision$Kind.SIZE:Lcom/oracle/objectfile/LayoutDecision$Kind;
            invokevirtual com.oracle.objectfile.LayoutDecisionMap.getDecidedValue:(Lcom/oracle/objectfile/LayoutDecision$Kind;)Ljava/lang/Object;
            checkcast java.lang.Integer
            invokevirtual java.lang.Integer.intValue:()I
            istore 5 /* shtSize */
        start local 5 // int shtSize
        16: .line 639
            getstatic com.oracle.objectfile.elf.ELFObjectFile$ELFHeader.$assertionsDisabled:Z
            ifne 17
            iload 5 /* shtSize */
            aload 4 /* contents */
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct.shentsize:S
            irem
            ifeq 17
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
        17: .line 640
      StackMap locals: com.oracle.objectfile.io.OutputAssembler com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct int
      StackMap stack:
            aload 4 /* contents */
            iload 5 /* shtSize */
            aload 4 /* contents */
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct.shentsize:S
            idiv
            i2s
            putfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct.shnum:S
        18: .line 644
            aload 0 /* this */
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
            invokevirtual com.oracle.objectfile.elf.ELFObjectFile.getSections:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6 /* i */
        start local 6 // java.util.Iterator i
        19: .line 645
            iconst_1
            istore 7 /* index */
        start local 7 // short index
        20: .line 646
            iconst_0
            istore 8 /* sawShStrTab */
        start local 8 // boolean sawShStrTab
        21: .line 647
            goto 26
        22: .line 648
      StackMap locals: java.util.Iterator int int
      StackMap stack:
            aload 6 /* i */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            aload 0 /* this */
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
            getfield com.oracle.objectfile.elf.ELFObjectFile.shstrtab:Lcom/oracle/objectfile/elf/ELFStrtab;
            if_acmpne 25
        23: .line 649
            iconst_1
            istore 8 /* sawShStrTab */
        24: .line 650
            goto 27
        25: .line 647
      StackMap locals:
      StackMap stack:
            iload 7 /* index */
            iconst_1
            iadd
            i2s
            istore 7 /* index */
      StackMap locals:
      StackMap stack:
        26: aload 6 /* i */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 22
        27: .line 653
      StackMap locals:
      StackMap stack:
            aload 4 /* contents */
            iload 8 /* sawShStrTab */
            ifeq 28
            iload 7 /* index */
            goto 29
      StackMap locals:
      StackMap stack: com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct
        28: iconst_0
      StackMap locals: com.oracle.objectfile.elf.ELFObjectFile$ELFHeader java.util.Map byte[] com.oracle.objectfile.io.OutputAssembler com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct int java.util.Iterator int int
      StackMap stack: com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct int
        29: putfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct.shstrndx:S
        30: .line 654
            aload 4 /* contents */
            aload 3 /* oa */
            invokevirtual com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct.write:(Lcom/oracle/objectfile/io/OutputAssembler;)V
        31: .line 661
            aload 3 /* oa */
            invokeinterface com.oracle.objectfile.io.OutputAssembler.getBlob:()[B
            areturn
        end local 8 // boolean sawShStrTab
        end local 7 // short index
        end local 6 // java.util.Iterator i
        end local 5 // int shtSize
        end local 4 // com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct contents
        end local 3 // com.oracle.objectfile.io.OutputAssembler oa
        end local 2 // byte[] contentHint
        end local 1 // java.util.Map alreadyDecided
        end local 0 // com.oracle.objectfile.elf.ELFObjectFile$ELFHeader this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   32     0            this  Lcom/oracle/objectfile/elf/ELFObjectFile$ELFHeader;
            0   32     1  alreadyDecided  Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;
            0   32     2     contentHint  [B
            1   32     3              oa  Lcom/oracle/objectfile/io/OutputAssembler;
            2   32     4        contents  Lcom/oracle/objectfile/elf/ELFObjectFile$ELFHeader$Struct;
           16   32     5         shtSize  I
           19   32     6               i  Ljava/util/Iterator<*>;
           20   32     7           index  S
           21   32     8     sawShStrTab  Z
    Signature: (Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;[B)[B
    MethodParameters:
                Name  Flags
      alreadyDecided  
      contentHint     

  public int getOrDecideOffset(java.util.Map<com.oracle.objectfile.ObjectFile$Element, com.oracle.objectfile.LayoutDecisionMap>, );
    descriptor: (Ljava/util/Map;I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // com.oracle.objectfile.elf.ELFObjectFile$ELFHeader this
        start local 1 // java.util.Map alreadyDecided
        start local 2 // int offsetHint
         0: .line 666
            iconst_0
            ireturn
        end local 2 // int offsetHint
        end local 1 // java.util.Map alreadyDecided
        end local 0 // com.oracle.objectfile.elf.ELFObjectFile$ELFHeader this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    1     0            this  Lcom/oracle/objectfile/elf/ELFObjectFile$ELFHeader;
            0    1     1  alreadyDecided  Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;
            0    1     2      offsetHint  I
    Signature: (Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;I)I
    MethodParameters:
                Name  Flags
      alreadyDecided  
      offsetHint      

  public int getOrDecideSize(java.util.Map<com.oracle.objectfile.ObjectFile$Element, com.oracle.objectfile.LayoutDecisionMap>, );
    descriptor: (Ljava/util/Map;I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // com.oracle.objectfile.elf.ELFObjectFile$ELFHeader this
        start local 1 // java.util.Map alreadyDecided
        start local 2 // int sizeHint
         0: .line 671
            new com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct
            dup
            aload 0 /* this */
            invokespecial com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct.<init>:(Lcom/oracle/objectfile/elf/ELFObjectFile$ELFHeader;)V
            invokevirtual com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct.getWrittenSize:()I
            istore 3 /* size */
        start local 3 // int size
         1: .line 672
            getstatic com.oracle.objectfile.elf.ELFObjectFile$ELFHeader.$assertionsDisabled:Z
            ifne 2
            iload 2 /* sizeHint */
            iconst_m1
            if_icmpeq 2
            iload 2 /* sizeHint */
            iload 3 /* size */
            if_icmpeq 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 673
      StackMap locals: int
      StackMap stack:
            iload 3 /* size */
            ireturn
        end local 3 // int size
        end local 2 // int sizeHint
        end local 1 // java.util.Map alreadyDecided
        end local 0 // com.oracle.objectfile.elf.ELFObjectFile$ELFHeader this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0            this  Lcom/oracle/objectfile/elf/ELFObjectFile$ELFHeader;
            0    3     1  alreadyDecided  Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;
            0    3     2        sizeHint  I
            1    3     3            size  I
    Signature: (Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;I)I
    MethodParameters:
                Name  Flags
      alreadyDecided  
      sizeHint        

  public short getShNum();
    descriptor: ()S
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.objectfile.elf.ELFObjectFile$ELFHeader this
         0: .line 677
            aload 0 /* this */
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
            invokestatic com.oracle.objectfile.elf.ELFObjectFile.access$4:(Lcom/oracle/objectfile/elf/ELFObjectFile;)Lcom/oracle/objectfile/ElementList;
            invokevirtual com.oracle.objectfile.ElementList.sectionsCount:()I
            i2s
            ireturn
        end local 0 // com.oracle.objectfile.elf.ELFObjectFile$ELFHeader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/objectfile/elf/ELFObjectFile$ELFHeader;

  public com.oracle.objectfile.elf.ELFObjectFile$ELFType getType();
    descriptor: ()Lcom/oracle/objectfile/elf/ELFObjectFile$ELFType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.objectfile.elf.ELFObjectFile$ELFHeader this
         0: .line 681
            getstatic com.oracle.objectfile.elf.ELFObjectFile$ELFType.REL:Lcom/oracle/objectfile/elf/ELFObjectFile$ELFType;
            areturn
        end local 0 // com.oracle.objectfile.elf.ELFObjectFile$ELFHeader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/objectfile/elf/ELFObjectFile$ELFHeader;

  static com.oracle.objectfile.elf.ELFObjectFile access$0(com.oracle.objectfile.elf.ELFObjectFile$ELFHeader);
    descriptor: (Lcom/oracle/objectfile/elf/ELFObjectFile$ELFHeader;)Lcom/oracle/objectfile/elf/ELFObjectFile;
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 464
            aload 0
            getfield com.oracle.objectfile.elf.ELFObjectFile$ELFHeader.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "ELFObjectFile.java"
NestHost: com.oracle.objectfile.elf.ELFObjectFile
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 abstract Header = com.oracle.objectfile.ObjectFile$Header of com.oracle.objectfile.ObjectFile
  public abstract Section = com.oracle.objectfile.ObjectFile$Section of com.oracle.objectfile.ObjectFile
  public final ELFClass = com.oracle.objectfile.elf.ELFObjectFile$ELFClass of com.oracle.objectfile.elf.ELFObjectFile
  public final ELFEncoding = com.oracle.objectfile.elf.ELFObjectFile$ELFEncoding of com.oracle.objectfile.elf.ELFObjectFile
  public ELFHeader = com.oracle.objectfile.elf.ELFObjectFile$ELFHeader of com.oracle.objectfile.elf.ELFObjectFile
  Struct = com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct of com.oracle.objectfile.elf.ELFObjectFile$ELFHeader
  IdentStruct = com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct$IdentStruct of com.oracle.objectfile.elf.ELFObjectFile$ELFHeader$Struct
  public final ELFOsAbi = com.oracle.objectfile.elf.ELFObjectFile$ELFOsAbi of com.oracle.objectfile.elf.ELFObjectFile
  public final ELFType = com.oracle.objectfile.elf.ELFObjectFile$ELFType of com.oracle.objectfile.elf.ELFObjectFile
  SectionHeaderEntryStruct = com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct of com.oracle.objectfile.elf.ELFObjectFile