public class extends com.oracle.objectfile.ObjectFile$Element
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable
super_class: com.oracle.objectfile.ObjectFile$Element
{
final com.oracle.objectfile.elf.ELFObjectFile ;
descriptor: Lcom/oracle/objectfile/elf/ELFObjectFile;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
static final boolean ;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void ();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: 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$SectionHeaderTable.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
public com.oracle.objectfile.ElementImpl ();
descriptor: ()Lcom/oracle/objectfile/ElementImpl;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/objectfile/elf/ELFObjectFile$SectionHeaderTable;
public boolean ();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/objectfile/elf/ELFObjectFile$SectionHeaderTable;
public void (com.oracle.objectfile.elf.ELFObjectFile);
descriptor: (Lcom/oracle/objectfile/elf/ELFObjectFile;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 0: aload 0
aload 1
putfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
1: aload 0
aload 1
ldc "ELFSectionHeaderTable"
invokespecial com.oracle.objectfile.ObjectFile$Element.<init>:(Lcom/oracle/objectfile/ObjectFile;Ljava/lang/String;)V
2: getstatic com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.$assertionsDisabled:Z
ifne 3
aload 1
invokestatic com.oracle.objectfile.elf.ELFObjectFile.access$4:(Lcom/oracle/objectfile/elf/ELFObjectFile;)Lcom/oracle/objectfile/ElementList;
invokevirtual com.oracle.objectfile.ElementList.sectionsCount:()I
iconst_1
if_icmpeq 3
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
3: StackMap locals: com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable com.oracle.objectfile.elf.ELFObjectFile
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/oracle/objectfile/elf/ELFObjectFile$SectionHeaderTable;
MethodParameters:
Name Flags
this$0 final
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=4, locals=6, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokestatic com.oracle.objectfile.ObjectFile.defaultDependencies:(Ljava/util/Map;Lcom/oracle/objectfile/ObjectFile$Element;)Ljava/util/HashSet;
astore 2
start local 2 1: aload 1
aload 0
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
start local 3 2: aload 2
aload 3
aload 1
aload 0
getfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
getfield com.oracle.objectfile.elf.ELFObjectFile.shstrtab:Lcom/oracle/objectfile/elf/ELFStrtab;
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;
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
3: aload 2
aload 3
aload 1
aload 0
getfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
getfield com.oracle.objectfile.elf.ELFObjectFile.shstrtab:Lcom/oracle/objectfile/elf/ELFStrtab;
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;
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
4: aload 2
aload 3
aload 1
aload 0
getfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
getfield com.oracle.objectfile.elf.ELFObjectFile.shstrtab:Lcom/oracle/objectfile/elf/ELFStrtab;
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;
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: aload 1
aload 0
getfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
getfield com.oracle.objectfile.elf.ELFObjectFile.shstrtab:Lcom/oracle/objectfile/elf/ELFStrtab;
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;
pop
6: aload 1
aload 0
getfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
getfield com.oracle.objectfile.elf.ELFObjectFile.shstrtab:Lcom/oracle/objectfile/elf/ELFStrtab;
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;
pop
7: aload 0
getfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
invokevirtual com.oracle.objectfile.elf.ELFObjectFile.getElements:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 12
StackMap locals: com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable java.util.Map java.util.HashSet com.oracle.objectfile.LayoutDecision top java.util.Iterator
StackMap stack:
8: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.objectfile.ObjectFile$Element
astore 4
start local 4 9: aload 4
aload 0
if_acmpeq 12
aload 4
aload 0
getfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
getfield com.oracle.objectfile.elf.ELFObjectFile.shstrtab:Lcom/oracle/objectfile/elf/ELFStrtab;
if_acmpeq 12
10: aload 2
aload 3
aload 1
aload 4
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;
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
11: aload 2
aload 3
aload 1
aload 4
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;
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
end local 4 12: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 8
13: aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/oracle/objectfile/elf/ELFObjectFile$SectionHeaderTable;
0 14 1 decisions Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;
1 14 2 deps Ljava/util/HashSet<Lcom/oracle/objectfile/BuildDependency;>;
2 14 3 ourContent Lcom/oracle/objectfile/LayoutDecision;
9 12 4 e Lcom/oracle/objectfile/ObjectFile$Element;
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 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=6, args_size=3
start local 0 start local 1 start local 2 0: new com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct
dup
aload 0
getfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
invokespecial com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct.<init>:(Lcom/oracle/objectfile/elf/ELFObjectFile;)V
astore 3
start local 3 1: aload 0
getfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.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 4
start local 4 2: aload 3
aload 4
invokevirtual com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct.write:(Lcom/oracle/objectfile/io/OutputAssembler;)V
3: aload 4
invokeinterface com.oracle.objectfile.io.OutputAssembler.pos:()I
istore 5
start local 5 4: aload 0
getfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.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
iconst_1
iadd
iload 5
imul
ireturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/objectfile/elf/ELFObjectFile$SectionHeaderTable;
0 5 1 alreadyDecided Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;
0 5 2 sizeHint I
1 5 3 s Lcom/oracle/objectfile/elf/ELFObjectFile$SectionHeaderEntryStruct;
2 5 4 oa Lcom/oracle/objectfile/io/OutputAssembler;
4 5 5 entrySize I
Signature: (Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;I)I
MethodParameters:
Name Flags
alreadyDecided
sizeHint
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=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.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
start local 3 1: aload 0
aload 3
aload 1
invokevirtual com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.write:(Lcom/oracle/objectfile/io/OutputAssembler;Ljava/util/Map;)V
2: aload 3
invokeinterface com.oracle.objectfile.io.OutputAssembler.getBlob:()[B
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/objectfile/elf/ELFObjectFile$SectionHeaderTable;
0 3 1 alreadyDecided Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;
0 3 2 contentHint [B
1 3 3 oa Lcom/oracle/objectfile/io/OutputAssembler;
Signature: (Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;[B)[B
MethodParameters:
Name Flags
alreadyDecided
contentHint
public com.oracle.objectfile.LayoutDecisionMap (com.oracle.objectfile.LayoutDecisionMap);
descriptor: (Lcom/oracle/objectfile/LayoutDecisionMap;)Lcom/oracle/objectfile/LayoutDecisionMap;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic com.oracle.objectfile.elf.ELFObjectFile.defaultDecisions:(Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;)Lcom/oracle/objectfile/LayoutDecisionMap;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/objectfile/elf/ELFObjectFile$SectionHeaderTable;
0 1 1 copyingIn Lcom/oracle/objectfile/LayoutDecisionMap;
MethodParameters:
Name Flags
copyingIn
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=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 0
iload 2
invokestatic com.oracle.objectfile.elf.ELFObjectFile.defaultGetOrDecideOffset:(Ljava/util/Map;Lcom/oracle/objectfile/ObjectFile$Element;I)I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/objectfile/elf/ELFObjectFile$SectionHeaderTable;
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 getOrDecideVaddr(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=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 0
iload 2
invokestatic com.oracle.objectfile.elf.ELFObjectFile.defaultGetOrDecideVaddr:(Ljava/util/Map;Lcom/oracle/objectfile/ObjectFile$Element;I)I
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/objectfile/elf/ELFObjectFile$SectionHeaderTable;
0 1 1 alreadyDecided Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;
0 1 2 vaddrHint I
Signature: (Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;I)I
MethodParameters:
Name Flags
alreadyDecided
vaddrHint
public void write(com.oracle.objectfile.io.OutputAssembler, java.util.Map<com.oracle.objectfile.ObjectFile$Element, com.oracle.objectfile.LayoutDecisionMap>);
descriptor: (Lcom/oracle/objectfile/io/OutputAssembler;Ljava/util/Map;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=15, args_size=3
start local 0 start local 1 start local 2 0: aload 2
aload 0
getfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
getfield com.oracle.objectfile.elf.ELFObjectFile.shstrtab:Lcom/oracle/objectfile/elf/ELFStrtab;
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
start local 3 1: aload 3
invokevirtual com.oracle.objectfile.LayoutDecision.getValue:()Ljava/lang/Object;
checkcast byte[]
astore 4
start local 4 2: new com.oracle.objectfile.StringTable
dup
aload 4
invokespecial com.oracle.objectfile.StringTable.<init>:([B)V
astore 5
start local 5 3: new com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct
dup
aload 0
getfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
invokespecial com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct.<init>:(Lcom/oracle/objectfile/elf/ELFObjectFile;)V
astore 6
start local 6 4: getstatic com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.$assertionsDisabled:Z
ifne 5
aload 6
invokevirtual com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct.isNullEntry:()Z
ifne 5
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
5: StackMap locals: com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable com.oracle.objectfile.io.OutputAssembler java.util.Map com.oracle.objectfile.LayoutDecision byte[] com.oracle.objectfile.StringTable com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct
StackMap stack:
aload 6
aload 1
invokevirtual com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct.write:(Lcom/oracle/objectfile/io/OutputAssembler;)V
6: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 7
start local 7 7: aload 0
getfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
invokevirtual com.oracle.objectfile.elf.ELFObjectFile.getSections:()Ljava/util/List;
astore 8
start local 8 8: aload 8
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 9
start local 9 9: iconst_0
istore 10
start local 10 10: goto 15
11: StackMap locals: com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable com.oracle.objectfile.io.OutputAssembler java.util.Map com.oracle.objectfile.LayoutDecision byte[] com.oracle.objectfile.StringTable com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct java.util.HashMap java.lang.Iterable java.util.Iterator int
StackMap stack:
iinc 10 1
12: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.objectfile.ObjectFile$Section
astore 11
start local 11 13: aload 7
aload 11
iload 10
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
14: getstatic com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.$assertionsDisabled:Z
ifne 15
aload 0
getfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
iload 10
invokevirtual com.oracle.objectfile.elf.ELFObjectFile.getSectionByIndex:(I)Lcom/oracle/objectfile/elf/ELFObjectFile$ELFSection;
aload 11
if_acmpeq 15
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
end local 11 15: StackMap locals:
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 11
16: getstatic com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.$assertionsDisabled:Z
ifne 17
aload 0
getfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.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
iload 10
if_icmpeq 17
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
17: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.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 12
goto 40
StackMap locals: com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable com.oracle.objectfile.io.OutputAssembler java.util.Map com.oracle.objectfile.LayoutDecision byte[] com.oracle.objectfile.StringTable com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct java.util.HashMap java.lang.Iterable java.util.Iterator int top java.util.Iterator
StackMap stack:
18: aload 12
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.objectfile.ObjectFile$Section
astore 11
start local 11 19: aload 11
checkcast com.oracle.objectfile.elf.ELFObjectFile$ELFSection
astore 13
start local 13 20: aload 6
aload 5
aload 0
getfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
aload 11
invokevirtual com.oracle.objectfile.elf.ELFObjectFile.nameForElement:(Lcom/oracle/objectfile/ObjectFile$Element;)Ljava/lang/String;
invokevirtual com.oracle.objectfile.StringTable.indexFor:(Ljava/lang/String;)I
putfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct.namePtr:I
21: aload 6
aload 13
invokevirtual com.oracle.objectfile.elf.ELFObjectFile$ELFSection.getType:()Lcom/oracle/objectfile/elf/ELFObjectFile$SectionType;
putfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct.type:Lcom/oracle/objectfile/elf/ELFObjectFile$SectionType;
22: getstatic com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.$assertionsDisabled:Z
ifne 23
aload 11
invokevirtual com.oracle.objectfile.ObjectFile$Section.getImpl:()Lcom/oracle/objectfile/ElementImpl;
invokeinterface com.oracle.objectfile.ElementImpl.isLoadable:()Z
aload 13
invokevirtual com.oracle.objectfile.elf.ELFObjectFile$ELFSection.getFlags:()Ljava/util/EnumSet;
getstatic com.oracle.objectfile.elf.ELFObjectFile$ELFSectionFlag.ALLOC:Lcom/oracle/objectfile/elf/ELFObjectFile$ELFSectionFlag;
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
if_icmpeq 23
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
23: StackMap locals: com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable com.oracle.objectfile.io.OutputAssembler java.util.Map com.oracle.objectfile.LayoutDecision byte[] com.oracle.objectfile.StringTable com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct java.util.HashMap java.lang.Iterable java.util.Iterator int com.oracle.objectfile.ObjectFile$Section java.util.Iterator com.oracle.objectfile.elf.ELFObjectFile$ELFSection
StackMap stack:
aload 6
aload 13
invokevirtual com.oracle.objectfile.elf.ELFObjectFile$ELFSection.getFlags:()Ljava/util/EnumSet;
invokestatic com.oracle.objectfile.ObjectFile.flagSetAsLong:(Ljava/util/EnumSet;)J
putfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct.flags:J
24: aload 6
aload 2
aload 13
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$SectionHeaderEntryStruct.fileOffset:J
25: aload 13
invokevirtual com.oracle.objectfile.elf.ELFObjectFile$ELFSection.getFlags:()Ljava/util/EnumSet;
getstatic com.oracle.objectfile.elf.ELFObjectFile$ELFSectionFlag.ALLOC:Lcom/oracle/objectfile/elf/ELFObjectFile$ELFSectionFlag;
invokevirtual java.util.EnumSet.contains:(Ljava/lang/Object;)Z
ifeq 28
aload 0
getfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable.this$0:Lcom/oracle/objectfile/elf/ELFObjectFile;
getfield com.oracle.objectfile.elf.ELFObjectFile.runtimeDebugInfoGeneration:Z
ifeq 28
26: aload 6
aload 2
aload 13
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.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$SectionHeaderEntryStruct.virtualAddress:J
27: goto 29
28: StackMap locals:
StackMap stack:
aload 6
lconst_0
putfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct.virtualAddress:J
29: StackMap locals:
StackMap stack:
aload 6
aload 2
aload 13
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
i2l
putfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct.sectionSize:J
30: aload 6
getfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct.sectionSize:J
lconst_0
lcmp
ifne 32
31: aload 6
aload 13
aload 2
invokevirtual com.oracle.objectfile.elf.ELFObjectFile$ELFSection.getMemSize:(Ljava/util/Map;)I
i2l
putfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct.sectionSize:J
32: StackMap locals:
StackMap stack:
aload 13
invokevirtual com.oracle.objectfile.elf.ELFObjectFile$ELFSection.getLinkedSection:()Lcom/oracle/objectfile/elf/ELFObjectFile$ELFSection;
astore 14
start local 14 33: aload 6
aload 14
ifnonnull 34
iconst_0
goto 35
StackMap locals: com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable com.oracle.objectfile.io.OutputAssembler java.util.Map com.oracle.objectfile.LayoutDecision byte[] com.oracle.objectfile.StringTable com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct java.util.HashMap java.lang.Iterable java.util.Iterator int com.oracle.objectfile.ObjectFile$Section java.util.Iterator com.oracle.objectfile.elf.ELFObjectFile$ELFSection com.oracle.objectfile.ObjectFile$Section
StackMap stack: com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct
34: aload 7
aload 14
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
StackMap locals: com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable com.oracle.objectfile.io.OutputAssembler java.util.Map com.oracle.objectfile.LayoutDecision byte[] com.oracle.objectfile.StringTable com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct java.util.HashMap java.lang.Iterable java.util.Iterator int com.oracle.objectfile.ObjectFile$Section java.util.Iterator com.oracle.objectfile.elf.ELFObjectFile$ELFSection com.oracle.objectfile.ObjectFile$Section
StackMap stack: com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct int
35: putfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct.link:I
36: aload 6
aload 13
invokevirtual com.oracle.objectfile.elf.ELFObjectFile$ELFSection.getLinkedInfo:()J
l2i
putfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct.info:I
37: aload 6
aload 13
invokevirtual com.oracle.objectfile.elf.ELFObjectFile$ELFSection.getAlignment:()I
i2l
putfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct.addrAlign:J
38: aload 6
aload 13
invokevirtual com.oracle.objectfile.elf.ELFObjectFile$ELFSection.getEntrySize:()I
i2l
putfield com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct.entrySize:J
39: aload 6
aload 1
invokevirtual com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct.write:(Lcom/oracle/objectfile/io/OutputAssembler;)V
end local 14 end local 13 end local 11 40: StackMap locals: com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable com.oracle.objectfile.io.OutputAssembler java.util.Map com.oracle.objectfile.LayoutDecision byte[] com.oracle.objectfile.StringTable com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct java.util.HashMap java.lang.Iterable java.util.Iterator int top java.util.Iterator
StackMap stack:
aload 12
invokeinterface java.util.Iterator.hasNext:()Z
ifne 18
41: return
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 42 0 this Lcom/oracle/objectfile/elf/ELFObjectFile$SectionHeaderTable;
0 42 1 out Lcom/oracle/objectfile/io/OutputAssembler;
0 42 2 alreadyDecided Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;
1 42 3 shstrtabDecision Lcom/oracle/objectfile/LayoutDecision;
2 42 4 shstrtabContents [B
3 42 5 strings Lcom/oracle/objectfile/StringTable;
4 42 6 ent Lcom/oracle/objectfile/elf/ELFObjectFile$SectionHeaderEntryStruct;
7 42 7 sectionIndices Ljava/util/HashMap<Lcom/oracle/objectfile/ObjectFile$Section;Ljava/lang/Integer;>;
8 42 8 sections Ljava/lang/Iterable<Lcom/oracle/objectfile/ObjectFile$Section;>;
9 42 9 iter Ljava/util/Iterator<Lcom/oracle/objectfile/ObjectFile$Section;>;
10 42 10 currentSectionIndex I
13 15 11 s Lcom/oracle/objectfile/ObjectFile$Section;
19 40 11 s Lcom/oracle/objectfile/ObjectFile$Section;
20 40 13 es Lcom/oracle/objectfile/elf/ELFObjectFile$ELFSection;
33 40 14 linkedSection Lcom/oracle/objectfile/ObjectFile$Section;
Signature: (Lcom/oracle/objectfile/io/OutputAssembler;Ljava/util/Map<Lcom/oracle/objectfile/ObjectFile$Element;Lcom/oracle/objectfile/LayoutDecisionMap;>;)V
MethodParameters:
Name Flags
out
alreadyDecided
}
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 Section = com.oracle.objectfile.ObjectFile$Section of com.oracle.objectfile.ObjectFile
public abstract ValueEnum = com.oracle.objectfile.ObjectFile$ValueEnum of com.oracle.objectfile.ObjectFile
public final ELFEncoding = com.oracle.objectfile.elf.ELFObjectFile$ELFEncoding of com.oracle.objectfile.elf.ELFObjectFile
public abstract ELFSection = com.oracle.objectfile.elf.ELFObjectFile$ELFSection of com.oracle.objectfile.elf.ELFObjectFile
public final ELFSectionFlag = com.oracle.objectfile.elf.ELFObjectFile$ELFSectionFlag of com.oracle.objectfile.elf.ELFObjectFile
SectionHeaderEntryStruct = com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderEntryStruct of com.oracle.objectfile.elf.ELFObjectFile
public SectionHeaderTable = com.oracle.objectfile.elf.ELFObjectFile$SectionHeaderTable of com.oracle.objectfile.elf.ELFObjectFile
public final SectionType = com.oracle.objectfile.elf.ELFObjectFile$SectionType of com.oracle.objectfile.elf.ELFObjectFile