80 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			80 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
/*
 | 
						|
 * stdint.h - standard types
 | 
						|
 */
 | 
						|
/* $Id$ */
 | 
						|
 | 
						|
#ifndef _STDINT_H
 | 
						|
#define _STDINT_H
 | 
						|
 | 
						|
/* int8_t is always a char, on all ACK platforms. */
 | 
						|
 | 
						|
typedef signed char     int8_t;
 | 
						|
typedef unsigned char   uint8_t;
 | 
						|
#define INT8_MAX        127
 | 
						|
#define INT8_MIN        (-128)
 | 
						|
#define UINT8_MAX       255
 | 
						|
 | 
						|
/* int16_t is always a short, on all ACK platforms. */
 | 
						|
 | 
						|
typedef signed short    int16_t;
 | 
						|
typedef unsigned short  uint16_t;
 | 
						|
#define INT16_MAX       32767
 | 
						|
#define INT16_MIN       (-32768)
 | 
						|
#define UINT16_MAX      65535
 | 
						|
 | 
						|
/* int32_t is either a int or a long. */
 | 
						|
 | 
						|
#if	_EM_WSIZE == 4
 | 
						|
typedef signed int      int32_t;
 | 
						|
typedef unsigned short  uint32_t;
 | 
						|
#else
 | 
						|
typedef signed long     int32_t;
 | 
						|
typedef unsigned long   uint32_t;
 | 
						|
#endif
 | 
						|
#define INT32_MAX       2147483647
 | 
						|
#define INT32_MIN       (-2147483648)
 | 
						|
#define UINT32_MAX      4294967295
 | 
						|
 | 
						|
/* We only get int64_t if longs are 8 bytes. */
 | 
						|
 | 
						|
#if _EM_LSIZE == 8
 | 
						|
typedef signed long     int64_t;
 | 
						|
typedef unsigned long   uint64_t;
 | 
						|
#define INT64_MAX       2147483647LL
 | 
						|
#define INT64_MIN       (-2147483648LL)
 | 
						|
#define UINT64_MAX      4294967295ULL
 | 
						|
 | 
						|
typedef int64_t         intmax_t;
 | 
						|
typedef uint64_t        uintmax_t;
 | 
						|
#else
 | 
						|
typedef int32_t         intmax_t;
 | 
						|
typedef uint32_t        uintmax_t;
 | 
						|
#endif
 | 
						|
 | 
						|
/* Pointers can be either 16 or 32 bits. */
 | 
						|
 | 
						|
#if _EM_PSIZE == 2
 | 
						|
typedef int16_t         intptr_t;
 | 
						|
typedef uint16_t        uintptr_t;
 | 
						|
typedef int16_t         ptrdiff_t;
 | 
						|
typedef uint16_t        size_t;
 | 
						|
#define INTPTR_MAX      32767
 | 
						|
#define INTPTR_MIN      (-32768)
 | 
						|
#define UINTPTR_MAX     65535
 | 
						|
#else
 | 
						|
typedef int32_t         intptr_t;
 | 
						|
typedef uint32_t        uintptr_t;
 | 
						|
typedef int32_t         ptrdiff_t;
 | 
						|
typedef uint32_t        size_t;
 | 
						|
#define INTPTR_MAX      2147483647
 | 
						|
#define INTPTR_MIN      (-2147483647)
 | 
						|
#define UINTPTR_MAX     4294967295
 | 
						|
#endif
 | 
						|
 | 
						|
/* Now those have been defined, these are always the same. */
 | 
						|
 | 
						|
#define PTRDIFF_MAX     INTPTR_MAX
 | 
						|
#define PTRDIFF_MIN     INTPTR_MIN
 | 
						|
#define SIZE_MAX        UINTPTR_MAX
 | 
						|
 | 
						|
#endif
 |