[llvm] r362374 - [llvm-readobj/llvm-readelf] - Remove gnu-relocations.test completely.
George Rimar via llvm-commits
llvm-commits at lists.llvm.org
Mon Jun 3 02:52:32 PDT 2019
Author: grimar
Date: Mon Jun 3 02:52:32 2019
New Revision: 362374
URL: http://llvm.org/viewvc/llvm-project?rev=362374&view=rev
Log:
[llvm-readobj/llvm-readelf] - Remove gnu-relocations.test completely.
rL362089 introduced a set of yaml based reloc-types-*.test test cases
(instead of huge reloc-types.test that used a lot of precompiled binaries)
These test cases checks LLVM-styled dumping of the relocations.
gnu-relocations.test was a test case to check GNU styled relocations dumping.
It did that only for elf-x86 and elf-x86_64 targets. It did not test all of the
relocations though.
Now, after rL362089, it does not make sence to keep it.
This patch updates reloc-types-elf-i386.test and reloc-types-elf-x64.test tests
with llvm-readelf calls to check GNU styled output in one place.
It removes gnu-relocations.test completely.
One of intentions of doing this is also to get rid of relocs.obj.elf-i386 and
relocs.obj.elf-x86_64 precompiled objects completely (they are used in other tests still).
Differential revision: https://reviews.llvm.org/D62655
Removed:
llvm/trunk/test/tools/llvm-readobj/gnu-relocations.test
Modified:
llvm/trunk/test/tools/llvm-readobj/reloc-types-elf-i386.test
llvm/trunk/test/tools/llvm-readobj/reloc-types-elf-x64.test
Removed: llvm/trunk/test/tools/llvm-readobj/gnu-relocations.test
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-readobj/gnu-relocations.test?rev=362373&view=auto
==============================================================================
--- llvm/trunk/test/tools/llvm-readobj/gnu-relocations.test (original)
+++ llvm/trunk/test/tools/llvm-readobj/gnu-relocations.test (removed)
@@ -1,28 +0,0 @@
-RUN: llvm-readelf -r %p/Inputs/relocs.obj.elf-i386 \
-RUN: | FileCheck %s -check-prefix ELF32
-RUN: llvm-readelf -r %p/Inputs/relocs.obj.elf-x86_64 \
-RUN: | FileCheck %s -check-prefix ELF64
-
-ELF32: Relocation section '.rel.text' at offset 0x318 contains 41 entries:
-ELF32-NEXT: Offset Info Type Sym. Value Symbol's Name
-ELF32-NEXT: 00000002 00000500 R_386_NONE 00000000 sym
-ELF32-NEXT: 00000008 00000501 R_386_32 00000000 sym
-ELF32-NEXT: 0000000e 00000502 R_386_PC32 00000000 sym
-ELF32-NEXT: 00000014 00000503 R_386_GOT32 00000000 sym
-ELF32-NEXT: 0000001a 00000504 R_386_PLT32 00000000 sym
-ELF32-NEXT: 00000020 00000505 R_386_COPY 00000000 sym
-ELF32-NEXT: 00000026 00000506 R_386_GLOB_DAT 00000000 sym
-ELF32-NEXT: 0000002c 00000507 R_386_JUMP_SLOT 00000000 sym
-ELF32-NEXT: 00000032 00000508 R_386_RELATIVE 00000000 sym
-ELF32-NEXT: 00000038 00000509 R_386_GOTOFF 00000000 sym
-
-ELF64: Relocation section '.rela.text' at offset 0x430 contains 38 entries:
-ELF64-NEXT: Offset Info Type Symbol's Value Symbol's Name + Addend
-ELF64-NEXT: 0000000000000003 0000000500000000 R_X86_64_NONE 0000000000000000 sym - 4
-ELF64-NEXT: 000000000000000a 0000000500000001 R_X86_64_64 0000000000000000 sym - 4
-ELF64-NEXT: 0000000000000011 0000000500000002 R_X86_64_PC32 0000000000000000 sym - 4
-ELF64-NEXT: 0000000000000018 0000000500000003 R_X86_64_GOT32 0000000000000000 sym - 4
-ELF64-NEXT: 000000000000001f 0000000500000004 R_X86_64_PLT32 0000000000000000 sym - 4
-ELF64-NEXT: 0000000000000026 0000000500000005 R_X86_64_COPY 0000000000000000 sym - 4
-ELF64-NEXT: 000000000000002d 0000000500000006 R_X86_64_GLOB_DAT 0000000000000000 sym - 4
-ELF64-NEXT: 0000000000000034 0000000500000007 R_X86_64_JUMP_SLOT 0000000000000000 sym - 4
Modified: llvm/trunk/test/tools/llvm-readobj/reloc-types-elf-i386.test
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-readobj/reloc-types-elf-i386.test?rev=362374&r1=362373&r2=362374&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-readobj/reloc-types-elf-i386.test (original)
+++ llvm/trunk/test/tools/llvm-readobj/reloc-types-elf-i386.test Mon Jun 3 02:52:32 2019
@@ -2,49 +2,94 @@
## names and values for i386 target.
# RUN: yaml2obj %s -o %t-i386.o
-# RUN: llvm-readobj -r --expand-relocs %t-i386.o | FileCheck %s
+# RUN: llvm-readobj -r --expand-relocs %t-i386.o | FileCheck %s --check-prefix=LLVM
+# RUN: llvm-readelf -r --expand-relocs %t-i386.o | FileCheck %s --check-prefix=GNU
-# CHECK: Type: R_386_NONE (0)
-# CHECK: Type: R_386_32 (1)
-# CHECK: Type: R_386_PC32 (2)
-# CHECK: Type: R_386_GOT32 (3)
-# CHECK: Type: R_386_PLT32 (4)
-# CHECK: Type: R_386_COPY (5)
-# CHECK: Type: R_386_GLOB_DAT (6)
-# CHECK: Type: R_386_JUMP_SLOT (7)
-# CHECK: Type: R_386_RELATIVE (8)
-# CHECK: Type: R_386_GOTOFF (9)
-# CHECK: Type: R_386_GOTPC (10)
-# CHECK: Type: R_386_32PLT (11)
-# CHECK: Type: R_386_TLS_TPOFF (14)
-# CHECK: Type: R_386_TLS_IE (15)
-# CHECK: Type: R_386_TLS_GOTIE (16)
-# CHECK: Type: R_386_TLS_LE (17)
-# CHECK: Type: R_386_TLS_GD (18)
-# CHECK: Type: R_386_TLS_LDM (19)
-# CHECK: Type: R_386_16 (20)
-# CHECK: Type: R_386_PC16 (21)
-# CHECK: Type: R_386_8 (22)
-# CHECK: Type: R_386_PC8 (23)
-# CHECK: Type: R_386_TLS_GD_32 (24)
-# CHECK: Type: R_386_TLS_GD_PUSH (25)
-# CHECK: Type: R_386_TLS_GD_CALL (26)
-# CHECK: Type: R_386_TLS_GD_POP (27)
-# CHECK: Type: R_386_TLS_LDM_32 (28)
-# CHECK: Type: R_386_TLS_LDM_PUSH (29)
-# CHECK: Type: R_386_TLS_LDM_CALL (30)
-# CHECK: Type: R_386_TLS_LDM_POP (31)
-# CHECK: Type: R_386_TLS_LDO_32 (32)
-# CHECK: Type: R_386_TLS_IE_32 (33)
-# CHECK: Type: R_386_TLS_LE_32 (34)
-# CHECK: Type: R_386_TLS_DTPMOD32 (35)
-# CHECK: Type: R_386_TLS_DTPOFF32 (36)
-# CHECK: Type: R_386_TLS_TPOFF32 (37)
-# CHECK: Type: R_386_TLS_GOTDESC (39)
-# CHECK: Type: R_386_TLS_DESC_CALL (40)
-# CHECK: Type: R_386_TLS_DESC (41)
-# CHECK: Type: R_386_IRELATIVE (42)
-# CHECK: Type: R_386_GOT32X (43)
+# LLVM: Type: R_386_NONE (0)
+# LLVM: Type: R_386_32 (1)
+# LLVM: Type: R_386_PC32 (2)
+# LLVM: Type: R_386_GOT32 (3)
+# LLVM: Type: R_386_PLT32 (4)
+# LLVM: Type: R_386_COPY (5)
+# LLVM: Type: R_386_GLOB_DAT (6)
+# LLVM: Type: R_386_JUMP_SLOT (7)
+# LLVM: Type: R_386_RELATIVE (8)
+# LLVM: Type: R_386_GOTOFF (9)
+# LLVM: Type: R_386_GOTPC (10)
+# LLVM: Type: R_386_32PLT (11)
+# LLVM: Type: R_386_TLS_TPOFF (14)
+# LLVM: Type: R_386_TLS_IE (15)
+# LLVM: Type: R_386_TLS_GOTIE (16)
+# LLVM: Type: R_386_TLS_LE (17)
+# LLVM: Type: R_386_TLS_GD (18)
+# LLVM: Type: R_386_TLS_LDM (19)
+# LLVM: Type: R_386_16 (20)
+# LLVM: Type: R_386_PC16 (21)
+# LLVM: Type: R_386_8 (22)
+# LLVM: Type: R_386_PC8 (23)
+# LLVM: Type: R_386_TLS_GD_32 (24)
+# LLVM: Type: R_386_TLS_GD_PUSH (25)
+# LLVM: Type: R_386_TLS_GD_CALL (26)
+# LLVM: Type: R_386_TLS_GD_POP (27)
+# LLVM: Type: R_386_TLS_LDM_32 (28)
+# LLVM: Type: R_386_TLS_LDM_PUSH (29)
+# LLVM: Type: R_386_TLS_LDM_CALL (30)
+# LLVM: Type: R_386_TLS_LDM_POP (31)
+# LLVM: Type: R_386_TLS_LDO_32 (32)
+# LLVM: Type: R_386_TLS_IE_32 (33)
+# LLVM: Type: R_386_TLS_LE_32 (34)
+# LLVM: Type: R_386_TLS_DTPMOD32 (35)
+# LLVM: Type: R_386_TLS_DTPOFF32 (36)
+# LLVM: Type: R_386_TLS_TPOFF32 (37)
+# LLVM: Type: R_386_TLS_GOTDESC (39)
+# LLVM: Type: R_386_TLS_DESC_CALL (40)
+# LLVM: Type: R_386_TLS_DESC (41)
+# LLVM: Type: R_386_IRELATIVE (42)
+# LLVM: Type: R_386_GOT32X (43)
+
+# GNU: Relocation section '.rel.text' at offset 0x128 contains 41 entries:
+# GNU-NEXT: Offset Info Type Sym. Value Symbol's Name
+# GNU-NEXT: 00000002 00000100 R_386_NONE 00000000 foo
+# GNU-NEXT: 00000008 00000101 R_386_32 00000000 foo
+# GNU-NEXT: 0000000e 00000102 R_386_PC32 00000000 foo
+# GNU-NEXT: 00000014 00000103 R_386_GOT32 00000000 foo
+# GNU-NEXT: 0000001a 00000104 R_386_PLT32 00000000 foo
+# GNU-NEXT: 00000020 00000105 R_386_COPY 00000000 foo
+# GNU-NEXT: 00000026 00000106 R_386_GLOB_DAT 00000000 foo
+# GNU-NEXT: 0000002c 00000107 R_386_JUMP_SLOT 00000000 foo
+# GNU-NEXT: 00000032 00000108 R_386_RELATIVE 00000000 foo
+# GNU-NEXT: 00000038 00000109 R_386_GOTOFF 00000000 foo
+# GNU-NEXT: 0000003e 0000010a R_386_GOTPC 00000000 foo
+# GNU-NEXT: 00000044 0000010b R_386_32PLT 00000000 foo
+# GNU-NEXT: 0000004a 0000010e R_386_TLS_TPOFF 00000000 foo
+# GNU-NEXT: 00000050 0000010f R_386_TLS_IE 00000000 foo
+# GNU-NEXT: 00000056 00000110 R_386_TLS_GOTIE 00000000 foo
+# GNU-NEXT: 0000005c 00000111 R_386_TLS_LE 00000000 foo
+# GNU-NEXT: 00000062 00000112 R_386_TLS_GD 00000000 foo
+# GNU-NEXT: 00000068 00000113 R_386_TLS_LDM 00000000 foo
+# GNU-NEXT: 0000006e 00000114 R_386_16 00000000 foo
+# GNU-NEXT: 00000074 00000115 R_386_PC16 00000000 foo
+# GNU-NEXT: 0000007a 00000116 R_386_8 00000000 foo
+# GNU-NEXT: 00000080 00000117 R_386_PC8 00000000 foo
+# GNU-NEXT: 00000086 00000118 R_386_TLS_GD_32 00000000 foo
+# GNU-NEXT: 0000008c 00000119 R_386_TLS_GD_PUSH 00000000 foo
+# GNU-NEXT: 00000092 0000011a R_386_TLS_GD_CALL 00000000 foo
+# GNU-NEXT: 00000098 0000011b R_386_TLS_GD_POP 00000000 foo
+# GNU-NEXT: 0000009e 0000011c R_386_TLS_LDM_32 00000000 foo
+# GNU-NEXT: 000000a4 0000011d R_386_TLS_LDM_PUSH 00000000 foo
+# GNU-NEXT: 000000aa 0000011e R_386_TLS_LDM_CALL 00000000 foo
+# GNU-NEXT: 000000b0 0000011f R_386_TLS_LDM_POP 00000000 foo
+# GNU-NEXT: 000000b6 00000120 R_386_TLS_LDO_32 00000000 foo
+# GNU-NEXT: 000000bc 00000121 R_386_TLS_IE_32 00000000 foo
+# GNU-NEXT: 000000c2 00000122 R_386_TLS_LE_32 00000000 foo
+# GNU-NEXT: 000000c8 00000123 R_386_TLS_DTPMOD32 00000000 foo
+# GNU-NEXT: 000000ce 00000124 R_386_TLS_DTPOFF32 00000000 foo
+# GNU-NEXT: 000000d4 00000125 R_386_TLS_TPOFF32 00000000 foo
+# GNU-NEXT: 000000da 00000127 R_386_TLS_GOTDESC 00000000 foo
+# GNU-NEXT: 000000e0 00000128 R_386_TLS_DESC_CALL 00000000 foo
+# GNU-NEXT: 000000e6 00000129 R_386_TLS_DESC 00000000 foo
+# GNU-NEXT: 000000ec 0000012a R_386_IRELATIVE 00000000 foo
+# GNU-NEXT: 000000f2 0000012b R_386_GOT32X 00000000 foo
--- !ELF
FileHeader:
@@ -66,83 +111,127 @@ Sections:
Relocations:
- Offset: 0x0000000000000002
Type: R_386_NONE
+ Symbol: foo
- Offset: 0x0000000000000008
Type: R_386_32
+ Symbol: foo
- Offset: 0x000000000000000E
Type: R_386_PC32
+ Symbol: foo
- Offset: 0x0000000000000014
Type: R_386_GOT32
+ Symbol: foo
- Offset: 0x000000000000001A
Type: R_386_PLT32
+ Symbol: foo
- Offset: 0x0000000000000020
Type: R_386_COPY
+ Symbol: foo
- Offset: 0x0000000000000026
Type: R_386_GLOB_DAT
+ Symbol: foo
- Offset: 0x000000000000002C
Type: R_386_JUMP_SLOT
+ Symbol: foo
- Offset: 0x0000000000000032
Type: R_386_RELATIVE
+ Symbol: foo
- Offset: 0x0000000000000038
Type: R_386_GOTOFF
+ Symbol: foo
- Offset: 0x000000000000003E
Type: R_386_GOTPC
+ Symbol: foo
- Offset: 0x0000000000000044
Type: R_386_32PLT
+ Symbol: foo
- Offset: 0x000000000000004A
Type: R_386_TLS_TPOFF
+ Symbol: foo
- Offset: 0x0000000000000050
Type: R_386_TLS_IE
+ Symbol: foo
- Offset: 0x0000000000000056
Type: R_386_TLS_GOTIE
+ Symbol: foo
- Offset: 0x000000000000005C
Type: R_386_TLS_LE
+ Symbol: foo
- Offset: 0x0000000000000062
Type: R_386_TLS_GD
+ Symbol: foo
- Offset: 0x0000000000000068
Type: R_386_TLS_LDM
+ Symbol: foo
- Offset: 0x000000000000006E
Type: R_386_16
+ Symbol: foo
- Offset: 0x0000000000000074
Type: R_386_PC16
+ Symbol: foo
- Offset: 0x000000000000007A
Type: R_386_8
+ Symbol: foo
- Offset: 0x0000000000000080
Type: R_386_PC8
+ Symbol: foo
- Offset: 0x0000000000000086
Type: R_386_TLS_GD_32
+ Symbol: foo
- Offset: 0x000000000000008C
Type: R_386_TLS_GD_PUSH
+ Symbol: foo
- Offset: 0x0000000000000092
Type: R_386_TLS_GD_CALL
+ Symbol: foo
- Offset: 0x0000000000000098
Type: R_386_TLS_GD_POP
+ Symbol: foo
- Offset: 0x000000000000009E
Type: R_386_TLS_LDM_32
+ Symbol: foo
- Offset: 0x00000000000000A4
Type: R_386_TLS_LDM_PUSH
+ Symbol: foo
- Offset: 0x00000000000000AA
Type: R_386_TLS_LDM_CALL
+ Symbol: foo
- Offset: 0x00000000000000B0
Type: R_386_TLS_LDM_POP
+ Symbol: foo
- Offset: 0x00000000000000B6
Type: R_386_TLS_LDO_32
+ Symbol: foo
- Offset: 0x00000000000000BC
Type: R_386_TLS_IE_32
+ Symbol: foo
- Offset: 0x00000000000000C2
Type: R_386_TLS_LE_32
+ Symbol: foo
- Offset: 0x00000000000000C8
Type: R_386_TLS_DTPMOD32
+ Symbol: foo
- Offset: 0x00000000000000CE
Type: R_386_TLS_DTPOFF32
+ Symbol: foo
- Offset: 0x00000000000000D4
Type: R_386_TLS_TPOFF32
+ Symbol: foo
- Offset: 0x00000000000000DA
Type: R_386_TLS_GOTDESC
+ Symbol: foo
- Offset: 0x00000000000000E0
Type: R_386_TLS_DESC_CALL
+ Symbol: foo
- Offset: 0x00000000000000E6
Type: R_386_TLS_DESC
+ Symbol: foo
- Offset: 0x00000000000000EC
Type: R_386_IRELATIVE
+ Symbol: foo
- Offset: 0x00000000000000F2
Type: R_386_GOT32X
+ Symbol: foo
+Symbols:
+ - Name: foo
+ Binding: STB_GLOBAL
Modified: llvm/trunk/test/tools/llvm-readobj/reloc-types-elf-x64.test
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/llvm-readobj/reloc-types-elf-x64.test?rev=362374&r1=362373&r2=362374&view=diff
==============================================================================
--- llvm/trunk/test/tools/llvm-readobj/reloc-types-elf-x64.test (original)
+++ llvm/trunk/test/tools/llvm-readobj/reloc-types-elf-x64.test Mon Jun 3 02:52:32 2019
@@ -2,48 +2,92 @@
## names and values for x86_64 target.
# RUN: yaml2obj %s -o %t-x86_64.o
-# RUN: llvm-readobj -r --expand-relocs %t-x86_64.o | FileCheck %s
+# RUN: llvm-readobj -r --expand-relocs %t-x86_64.o | FileCheck %s --check-prefix=LLVM
+# RUN: llvm-readelf -r --expand-relocs %t-x86_64.o | FileCheck %s --check-prefix=GNU
-# CHECK: Type: R_X86_64_NONE (0)
-# CHECK: Type: R_X86_64_64 (1)
-# CHECK: Type: R_X86_64_PC32 (2)
-# CHECK: Type: R_X86_64_GOT32 (3)
-# CHECK: Type: R_X86_64_PLT32 (4)
-# CHECK: Type: R_X86_64_COPY (5)
-# CHECK: Type: R_X86_64_GLOB_DAT (6)
-# CHECK: Type: R_X86_64_JUMP_SLOT (7)
-# CHECK: Type: R_X86_64_RELATIVE (8)
-# CHECK: Type: R_X86_64_GOTPCREL (9)
-# CHECK: Type: R_X86_64_32 (10)
-# CHECK: Type: R_X86_64_32S (11)
-# CHECK: Type: R_X86_64_16 (12)
-# CHECK: Type: R_X86_64_PC16 (13)
-# CHECK: Type: R_X86_64_8 (14)
-# CHECK: Type: R_X86_64_PC8 (15)
-# CHECK: Type: R_X86_64_DTPMOD64 (16)
-# CHECK: Type: R_X86_64_DTPOFF64 (17)
-# CHECK: Type: R_X86_64_TPOFF64 (18)
-# CHECK: Type: R_X86_64_TLSGD (19)
-# CHECK: Type: R_X86_64_TLSLD (20)
-# CHECK: Type: R_X86_64_DTPOFF32 (21)
-# CHECK: Type: R_X86_64_GOTTPOFF (22)
-# CHECK: Type: R_X86_64_TPOFF32 (23)
-# CHECK: Type: R_X86_64_PC64 (24)
-# CHECK: Type: R_X86_64_GOTOFF64 (25)
-# CHECK: Type: R_X86_64_GOTPC32 (26)
-# CHECK: Type: R_X86_64_GOT64 (27)
-# CHECK: Type: R_X86_64_GOTPCREL64 (28)
-# CHECK: Type: R_X86_64_GOTPC64 (29)
-# CHECK: Type: R_X86_64_GOTPLT64 (30)
-# CHECK: Type: R_X86_64_PLTOFF64 (31)
-# CHECK: Type: R_X86_64_SIZE32 (32)
-# CHECK: Type: R_X86_64_SIZE64 (33)
-# CHECK: Type: R_X86_64_GOTPC32_TLSDESC (34)
-# CHECK: Type: R_X86_64_TLSDESC_CALL (35)
-# CHECK: Type: R_X86_64_TLSDESC (36)
-# CHECK: Type: R_X86_64_IRELATIVE (37)
-# CHECK: Type: R_X86_64_GOTPCRELX (41)
-# CHECK: Type: R_X86_64_REX_GOTPCRELX (42)
+# LLVM: Type: R_X86_64_NONE (0)
+# LLVM: Type: R_X86_64_64 (1)
+# LLVM: Type: R_X86_64_PC32 (2)
+# LLVM: Type: R_X86_64_GOT32 (3)
+# LLVM: Type: R_X86_64_PLT32 (4)
+# LLVM: Type: R_X86_64_COPY (5)
+# LLVM: Type: R_X86_64_GLOB_DAT (6)
+# LLVM: Type: R_X86_64_JUMP_SLOT (7)
+# LLVM: Type: R_X86_64_RELATIVE (8)
+# LLVM: Type: R_X86_64_GOTPCREL (9)
+# LLVM: Type: R_X86_64_32 (10)
+# LLVM: Type: R_X86_64_32S (11)
+# LLVM: Type: R_X86_64_16 (12)
+# LLVM: Type: R_X86_64_PC16 (13)
+# LLVM: Type: R_X86_64_8 (14)
+# LLVM: Type: R_X86_64_PC8 (15)
+# LLVM: Type: R_X86_64_DTPMOD64 (16)
+# LLVM: Type: R_X86_64_DTPOFF64 (17)
+# LLVM: Type: R_X86_64_TPOFF64 (18)
+# LLVM: Type: R_X86_64_TLSGD (19)
+# LLVM: Type: R_X86_64_TLSLD (20)
+# LLVM: Type: R_X86_64_DTPOFF32 (21)
+# LLVM: Type: R_X86_64_GOTTPOFF (22)
+# LLVM: Type: R_X86_64_TPOFF32 (23)
+# LLVM: Type: R_X86_64_PC64 (24)
+# LLVM: Type: R_X86_64_GOTOFF64 (25)
+# LLVM: Type: R_X86_64_GOTPC32 (26)
+# LLVM: Type: R_X86_64_GOT64 (27)
+# LLVM: Type: R_X86_64_GOTPCREL64 (28)
+# LLVM: Type: R_X86_64_GOTPC64 (29)
+# LLVM: Type: R_X86_64_GOTPLT64 (30)
+# LLVM: Type: R_X86_64_PLTOFF64 (31)
+# LLVM: Type: R_X86_64_SIZE32 (32)
+# LLVM: Type: R_X86_64_SIZE64 (33)
+# LLVM: Type: R_X86_64_GOTPC32_TLSDESC (34)
+# LLVM: Type: R_X86_64_TLSDESC_CALL (35)
+# LLVM: Type: R_X86_64_TLSDESC (36)
+# LLVM: Type: R_X86_64_IRELATIVE (37)
+# LLVM: Type: R_X86_64_GOTPCRELX (41)
+# LLVM: Type: R_X86_64_REX_GOTPCRELX (42)
+
+# GNU: Relocation section '.rela.text' at offset 0x1c8 contains 40 entries:
+# GNU-NEXT: Offset Info Type Symbol's Value Symbol's Name + Addend
+# GNU-NEXT: 0000000000000003 0000000100000000 R_X86_64_NONE 0000000000000000 foo + 0
+# GNU-NEXT: 000000000000000a 0000000100000001 R_X86_64_64 0000000000000000 foo + 0
+# GNU-NEXT: 0000000000000011 0000000100000002 R_X86_64_PC32 0000000000000000 foo + 0
+# GNU-NEXT: 0000000000000018 0000000100000003 R_X86_64_GOT32 0000000000000000 foo + 0
+# GNU-NEXT: 000000000000001f 0000000100000004 R_X86_64_PLT32 0000000000000000 foo + 0
+# GNU-NEXT: 0000000000000026 0000000100000005 R_X86_64_COPY 0000000000000000 foo + 0
+# GNU-NEXT: 000000000000002d 0000000100000006 R_X86_64_GLOB_DAT 0000000000000000 foo + 0
+# GNU-NEXT: 0000000000000034 0000000100000007 R_X86_64_JUMP_SLOT 0000000000000000 foo + 0
+# GNU-NEXT: 000000000000003b 0000000100000008 R_X86_64_RELATIVE 0000000000000000 foo + 0
+# GNU-NEXT: 0000000000000042 0000000100000009 R_X86_64_GOTPCREL 0000000000000000 foo + 0
+# GNU-NEXT: 0000000000000049 000000010000000a R_X86_64_32 0000000000000000 foo + 0
+# GNU-NEXT: 0000000000000050 000000010000000b R_X86_64_32S 0000000000000000 foo + 0
+# GNU-NEXT: 0000000000000057 000000010000000c R_X86_64_16 0000000000000000 foo + 0
+# GNU-NEXT: 000000000000005e 000000010000000d R_X86_64_PC16 0000000000000000 foo + 0
+# GNU-NEXT: 0000000000000065 000000010000000e R_X86_64_8 0000000000000000 foo + 0
+# GNU-NEXT: 000000000000006c 000000010000000f R_X86_64_PC8 0000000000000000 foo + 0
+# GNU-NEXT: 0000000000000073 0000000100000010 R_X86_64_DTPMOD64 0000000000000000 foo + 0
+# GNU-NEXT: 000000000000007a 0000000100000011 R_X86_64_DTPOFF64 0000000000000000 foo + 0
+# GNU-NEXT: 0000000000000081 0000000100000012 R_X86_64_TPOFF64 0000000000000000 foo + 0
+# GNU-NEXT: 0000000000000088 0000000100000013 R_X86_64_TLSGD 0000000000000000 foo + 0
+# GNU-NEXT: 000000000000008f 0000000100000014 R_X86_64_TLSLD 0000000000000000 foo + 0
+# GNU-NEXT: 0000000000000096 0000000100000015 R_X86_64_DTPOFF32 0000000000000000 foo + 0
+# GNU-NEXT: 000000000000009d 0000000100000016 R_X86_64_GOTTPOFF 0000000000000000 foo + 0
+# GNU-NEXT: 00000000000000a4 0000000100000017 R_X86_64_TPOFF32 0000000000000000 foo + 0
+# GNU-NEXT: 00000000000000ab 0000000100000018 R_X86_64_PC64 0000000000000000 foo + 0
+# GNU-NEXT: 00000000000000b2 0000000100000019 R_X86_64_GOTOFF64 0000000000000000 foo + 0
+# GNU-NEXT: 00000000000000b9 000000010000001a R_X86_64_GOTPC32 0000000000000000 foo + 0
+# GNU-NEXT: 00000000000000c0 000000010000001b R_X86_64_GOT64 0000000000000000 foo + 0
+# GNU-NEXT: 00000000000000c7 000000010000001c R_X86_64_GOTPCREL64 0000000000000000 foo + 0
+# GNU-NEXT: 00000000000000ce 000000010000001d R_X86_64_GOTPC64 0000000000000000 foo + 0
+# GNU-NEXT: 00000000000000d5 000000010000001e R_X86_64_GOTPLT64 0000000000000000 foo + 0
+# GNU-NEXT: 00000000000000dc 000000010000001f R_X86_64_PLTOFF64 0000000000000000 foo + 0
+# GNU-NEXT: 00000000000000e3 0000000100000020 R_X86_64_SIZE32 0000000000000000 foo + 0
+# GNU-NEXT: 00000000000000ea 0000000100000021 R_X86_64_SIZE64 0000000000000000 foo + 0
+# GNU-NEXT: 00000000000000f1 0000000100000022 R_X86_64_GOTPC32_TLSDESC 0000000000000000 foo + 0
+# GNU-NEXT: 00000000000000f8 0000000100000023 R_X86_64_TLSDESC_CALL 0000000000000000 foo + 0
+# GNU-NEXT: 00000000000000ff 0000000100000024 R_X86_64_TLSDESC 0000000000000000 foo + 0
+# GNU-NEXT: 0000000000000106 0000000100000025 R_X86_64_IRELATIVE 0000000000000000 foo + 0
+# GNU-NEXT: 000000000000010a 0000000100000029 R_X86_64_GOTPCRELX 0000000000000000 foo + 0
+# GNU-NEXT: 000000000000010e 000000010000002a R_X86_64_REX_GOTPCRELX 0000000000000000 foo + 0
--- !ELF
FileHeader:
@@ -65,81 +109,124 @@ Sections:
Relocations:
- Offset: 0x0000000000000003
Type: R_X86_64_NONE
+ Symbol: foo
- Offset: 0x000000000000000A
Type: R_X86_64_64
+ Symbol: foo
- Offset: 0x0000000000000011
Type: R_X86_64_PC32
+ Symbol: foo
- Offset: 0x0000000000000018
Type: R_X86_64_GOT32
+ Symbol: foo
- Offset: 0x000000000000001F
Type: R_X86_64_PLT32
+ Symbol: foo
- Offset: 0x0000000000000026
Type: R_X86_64_COPY
+ Symbol: foo
- Offset: 0x000000000000002D
Type: R_X86_64_GLOB_DAT
+ Symbol: foo
- Offset: 0x0000000000000034
Type: R_X86_64_JUMP_SLOT
+ Symbol: foo
- Offset: 0x000000000000003B
Type: R_X86_64_RELATIVE
+ Symbol: foo
- Offset: 0x0000000000000042
Type: R_X86_64_GOTPCREL
+ Symbol: foo
- Offset: 0x0000000000000049
Type: R_X86_64_32
+ Symbol: foo
- Offset: 0x0000000000000050
Type: R_X86_64_32S
+ Symbol: foo
- Offset: 0x0000000000000057
Type: R_X86_64_16
+ Symbol: foo
- Offset: 0x000000000000005E
Type: R_X86_64_PC16
+ Symbol: foo
- Offset: 0x0000000000000065
Type: R_X86_64_8
+ Symbol: foo
- Offset: 0x000000000000006C
Type: R_X86_64_PC8
+ Symbol: foo
- Offset: 0x0000000000000073
Type: R_X86_64_DTPMOD64
+ Symbol: foo
- Offset: 0x000000000000007A
Type: R_X86_64_DTPOFF64
+ Symbol: foo
- Offset: 0x0000000000000081
Type: R_X86_64_TPOFF64
+ Symbol: foo
- Offset: 0x0000000000000088
Type: R_X86_64_TLSGD
+ Symbol: foo
- Offset: 0x000000000000008F
Type: R_X86_64_TLSLD
+ Symbol: foo
- Offset: 0x0000000000000096
Type: R_X86_64_DTPOFF32
+ Symbol: foo
- Offset: 0x000000000000009D
Type: R_X86_64_GOTTPOFF
+ Symbol: foo
- Offset: 0x00000000000000A4
Type: R_X86_64_TPOFF32
+ Symbol: foo
- Offset: 0x00000000000000AB
Type: R_X86_64_PC64
+ Symbol: foo
- Offset: 0x00000000000000B2
Type: R_X86_64_GOTOFF64
+ Symbol: foo
- Offset: 0x00000000000000B9
Type: R_X86_64_GOTPC32
+ Symbol: foo
- Offset: 0x00000000000000C0
Type: R_X86_64_GOT64
+ Symbol: foo
- Offset: 0x00000000000000C7
Type: R_X86_64_GOTPCREL64
+ Symbol: foo
- Offset: 0x00000000000000CE
Type: R_X86_64_GOTPC64
+ Symbol: foo
- Offset: 0x00000000000000D5
Type: R_X86_64_GOTPLT64
+ Symbol: foo
- Offset: 0x00000000000000DC
Type: R_X86_64_PLTOFF64
+ Symbol: foo
- Offset: 0x00000000000000E3
Type: R_X86_64_SIZE32
+ Symbol: foo
- Offset: 0x00000000000000EA
Type: R_X86_64_SIZE64
+ Symbol: foo
- Offset: 0x00000000000000F1
Type: R_X86_64_GOTPC32_TLSDESC
+ Symbol: foo
- Offset: 0x00000000000000F8
Type: R_X86_64_TLSDESC_CALL
+ Symbol: foo
- Offset: 0x00000000000000FF
Type: R_X86_64_TLSDESC
+ Symbol: foo
- Offset: 0x0000000000000106
Type: R_X86_64_IRELATIVE
+ Symbol: foo
- Offset: 0x000000000000010A
Type: R_X86_64_GOTPCRELX
+ Symbol: foo
- Offset: 0x000000000000010E
Type: R_X86_64_REX_GOTPCRELX
+ Symbol: foo
+Symbols:
+ - Name: foo
+ Binding: STB_GLOBAL
More information about the llvm-commits
mailing list