[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