From af7780e0b3f27a574b007be6ac7a273d14f6b76a Mon Sep 17 00:00:00 2001 From: Michael Sevakis Date: Tue, 10 Apr 2007 09:43:06 +0000 Subject: More complete sized integer definitions. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13092 a1c6a512-1295-4272-9138-f99709370657 --- firmware/include/inttypes.h | 84 +++++++++++++++++++++++++++++++++++---------- 1 file changed, 66 insertions(+), 18 deletions(-) diff --git a/firmware/include/inttypes.h b/firmware/include/inttypes.h index e23e1da960..3737490a81 100644 --- a/firmware/include/inttypes.h +++ b/firmware/include/inttypes.h @@ -17,41 +17,89 @@ * ****************************************************************************/ -#ifndef __INTTYPES_H__ -#define __INTTYPES_H__ +#ifndef __INTTYPES_H__ +#define __INTTYPES_H__ #include /* 8 bit */ -#define int8_t signed char -#define uint8_t unsigned char +#define INT8_MIN SCHAR_MIN +#define INT8_MAX SCHAR_MAX +#define UINT8_MAX UCHAR_MAX +#define int8_t signed char +#define uint8_t unsigned char /* 16 bit */ #if USHRT_MAX == 0xffff -#define int16_t short -#define uint16_t unsigned short + +#define INT16_MIN SHRT_MIN +#define INT16_MAX SHRT_MAX +#define UINT16_MAX USHRT_MAX +#define int16_t short +#define uint16_t unsigned short + #endif /* 32 bit */ #if ULONG_MAX == 0xfffffffful -#define int32_t long -#define uint32_t unsigned long -#define intptr_t long -#define uintptr_t unsigned long + +#define INT32_MIN LONG_MIN +#define INT32_MAX LONG_MAX +#define UINT32_MAX ULONG_MAX +#define int32_t long +#define uint32_t unsigned long + +#define INTPTR_MIN LONG_MIN +#define INTPTR_MAX LONG_MAX +#define UINTPTR_MAX ULONG_MAX +#define intptr_t long +#define uintptr_t unsigned long + #elif UINT_MAX == 0xffffffffu -#define int32_t int -#define uint32_t unsigned int + +#define INT32_MIN INT_MIN +#define INT32_MAX INT_MAX +#define UINT32_MAX UINT_MAX +#define int32_t int +#define uint32_t unsigned int + #endif /* 64 bit */ +#ifndef LLONG_MIN +#define LLONG_MIN ((long long)9223372036854775808ull) +#endif + +#ifndef LLONG_MAX +#define LLONG_MAX 9223372036854775807ll +#endif + +#ifndef ULLONG_MAX +#define ULLONG_MAX 18446744073709551615ull +#endif + #if ULONG_MAX == 0xffffffffffffffffull -#define int64_t long -#define uint64_t unsigned long -#define intptr_t long -#define uintptr_t unsigned long + +#define INT64_MIN LONG_MIN +#define INT64_MAX LONG_MAX +#define UINT64_MAX ULONG_MAX +#define int64_t long +#define uint64_t unsigned long + +#define INTPTR_MIN LONG_MIN +#define INTPTR_MAX LONG_MAX +#define UINTPTR_MAX ULONG_MAX +#define intptr_t long +#define uintptr_t unsigned long + #else -#define int64_t long long -#define uint64_t unsigned long long + +#define INT64_MIN LLONG_MIN +#define INT64_MAX LLONG_MAX +#define UINT64_MAX ULLONG_MAX +#define int64_t long long +#define uint64_t unsigned long long + #endif #endif /* __INTTYPES_H__ */ -- cgit v1.2.3