limits.h revision 4fd606d1f5abe38e1f42c38de1d2e895166bd0f4
2N/A#include <x86/limits.h>
2N/A
2N/A#define __POINTER_BIT 64
2N/A
2N/A#if defined(__GNUC__)
2N/A#if __GNUC_PREREQ__(4,4)
2N/A #define __LONG_BIT 64
2N/A
2N/A /** minimum value for an object of type long int **/
2N/A #define __LONG_MIN (-9223372036854775807LL - 1LL) // -(2^63 - 2)
2N/A
2N/A /** maximum value for an object of type long int **/
2N/A #define __LONG_MAX (9223372036854775807LL) // 2^63 - 1
2N/A
2N/A /** maximum value for an object of type unsigned long int **/
2N/A #define __ULONG_MAX 0xFFFFFFFFFFFFFFFFULL // 2^64 - 1
2N/A#else
2N/A #define __LONG_BIT 32
2N/A /** minimum value for an object of type long int **/
2N/A #define __LONG_MIN (-2147483647L - 1L) // -(2^31 - 1)
2N/A
2N/A /** maximum value for an object of type long int **/
2N/A #define __LONG_MAX 2147483647L // 2^31 - 1
2N/A
2N/A /** maximum value for an object of type unsigned long int **/
2N/A #define __ULONG_MAX 0xffffffff // 2^32 - 1
2N/A#endif
2N/A
2N/A
2N/A#else /* NOT defined(__GNUC__) */
2N/A#define __LONG_BIT 32
2N/A/** minimum value for an object of type long int **/
2N/A#define __LONG_MIN (-2147483647L - 1L) // -(2^31 - 1)
2N/A
2N/A/** maximum value for an object of type long int **/
2N/A#define __LONG_MAX 2147483647L // 2^31 - 1
2N/A
2N/A/** maximum value for an object of type unsigned long int **/
2N/A#define __ULONG_MAX 0xffffffff // 2^32 - 1
2N/A#endif
2N/A