[llvm] r372109 - [obj2yaml] - Support PPC64 relocation types.

George Rimar via llvm-commits llvm-commits at lists.llvm.org
Tue Sep 17 05:00:56 PDT 2019


Author: grimar
Date: Tue Sep 17 05:00:55 2019
New Revision: 372109

URL: http://llvm.org/viewvc/llvm-project?rev=372109&view=rev
Log:
[obj2yaml] - Support PPC64 relocation types.

We do not support them and fail with llvm_unreachable currently.
This is not the only target we do not support and also seems we are missing
the tests for those we have already. But I needed this one for another patch,
so posted it separatelly.

Relocation names are taken from llvm\include\llvm\BinaryFormat\ELFRelocs\PowerPC64.def

Differential revision: https://reviews.llvm.org/D67615

Added:
    llvm/trunk/test/tools/obj2yaml/elf-ppc64-relocations.yaml
Modified:
    llvm/trunk/lib/ObjectYAML/ELFYAML.cpp

Modified: llvm/trunk/lib/ObjectYAML/ELFYAML.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/ObjectYAML/ELFYAML.cpp?rev=372109&r1=372108&r2=372109&view=diff
==============================================================================
--- llvm/trunk/lib/ObjectYAML/ELFYAML.cpp (original)
+++ llvm/trunk/lib/ObjectYAML/ELFYAML.cpp Tue Sep 17 05:00:55 2019
@@ -651,6 +651,9 @@ void ScalarEnumerationTraits<ELFYAML::EL
   case ELF::EM_BPF:
 #include "llvm/BinaryFormat/ELFRelocs/BPF.def"
     break;
+  case ELF::EM_PPC64:
+#include "llvm/BinaryFormat/ELFRelocs/PowerPC64.def"
+    break;
   default:
     llvm_unreachable("Unsupported architecture");
   }

Added: llvm/trunk/test/tools/obj2yaml/elf-ppc64-relocations.yaml
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/tools/obj2yaml/elf-ppc64-relocations.yaml?rev=372109&view=auto
==============================================================================
--- llvm/trunk/test/tools/obj2yaml/elf-ppc64-relocations.yaml (added)
+++ llvm/trunk/test/tools/obj2yaml/elf-ppc64-relocations.yaml Tue Sep 17 05:00:55 2019
@@ -0,0 +1,488 @@
+## Check obj2yaml is able to decode all PPC64 relocations.
+
+# RUN: yaml2obj %s -o %t
+# RUN: obj2yaml %t | FileCheck %s
+
+# CHECK:      --- !ELF
+# CHECK-NEXT: FileHeader:
+# CHECK-NEXT:   Class:   ELFCLASS64
+# CHECK-NEXT:   Data:    ELFDATA2MSB
+# CHECK-NEXT:   Type:    ET_REL
+# CHECK-NEXT:   Machine: EM_PPC64
+# CHECK-NEXT: Sections:
+# CHECK-NEXT:   - Name:    .rela.text
+# CHECK-NEXT:     Type:    SHT_RELA
+# CHECK-NEXT:     Link:    .symtab
+# CHECK-NEXT:     EntSize: 0x0000000000000018
+# CHECK-NEXT:     Relocations:
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_NONE
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_ADDR32
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_ADDR24
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_ADDR16
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_ADDR16_LO
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_ADDR16_HI
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_ADDR16_HA
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_ADDR14
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_ADDR14_BRTAKEN
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_ADDR14_BRNTAKEN
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_REL24
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_REL14
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_REL14_BRTAKEN
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_REL14_BRNTAKEN
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_GOT16
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_GOT16_LO
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_GOT16_HI
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_GOT16_HA
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_GLOB_DAT
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_JMP_SLOT
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_RELATIVE
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_REL32
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_ADDR64
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_ADDR16_HIGHER
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_ADDR16_HIGHERA
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_ADDR16_HIGHEST
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_ADDR16_HIGHESTA
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_REL64
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_TOC16
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_TOC16_LO
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_TOC16_HI
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_TOC16_HA
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_TOC
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_ADDR16_DS
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_ADDR16_LO_DS
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_GOT16_DS
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_GOT16_LO_DS
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_TOC16_DS
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_TOC16_LO_DS
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_TLS
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_DTPMOD64
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_TPREL16
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_TPREL16_LO
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_TPREL16_HI
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_TPREL16_HA
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_TPREL64
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_DTPREL16
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_DTPREL16_LO
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_DTPREL16_HI
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_DTPREL16_HA
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_DTPREL64
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_GOT_TLSGD16
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_GOT_TLSGD16_LO
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_GOT_TLSGD16_HI
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_GOT_TLSGD16_HA
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_GOT_TLSLD16
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_GOT_TLSLD16_LO
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_GOT_TLSLD16_HI
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_GOT_TLSLD16_HA
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_GOT_TPREL16_DS
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_GOT_TPREL16_LO_DS
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_GOT_TPREL16_HI
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_GOT_TPREL16_HA
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_GOT_DTPREL16_DS
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_GOT_DTPREL16_LO_DS
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_GOT_DTPREL16_HI
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_GOT_DTPREL16_HA
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_TPREL16_DS
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_TPREL16_LO_DS
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_TPREL16_HIGHER
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_TPREL16_HIGHERA
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_TPREL16_HIGHEST
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_TPREL16_HIGHESTA
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_DTPREL16_DS
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_DTPREL16_LO_DS
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_DTPREL16_HIGHER
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_DTPREL16_HIGHERA
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_DTPREL16_HIGHEST
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_DTPREL16_HIGHESTA
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_TLSGD
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_TLSLD
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_ADDR16_HIGH
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_ADDR16_HIGHA
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_TPREL16_HIGH
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_TPREL16_HIGHA
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_DTPREL16_HIGH
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_DTPREL16_HIGHA
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_IRELATIVE
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_REL16
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_REL16_LO
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_REL16_HI
+# CHECK-NEXT:       - Offset: 0x0000000000000000
+# CHECK-NEXT:         Symbol: ''
+# CHECK-NEXT:         Type:   R_PPC64_REL16_HA
+
+--- !ELF
+FileHeader:
+  Class:   ELFCLASS64
+  Data:    ELFDATA2MSB
+  Type:    ET_REL
+  Machine: EM_PPC64
+Sections:
+  - Name: .rela.text
+    Type: SHT_RELA
+    Relocations:
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_NONE
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_ADDR32
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_ADDR24
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_ADDR16
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_ADDR16_LO
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_ADDR16_HI
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_ADDR16_HA
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_ADDR14
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_ADDR14_BRTAKEN
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_ADDR14_BRNTAKEN
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_REL24
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_REL14
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_REL14_BRTAKEN
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_REL14_BRNTAKEN
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_GOT16
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_GOT16_LO
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_GOT16_HI
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_GOT16_HA
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_GLOB_DAT
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_JMP_SLOT
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_RELATIVE
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_REL32
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_ADDR64
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_ADDR16_HIGHER
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_ADDR16_HIGHERA
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_ADDR16_HIGHEST
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_ADDR16_HIGHESTA
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_REL64
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_TOC16
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_TOC16_LO
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_TOC16_HI
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_TOC16_HA
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_TOC
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_ADDR16_DS
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_ADDR16_LO_DS
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_GOT16_DS
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_GOT16_LO_DS
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_TOC16_DS
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_TOC16_LO_DS
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_TLS
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_DTPMOD64
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_TPREL16
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_TPREL16_LO
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_TPREL16_HI
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_TPREL16_HA
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_TPREL64
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_DTPREL16
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_DTPREL16_LO
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_DTPREL16_HI
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_DTPREL16_HA
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_DTPREL64
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_GOT_TLSGD16
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_GOT_TLSGD16_LO
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_GOT_TLSGD16_HI
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_GOT_TLSGD16_HA
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_GOT_TLSLD16
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_GOT_TLSLD16_LO
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_GOT_TLSLD16_HI
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_GOT_TLSLD16_HA
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_GOT_TPREL16_DS
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_GOT_TPREL16_LO_DS
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_GOT_TPREL16_HI
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_GOT_TPREL16_HA
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_GOT_DTPREL16_DS
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_GOT_DTPREL16_LO_DS
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_GOT_DTPREL16_HI
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_GOT_DTPREL16_HA
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_TPREL16_DS
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_TPREL16_LO_DS
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_TPREL16_HIGHER
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_TPREL16_HIGHERA
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_TPREL16_HIGHEST
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_TPREL16_HIGHESTA
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_DTPREL16_DS
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_DTPREL16_LO_DS
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_DTPREL16_HIGHER
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_DTPREL16_HIGHERA
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_DTPREL16_HIGHEST
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_DTPREL16_HIGHESTA
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_TLSGD
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_TLSLD
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_ADDR16_HIGH
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_ADDR16_HIGHA
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_TPREL16_HIGH
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_TPREL16_HIGHA
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_DTPREL16_HIGH
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_DTPREL16_HIGHA
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_IRELATIVE
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_REL16
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_REL16_LO
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_REL16_HI
+      - Offset: 0x0000000000000000
+        Type:   R_PPC64_REL16_HA




More information about the llvm-commits mailing list