summaryrefslogtreecommitdiff
path: root/test/Driver/so-whole-archive.test
diff options
context:
space:
mode:
Diffstat (limited to 'test/Driver/so-whole-archive.test')
-rw-r--r--test/Driver/so-whole-archive.test63
1 files changed, 63 insertions, 0 deletions
diff --git a/test/Driver/so-whole-archive.test b/test/Driver/so-whole-archive.test
new file mode 100644
index 0000000000000..0732c35a7a922
--- /dev/null
+++ b/test/Driver/so-whole-archive.test
@@ -0,0 +1,63 @@
+# Check that LLD does not show any error if the --whole-archive
+# is around non-archive.
+
+# RUN: yaml2obj -format=elf -docnum=1 %s > %t-so.o
+# RUN: yaml2obj -format=elf -docnum=2 %s > %t-exe.o
+# RUN: lld -flavor gnu -target mipsel -shared -o %t.so %t-so.o
+# RUN: lld -flavor gnu -target mipsel -o %t.exe %t-exe.o --whole-archive %t.so
+
+# so.o
+---
+FileHeader:
+ Class: ELFCLASS32
+ Data: ELFDATA2LSB
+ Type: ET_REL
+ Machine: EM_MIPS
+ Flags: [ EF_MIPS_NOREORDER, EF_MIPS_PIC, EF_MIPS_CPIC,
+ EF_MIPS_ABI_O32, EF_MIPS_ARCH_32 ]
+Sections:
+ - Name: .text
+ Type: SHT_PROGBITS
+ Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
+ AddressAlign: 0x10
+ Size: 0x04
+Symbols:
+ Global:
+ - Name: foo
+ Type: STT_FUNC
+ Section: .text
+ Size: 0x04
+
+# exe.o
+---
+FileHeader:
+ Class: ELFCLASS32
+ Data: ELFDATA2LSB
+ Type: ET_REL
+ Machine: EM_MIPS
+ Flags: [ EF_MIPS_NOREORDER, EF_MIPS_CPIC,
+ EF_MIPS_ABI_O32, EF_MIPS_ARCH_32 ]
+Sections:
+ - Name: .text
+ Type: SHT_PROGBITS
+ Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
+ AddressAlign: 0x10
+ Size: 0x04
+ - Name: .rel.text
+ Type: SHT_REL
+ Link: .symtab
+ AddressAlign: 0x04
+ Info: .text
+ Relocations:
+ - Offset: 0x00
+ Symbol: foo
+ Type: R_MIPS_26
+
+Symbols:
+ Global:
+ - Name: __start
+ Type: STT_FUNC
+ Section: .text
+ Size: 0x04
+ - Name: foo
+...