diff --git a/include/llvm/Target/TargetData.h b/include/llvm/Target/TargetData.h index fd52ef380ab..fcc57a1b2a2 100644 --- a/include/llvm/Target/TargetData.h +++ b/include/llvm/Target/TargetData.h @@ -23,7 +23,6 @@ #include "llvm/Pass.h" #include "llvm/Support/DataTypes.h" #include "llvm/ADT/SmallVector.h" -#include "llvm/Config/config.h" #include namespace llvm { @@ -143,14 +142,8 @@ public: bool isLittleEndian() const { return LittleEndian; } bool isBigEndian() const { return !LittleEndian; } - /// Host endianness... - bool hostIsLittleEndian() const { -#ifdef LSB_FIRST - return true; -#else - return false; -#endif - } + /// Host endianness. + bool hostIsLittleEndian() const; bool hostIsBigEndian() const { return !hostIsLittleEndian(); } /// getStringRepresentation - Return the string representation of the diff --git a/lib/Target/TargetData.cpp b/lib/Target/TargetData.cpp index 8c466543fac..49298054735 100644 --- a/lib/Target/TargetData.cpp +++ b/lib/Target/TargetData.cpp @@ -25,6 +25,7 @@ #include "llvm/Support/ManagedStatic.h" #include "llvm/ADT/DenseMap.h" #include "llvm/ADT/StringExtras.h" +#include "llvm/Config/config.h" #include #include #include @@ -132,6 +133,14 @@ const TargetAlignElem TargetData::InvalidAlignmentElem = // TargetData Class Implementation //===----------------------------------------------------------------------===// +bool TargetData::hostIsLittleEndian() const { +#ifdef LSB_FIRST + return true; +#else + return false; +#endif +} + /*! A TargetDescription string consists of a sequence of hyphen-delimited specifiers for target endianness, pointer size and alignments, and various