summaryrefslogtreecommitdiffstats
path: root/llvm/test/tools/llvm-objdump/relocations-elf.test
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test/tools/llvm-objdump/relocations-elf.test')
-rw-r--r--llvm/test/tools/llvm-objdump/relocations-elf.test41
1 files changed, 30 insertions, 11 deletions
diff --git a/llvm/test/tools/llvm-objdump/relocations-elf.test b/llvm/test/tools/llvm-objdump/relocations-elf.test
index 019dcc20208..87fe55c0411 100644
--- a/llvm/test/tools/llvm-objdump/relocations-elf.test
+++ b/llvm/test/tools/llvm-objdump/relocations-elf.test
@@ -1,20 +1,18 @@
-# RUN: yaml2obj %s > %t
+# RUN: yaml2obj --docnum=1 %s > %t
# RUN: llvm-objdump --reloc %t > %t1
# RUN: llvm-objdump -r %t > %t2
# RUN: cmp %t1 %t2
# RUN: FileCheck %s --input-file=%t1
-# CHECK: RELOCATION RECORDS FOR [.rel.text]:
-# CHECK: 0000000000000001 R_X86_64_32 glob1
-# CHECK: 0000000000000001 R_X86_64_32S glob2
-# CHECK: 0000000000000002 R_X86_64_64 loc1
+# CHECK: RELOCATION RECORDS FOR [.text]:
+# CHECK-NEXT: 0000000000000001 R_X86_64_32 glob1
+# CHECK-NEXT: 0000000000000001 R_X86_64_32S glob2
+# CHECK-NEXT: 0000000000000002 R_X86_64_64 loc1
+# CHECK-NEXT: 0000000000000001 R_X86_64_32 glob1+1
+# CHECK-NEXT: 0000000000000001 R_X86_64_32S glob2+2
+# CHECK-NEXT: 0000000000000002 R_X86_64_64 loc1+3
-# CHECK: RELOCATION RECORDS FOR [.rela.text]:
-# CHECK: 0000000000000001 R_X86_64_32 glob1+1
-# CHECK: 0000000000000001 R_X86_64_32S glob2+2
-# CHECK: 0000000000000002 R_X86_64_64 loc1+3
-
-!ELF
+--- !ELF
FileHeader: !FileHeader
Class: ELFCLASS64
Data: ELFDATA2LSB
@@ -72,3 +70,24 @@ Symbols:
Binding: STB_GLOBAL
- Name: glob2
Binding: STB_GLOBAL
+
+## Check we report an error if the relocated section identified by the
+## sh_info field of a relocation section is invalid.
+# RUN: yaml2obj --docnum=2 %s > %t2
+# RUN: not llvm-objdump --reloc %t2 2>&1 | FileCheck %s --check-prefix=ERR
+# ERR: LLVM ERROR: Invalid data was encountered while parsing the file
+
+--- !ELF
+FileHeader:
+ Class: ELFCLASS64
+ Data: ELFDATA2LSB
+ Type: ET_REL
+ Machine: EM_X86_64
+Sections:
+- Name: .rela.foo
+ Type: SHT_RELA
+ Link: .symtab
+ Info: 0x255
+ Relocations:
+ - Offset: 0x1
+ Type: R_X86_64_NONE
OpenPOWER on IntegriCloud