public class jdk.tools.jaotc.binformat.elf.AMD64JELFRelocObject extends 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.AMD64JELFRelocObject
super_class: jdk.tools.jaotc.binformat.elf.JELFRelocObject
{
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/AMD64JELFRelocObject;
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.AMD64JELFRelocObject.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
void <init>(jdk.tools.jaotc.binformat.BinaryContainer, java.lang.String);
descriptor: (Ljdk/tools/jaotc/binformat/BinaryContainer;Ljava/lang/String;)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokespecial jdk.tools.jaotc.binformat.elf.JELFRelocObject.<init>:(Ljdk/tools/jaotc/binformat/BinaryContainer;Ljava/lang/String;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/tools/jaotc/binformat/elf/AMD64JELFRelocObject;
0 2 1 binContainer Ljdk/tools/jaotc/binformat/BinaryContainer;
0 2 2 outputFileName Ljava/lang/String;
MethodParameters:
Name Flags
binContainer
outputFileName
protected void createRelocation(jdk.tools.jaotc.binformat.Symbol, jdk.tools.jaotc.binformat.Relocation, jdk.tools.jaotc.binformat.elf.ElfRelocTable);
descriptor: (Ljdk/tools/jaotc/binformat/Symbol;Ljdk/tools/jaotc/binformat/Relocation;Ljdk/tools/jaotc/binformat/elf/ElfRelocTable;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=11, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
invokevirtual jdk.tools.jaotc.binformat.Relocation.getType:()Ljdk/tools/jaotc/binformat/Relocation$RelocType;
astore 4
start local 4 1: aload 4
invokestatic jdk.tools.jaotc.binformat.elf.AMD64JELFRelocObject.getELFRelocationType:(Ljdk/tools/jaotc/binformat/Relocation$RelocType;)I
istore 5
start local 5 2: aload 1
invokevirtual jdk.tools.jaotc.binformat.Symbol.getNativeSymbol:()Ljdk/tools/jaotc/binformat/NativeSymbol;
checkcast jdk.tools.jaotc.binformat.elf.ElfSymbol
astore 6
start local 6 3: aload 6
invokevirtual jdk.tools.jaotc.binformat.elf.ElfSymbol.getIndex:()I
istore 7
start local 7 4: aload 2
invokevirtual jdk.tools.jaotc.binformat.Relocation.getSection:()Ljdk/tools/jaotc/binformat/ByteContainer;
invokevirtual jdk.tools.jaotc.binformat.ByteContainer.getSectionId:()I
istore 8
start local 8 5: aload 2
invokevirtual jdk.tools.jaotc.binformat.Relocation.getOffset:()I
istore 9
start local 9 6: iconst_0
istore 10
start local 10 7: invokestatic jdk.tools.jaotc.binformat.elf.AMD64JELFRelocObject.$SWITCH_TABLE$jdk$tools$jaotc$binformat$Relocation$RelocType:()[I
aload 4
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
iaload
tableswitch { // 2 - 8
2: 11
3: 8
4: 8
5: 8
6: 11
7: 14
8: 11
default: 15
}
8: StackMap locals: jdk.tools.jaotc.binformat.elf.AMD64JELFRelocObject jdk.tools.jaotc.binformat.Symbol jdk.tools.jaotc.binformat.Relocation jdk.tools.jaotc.binformat.elf.ElfRelocTable jdk.tools.jaotc.binformat.Relocation$RelocType int jdk.tools.jaotc.binformat.elf.ElfSymbol int int int int
StackMap stack:
bipush -4
istore 10
9: iload 9
aload 2
invokevirtual jdk.tools.jaotc.binformat.Relocation.getSize:()I
iadd
iload 10
iadd
istore 9
10: goto 16
11: StackMap locals:
StackMap stack:
bipush -4
istore 10
12: iload 9
iload 10
iadd
istore 9
13: goto 16
14: StackMap locals:
StackMap stack:
goto 16
15: 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 4
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
16: StackMap locals:
StackMap stack:
aload 3
iload 8
iload 9
iload 7
iload 5
iload 10
invokevirtual jdk.tools.jaotc.binformat.elf.ElfRelocTable.createRelocationEntry:(IIIII)V
17: 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 18 0 this Ljdk/tools/jaotc/binformat/elf/AMD64JELFRelocObject;
0 18 1 symbol Ljdk/tools/jaotc/binformat/Symbol;
0 18 2 reloc Ljdk/tools/jaotc/binformat/Relocation;
0 18 3 elfRelocTable Ljdk/tools/jaotc/binformat/elf/ElfRelocTable;
1 18 4 relocType Ljdk/tools/jaotc/binformat/Relocation$RelocType;
2 18 5 elfRelocType I
3 18 6 sym Ljdk/tools/jaotc/binformat/elf/ElfSymbol;
4 18 7 symno I
5 18 8 sectindex I
6 18 9 offset I
7 18 10 addend I
MethodParameters:
Name Flags
symbol
reloc
elfRelocTable
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.binformat.elf.ElfTargetInfo.getElfArch:()C
tableswitch { // 62 - 62
62: 2
default: 20
}
2: StackMap locals: int
StackMap stack:
aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.JAVA_CALL_DIRECT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
if_acmpeq 4
3: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.FOREIGN_CALL_INDIRECT_GOT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
if_acmpne 6
4: StackMap locals:
StackMap stack:
iconst_4
istore 1
5: goto 21
StackMap locals:
StackMap stack:
6: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.STUB_CALL_DIRECT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
if_acmpne 9
7: iconst_2
istore 1
8: goto 21
StackMap locals:
StackMap stack:
9: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.JAVA_CALL_INDIRECT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
if_acmpne 12
10: iconst_0
istore 1
11: goto 21
StackMap locals:
StackMap stack:
12: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.METASPACE_GOT_REFERENCE:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
if_acmpeq 14
13: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.EXTERNAL_PLT_TO_GOT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
if_acmpne 16
14: StackMap locals:
StackMap stack:
iconst_2
istore 1
15: goto 21
StackMap locals:
StackMap stack:
16: aload 0
getstatic jdk.tools.jaotc.binformat.Relocation$RelocType.EXTERNAL_GOT_TO_PLT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
if_acmpne 19
17: iconst_1
istore 1
18: goto 21
19: StackMap locals:
StackMap stack:
getstatic jdk.tools.jaotc.binformat.elf.AMD64JELFRelocObject.$assertionsDisabled:Z
ifne 21
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
20: StackMap locals:
StackMap stack:
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "Relocation Type mapping: Unhandled architecture: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
invokestatic jdk.tools.jaotc.binformat.elf.ElfTargetInfo.getElfArch:()C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
21: StackMap locals:
StackMap stack:
iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 relocType Ljdk/tools/jaotc/binformat/Relocation$RelocType;
1 22 1 elfRelocType I
MethodParameters:
Name Flags
relocType
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.AMD64JELFRelocObject.$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_GOT_TO_PLT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
bipush 7
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_PLT_TO_GOT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
bipush 8
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.FOREIGN_CALL_INDIRECT_GOT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
iconst_4
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.JAVA_CALL_DIRECT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
iconst_3
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.JAVA_CALL_INDIRECT:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
iconst_2
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.METASPACE_GOT_REFERENCE:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
bipush 6
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.STUB_CALL_DIRECT: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.UNDEFINED:Ljdk/tools/jaotc/binformat/Relocation$RelocType;
invokevirtual jdk.tools.jaotc.binformat.Relocation$RelocType.ordinal:()I
iconst_1
iastore
24: goto 26
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
25: pop
StackMap locals:
StackMap stack:
26: aload 0
dup
putstatic jdk.tools.jaotc.binformat.elf.AMD64JELFRelocObject.$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
}
SourceFile: "AMD64JELFRelocObject.java"
InnerClasses:
public final RelocType = jdk.tools.jaotc.binformat.Relocation$RelocType of jdk.tools.jaotc.binformat.Relocation