diff options
Diffstat (limited to 'llvm/lib')
-rw-r--r-- | llvm/lib/BinaryFormat/Magic.cpp | 5 | ||||
-rw-r--r-- | llvm/lib/Object/Binary.cpp | 3 | ||||
-rw-r--r-- | llvm/lib/Object/ObjectFile.cpp | 2 | ||||
-rw-r--r-- | llvm/lib/Object/SymbolicFile.cpp | 1 |
4 files changed, 11 insertions, 0 deletions
diff --git a/llvm/lib/BinaryFormat/Magic.cpp b/llvm/lib/BinaryFormat/Magic.cpp index 7dfe23690a5..bbcbbabeded 100644 --- a/llvm/lib/BinaryFormat/Magic.cpp +++ b/llvm/lib/BinaryFormat/Magic.cpp @@ -210,6 +210,11 @@ file_magic llvm::identify_magic(StringRef Magic) { return file_magic::coff_object; break; + case 0x2d: // YAML '-' + if (startswith(Magic, "--- !tapi") || startswith(Magic, "---\narchs:")) + return file_magic::tapi_file; + break; + default: break; } diff --git a/llvm/lib/Object/Binary.cpp b/llvm/lib/Object/Binary.cpp index a953c1d8cb8..1ceda54a4b4 100644 --- a/llvm/lib/Object/Binary.cpp +++ b/llvm/lib/Object/Binary.cpp @@ -86,6 +86,9 @@ Expected<std::unique_ptr<Binary>> object::createBinary(MemoryBufferRef Buffer, return errorCodeToError(object_error::invalid_file_type); case file_magic::minidump: return MinidumpFile::create(Buffer); + case file_magic::tapi_file: + // Placeholder until TAPI is supported for lib/Object + return errorCodeToError(object_error::invalid_file_type); } llvm_unreachable("Unexpected Binary File Type"); } diff --git a/llvm/lib/Object/ObjectFile.cpp b/llvm/lib/Object/ObjectFile.cpp index 101f5dcc082..79812e3a10b 100644 --- a/llvm/lib/Object/ObjectFile.cpp +++ b/llvm/lib/Object/ObjectFile.cpp @@ -127,6 +127,8 @@ ObjectFile::createObjectFile(MemoryBufferRef Object, file_magic Type) { case file_magic::pdb: case file_magic::minidump: return errorCodeToError(object_error::invalid_file_type); + case file_magic::tapi_file: + return errorCodeToError(object_error::invalid_file_type); case file_magic::elf: case file_magic::elf_relocatable: case file_magic::elf_executable: diff --git a/llvm/lib/Object/SymbolicFile.cpp b/llvm/lib/Object/SymbolicFile.cpp index 2b152b7d8da..3db4ad9ed14 100644 --- a/llvm/lib/Object/SymbolicFile.cpp +++ b/llvm/lib/Object/SymbolicFile.cpp @@ -53,6 +53,7 @@ SymbolicFile::createSymbolicFile(MemoryBufferRef Object, file_magic Type, case file_magic::windows_resource: case file_magic::pdb: case file_magic::minidump: + case file_magic::tapi_file: return errorCodeToError(object_error::invalid_file_type); case file_magic::elf: case file_magic::elf_executable: |