diff options
Diffstat (limited to 'newlib/libc/sys/linux/include/stdint.h')
-rw-r--r-- | newlib/libc/sys/linux/include/stdint.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/newlib/libc/sys/linux/include/stdint.h b/newlib/libc/sys/linux/include/stdint.h index d1197f66c..682af1f7a 100644 --- a/newlib/libc/sys/linux/include/stdint.h +++ b/newlib/libc/sys/linux/include/stdint.h @@ -15,6 +15,7 @@ #define _STDINT_H #include <sys/types.h> +#include <bits/wordsize.h> #ifdef __cplusplus extern "C" { @@ -87,6 +88,34 @@ typedef uint32_t uint_least16_t; #endif #endif +/* Fast types. */ + +/* Signed. */ +typedef signed char int_fast8_t; +#if __WORDSIZE == 64 +typedef long int int_fast16_t; +typedef long int int_fast32_t; +typedef long int int_fast64_t; +#else +typedef int int_fast16_t; +typedef int int_fast32_t; +__extension__ +typedef long long int int_fast64_t; +#endif + +/* Unsigned. */ +typedef unsigned char uint_fast8_t; +#if __WORDSIZE == 64 +typedef unsigned long int uint_fast16_t; +typedef unsigned long int uint_fast32_t; +typedef unsigned long int uint_fast64_t; +#else +typedef unsigned int uint_fast16_t; +typedef unsigned int uint_fast32_t; +__extension__ +typedef unsigned long long int uint_fast64_t; +#endif + #if __STDINT_EXP(LONG_MAX) > 0x7fffffff #define __int64_t_defined 1 #define __have_long64 1 |