summaryrefslogtreecommitdiffstats
path: root/llvm/test/tools/yaml2obj/ELF/local-symbols.yaml
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test/tools/yaml2obj/ELF/local-symbols.yaml')
-rw-r--r--llvm/test/tools/yaml2obj/ELF/local-symbols.yaml36
1 files changed, 36 insertions, 0 deletions
diff --git a/llvm/test/tools/yaml2obj/ELF/local-symbols.yaml b/llvm/test/tools/yaml2obj/ELF/local-symbols.yaml
new file mode 100644
index 00000000000..4c1800ea4c1
--- /dev/null
+++ b/llvm/test/tools/yaml2obj/ELF/local-symbols.yaml
@@ -0,0 +1,36 @@
+## Check we correctly set the sh_info field of .symtab section.
+## A symbol table section's sh_info section header member holds
+## the symbol table index for the first non-local symbol.
+
+# RUN: yaml2obj -docnum=1 %s -o %t
+# RUN: llvm-readobj --sections %t | FileCheck %s --check-prefix=ONE
+# ONE: Name: .symtab
+# ONE: Info: 2
+
+--- !ELF
+FileHeader:
+ Class: ELFCLASS64
+ Data: ELFDATA2LSB
+ Type: ET_DYN
+ Machine: EM_X86_64
+Symbols:
+ - Name: local
+ - Name: global
+ Binding: STB_GLOBAL
+
+# RUN: yaml2obj -docnum=2 %s -o %t
+# RUN: llvm-readobj --sections %t | FileCheck %s --check-prefix=TWO
+# TWO: Name: .symtab
+# TWO: Info: 3
+
+--- !ELF
+FileHeader:
+ Class: ELFCLASS64
+ Data: ELFDATA2LSB
+ Type: ET_DYN
+ Machine: EM_X86_64
+Symbols:
+ - Name: local1
+ - Name: local2
+ - Name: global
+ Binding: STB_GLOBAL
OpenPOWER on IntegriCloud