[lld] r293096 - Do not use .s extension for non-assembly files.
Rui Ueyama via llvm-commits
llvm-commits at lists.llvm.org
Wed Jan 25 13:28:19 PST 2017
Author: ruiu
Date: Wed Jan 25 15:28:19 2017
New Revision: 293096
URL: http://llvm.org/viewvc/llvm-project?rev=293096&view=rev
Log:
Do not use .s extension for non-assembly files.
Added:
lld/trunk/test/ELF/invalid/broken-relaxation-x64.test
lld/trunk/test/ELF/invalid/invalid-relocation-x64.test
Removed:
lld/trunk/test/ELF/invalid/broken-relaxation-x64.s
lld/trunk/test/ELF/invalid/invalid-relocation-x64.s
Removed: lld/trunk/test/ELF/invalid/broken-relaxation-x64.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/invalid/broken-relaxation-x64.s?rev=293095&view=auto
==============================================================================
--- lld/trunk/test/ELF/invalid/broken-relaxation-x64.s (original)
+++ lld/trunk/test/ELF/invalid/broken-relaxation-x64.s (removed)
@@ -1,46 +0,0 @@
-# REQUIRES: x86
-
-# RUN: yaml2obj %s -o %t.o
-# RUN: not ld.lld %t.o -o %t.exe 2>&1 | FileCheck --check-prefix=ERR %s
-# ERR: R_X86_64_GOTTPOFF must be used in MOVQ or ADDQ instructions only
-# ERR: R_X86_64_GOTTPOFF must be used in MOVQ or ADDQ instructions only
-
-## YAML below contains 2 relocations of type R_X86_64_GOTTPOFF, and a .text
-## with fake content filled by 0xFF. That means instructions for relaxation are
-## "broken", so they does not match any known valid relaxations. We also generate
-## .tls section because we need it for correct proccessing of STT_TLS symbol.
-!ELF
-FileHeader:
- Class: ELFCLASS64
- Data: ELFDATA2LSB
- OSABI: ELFOSABI_FREEBSD
- Type: ET_REL
- Machine: EM_X86_64
-Sections:
- - Type: SHT_PROGBITS
- Name: .text
- Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
- AddressAlign: 0x04
- Content: "FFFFFFFFFFFFFFFF"
- - Type: SHT_PROGBITS
- Name: .tls
- Flags: [ SHF_ALLOC, SHF_TLS ]
- - Type: SHT_REL
- Name: .rel.text
- Link: .symtab
- Info: .text
- AddressAlign: 0x04
- Relocations:
- - Offset: 4
- Symbol: foo
- Type: R_X86_64_GOTTPOFF
- - Offset: 4
- Symbol: foo
- Type: R_X86_64_GOTTPOFF
-Symbols:
- Global:
- - Name: foo
- Type: STT_TLS
- Section: .text
- Value: 0x12345
- Size: 4
Added: lld/trunk/test/ELF/invalid/broken-relaxation-x64.test
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/invalid/broken-relaxation-x64.test?rev=293096&view=auto
==============================================================================
--- lld/trunk/test/ELF/invalid/broken-relaxation-x64.test (added)
+++ lld/trunk/test/ELF/invalid/broken-relaxation-x64.test Wed Jan 25 15:28:19 2017
@@ -0,0 +1,46 @@
+# REQUIRES: x86
+
+# RUN: yaml2obj %s -o %t.o
+# RUN: not ld.lld %t.o -o %t.exe 2>&1 | FileCheck --check-prefix=ERR %s
+# ERR: R_X86_64_GOTTPOFF must be used in MOVQ or ADDQ instructions only
+# ERR: R_X86_64_GOTTPOFF must be used in MOVQ or ADDQ instructions only
+
+## YAML below contains 2 relocations of type R_X86_64_GOTTPOFF, and a .text
+## with fake content filled by 0xFF. That means instructions for relaxation are
+## "broken", so they does not match any known valid relaxations. We also generate
+## .tls section because we need it for correct proccessing of STT_TLS symbol.
+!ELF
+FileHeader:
+ Class: ELFCLASS64
+ Data: ELFDATA2LSB
+ OSABI: ELFOSABI_FREEBSD
+ Type: ET_REL
+ Machine: EM_X86_64
+Sections:
+ - Type: SHT_PROGBITS
+ Name: .text
+ Flags: [ SHF_ALLOC, SHF_EXECINSTR ]
+ AddressAlign: 0x04
+ Content: "FFFFFFFFFFFFFFFF"
+ - Type: SHT_PROGBITS
+ Name: .tls
+ Flags: [ SHF_ALLOC, SHF_TLS ]
+ - Type: SHT_REL
+ Name: .rel.text
+ Link: .symtab
+ Info: .text
+ AddressAlign: 0x04
+ Relocations:
+ - Offset: 4
+ Symbol: foo
+ Type: R_X86_64_GOTTPOFF
+ - Offset: 4
+ Symbol: foo
+ Type: R_X86_64_GOTTPOFF
+Symbols:
+ Global:
+ - Name: foo
+ Type: STT_TLS
+ Section: .text
+ Value: 0x12345
+ Size: 4
Removed: lld/trunk/test/ELF/invalid/invalid-relocation-x64.s
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/invalid/invalid-relocation-x64.s?rev=293095&view=auto
==============================================================================
--- lld/trunk/test/ELF/invalid/invalid-relocation-x64.s (original)
+++ lld/trunk/test/ELF/invalid/invalid-relocation-x64.s (removed)
@@ -1,30 +0,0 @@
-## invalid-relocation-x64.elf contains relocations with invalid relocation number.
-## Next yaml code was used to create initial binary. After that it
-## was modified with hex-editor to replace known relocations with fake ones,
-## that have 0x98 and 0x98 numbers.
-!ELF
-FileHeader:
- Class: ELFCLASS64
- Data: ELFDATA2LSB
- OSABI: ELFOSABI_FREEBSD
- Type: ET_REL
- Machine: EM_X86_64
-Sections:
- - Name: .text
- Type: SHT_PROGBITS
- Flags: [ SHF_ALLOC ]
- - Name: .rela.text
- Type: SHT_RELA
- Link: .symtab
- Info: .text
- Relocations:
- - Offset: 0x0000000000000000
- Symbol: ''
- Type: R_X86_64_NONE
- - Offset: 0x0000000000000000
- Symbol: ''
- Type: R_X86_64_NONE
-
-# RUN: not ld.lld %p/Inputs/invalid-relocation-x64.elf -o %t2 2>&1 | FileCheck %s
-# CHECK: unknown relocation type: Unknown (152)
-# CHECK: unknown relocation type: Unknown (153)
Added: lld/trunk/test/ELF/invalid/invalid-relocation-x64.test
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/test/ELF/invalid/invalid-relocation-x64.test?rev=293096&view=auto
==============================================================================
--- lld/trunk/test/ELF/invalid/invalid-relocation-x64.test (added)
+++ lld/trunk/test/ELF/invalid/invalid-relocation-x64.test Wed Jan 25 15:28:19 2017
@@ -0,0 +1,30 @@
+## invalid-relocation-x64.elf contains relocations with invalid relocation number.
+## Next yaml code was used to create initial binary. After that it
+## was modified with hex-editor to replace known relocations with fake ones,
+## that have 0x98 and 0x98 numbers.
+!ELF
+FileHeader:
+ Class: ELFCLASS64
+ Data: ELFDATA2LSB
+ OSABI: ELFOSABI_FREEBSD
+ Type: ET_REL
+ Machine: EM_X86_64
+Sections:
+ - Name: .text
+ Type: SHT_PROGBITS
+ Flags: [ SHF_ALLOC ]
+ - Name: .rela.text
+ Type: SHT_RELA
+ Link: .symtab
+ Info: .text
+ Relocations:
+ - Offset: 0x0000000000000000
+ Symbol: ''
+ Type: R_X86_64_NONE
+ - Offset: 0x0000000000000000
+ Symbol: ''
+ Type: R_X86_64_NONE
+
+# RUN: not ld.lld %p/Inputs/invalid-relocation-x64.elf -o %t2 2>&1 | FileCheck %s
+# CHECK: unknown relocation type: Unknown (152)
+# CHECK: unknown relocation type: Unknown (153)
More information about the llvm-commits
mailing list