From 86bdc54d02701184455688fd5196ec1dcd3d81fa Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Sat, 14 Sep 2002 19:52:49 +0000 Subject: [PATCH] Fix to work correctly under linux git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3720 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/Support/DataTypes.h | 27 ++++++++++++++++++--------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/include/Support/DataTypes.h b/include/Support/DataTypes.h index 473b5b9f38c..3d377bebe69 100644 --- a/include/Support/DataTypes.h +++ b/include/Support/DataTypes.h @@ -23,20 +23,29 @@ #include #ifdef __linux__ -# include +# include +# if BYTE_ORDER == LITTLE_ENDIAN +# undef BIG_ENDIAN +# else +# undef LITTLE_ENDIAN +# endif #else -#if (BSD >= 199103) -# include -#endif +# if (BSD >= 199103) +# include +# endif #endif #ifdef __sparc__ -#include -#ifdef _LITTLE_ENDIAN -#define LITTLE_ENDIAN 1 -#else -#define BIG_ENDIAN 1 +# include +# ifdef _LITTLE_ENDIAN +# define LITTLE_ENDIAN 1 +# else +# define BIG_ENDIAN 1 +# endif #endif + +#if (defined(LITTLE_ENDIAN) && defined(BIG_ENDIAN)) +#error "Cannot define both LITTLE_ENDIAN and BIG_ENDIAN!" #endif #if (!defined(LITTLE_ENDIAN) && !defined(BIG_ENDIAN)) || !defined(INT64_MAX)