| #pragma once |
| |
| #include <arch/types.h> |
| |
| /* Limits of integral types. */ |
| |
| /* Minimum of signed integral types. */ |
| # define INT8_MIN (-128) |
| # define INT16_MIN (-32767-1) |
| # define INT32_MIN (-2147483647-1) |
| # define INT64_MIN (-__INT64_C(9223372036854775807)-1) |
| /* Maximum of signed integral types. */ |
| # define INT8_MAX (127) |
| # define INT16_MAX (32767) |
| # define INT32_MAX (2147483647) |
| # define INT64_MAX (__INT64_C(9223372036854775807)) |
| |
| /* Maximum of unsigned integral types. */ |
| # define UINT8_MAX (255) |
| # define UINT16_MAX (65535) |
| # define UINT32_MAX (4294967295U) |
| # define UINT64_MAX (__UINT64_C(18446744073709551615)) |
| |
| #if NUM_ADDR_BITS == 64 |
| # define SIZE_MAX UINT64_MAX |
| # define LONG_MAX INT64_MAX |
| # define ULONG_MAX UINT64_MAX |
| #elif NUM_ADDR_BITS == 32 |
| # define SIZE_MAX UINT32_MAX |
| # define LONG_MAX INT32_MAX |
| # define ULONG_MAX UINT32_MAX |
| #else |
| # error "NUM_ADDR_BITS is not set" |
| #endif |