From dde136cf30a28af5237d5eb25d95e1ce1cdeebac Mon Sep 17 00:00:00 2001 From: NAKAMURA Takumi Date: Tue, 7 Feb 2012 10:53:19 +0000 Subject: [PATCH] Bitcode/BitstreamReader.h: Tweak for big endian hosts. llvm-svn: 149980 --- include/llvm/Bitcode/BitstreamReader.h | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/include/llvm/Bitcode/BitstreamReader.h b/include/llvm/Bitcode/BitstreamReader.h index e55910b27ae..65868294403 100644 --- a/include/llvm/Bitcode/BitstreamReader.h +++ b/include/llvm/Bitcode/BitstreamReader.h @@ -17,6 +17,7 @@ #include "llvm/ADT/OwningPtr.h" #include "llvm/Bitcode/BitCodes.h" +#include "llvm/Support/Endian.h" #include "llvm/Support/StreamableMemoryObject.h" #include #include @@ -242,12 +243,13 @@ public: } uint32_t getWord(size_t pos) { - uint32_t word = -1; + uint8_t buf[sizeof(uint32_t)]; + memset(buf, 0xFF, sizeof(buf)); BitStream->getBitcodeBytes().readBytes(pos, - sizeof(word), - reinterpret_cast(&word), + sizeof(buf), + buf, NULL); - return word; + return *reinterpret_cast(buf); } bool AtEndOfStream() {