summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorNico Rieck <nico.rieck@gmail.com>2014-02-26 19:51:44 +0000
committerNico Rieck <nico.rieck@gmail.com>2014-02-26 19:51:44 +0000
commit0a91f4830848ca16bf4b0569e45e23d7e8043368 (patch)
tree073d19ffcc7009dfd364d970f910395909cf646f /test
parent5732fbd6e4cd5d6e20f3bbded6549fa5c592562a (diff)
downloadllvm-0a91f4830848ca16bf4b0569e45e23d7e8043368.tar.gz
llvm-0a91f4830848ca16bf4b0569e45e23d7e8043368.tar.bz2
llvm-0a91f4830848ca16bf4b0569e45e23d7e8043368.tar.xz
Relax COFF string table check
COFF object files with 0 as string table size are currently rejected. This prevents us from reading object files written by tools like cvtres that violate the PECOFF spec and write 0 instead of 4 for the size of an empty string table. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@202292 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r--test/tools/llvm-readobj/Inputs/zero-string-table.obj.coff-i386bin0 -> 704 bytes
-rw-r--r--test/tools/llvm-readobj/coff-zero-string-table.test8
2 files changed, 8 insertions, 0 deletions
diff --git a/test/tools/llvm-readobj/Inputs/zero-string-table.obj.coff-i386 b/test/tools/llvm-readobj/Inputs/zero-string-table.obj.coff-i386
new file mode 100644
index 0000000000..f41f224f60
--- /dev/null
+++ b/test/tools/llvm-readobj/Inputs/zero-string-table.obj.coff-i386
Binary files differ
diff --git a/test/tools/llvm-readobj/coff-zero-string-table.test b/test/tools/llvm-readobj/coff-zero-string-table.test
new file mode 100644
index 0000000000..dfcf79e247
--- /dev/null
+++ b/test/tools/llvm-readobj/coff-zero-string-table.test
@@ -0,0 +1,8 @@
+Ensure that we can read COFF objects with a string table size of 0 (instead
+of 4) for empty string tables.
+
+RUN: llvm-readobj -t %p/Inputs/zero-string-table.obj.coff-i386 | FileCheck %s
+
+CHECK: Symbols [
+CHECK: Symbol {
+CHECK: Name: $R000000