diff options
author | Chris Lattner <sabre@nondot.org> | 2002-09-13 21:51:25 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2002-09-13 21:51:25 +0000 |
commit | 9ada838909e3577e044b05835bc69e092fb799d4 (patch) | |
tree | 3a52d2e1148ba03e6633ef9e067502a20112dc62 /include/Support/DataTypes.h | |
parent | ab060db476292e101764819f980e87dca8590f3e (diff) |
Try to work well on multiple platforms.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3704 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/Support/DataTypes.h')
-rw-r--r-- | include/Support/DataTypes.h | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/include/Support/DataTypes.h b/include/Support/DataTypes.h index b1b88790ac..66967619fc 100644 --- a/include/Support/DataTypes.h +++ b/include/Support/DataTypes.h @@ -7,6 +7,7 @@ // LITTLE_ENDIAN: is #define'd if the host is little endian // int64_t : is a typedef for the signed 64 bit system type // uint64_t : is a typedef for the unsigned 64 bit system type +// INT64_MAX : is a #define specifying the max value for int64_t's // // No library is required when using these functinons. // @@ -15,22 +16,29 @@ // TODO: This file sucks. Not only does it not work, but this stuff should be // autoconfiscated anyways. Major FIXME - #ifndef LLVM_SUPPORT_DATATYPES_H #define LLVM_SUPPORT_DATATYPES_H +#define __STDC_LIMIT_MACROS 1 #include <inttypes.h> #ifdef __linux__ -#define __STDC_LIMIT_MACROS 1 -#include <stdint.h> // Defined by ISO C 99 #include <endian.h> +#endif -#else +#ifdef __sparc__ #include <sys/types.h> #ifdef _LITTLE_ENDIAN #define LITTLE_ENDIAN 1 +#else +#define BIG_ENDIAN 1 #endif #endif +#ifndef LITTLE_ENDIAN +#if !defined(BIG_ENDIAN) || !defined(INT64_MAX) +#error "include/Support/DataTypes.h could not determine endianness!" #endif +#endif + +#endif /* LLVM_SUPPORT_DATATYPES_H */ |