Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[llvm-objdump] Warn if no user specified sections (-j) are not found.
Match GNU objdump. https://bugs.llvm.org/show_bug.cgi?id=41898 Reviewers: jhenderson, grimar, MaskRay, rupprecht Reviewed by: jhenderson, grimar, MaskRay Differential Revision: https://reviews.llvm.org/D63779 llvm-svn: 364955
- Loading branch information
Yuanfang Chen
committed
Jul 2, 2019
1 parent
eee944e
commit d16c162
Showing
2 changed files
with
99 additions
and
3 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,73 @@ | ||
## This test checks the warning message when no user specified sections are | ||
## found in the object file. | ||
|
||
## Test relocatable file. | ||
# RUN: yaml2obj --docnum=1 %s -o %t.1.o | ||
# RUN: yaml2obj --docnum=2 %s -o %t.2.o | ||
|
||
## - Warn for one section is found case. | ||
# RUN: llvm-objdump --reloc --section=single %t.2.o 2>&1 \ | ||
# RUN: | FileCheck --check-prefix=SINGLE-WARN %s | ||
|
||
## - Don't warn twice for duplicate missing sections. | ||
# RUN: llvm-objdump --reloc --section=single --section=single %t.2.o 2>&1 \ | ||
# RUN: | FileCheck --check-prefixes=SINGLE-WARN --implicit-check-not=warning: %s | ||
|
||
## - Don't warn if any user specified section is found. | ||
# RUN: llvm-objdump --reloc --section=.text1 --section=.text2 %t.2.o \ | ||
# RUN: | FileCheck --implicit-check-not=warning: %s | ||
|
||
## - Warn for each specified section if none of them are found. | ||
# RUN: llvm-objdump --reloc --section=multi1 --section=multi2 %t.2.o 2>&1 \ | ||
# RUN: | FileCheck --check-prefix=MULTI-WARN %s | ||
|
||
## - Don't warn if the specified section has no name. | ||
# RUN: llvm-objdump --reloc --section="" %t.2.o 2>&1 \ | ||
# RUN: | FileCheck --implicit-check-not=warning: %s | ||
|
||
## - Warning for --section is applicable for various other options. | ||
# RUN: llvm-objdump --section-headers --section=single %t.2.o 2>&1 \ | ||
# RUN: | FileCheck --check-prefix=SINGLE-WARN %s | ||
# RUN: llvm-objdump --full-contents --section=single %t.2.o 2>&1 \ | ||
# RUN: | FileCheck --check-prefix=SINGLE-WARN %s | ||
|
||
## Test archive file. | ||
# RUN: rm -f %t.a | ||
# RUN: llvm-ar rc %t.a %t.1.o %t.2.o | ||
|
||
## - Warn for one section is found case. | ||
# RUN: llvm-objdump --reloc --section=single %t.a 2>&1 \ | ||
# RUN: | FileCheck --check-prefix=SINGLE-WARN %s | ||
|
||
## - Don't warn if any user specified section is found. | ||
# RUN: llvm-objdump --reloc --section=.text1 %t.a \ | ||
# RUN: | FileCheck --implicit-check-not=warning: %s | ||
|
||
## - Warn for each specified section if none of them are found. | ||
# RUN: llvm-objdump --reloc --section=multi1 --section=multi2 %t.a 2>&1 \ | ||
# RUN: | FileCheck --check-prefix=MULTI-WARN %s | ||
|
||
|
||
# SINGLE-WARN: warning: section 'single' mentioned in a -j/--section option, but not found in any input file | ||
# MULTI-WARN: warning: section 'multi1' mentioned in a -j/--section option, but not found in any input file | ||
# MULTI-WARN-NEXT: warning: section 'multi2' mentioned in a -j/--section option, but not found in any input file | ||
|
||
--- !ELF | ||
FileHeader: | ||
Class: ELFCLASS64 | ||
Data: ELFDATA2LSB | ||
Type: ET_REL | ||
Machine: EM_X86_64 | ||
Sections: | ||
- Name: .text1 | ||
Type: SHT_PROGBITS | ||
|
||
--- !ELF | ||
FileHeader: | ||
Class: ELFCLASS64 | ||
Data: ELFDATA2LSB | ||
Type: ET_REL | ||
Machine: EM_X86_64 | ||
Sections: | ||
- Name: .text2 | ||
Type: SHT_PROGBITS |
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