diff options
| author | Martin Storsjo <martin@martin.st> | 2019-01-11 13:47:37 +0000 |
|---|---|---|
| committer | Martin Storsjo <martin@martin.st> | 2019-01-11 13:47:37 +0000 |
| commit | d1cc64fe12dc37147723e0615fd4b140197210b0 (patch) | |
| tree | 248233f1b913127af3fa24cac4dc07e858da7e9d /llvm/test | |
| parent | 37c1e2e7a9d00b90eb48c754b2b138b1670313bc (diff) | |
| download | bcm5719-llvm-d1cc64fe12dc37147723e0615fd4b140197210b0.tar.gz bcm5719-llvm-d1cc64fe12dc37147723e0615fd4b140197210b0.zip | |
[llvm-objcopy] [COFF] Fix writing object files without symbols/string table
Previously, this was broken - by setting PointerToSymbolTable to zero
but still actually writing the string table length, the object file
header was corrupted.
Differential Revision: https://reviews.llvm.org/D56584
llvm-svn: 350926
Diffstat (limited to 'llvm/test')
| -rw-r--r-- | llvm/test/tools/llvm-objcopy/COFF/Inputs/no-symbols.yaml | 11 | ||||
| -rw-r--r-- | llvm/test/tools/llvm-objcopy/COFF/basic-copy.test | 6 |
2 files changed, 17 insertions, 0 deletions
diff --git a/llvm/test/tools/llvm-objcopy/COFF/Inputs/no-symbols.yaml b/llvm/test/tools/llvm-objcopy/COFF/Inputs/no-symbols.yaml new file mode 100644 index 00000000000..db8aeb63d5e --- /dev/null +++ b/llvm/test/tools/llvm-objcopy/COFF/Inputs/no-symbols.yaml @@ -0,0 +1,11 @@ +--- !COFF +header: + Machine: IMAGE_FILE_MACHINE_AMD64 + Characteristics: [ ] +sections: + - Name: .text + Characteristics: [ ] + Alignment: 4 + SectionData: E800000000C3C3C3 +symbols: +... diff --git a/llvm/test/tools/llvm-objcopy/COFF/basic-copy.test b/llvm/test/tools/llvm-objcopy/COFF/basic-copy.test index ddd12dcaf2f..ecdf430faf1 100644 --- a/llvm/test/tools/llvm-objcopy/COFF/basic-copy.test +++ b/llvm/test/tools/llvm-objcopy/COFF/basic-copy.test @@ -40,3 +40,9 @@ RUN: llvm-objcopy %t.x86_64.exe %t.x86_64-copy.exe RUN: obj2yaml %t.x86_64.exe > %t.x86_64.exe.yaml RUN: obj2yaml %t.x86_64-copy.exe > %t.x86_64-copy.exe.yaml RUN: cmp %t.x86_64.exe.yaml %t.x86_64-copy.exe.yaml + +RUN: yaml2obj %p/Inputs/no-symbols.yaml > %t.no-symbols.o +RUN: llvm-objcopy %t.no-symbols.o %t.no-symbols-copy.o +RUN: obj2yaml %t.no-symbols.o > %t.no-symbols.o.yaml +RUN: obj2yaml %t.no-symbols-copy.o > %t.no-symbols-copy.o.yaml +RUN: cmp %t.no-symbols.o.yaml %t.no-symbols-copy.o.yaml |

