diff --git a/lib/System/Path.cpp b/lib/System/Path.cpp index 88479fe5083..c5a4b0676ff 100644 --- a/lib/System/Path.cpp +++ b/lib/System/Path.cpp @@ -194,7 +194,10 @@ Path::isBitcodeFile() const { std::string actualMagic; if (!getMagicNumber(actualMagic, 4)) return false; - return actualMagic == "BC\xC0\xDE"; + LLVMFileType FT = + IdentifyFileType(actualMagic.c_str(), + static_cast(actualMagic.length())); + return FT == Bitcode_FileType; } bool Path::hasMagicNumber(const std::string &Magic) const {