Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[test][tools] Add missing and improve testing
Mostly this adds testing for certain aliases in more explicit ways. There are also a few tidy-ups, and additions of missing testing, where the feature was either not tested at all, or not tested explicitly and sufficiently. Reviewed by: MaskRay, rupprecht, grimar Differential Revision: https://reviews.llvm.org/D71116
- Loading branch information
Showing
16 changed files
with
534 additions
and
22 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,58 @@ | ||
## Show that llvm-nm prints the symbols of all ELF members of an archive. | ||
|
||
# RUN: yaml2obj %s --docnum=1 -o %t1.o | ||
# RUN: yaml2obj %s --docnum=2 -o %t2.o | ||
|
||
# RUN: rm -f %t.symtab | ||
# RUN: llvm-ar rc %t.symtab %t1.o %t2.o | ||
# RUN: llvm-nm %t.symtab | FileCheck %s --match-full-lines | ||
|
||
# RUN: rm -f %t.nosymtab | ||
# RUN: llvm-ar rcS %t.nosymtab %t1.o %t2.o | ||
# RUN: llvm-nm %t.nosymtab | FileCheck %s --match-full-lines | ||
|
||
# CHECK: {{.*}}1.o: | ||
# CHECK-NEXT: 00000002 D global_data_symbol | ||
# CHECK-NEXT: 00000000 T global_function_symbol | ||
# CHECK-EMPTY: | ||
# CHECK-NEXT: {{.*}}2.o: | ||
# CHECK-NEXT: 00000001 D another_data_symbol | ||
|
||
--- !ELF | ||
FileHeader: | ||
Class: ELFCLASS32 | ||
Data: ELFDATA2LSB | ||
Type: ET_REL | ||
Machine: EM_386 | ||
Sections: | ||
- Name: .text | ||
Type: SHT_PROGBITS | ||
Flags: [SHF_ALLOC, SHF_EXECINSTR] | ||
- Name: .data | ||
Type: SHT_PROGBITS | ||
Flags: [SHF_ALLOC, SHF_WRITE] | ||
Symbols: | ||
- Name: global_function_symbol | ||
Value: 0x0 | ||
Binding: STB_GLOBAL | ||
Section: .text | ||
- Name: global_data_symbol | ||
Binding: STB_GLOBAL | ||
Section: .data | ||
Value: 0x2 | ||
|
||
--- !ELF | ||
FileHeader: | ||
Class: ELFCLASS32 | ||
Data: ELFDATA2LSB | ||
Type: ET_REL | ||
Machine: EM_386 | ||
Sections: | ||
- Name: .data | ||
Type: SHT_PROGBITS | ||
Flags: [SHF_ALLOC, SHF_WRITE] | ||
Symbols: | ||
- Name: another_data_symbol | ||
Binding: STB_GLOBAL | ||
Section: .data | ||
Value: 0x1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
## Test that the --extern-only switch only shows external ELF symbols. | ||
|
||
# RUN: yaml2obj %s -o %t.o | ||
# RUN: llvm-nm %t.o --extern-only --no-sort | FileCheck %s | ||
# RUN: llvm-nm %t.o -g --no-sort | FileCheck %s | ||
|
||
## Using --no-sort ensures that the symbols appear in the symbol table order | ||
## allowing our CHECK-NOTs to work as expected. | ||
# CHECK-NOT: local | ||
# CHECK: D global_data_symbol | ||
# CHECK-NEXT: T global_function_symbol | ||
# CHECK-NEXT: U undefined | ||
# CHECK-NEXT: W weak_symbol | ||
# CHECK-NOT: local | ||
|
||
--- !ELF | ||
FileHeader: | ||
Class: ELFCLASS32 | ||
Data: ELFDATA2LSB | ||
Type: ET_REL | ||
Machine: EM_386 | ||
Sections: | ||
- Name: .text | ||
Type: SHT_PROGBITS | ||
Flags: [SHF_ALLOC, SHF_EXECINSTR] | ||
- Name: .data | ||
Type: SHT_PROGBITS | ||
Flags: [SHF_ALLOC, SHF_WRITE] | ||
Symbols: | ||
- Name: local_function_symbol | ||
Binding: STB_LOCAL | ||
Section: .text | ||
- Name: local_data_symbol | ||
Binding: STB_LOCAL | ||
Section: .data | ||
- Name: global_data_symbol | ||
Binding: STB_GLOBAL | ||
Section: .data | ||
- Name: global_function_symbol | ||
Binding: STB_GLOBAL | ||
Section: .text | ||
- Name: undefined | ||
Binding: STB_GLOBAL | ||
- Name: weak_symbol | ||
Binding: STB_WEAK | ||
Section: .data | ||
- Name: local_at_end | ||
Binding: STB_LOCAL | ||
Section: .text |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.