diff options
| author | Rafael Espindola <rafael.espindola@gmail.com> | 2014-07-29 21:01:24 +0000 |
|---|---|---|
| committer | Rafael Espindola <rafael.espindola@gmail.com> | 2014-07-29 21:01:24 +0000 |
| commit | 27435250328b4c4eb0dfb80b088be76a0f98b2ea (patch) | |
| tree | 14a1538e7bb6bfd3ec4792482933b74565270c9b | |
| parent | 1eb18309d5c1c1b6e58f2366a7f6253abdddc682 (diff) | |
| download | bcm5719-llvm-27435250328b4c4eb0dfb80b088be76a0f98b2ea.tar.gz bcm5719-llvm-27435250328b4c4eb0dfb80b088be76a0f98b2ea.zip | |
Have a single enum for "not a bitcode" error.
This is more convenient for callers. No functionality change, this will
be used in a next patch to the gold plugin.
llvm-svn: 214218
| -rw-r--r-- | llvm/include/llvm/Bitcode/ReaderWriter.h | 1 | ||||
| -rw-r--r-- | llvm/lib/Bitcode/Reader/BitcodeReader.cpp | 12 |
2 files changed, 3 insertions, 10 deletions
diff --git a/llvm/include/llvm/Bitcode/ReaderWriter.h b/llvm/include/llvm/Bitcode/ReaderWriter.h index ebb30ec01f3..b32009d38e9 100644 --- a/llvm/include/llvm/Bitcode/ReaderWriter.h +++ b/llvm/include/llvm/Bitcode/ReaderWriter.h @@ -142,7 +142,6 @@ namespace llvm { const std::error_category &BitcodeErrorCategory(); enum class BitcodeError { - BitcodeStreamInvalidSize, ConflictingMETADATA_KINDRecords, CouldNotFindFunctionInStream, ExpectedConstant, diff --git a/llvm/lib/Bitcode/Reader/BitcodeReader.cpp b/llvm/lib/Bitcode/Reader/BitcodeReader.cpp index ce66a3d0c78..9dd209df124 100644 --- a/llvm/lib/Bitcode/Reader/BitcodeReader.cpp +++ b/llvm/lib/Bitcode/Reader/BitcodeReader.cpp @@ -3350,12 +3350,8 @@ std::error_code BitcodeReader::InitStreamFromBuffer() { const unsigned char *BufPtr = (const unsigned char*)Buffer->getBufferStart(); const unsigned char *BufEnd = BufPtr+Buffer->getBufferSize(); - if (Buffer->getBufferSize() & 3) { - if (!isRawBitcode(BufPtr, BufEnd) && !isBitcodeWrapper(BufPtr, BufEnd)) - return Error(BitcodeError::InvalidBitcodeSignature); - else - return Error(BitcodeError::BitcodeStreamInvalidSize); - } + if (Buffer->getBufferSize() & 3) + return Error(BitcodeError::InvalidBitcodeSignature); // If we have a wrapper header, parse it and ignore the non-bc file contents. // The magic number is 0x0B17C0DE stored in little endian. @@ -3378,7 +3374,7 @@ std::error_code BitcodeReader::InitLazyStream() { unsigned char buf[16]; if (Bytes->readBytes(0, 16, buf) == -1) - return Error(BitcodeError::BitcodeStreamInvalidSize); + return Error(BitcodeError::InvalidBitcodeSignature); if (!isBitcode(buf, buf + 16)) return Error(BitcodeError::InvalidBitcodeSignature); @@ -3401,8 +3397,6 @@ class BitcodeErrorCategoryType : public std::error_category { std::string message(int IE) const override { BitcodeError E = static_cast<BitcodeError>(IE); switch (E) { - case BitcodeError::BitcodeStreamInvalidSize: - return "Bitcode stream length should be >= 16 bytes and a multiple of 4"; case BitcodeError::ConflictingMETADATA_KINDRecords: return "Conflicting METADATA_KIND records"; case BitcodeError::CouldNotFindFunctionInStream: |

