X-Git-Url: http://plrg.eecs.uci.edu/git/?a=blobdiff_plain;ds=sidebyside;f=lib%2FObject%2FSymbolicFile.cpp;h=bf79dfb8da62efd43574604b1dc21dd50d9c6967;hb=e410c02857a0d27c0877ee2ab36d7b9d3f7ed0e6;hp=ffd3dbcdb0def0cebf5b3a1f53545ecc85574d0e;hpb=b9f39bcc8268e98f39a81a618202569fde448e99;p=oota-llvm.git diff --git a/lib/Object/SymbolicFile.cpp b/lib/Object/SymbolicFile.cpp index ffd3dbcdb0d..bf79dfb8da6 100644 --- a/lib/Object/SymbolicFile.cpp +++ b/lib/Object/SymbolicFile.cpp @@ -11,6 +11,8 @@ // //===----------------------------------------------------------------------===// +#include "llvm/Object/COFF.h" +#include "llvm/Object/COFFImportFile.h" #include "llvm/Object/IRObjectFile.h" #include "llvm/Object/ObjectFile.h" #include "llvm/Object/SymbolicFile.h" @@ -33,7 +35,7 @@ ErrorOr> SymbolicFile::createSymbolicFile( switch (Type) { case sys::fs::file_magic::bitcode: if (Context) - return IRObjectFile::createIRObjectFile(Object, *Context); + return IRObjectFile::create(Object, *Context); // Fallthrough case sys::fs::file_magic::unknown: case sys::fs::file_magic::archive: @@ -53,9 +55,11 @@ ErrorOr> SymbolicFile::createSymbolicFile( case sys::fs::file_magic::macho_bundle: case sys::fs::file_magic::macho_dynamically_linked_shared_lib_stub: case sys::fs::file_magic::macho_dsym_companion: - case sys::fs::file_magic::coff_import_library: + case sys::fs::file_magic::macho_kext_bundle: case sys::fs::file_magic::pecoff_executable: return ObjectFile::createObjectFile(Object, Type); + case sys::fs::file_magic::coff_import_library: + return std::unique_ptr(new COFFImportFile(Object)); case sys::fs::file_magic::elf_relocatable: case sys::fs::file_magic::macho_object: case sys::fs::file_magic::coff_object: { @@ -69,7 +73,7 @@ ErrorOr> SymbolicFile::createSymbolicFile( if (!BCData) return std::move(Obj); - return IRObjectFile::createIRObjectFile( + return IRObjectFile::create( MemoryBufferRef(BCData->getBuffer(), Object.getBufferIdentifier()), *Context); }