From 829c4392e18260a07e3692cf57e42a768ff5612c Mon Sep 17 00:00:00 2001 From: Rui Ueyama Date: Thu, 14 Nov 2013 22:09:08 +0000 Subject: Recognize 0x0000 as a COFF file magic. Summary: Some machine-type-neutral object files containing only undefined symbols actually do exist in the Windows standard library. Need to recognize them as COFF files. Reviewers: Bigcheese CC: llvm-commits Differential Revision: http://llvm-reviews.chandlerc.com/D2164 llvm-svn: 194734 --- llvm/lib/Support/Path.cpp | 3 +++ 1 file changed, 3 insertions(+) (limited to 'llvm/lib') diff --git a/llvm/lib/Support/Path.cpp b/llvm/lib/Support/Path.cpp index 7fc9ab89672..dfa18aaa6d2 100644 --- a/llvm/lib/Support/Path.cpp +++ b/llvm/lib/Support/Path.cpp @@ -853,6 +853,9 @@ error_code has_magic(const Twine &path, const Twine &magic, bool &result) { if (Magic.size() >= sizeof(Expected) && memcmp(Magic.data(), Expected, sizeof(Expected)) == 0) return file_magic::windows_resource; + // 0x0000 = COFF unknown machine type + if (Magic[1] == 0) + return file_magic::coff_object; break; } case 0xDE: // 0x0B17C0DE = BC wraper -- cgit v1.2.3