summaryrefslogtreecommitdiffstats
path: root/llvm/test
diff options
context:
space:
mode:
authorJake Ehrlich <jakehehrlich@google.com>2017-09-26 18:02:25 +0000
committerJake Ehrlich <jakehehrlich@google.com>2017-09-26 18:02:25 +0000
commit9f1a390f72ea5ee64f3e7859133983e878835c0a (patch)
treef68df258ececeb26efed3e0db6227150b86f8df2 /llvm/test
parent448e8ad94326713b2ef3d19b7fdc397e81114750 (diff)
downloadbcm5719-llvm-9f1a390f72ea5ee64f3e7859133983e878835c0a.tar.gz
bcm5719-llvm-9f1a390f72ea5ee64f3e7859133983e878835c0a.zip
[llvm-objcopy] Add support for dynamic relocations
This change adds support for dynamic relocations (allocated SHT_REL/SHT_RELA sections with a dynamic symbol table as their link). The binary I added for the test is here: https://drive.google.com/file/d/0B3gtIAmiMwZXSjJUZE9pUjd4M0k/view?usp=sharing Unless support for dynamic symbol tables in yaml2obj is added this is needed. Differential Revision: https://reviews.llvm.org/D37915 llvm-svn: 314227
Diffstat (limited to 'llvm/test')
-rw-r--r--llvm/test/tools/llvm-objcopy/Inputs/dynrel.elfbin0 -> 13560 bytes
-rw-r--r--llvm/test/tools/llvm-objcopy/dynamic-relocations.test19
2 files changed, 19 insertions, 0 deletions
diff --git a/llvm/test/tools/llvm-objcopy/Inputs/dynrel.elf b/llvm/test/tools/llvm-objcopy/Inputs/dynrel.elf
new file mode 100644
index 00000000000..fe9d6835421
--- /dev/null
+++ b/llvm/test/tools/llvm-objcopy/Inputs/dynrel.elf
Binary files differ
diff --git a/llvm/test/tools/llvm-objcopy/dynamic-relocations.test b/llvm/test/tools/llvm-objcopy/dynamic-relocations.test
new file mode 100644
index 00000000000..e544e2dd8ef
--- /dev/null
+++ b/llvm/test/tools/llvm-objcopy/dynamic-relocations.test
@@ -0,0 +1,19 @@
+# RUN: llvm-objcopy %p/Inputs/dynrel.elf %t
+# RUN: llvm-readobj -sections -section-data %t | FileCheck %s
+
+#CHECK: Name: .rela.plt
+#CHECK-NEXT: Type: SHT_RELA
+#CHECK-NEXT: Flags [
+#CHECK-NEXT: SHF_ALLOC
+#CHECK-NEXT: ]
+#CHECK-NEXT: Address:
+#CHECK-NEXT: Offset:
+#CHECK-NEXT: Size: 24
+#CHECK-NEXT: Link:
+#CHECK-NEXT: Info:
+#CHECK-NEXT: AddressAlignment: 8
+#CHECK-NEXT: EntrySize: 24
+#CHECK-NEXT: SectionData (
+#CHECK-NEXT: 0000: 18202000 00000000 07000000 01000000 |. .............|
+#CHECK-NEXT: 0010: 00000000 00000000 |........|
+#CHECK-NEXT: )
OpenPOWER on IntegriCloud