diff options
author | Martin Storsjo <martin@martin.st> | 2019-01-19 19:42:48 +0000 |
---|---|---|
committer | Martin Storsjo <martin@martin.st> | 2019-01-19 19:42:48 +0000 |
commit | 1868d88b2efd705a11f44f8bef1960599a2346c1 (patch) | |
tree | 8dd5a27a1c28b0f9e27267ca0a6712392da23201 /llvm/test/tools/llvm-objcopy/COFF/only-keep-debug.test | |
parent | 78a0b418b44b0198cd5c4e134b7ae32b744d6c09 (diff) | |
download | bcm5719-llvm-1868d88b2efd705a11f44f8bef1960599a2346c1.tar.gz bcm5719-llvm-1868d88b2efd705a11f44f8bef1960599a2346c1.zip |
[llvm-objcopy] [COFF] Implement --only-keep-debug
Differential Revision: https://reviews.llvm.org/D56840
llvm-svn: 351662
Diffstat (limited to 'llvm/test/tools/llvm-objcopy/COFF/only-keep-debug.test')
-rw-r--r-- | llvm/test/tools/llvm-objcopy/COFF/only-keep-debug.test | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/llvm/test/tools/llvm-objcopy/COFF/only-keep-debug.test b/llvm/test/tools/llvm-objcopy/COFF/only-keep-debug.test new file mode 100644 index 00000000000..5518d4000fc --- /dev/null +++ b/llvm/test/tools/llvm-objcopy/COFF/only-keep-debug.test @@ -0,0 +1,58 @@ +RUN: yaml2obj %p/Inputs/only-keep-sections.yaml > %t.in.exe + +RUN: llvm-objcopy --only-keep-debug %t.in.exe %t.out.exe +RUN: llvm-readobj --sections %t.out.exe | FileCheck %s --check-prefix=SECTIONS +RUN: llvm-objdump -t %t.out.exe | FileCheck %s --check-prefix=SYMBOLS + +Check that all non-debug/buildid sections with IMAGE_SCN_CNT_CODE +or IMAGE_SCN_CNT_INITIALIZED_DATA are truncated, and no others. + +SECTIONS: Sections [ +SECTIONS-NEXT: Section { +SECTIONS-NEXT: Number: 1 +SECTIONS-NEXT: Name: .text +SECTIONS-NEXT: VirtualSize: 0x4 +SECTIONS-NEXT: VirtualAddress: +SECTIONS-NEXT: RawDataSize: 0 +SECTIONS: Section { +SECTIONS-NEXT: Number: 2 +SECTIONS-NEXT: Name: .rdata +SECTIONS-NEXT: VirtualSize: 0x4 +SECTIONS-NEXT: VirtualAddress: +SECTIONS-NEXT: RawDataSize: 0 +SECTIONS: Section { +SECTIONS-NEXT: Number: 3 +SECTIONS-NEXT: Name: .buildid +SECTIONS-NEXT: VirtualSize: 0x4 +SECTIONS-NEXT: VirtualAddress: +SECTIONS-NEXT: RawDataSize: 512 +SECTIONS: Section { +SECTIONS-NEXT: Number: 4 +SECTIONS-NEXT: Name: .reloc +SECTIONS-NEXT: VirtualSize: 0x4 +SECTIONS-NEXT: VirtualAddress: +SECTIONS-NEXT: RawDataSize: 0 +SECTIONS: Section { +SECTIONS-NEXT: Number: 5 +SECTIONS-NEXT: Name: .debug_discardable +SECTIONS-NEXT: VirtualSize: 0x4 +SECTIONS-NEXT: VirtualAddress: +SECTIONS-NEXT: RawDataSize: 512 +SECTIONS: Section { +SECTIONS-NEXT: Number: 6 +SECTIONS-NEXT: Name: .debug_undiscardable +SECTIONS-NEXT: VirtualSize: 0x4 +SECTIONS-NEXT: VirtualAddress: +SECTIONS-NEXT: RawDataSize: 512 +SECTIONS: Section { +SECTIONS-NEXT: Number: 7 +SECTIONS-NEXT: Name: .unflagged +SECTIONS-NEXT: VirtualSize: 0x4 +SECTIONS-NEXT: VirtualAddress: +SECTIONS-NEXT: RawDataSize: 512 + +SYMBOLS: SYMBOL TABLE: +SYMBOLS-NEXT: main +SYMBOLS-NEXT: debug_discardable_sym +SYMBOLS-NEXT: debug_undiscardable_sym +SYMBOLS-EMPTY: |