public class jdk.tools.jaotc.binformat.elf.JELFRelocObject
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: jdk.tools.jaotc.binformat.elf.JELFRelocObject
super_class: java.lang.Object
{
private final jdk.tools.jaotc.binformat.BinaryContainer binContainer;
descriptor: Ljdk/tools/jaotc/binformat/BinaryContainer;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final jdk.tools.jaotc.jnilibelf.JNIELFContainer elfContainer;
descriptor: Ljdk/tools/jaotc/jnilibelf/JNIELFContainer;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int segmentSize;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private static volatile int[] $SWITCH_TABLE$jdk$tools$jaotc$binformat$Relocation$RelocType;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, 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: ldc Ljdk/tools/jaotc/binformat/elf/JELFRelocObject;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic jdk.tools.jaotc.binformat.elf.JELFRelocObject.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(jdk.tools.jaotc.binformat.BinaryContainer, java.lang.String, java.lang.String);
descriptor: (Ljdk/tools/jaotc/binformat/BinaryContainer;Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.binContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
2: aload 0
new jdk.tools.jaotc.jnilibelf.JNIELFContainer
dup
aload 2
aload 3
invokespecial jdk.tools.jaotc.jnilibelf.JNIELFContainer.<init>:(Ljava/lang/String;Ljava/lang/String;)V
putfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.elfContainer:Ljdk/tools/jaotc/jnilibelf/JNIELFContainer;
3: aload 0
aload 1
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getCodeSegmentSize:()I
putfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.segmentSize:I
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/tools/jaotc/binformat/elf/JELFRelocObject;
0 5 1 binContainer Ljdk/tools/jaotc/binformat/BinaryContainer;
0 5 2 outputFileName Ljava/lang/String;
0 5 3 aotVersion Ljava/lang/String;
MethodParameters:
Name Flags
binContainer
outputFileName
aotVersion
private void createByteSection(jdk.tools.jaotc.binformat.ByteContainer, int);
descriptor: (Ljdk/tools/jaotc/binformat/ByteContainer;I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual jdk.tools.jaotc.binformat.ByteContainer.getByteArray:()[B
astore 3
start local 3 1: iconst_1
istore 4
start local 4 2: aload 1
invokevirtual jdk.tools.jaotc.binformat.ByteContainer.hasRelocations:()Z
ifeq 3
iconst_0
goto 4
StackMap locals: byte[] int
StackMap stack:
3: iconst_1
StackMap locals:
StackMap stack: int
4: istore 5
start local 5 5: iload 5
ifeq 15
6: aload 3
dup
astore 9
arraylength
istore 8
iconst_0
istore 7
goto 12
StackMap locals: jdk.tools.jaotc.binformat.elf.JELFRelocObject jdk.tools.jaotc.binformat.ByteContainer int byte[] int int top int int byte[]
StackMap stack:
7: aload 9
iload 7
baload
istore 6
start local 6 8: iload 6
ifeq 11
9: iconst_0
istore 5
10: goto 13
end local 6 11: StackMap locals:
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
12: iload 7
iload 8
if_icmplt 7
13: StackMap locals: jdk.tools.jaotc.binformat.elf.JELFRelocObject jdk.tools.jaotc.binformat.ByteContainer int byte[] int int
StackMap stack:
iload 5
ifeq 15
14: bipush 8
istore 4
15: StackMap locals:
StackMap stack:
aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.elfContainer:Ljdk/tools/jaotc/jnilibelf/JNIELFContainer;
aload 1
invokevirtual jdk.tools.jaotc.binformat.ByteContainer.getContainerName:()Ljava/lang/String;
aload 3
getstatic jdk.tools.jaotc.jnilibelf.JNILibELFAPI$LibELF$Elf_Type.ELF_T_BYTE:Ljdk/tools/jaotc/jnilibelf/JNILibELFAPI$LibELF$Elf_Type;
aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.segmentSize:I
iload 4
iload 2
iconst_0
iconst_0
invokevirtual jdk.tools.jaotc.jnilibelf.JNIELFContainer.createSection:(Ljava/lang/String;[BLjdk/tools/jaotc/jnilibelf/JNILibELFAPI$LibELF$Elf_Type;IIIII)I
istore 6
start local 6 16: aload 1
iload 6
invokevirtual jdk.tools.jaotc.binformat.ByteContainer.setSectionId:(I)V
17: aload 1
invokevirtual jdk.tools.jaotc.binformat.ByteContainer.clear:()V
18: return
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 19 0 this Ljdk/tools/jaotc/binformat/elf/JELFRelocObject;
0 19 1 c Ljdk/tools/jaotc/binformat/ByteContainer;
0 19 2 scnFlags I
1 19 3 scnData [B
2 19 4 scnType I
5 19 5 zeros Z
8 11 6 b B
16 19 6 sectionId I
MethodParameters:
Name Flags
c
scnFlags
private void createCodeSection(jdk.tools.jaotc.binformat.CodeContainer);
descriptor: (Ljdk/tools/jaotc/binformat/CodeContainer;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
bipush 6
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createByteSection:(Ljdk/tools/jaotc/binformat/ByteContainer;I)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/tools/jaotc/binformat/elf/JELFRelocObject;
0 2 1 c Ljdk/tools/jaotc/binformat/CodeContainer;
MethodParameters:
Name Flags
c
private void createReadOnlySection(jdk.tools.jaotc.binformat.ReadOnlyDataContainer);
descriptor: (Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_2
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createByteSection:(Ljdk/tools/jaotc/binformat/ByteContainer;I)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/tools/jaotc/binformat/elf/JELFRelocObject;
0 2 1 c Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;
MethodParameters:
Name Flags
c
private void createReadWriteSection(jdk.tools.jaotc.binformat.ByteContainer);
descriptor: (Ljdk/tools/jaotc/binformat/ByteContainer;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_3
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createByteSection:(Ljdk/tools/jaotc/binformat/ByteContainer;I)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/tools/jaotc/binformat/elf/JELFRelocObject;
0 2 1 c Ljdk/tools/jaotc/binformat/ByteContainer;
MethodParameters:
Name Flags
c
public void createELFRelocObject(java.util.Map<jdk.tools.jaotc.binformat.Symbol, java.util.List<jdk.tools.jaotc.binformat.Relocation>>, java.util.Collection<jdk.tools.jaotc.binformat.Symbol>);
descriptor: (Ljava/util/Map;Ljava/util/Collection;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.elfContainer:Ljdk/tools/jaotc/jnilibelf/JNIELFContainer;
iconst_1
invokevirtual jdk.tools.jaotc.jnilibelf.JNIELFContainer.createELFHeader:(I)V
1: aload 0
aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.binContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getCodeContainer:()Ljdk/tools/jaotc/binformat/CodeContainer;
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createCodeSection:(Ljdk/tools/jaotc/binformat/CodeContainer;)V
2: aload 0
aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.binContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getMetaspaceNamesContainer:()Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createReadOnlySection:(Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;)V
3: aload 0
aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.binContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getKlassesOffsetsContainer:()Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createReadOnlySection:(Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;)V
4: aload 0
aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.binContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getMethodsOffsetsContainer:()Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createReadOnlySection:(Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;)V
5: aload 0
aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.binContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getKlassesDependenciesContainer:()Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createReadOnlySection:(Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;)V
6: aload 0
aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.binContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getMetaspaceGotContainer:()Ljdk/tools/jaotc/binformat/ByteContainer;
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createReadWriteSection:(Ljdk/tools/jaotc/binformat/ByteContainer;)V
7: aload 0
aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.binContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getMetadataGotContainer:()Ljdk/tools/jaotc/binformat/ByteContainer;
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createReadWriteSection:(Ljdk/tools/jaotc/binformat/ByteContainer;)V
8: aload 0
aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.binContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getMethodStateContainer:()Ljdk/tools/jaotc/binformat/ByteContainer;
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createReadWriteSection:(Ljdk/tools/jaotc/binformat/ByteContainer;)V
9: aload 0
aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.binContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getOopGotContainer:()Ljdk/tools/jaotc/binformat/ByteContainer;
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createReadWriteSection:(Ljdk/tools/jaotc/binformat/ByteContainer;)V
10: aload 0
aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.binContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getMethodMetadataContainer:()Ljdk/tools/jaotc/binformat/ByteContainer;
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createReadWriteSection:(Ljdk/tools/jaotc/binformat/ByteContainer;)V
11: aload 0
aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.binContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getStubsOffsetsContainer:()Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createReadOnlySection:(Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;)V
12: aload 0
aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.binContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getHeaderContainer:()Ljdk/tools/jaotc/binformat/HeaderContainer;
invokevirtual jdk.tools.jaotc.binformat.HeaderContainer.getContainer:()Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createReadOnlySection:(Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;)V
13: aload 0
aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.binContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getCodeSegmentsContainer:()Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createReadOnlySection:(Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;)V
14: aload 0
aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.binContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getConstantDataContainer:()Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createReadOnlySection:(Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;)V
15: aload 0
aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.binContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getConfigContainer:()Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createReadOnlySection:(Ljdk/tools/jaotc/binformat/ReadOnlyDataContainer;)V
16: aload 0
aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.binContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getExtLinkageContainer:()Ljdk/tools/jaotc/binformat/CodeContainer;
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createCodeSection:(Ljdk/tools/jaotc/binformat/CodeContainer;)V
17: aload 0
aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.binContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getExtLinkageGOTContainer:()Ljdk/tools/jaotc/binformat/ByteContainer;
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createReadWriteSection:(Ljdk/tools/jaotc/binformat/ByteContainer;)V
18: aload 0
aload 2
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createELFSymbolTables:(Ljava/util/Collection;)V
19: aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.elfContainer:Ljdk/tools/jaotc/jnilibelf/JNIELFContainer;
ldc ".strtab"
aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.elfContainer:Ljdk/tools/jaotc/jnilibelf/JNIELFContainer;
invokevirtual jdk.tools.jaotc.jnilibelf.JNIELFContainer.getStrTabContent:()Ljava/lang/String;
getstatic java.nio.charset.StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
invokevirtual java.lang.String.getBytes:(Ljava/nio/charset/Charset;)[B
getstatic jdk.tools.jaotc.jnilibelf.JNILibELFAPI$LibELF$Elf_Type.ELF_T_BYTE:Ljdk/tools/jaotc/jnilibelf/JNILibELFAPI$LibELF$Elf_Type;
iconst_1
iconst_3
iconst_0
iconst_0
iconst_0
invokevirtual jdk.tools.jaotc.jnilibelf.JNIELFContainer.createSection:(Ljava/lang/String;[BLjdk/tools/jaotc/jnilibelf/JNILibELFAPI$LibELF$Elf_Type;IIIII)I
istore 3
start local 3 20: aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.elfContainer:Ljdk/tools/jaotc/jnilibelf/JNIELFContainer;
invokevirtual jdk.tools.jaotc.jnilibelf.JNIELFContainer.getFirstNonLocalSymbolIndex:()I
istore 4
start local 4 21: aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.elfContainer:Ljdk/tools/jaotc/jnilibelf/JNIELFContainer;
ldc ".symtab"
aload 0
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.getELFSymbolTableData:()[B
getstatic jdk.tools.jaotc.jnilibelf.JNILibELFAPI$LibELF$Elf_Type.ELF_T_SYM:Ljdk/tools/jaotc/jnilibelf/JNILibELFAPI$LibELF$Elf_Type;
bipush 8
iconst_2
iconst_2
iload 3
iload 4
invokevirtual jdk.tools.jaotc.jnilibelf.JNIELFContainer.createSection:(Ljava/lang/String;[BLjdk/tools/jaotc/jnilibelf/JNILibELFAPI$LibELF$Elf_Type;IIIII)I
istore 5
start local 5 22: aload 0
aload 1
iload 5
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.buildRelocations:(Ljava/util/Map;I)V
23: aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.elfContainer:Ljdk/tools/jaotc/jnilibelf/JNIELFContainer;
ldc ".shstrtab"
aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.elfContainer:Ljdk/tools/jaotc/jnilibelf/JNIELFContainer;
invokevirtual jdk.tools.jaotc.jnilibelf.JNIELFContainer.getShStrTabContent:()Ljava/lang/String;
getstatic java.nio.charset.StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
invokevirtual java.lang.String.getBytes:(Ljava/nio/charset/Charset;)[B
getstatic jdk.tools.jaotc.jnilibelf.JNILibELFAPI$LibELF$Elf_Type.ELF_T_BYTE:Ljdk/tools/jaotc/jnilibelf/JNILibELFAPI$LibELF$Elf_Type;
iconst_1
iconst_3
iconst_0
iconst_0
iconst_0
invokevirtual jdk.tools.jaotc.jnilibelf.JNIELFContainer.createSection:(Ljava/lang/String;[BLjdk/tools/jaotc/jnilibelf/JNILibELFAPI$LibELF$Elf_Type;IIIII)I
pop
24: aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.elfContainer:Ljdk/tools/jaotc/jnilibelf/JNIELFContainer;
getstatic jdk.tools.jaotc.jnilibelf.JNILibELFAPI$LibELF$Elf_Cmd.ELF_C_NULL:Ljdk/tools/jaotc/jnilibelf/JNILibELFAPI$LibELF$Elf_Cmd;
invokevirtual jdk.tools.jaotc.jnilibelf.JNIELFContainer.elfUpdate:(Ljdk/tools/jaotc/jnilibelf/JNILibELFAPI$LibELF$Elf_Cmd;)Z
pop
25: aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.elfContainer:Ljdk/tools/jaotc/jnilibelf/JNIELFContainer;
getstatic jdk.tools.jaotc.jnilibelf.JNILibELFAPI$LibELF$Elf_Cmd.ELF_C_WRITE:Ljdk/tools/jaotc/jnilibelf/JNILibELFAPI$LibELF$Elf_Cmd;
invokevirtual jdk.tools.jaotc.jnilibelf.JNIELFContainer.elfUpdate:(Ljdk/tools/jaotc/jnilibelf/JNILibELFAPI$LibELF$Elf_Cmd;)Z
pop
26: aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.elfContainer:Ljdk/tools/jaotc/jnilibelf/JNIELFContainer;
invokevirtual jdk.tools.jaotc.jnilibelf.JNIELFContainer.elfEnd:()Z
pop
27: return
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 28 0 this Ljdk/tools/jaotc/binformat/elf/JELFRelocObject;
0 28 1 relocationTable Ljava/util/Map<Ljdk/tools/jaotc/binformat/Symbol;Ljava/util/List<Ljdk/tools/jaotc/binformat/Relocation;>;>;
0 28 2 symbols Ljava/util/Collection<Ljdk/tools/jaotc/binformat/Symbol;>;
20 28 3 strTabSectionIndex I
21 28 4 scnInfo I
22 28 5 symTabSectionIndex I
Exceptions:
throws java.io.IOException
Signature: (Ljava/util/Map<Ljdk/tools/jaotc/binformat/Symbol;Ljava/util/List<Ljdk/tools/jaotc/binformat/Relocation;>;>;Ljava/util/Collection<Ljdk/tools/jaotc/binformat/Symbol;>;)V
MethodParameters:
Name Flags
relocationTable
symbols
private void buildRelocations(java.util.Map<jdk.tools.jaotc.binformat.Symbol, java.util.List<jdk.tools.jaotc.binformat.Relocation>>, );
descriptor: (Ljava/util/Map;I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createELFRelocationTables:(Ljava/util/Map;)V
1: aload 0
new jdk.tools.jaotc.binformat.elf.JELFRelocObject$SymTabELFContainer
dup
iload 2
invokespecial jdk.tools.jaotc.binformat.elf.JELFRelocObject$SymTabELFContainer.<init>:(I)V
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createAllRelocationSections:(Ljdk/tools/jaotc/jnilibelf/ELFContainer;)V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/tools/jaotc/binformat/elf/JELFRelocObject;
0 3 1 relocationTable Ljava/util/Map<Ljdk/tools/jaotc/binformat/Symbol;Ljava/util/List<Ljdk/tools/jaotc/binformat/Relocation;>;>;
0 3 2 symTabSectionIndex I
Signature: (Ljava/util/Map<Ljdk/tools/jaotc/binformat/Symbol;Ljava/util/List<Ljdk/tools/jaotc/binformat/Relocation;>;>;I)V
MethodParameters:
Name Flags
relocationTable
symTabSectionIndex final
private void createELFSymbolTables(java.util.Collection<jdk.tools.jaotc.binformat.Symbol>);
descriptor: (Ljava/util/Collection;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=7, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.elfContainer:Ljdk/tools/jaotc/jnilibelf/JNIELFContainer;
ldc ""
iconst_0
iconst_0
iconst_0
iconst_0
iconst_0
iconst_1
invokevirtual jdk.tools.jaotc.jnilibelf.JNIELFContainer.createELFSymbolEntry:(Ljava/lang/String;IIIIIZ)Ljdk/tools/jaotc/jnilibelf/ELFSymbol;
pop
1: aload 1
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 3
goto 9
StackMap locals: jdk.tools.jaotc.binformat.elf.JELFRelocObject java.util.Collection top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast jdk.tools.jaotc.binformat.Symbol
astore 2
start local 2 3: aload 2
invokevirtual jdk.tools.jaotc.binformat.Symbol.getSection:()Ljdk/tools/jaotc/binformat/ByteContainer;
invokevirtual jdk.tools.jaotc.binformat.ByteContainer.getSectionId:()I
istore 4
start local 4 4: aload 2
invokevirtual jdk.tools.jaotc.binformat.Symbol.getBinding:()Ljdk/tools/jaotc/binformat/Symbol$Binding;
getstatic jdk.tools.jaotc.binformat.Symbol$Binding.LOCAL:Ljdk/tools/jaotc/binformat/Symbol$Binding;
if_acmpne 5
iconst_1
goto 6
StackMap locals: jdk.tools.jaotc.binformat.elf.JELFRelocObject java.util.Collection jdk.tools.jaotc.binformat.Symbol java.util.Iterator int
StackMap stack:
5: iconst_0
StackMap locals:
StackMap stack: int
6: istore 5
start local 5 7: aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.elfContainer:Ljdk/tools/jaotc/jnilibelf/JNIELFContainer;
aload 2
invokevirtual jdk.tools.jaotc.binformat.Symbol.getName:()Ljava/lang/String;
aload 2
invokestatic jdk.tools.jaotc.binformat.elf.JELFRelocObject.getELFTypeOf:(Ljdk/tools/jaotc/binformat/Symbol;)I
aload 2
invokestatic jdk.tools.jaotc.binformat.elf.JELFRelocObject.getELFBindOf:(Ljdk/tools/jaotc/binformat/Symbol;)I
iload 4
aload 2
invokevirtual jdk.tools.jaotc.binformat.Symbol.getSize:()I
aload 2
invokevirtual jdk.tools.jaotc.binformat.Symbol.getOffset:()I
iload 5
invokevirtual jdk.tools.jaotc.jnilibelf.JNIELFContainer.createELFSymbolEntry:(Ljava/lang/String;IIIIIZ)Ljdk/tools/jaotc/jnilibelf/ELFSymbol;
astore 6
start local 6 8: aload 2
aload 6
invokevirtual jdk.tools.jaotc.binformat.Symbol.setElfSymbol:(Ljdk/tools/jaotc/jnilibelf/ELFSymbol;)V
end local 6 end local 5 end local 4 end local 2 9: StackMap locals: jdk.tools.jaotc.binformat.elf.JELFRelocObject java.util.Collection top java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
10: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Ljdk/tools/jaotc/binformat/elf/JELFRelocObject;
0 11 1 symbols Ljava/util/Collection<Ljdk/tools/jaotc/binformat/Symbol;>;
3 9 2 symbol Ljdk/tools/jaotc/binformat/Symbol;
4 9 4 secHdrIndex I
7 9 5 isLocal Z
8 9 6 elfSymbol Ljdk/tools/jaotc/jnilibelf/ELFSymbol;
Signature: (Ljava/util/Collection<Ljdk/tools/jaotc/binformat/Symbol;>;)V
MethodParameters:
Name Flags
symbols
private byte[] getELFSymbolTableData();
descriptor: ()[B
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=10, args_size=1
start local 0 0: invokestatic jdk.tools.jaotc.jnilibelf.JNIELFTargetInfo.sizeOfSymtabEntry:()I
istore 1
start local 1 1: aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.elfContainer:Ljdk/tools/jaotc/jnilibelf/JNIELFContainer;
invokevirtual jdk.tools.jaotc.jnilibelf.JNIELFContainer.getLocalSymbols:()Ljava/util/List;
astore 2
start local 2 2: aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.elfContainer:Ljdk/tools/jaotc/jnilibelf/JNIELFContainer;
invokevirtual jdk.tools.jaotc.jnilibelf.JNIELFContainer.getGlobalSymbols:()Ljava/util/List;
astore 3
start local 3 3: aload 2
invokeinterface java.util.List.size:()I
istore 4
start local 4 4: aload 3
invokeinterface java.util.List.size:()I
istore 5
start local 5 5: iload 4
iload 5
iadd
iload 1
imul
newarray 8
astore 6
start local 6 6: iconst_0
istore 7
start local 7 7: goto 12
8: StackMap locals: jdk.tools.jaotc.binformat.elf.JELFRelocObject int java.util.List java.util.List int int byte[] int
StackMap stack:
aload 2
iload 7
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast jdk.tools.jaotc.jnilibelf.ELFSymbol
astore 8
start local 8 9: aload 8
invokevirtual jdk.tools.jaotc.jnilibelf.ELFSymbol.getAddress:()Ljdk/tools/jaotc/jnilibelf/Pointer;
astore 9
start local 9 10: aload 9
aload 6
iload 1
iload 7
iload 1
imul
invokevirtual jdk.tools.jaotc.jnilibelf.Pointer.copyBytesTo:([BII)V
end local 9 end local 8 11: iinc 7 1
StackMap locals:
StackMap stack:
12: iload 7
iload 4
if_icmplt 8
end local 7 13: iconst_0
istore 7
start local 7 14: goto 19
15: StackMap locals:
StackMap stack:
aload 3
iload 7
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast jdk.tools.jaotc.jnilibelf.ELFSymbol
astore 8
start local 8 16: aload 8
invokevirtual jdk.tools.jaotc.jnilibelf.ELFSymbol.getAddress:()Ljdk/tools/jaotc/jnilibelf/Pointer;
astore 9
start local 9 17: aload 9
aload 6
iload 1
iload 4
iload 7
iadd
iload 1
imul
invokevirtual jdk.tools.jaotc.jnilibelf.Pointer.copyBytesTo:([BII)V
end local 9 end local 8 18: iinc 7 1
StackMap locals:
StackMap stack:
19: iload 7
iload 5
if_icmplt 15
end local 7 20: aload 6
areturn
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 21 0 this Ljdk/tools/jaotc/binformat/elf/JELFRelocObject;
1 21 1 entrySize I
2 21 2 localSymbols Ljava/util/List<Ljdk/tools/jaotc/jnilibelf/ELFSymbol;>;
3 21 3 globalSymbols Ljava/util/List<Ljdk/tools/jaotc/jnilibelf/ELFSymbol;>;
4 21 4 localSymCount I
5 21 5 globalSymCount I
6 21 6 sectionDataArray [B
7 13 7 i I
9 11 8 symbol Ljdk/tools/jaotc/jnilibelf/ELFSymbol;
10 11 9 address Ljdk/tools/jaotc/jnilibelf/Pointer;
14 20 7 i I
16 18 8 symbol Ljdk/tools/jaotc/jnilibelf/ELFSymbol;
17 18 9 address Ljdk/tools/jaotc/jnilibelf/Pointer;
private static int getELFTypeOf(jdk.tools.jaotc.binformat.Symbol);
descriptor: (Ljdk/tools/jaotc/binformat/Symbol;)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual jdk.tools.jaotc.binformat.Symbol.getKind:()Ljdk/tools/jaotc/binformat/Symbol$Kind;
astore 1
start local 1 1: aload 1
getstatic jdk.tools.jaotc.binformat.Symbol$Kind.NATIVE_FUNCTION:Ljdk/tools/jaotc/binformat/Symbol$Kind;
if_acmpeq 2
aload 1
getstatic jdk.tools.jaotc.binformat.Symbol$Kind.JAVA_FUNCTION:Ljdk/tools/jaotc/binformat/Symbol$Kind;
if_acmpne 3
2: StackMap locals: jdk.tools.jaotc.binformat.Symbol$Kind
StackMap stack:
iconst_2
ireturn
3: StackMap locals:
StackMap stack:
aload 1
getstatic jdk.tools.jaotc.binformat.Symbol$Kind.OBJECT:Ljdk/tools/jaotc/binformat/Symbol$Kind;
if_acmpne 5
4: iconst_1
ireturn
5: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 sym Ljdk/tools/jaotc/binformat/Symbol;
1 6 1 kind Ljdk/tools/jaotc/binformat/Symbol$Kind;
MethodParameters:
Name Flags
sym
private static int getELFBindOf(jdk.tools.jaotc.binformat.Symbol);
descriptor: (Ljdk/tools/jaotc/binformat/Symbol;)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual jdk.tools.jaotc.binformat.Symbol.getBinding:()Ljdk/tools/jaotc/binformat/Symbol$Binding;
astore 1
start local 1 1: aload 1
getstatic jdk.tools.jaotc.binformat.Symbol$Binding.GLOBAL:Ljdk/tools/jaotc/binformat/Symbol$Binding;
if_acmpne 3
2: iconst_1
ireturn
3: StackMap locals: jdk.tools.jaotc.binformat.Symbol$Binding
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 sym Ljdk/tools/jaotc/binformat/Symbol;
1 4 1 binding Ljdk/tools/jaotc/binformat/Symbol$Binding;
MethodParameters:
Name Flags
sym
private void createELFRelocationTables(java.util.Map<jdk.tools.jaotc.binformat.Symbol, java.util.List<jdk.tools.jaotc.binformat.Relocation>>);
descriptor: (Ljava/util/Map;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=8, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 3
goto 8
StackMap locals: jdk.tools.jaotc.binformat.elf.JELFRelocObject java.util.Map top java.util.Iterator
StackMap stack:
1: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 2
start local 2 2: aload 2
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast java.util.List
astore 4
start local 4 3: aload 2
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast jdk.tools.jaotc.binformat.Symbol
astore 5
start local 5 4: aload 4
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 7
goto 7
StackMap locals: jdk.tools.jaotc.binformat.elf.JELFRelocObject java.util.Map java.util.Map$Entry java.util.Iterator java.util.List jdk.tools.jaotc.binformat.Symbol top java.util.Iterator
StackMap stack:
5: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast jdk.tools.jaotc.binformat.Relocation
astore 6
start local 6 6: aload 0
aload 5
aload 6
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createRelocation:(Ljdk/tools/jaotc/binformat/Symbol;Ljdk/tools/jaotc/binformat/Relocation;)V
end local 6 7: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
end local 5 end local 4 end local 2 8: StackMap locals: jdk.tools.jaotc.binformat.elf.JELFRelocObject java.util.Map top java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
9: aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.binContainer:Ljdk/tools/jaotc/binformat/BinaryContainer;
invokevirtual jdk.tools.jaotc.binformat.BinaryContainer.getUniqueRelocationTable:()Ljava/util/Map;
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 3
goto 12
StackMap locals:
StackMap stack:
10: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 2
start local 2 11: aload 0
aload 2
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast jdk.tools.jaotc.binformat.Symbol
aload 2
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast jdk.tools.jaotc.binformat.Relocation
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createRelocation:(Ljdk/tools/jaotc/binformat/Symbol;Ljdk/tools/jaotc/binformat/Relocation;)V
end local 2 12: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 10
13: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Ljdk/tools/jaotc/binformat/elf/JELFRelocObject;
0 14 1 relocationTable Ljava/util/Map<Ljdk/tools/jaotc/binformat/Symbol;Ljava/util/List<Ljdk/tools/jaotc/binformat/Relocation;>;>;
2 8 2 entry Ljava/util/Map$Entry<Ljdk/tools/jaotc/binformat/Symbol;Ljava/util/List<Ljdk/tools/jaotc/binformat/Relocation;>;>;
3 8 4 relocs Ljava/util/List<Ljdk/tools/jaotc/binformat/Relocation;>;
4 8 5 symbol Ljdk/tools/jaotc/binformat/Symbol;
6 7 6 reloc Ljdk/tools/jaotc/binformat/Relocation;
11 12 2 entry Ljava/util/Map$Entry<Ljdk/tools/jaotc/binformat/Symbol;Ljdk/tools/jaotc/binformat/Relocation;>;
Signature: (Ljava/util/Map<Ljdk/tools/jaotc/binformat/Symbol;Ljava/util/List<Ljdk/tools/jaotc/binformat/Relocation;>;>;)V
MethodParameters:
Name Flags
relocationTable
private void createRelocation(jdk.tools.jaotc.binformat.Symbol, jdk.tools.jaotc.binformat.Relocation);
descriptor: (Ljdk/tools/jaotc/binformat/Symbol;Ljdk/tools/jaotc/binformat/Relocation;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual jdk.tools.jaotc.binformat.Relocation.getType:()Ljdk/tools/jaotc/binformat/Relocation$RelocType;
astore 3
start local 3 1: aload 3
invokestatic jdk.tools.jaotc.binformat.elf.JELFRelocObject.getELFRelocationType:(Ljdk/tools/jaotc/binformat/Relocation$RelocType;)I
istore 4
start local 4 2: invokestatic jdk.tools.jaotc.binformat.elf.JELFRelocObject.$SWITCH_TABLE$jdk$tools$jaotc$binformat$Relocation$RelocType:()[I
aload 3
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
iaload
tableswitch { // 2 - 16
2: 11
3: 3
4: 11
5: 3
6: 3
7: 7
8: 3
9: 11
10: 12
11: 16
12: 20
13: 16
14: 16
15: 16
16: 20
default: 22
}
3: StackMap locals: jdk.tools.jaotc.binformat.Relocation$RelocType int
StackMap stack:
bipush -4
istore 5
start local 5 4: aload 2
invokevirtual jdk.tools.jaotc.binformat.Relocation.getOffset:()I
aload 2
invokevirtual jdk.tools.jaotc.binformat.Relocation.getSize:()I
iadd
iload 5
iadd
istore 6
start local 6 5: aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.elfContainer:Ljdk/tools/jaotc/jnilibelf/JNIELFContainer;
aload 2
invokevirtual jdk.tools.jaotc.binformat.Relocation.getSection:()Ljdk/tools/jaotc/binformat/ByteContainer;
iload 6
iload 4
iload 5
aload 1
invokevirtual jdk.tools.jaotc.binformat.Symbol.getElfSymbol:()Ljdk/tools/jaotc/jnilibelf/ELFSymbol;
invokevirtual jdk.tools.jaotc.jnilibelf.JNIELFContainer.createELFRelocationEntry:(Ljdk/tools/jaotc/jnilibelf/ELFContainer;IIILjdk/tools/jaotc/jnilibelf/ELFSymbol;)V
6: goto 23
end local 6 end local 5 7: StackMap locals:
StackMap stack:
bipush -8
istore 5
start local 5 8: aload 2
invokevirtual jdk.tools.jaotc.binformat.Relocation.getOffset:()I
aload 2
invokevirtual jdk.tools.jaotc.binformat.Relocation.getSize:()I
iadd
iload 5
iadd
iconst_2
isub
istore 6
start local 6 9: aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.elfContainer:Ljdk/tools/jaotc/jnilibelf/JNIELFContainer;
aload 2
invokevirtual jdk.tools.jaotc.binformat.Relocation.getSection:()Ljdk/tools/jaotc/binformat/ByteContainer;
iload 6
iload 4
iload 5
aload 1
invokevirtual jdk.tools.jaotc.binformat.Symbol.getElfSymbol:()Ljdk/tools/jaotc/jnilibelf/ELFSymbol;
invokevirtual jdk.tools.jaotc.jnilibelf.JNIELFContainer.createELFRelocationEntry:(Ljdk/tools/jaotc/jnilibelf/ELFContainer;IIILjdk/tools/jaotc/jnilibelf/ELFSymbol;)V
10: goto 23
end local 6 end local 5 11: StackMap locals:
StackMap stack:
goto 23
12: StackMap locals:
StackMap stack:
bipush -4
istore 5
start local 5 13: aload 2
invokevirtual jdk.tools.jaotc.binformat.Relocation.getOffset:()I
iload 5
iadd
istore 6
start local 6 14: aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.elfContainer:Ljdk/tools/jaotc/jnilibelf/JNIELFContainer;
aload 2
invokevirtual jdk.tools.jaotc.binformat.Relocation.getSection:()Ljdk/tools/jaotc/binformat/ByteContainer;
iload 6
iload 4
iload 5
aload 1
invokevirtual jdk.tools.jaotc.binformat.Symbol.getElfSymbol:()Ljdk/tools/jaotc/jnilibelf/ELFSymbol;
invokevirtual jdk.tools.jaotc.jnilibelf.JNIELFContainer.createELFRelocationEntry:(Ljdk/tools/jaotc/jnilibelf/ELFContainer;IIILjdk/tools/jaotc/jnilibelf/ELFSymbol;)V
15: goto 23
end local 6 end local 5 16: StackMap locals:
StackMap stack:
bipush -4
istore 5
start local 5 17: aload 2
invokevirtual jdk.tools.jaotc.binformat.Relocation.getOffset:()I
iload 5
iadd
istore 6
start local 6 18: aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.elfContainer:Ljdk/tools/jaotc/jnilibelf/JNIELFContainer;
aload 2
invokevirtual jdk.tools.jaotc.binformat.Relocation.getSection:()Ljdk/tools/jaotc/binformat/ByteContainer;
iload 6
iload 4
iload 5
aload 1
invokevirtual jdk.tools.jaotc.binformat.Symbol.getElfSymbol:()Ljdk/tools/jaotc/jnilibelf/ELFSymbol;
invokevirtual jdk.tools.jaotc.jnilibelf.JNIELFContainer.createELFRelocationEntry:(Ljdk/tools/jaotc/jnilibelf/ELFContainer;IIILjdk/tools/jaotc/jnilibelf/ELFSymbol;)V
19: goto 23
end local 6 end local 5 20: StackMap locals:
StackMap stack:
aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.elfContainer:Ljdk/tools/jaotc/jnilibelf/JNIELFContainer;
aload 2
invokevirtual jdk.tools.jaotc.binformat.Relocation.getSection:()Ljdk/tools/jaotc/binformat/ByteContainer;
aload 2
invokevirtual jdk.tools.jaotc.binformat.Relocation.getOffset:()I
iload 4
iconst_0
aload 1
invokevirtual jdk.tools.jaotc.binformat.Symbol.getElfSymbol:()Ljdk/tools/jaotc/jnilibelf/ELFSymbol;
invokevirtual jdk.tools.jaotc.jnilibelf.JNIELFContainer.createELFRelocationEntry:(Ljdk/tools/jaotc/jnilibelf/ELFContainer;IIILjdk/tools/jaotc/jnilibelf/ELFSymbol;)V
21: goto 23
22: StackMap locals:
StackMap stack:
new java.lang.InternalError
dup
new java.lang.StringBuilder
dup
ldc "Unhandled relocation type: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
23: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Ljdk/tools/jaotc/binformat/elf/JELFRelocObject;
0 24 1 symbol Ljdk/tools/jaotc/binformat/Symbol;
0 24 2 reloc Ljdk/tools/jaotc/binformat/Relocation;
1 24 3 relocType Ljdk/tools/jaotc/binformat/Relocation$RelocType;
2 24 4 elfRelocType I
4 7 5 addend I
5 7 6 offset I
8 11 5 addend I
9 11 6 offset I
13 16 5 addend I
14 16 6 offset I
17 20 5 addend I
18 20 6 offset I
MethodParameters:
Name Flags
symbol
reloc
private static int getELFRelocationType(jdk.tools.jaotc.binformat.Relocation$RelocType);
descriptor: (Ljdk/tools/jaotc/binformat/Relocation$RelocType;)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: invokestatic jdk.tools.jaotc.jnilibelf.JNIELFTargetInfo.getELFArch:()I
tableswitch { // 62 - 62
62: 2
default: 25
}
2: StackMap locals: int
StackMap stack:
aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.FOREIGN_CALL_DIRECT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
if_acmpeq 3
aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.JAVA_CALL_DIRECT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
if_acmpeq 3
aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.FOREIGN_CALL_INDIRECT_GOT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
if_acmpne 5
3: StackMap locals:
StackMap stack:
iconst_4
istore 1
4: goto 26
StackMap locals:
StackMap stack:
5: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.STUB_CALL_DIRECT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
if_acmpne 8
6: iconst_2
istore 1
7: goto 26
StackMap locals:
StackMap stack:
8: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.FOREIGN_CALL_DIRECT_FAR:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
if_acmpne 11
9: iconst_1
istore 1
10: goto 26
StackMap locals:
StackMap stack:
11: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.FOREIGN_CALL_INDIRECT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
if_acmpeq 12
aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.JAVA_CALL_INDIRECT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
if_acmpeq 12
aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.STUB_CALL_INDIRECT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
if_acmpne 14
12: StackMap locals:
StackMap stack:
iconst_0
istore 1
13: goto 26
StackMap locals:
StackMap stack:
14: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.EXTERNAL_DATA_REFERENCE_FAR:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
if_acmpne 17
15: bipush 9
istore 1
16: goto 26
StackMap locals:
StackMap stack:
17: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.METASPACE_GOT_REFERENCE:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
if_acmpeq 19
aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.EXTERNAL_PLT_TO_GOT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
if_acmpeq 19
aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.STATIC_STUB_TO_STATIC_METHOD:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
if_acmpeq 19
18: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.STATIC_STUB_TO_HOTSPOT_LINKAGE_GOT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
if_acmpne 21
19: StackMap locals:
StackMap stack:
iconst_2
istore 1
20: goto 26
StackMap locals:
StackMap stack:
21: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.EXTERNAL_GOT_TO_PLT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
if_acmpeq 22
aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.LOADTIME_ADDRESS:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
if_acmpne 24
22: StackMap locals:
StackMap stack:
iconst_1
istore 1
23: goto 26
24: StackMap locals:
StackMap stack:
getstatic jdk.tools.jaotc.binformat.elf.JELFRelocObject.$assertionsDisabled:Z
ifne 26
new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "Unhandled relocation type: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
25: StackMap locals:
StackMap stack:
getstatic java.lang.System.out:Ljava/io/PrintStream;
ldc "Relocation Type mapping: Unhandled architecture"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
26: StackMap locals:
StackMap stack:
iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 relocType Ljdk/tools/jaotc/binformat/Relocation$RelocType;
1 27 1 elfRelocType I
MethodParameters:
Name Flags
relocType
private void createAllRelocationSections(jdk.tools.jaotc.jnilibelf.ELFContainer);
descriptor: (Ljdk/tools/jaotc/jnilibelf/ELFContainer;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.elfContainer:Ljdk/tools/jaotc/jnilibelf/JNIELFContainer;
invokevirtual jdk.tools.jaotc.jnilibelf.JNIELFContainer.getRelocTables:()Ljava/util/Map;
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 3
goto 3
StackMap locals: jdk.tools.jaotc.binformat.elf.JELFRelocObject jdk.tools.jaotc.jnilibelf.ELFContainer top java.util.Iterator
StackMap stack:
1: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 2
start local 2 2: aload 0
aload 2
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast jdk.tools.jaotc.jnilibelf.ELFContainer
aload 2
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast java.util.ArrayList
aload 1
invokevirtual jdk.tools.jaotc.binformat.elf.JELFRelocObject.createRelocationSection:(Ljdk/tools/jaotc/jnilibelf/ELFContainer;Ljava/util/ArrayList;Ljdk/tools/jaotc/jnilibelf/ELFContainer;)V
end local 2 3: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/tools/jaotc/binformat/elf/JELFRelocObject;
0 5 1 symtab Ljdk/tools/jaotc/jnilibelf/ELFContainer;
2 3 2 entry Ljava/util/Map$Entry<Ljdk/tools/jaotc/jnilibelf/ELFContainer;Ljava/util/ArrayList<Ljdk/tools/jaotc/jnilibelf/Pointer;>;>;
MethodParameters:
Name Flags
symtab
private void createRelocationSection(jdk.tools.jaotc.jnilibelf.ELFContainer, java.util.ArrayList<jdk.tools.jaotc.jnilibelf.Pointer>, jdk.tools.jaotc.jnilibelf.ELFContainer);
descriptor: (Ljdk/tools/jaotc/jnilibelf/ELFContainer;Ljava/util/ArrayList;Ljdk/tools/jaotc/jnilibelf/ELFContainer;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=11, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokeinterface jdk.tools.jaotc.jnilibelf.ELFContainer.getContainerName:()Ljava/lang/String;
astore 4
start local 4 1: invokestatic jdk.tools.jaotc.jnilibelf.JNIELFTargetInfo.sizeOfRelocEntry:()I
istore 5
start local 5 2: aload 2
invokevirtual java.util.ArrayList.size:()I
istore 6
start local 6 3: iload 6
iload 5
imul
newarray 8
astore 7
start local 7 4: iconst_0
istore 8
start local 8 5: goto 9
6: StackMap locals: jdk.tools.jaotc.binformat.elf.JELFRelocObject jdk.tools.jaotc.jnilibelf.ELFContainer java.util.ArrayList jdk.tools.jaotc.jnilibelf.ELFContainer java.lang.String int int byte[] int
StackMap stack:
aload 2
iload 8
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast jdk.tools.jaotc.jnilibelf.Pointer
astore 9
start local 9 7: aload 9
aload 7
iload 5
iload 8
iload 5
imul
invokevirtual jdk.tools.jaotc.jnilibelf.Pointer.copyBytesTo:([BII)V
end local 9 8: iinc 8 1
StackMap locals:
StackMap stack:
9: iload 8
aload 2
invokevirtual java.util.ArrayList.size:()I
if_icmplt 6
end local 8 10: aload 7
arraylength
ifle 20
11: invokestatic jdk.tools.jaotc.jnilibelf.JNIELFTargetInfo.createReloca:()I
ifne 16
12: bipush 9
istore 9
start local 9 13: getstatic jdk.tools.jaotc.jnilibelf.JNILibELFAPI$LibELF$Elf_Type.ELF_T_REL:Ljdk/tools/jaotc/jnilibelf/JNILibELFAPI$LibELF$Elf_Type;
astore 10
start local 10 14: new java.lang.StringBuilder
dup
ldc ".rel"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 8
start local 8 15: goto 19
end local 10 end local 9 end local 8 16: StackMap locals:
StackMap stack:
iconst_4
istore 9
start local 9 17: getstatic jdk.tools.jaotc.jnilibelf.JNILibELFAPI$LibELF$Elf_Type.ELF_T_RELA:Ljdk/tools/jaotc/jnilibelf/JNILibELFAPI$LibELF$Elf_Type;
astore 10
start local 10 18: new java.lang.StringBuilder
dup
ldc ".rela"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 8
start local 8 19: StackMap locals: java.lang.String int jdk.tools.jaotc.jnilibelf.JNILibELFAPI$LibELF$Elf_Type
StackMap stack:
aload 0
getfield jdk.tools.jaotc.binformat.elf.JELFRelocObject.elfContainer:Ljdk/tools/jaotc/jnilibelf/JNIELFContainer;
aload 8
aload 7
aload 10
bipush 8
iload 9
iconst_2
aload 3
invokeinterface jdk.tools.jaotc.jnilibelf.ELFContainer.getSectionId:()I
aload 1
invokeinterface jdk.tools.jaotc.jnilibelf.ELFContainer.getSectionId:()I
invokevirtual jdk.tools.jaotc.jnilibelf.JNIELFContainer.createSection:(Ljava/lang/String;[BLjdk/tools/jaotc/jnilibelf/JNILibELFAPI$LibELF$Elf_Type;IIIII)I
pop
end local 10 end local 9 end local 8 20: StackMap locals:
StackMap stack:
return
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 21 0 this Ljdk/tools/jaotc/binformat/elf/JELFRelocObject;
0 21 1 container Ljdk/tools/jaotc/jnilibelf/ELFContainer;
0 21 2 relocations Ljava/util/ArrayList<Ljdk/tools/jaotc/jnilibelf/Pointer;>;
0 21 3 symtab Ljdk/tools/jaotc/jnilibelf/ELFContainer;
1 21 4 secName Ljava/lang/String;
2 21 5 entrySize I
3 21 6 numEntries I
4 21 7 sectionDataBytes [B
5 10 8 index I
7 8 9 entry Ljdk/tools/jaotc/jnilibelf/Pointer;
15 16 8 fullSecName Ljava/lang/String;
19 20 8 fullSecName Ljava/lang/String;
13 16 9 scnType I
17 20 9 scnType I
14 16 10 dataType Ljdk/tools/jaotc/jnilibelf/JNILibELFAPI$LibELF$Elf_Type;
18 20 10 dataType Ljdk/tools/jaotc/jnilibelf/JNILibELFAPI$LibELF$Elf_Type;
Signature: (Ljdk/tools/jaotc/jnilibelf/ELFContainer;Ljava/util/ArrayList<Ljdk/tools/jaotc/jnilibelf/Pointer;>;Ljdk/tools/jaotc/jnilibelf/ELFContainer;)V
MethodParameters:
Name Flags
container
relocations
symtab
static int[] $SWITCH_TABLE$jdk$tools$jaotc$binformat$Relocation$RelocType();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic jdk.tools.jaotc.binformat.elf.JELFRelocObject.$SWITCH_TABLE$jdk$tools$jaotc$binformat$Relocation$RelocType:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic jdk.tools.jaotc.binformat.Relocation$RelocType.values:()[Ljdk/tools/jaotc/binformat/Relocation$RelocType;
arraylength
newarray 10
astore 0
2: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.EXTERNAL_DATA_REFERENCE_FAR:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
bipush 10
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.EXTERNAL_GOT_TO_PLT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
bipush 12
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.EXTERNAL_PLT_TO_GOT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
bipush 13
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.FOREIGN_CALL_DIRECT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
bipush 6
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.FOREIGN_CALL_DIRECT_FAR:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
bipush 7
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.FOREIGN_CALL_INDIRECT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
iconst_4
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.FOREIGN_CALL_INDIRECT_GOT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
iconst_5
iastore
21: goto 23
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
22: pop
StackMap locals:
StackMap stack:
23: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.JAVA_CALL_DIRECT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
iconst_3
iastore
24: goto 26
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
25: pop
StackMap locals:
StackMap stack:
26: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.JAVA_CALL_INDIRECT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
iconst_2
iastore
27: goto 29
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
28: pop
StackMap locals:
StackMap stack:
29: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.LOADTIME_ADDRESS:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
bipush 16
iastore
30: goto 32
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
31: pop
StackMap locals:
StackMap stack:
32: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.METASPACE_GOT_REFERENCE:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
bipush 11
iastore
33: goto 35
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
34: pop
StackMap locals:
StackMap stack:
35: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.STATIC_STUB_TO_HOTSPOT_LINKAGE_GOT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
bipush 15
iastore
36: goto 38
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
37: pop
StackMap locals:
StackMap stack:
38: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.STATIC_STUB_TO_STATIC_METHOD:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
bipush 14
iastore
39: goto 41
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
40: pop
StackMap locals:
StackMap stack:
41: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.STUB_CALL_DIRECT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
bipush 8
iastore
42: goto 44
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
43: pop
StackMap locals:
StackMap stack:
44: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.STUB_CALL_INDIRECT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
bipush 9
iastore
45: goto 47
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
46: pop
StackMap locals:
StackMap stack:
47: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.UNDEFINED:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
iconst_1
iastore
48: goto 50
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
49: pop
StackMap locals:
StackMap stack:
50: aload 0
dup
putstatic jdk.tools.jaotc.binformat.elf.JELFRelocObject.$SWITCH_TABLE$jdk$tools$jaotc$binformat$Relocation$RelocType:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
14 15 16 Class java.lang.NoSuchFieldError
17 18 19 Class java.lang.NoSuchFieldError
20 21 22 Class java.lang.NoSuchFieldError
23 24 25 Class java.lang.NoSuchFieldError
26 27 28 Class java.lang.NoSuchFieldError
29 30 31 Class java.lang.NoSuchFieldError
32 33 34 Class java.lang.NoSuchFieldError
35 36 37 Class java.lang.NoSuchFieldError
38 39 40 Class java.lang.NoSuchFieldError
41 42 43 Class java.lang.NoSuchFieldError
44 45 46 Class java.lang.NoSuchFieldError
47 48 49 Class java.lang.NoSuchFieldError
}
SourceFile: "JELFRelocObject.java"
NestMembers:
jdk.tools.jaotc.binformat.elf.JELFRelocObject$SymTabELFContainer
InnerClasses:
public abstract Entry = java.util.Map$Entry of java.util.Map
public final RelocType = jdk.tools.jaotc.binformat.Relocation$RelocType of jdk.tools.jaotc.binformat.Relocation
public final Binding = jdk.tools.jaotc.binformat.Symbol$Binding of jdk.tools.jaotc.binformat.Symbol
public final Kind = jdk.tools.jaotc.binformat.Symbol$Kind of jdk.tools.jaotc.binformat.Symbol
private SymTabELFContainer = jdk.tools.jaotc.binformat.elf.JELFRelocObject$SymTabELFContainer of jdk.tools.jaotc.binformat.elf.JELFRelocObject
public abstract LibELF = jdk.tools.jaotc.jnilibelf.JNILibELFAPI$LibELF of jdk.tools.jaotc.jnilibelf.JNILibELFAPI
public final Elf_Cmd = jdk.tools.jaotc.jnilibelf.JNILibELFAPI$LibELF$Elf_Cmd of jdk.tools.jaotc.jnilibelf.JNILibELFAPI$LibELF
public final Elf_Type = jdk.tools.jaotc.jnilibelf.JNILibELFAPI$LibELF$Elf_Type of jdk.tools.jaotc.jnilibelf.JNILibELFAPI$LibELF