47 lines
1.2 KiB
C
47 lines
1.2 KiB
C
#ifndef BHLIB_PLATFORM_H
|
|
#define BHLIB_PLATFORM_H
|
|
|
|
#include <stddef.h>
|
|
|
|
/* Common type definitions */
|
|
typedef signed char bh_int8_t;
|
|
typedef unsigned char bh_uint8_t;
|
|
typedef signed short bh_int16_t;
|
|
typedef unsigned short bh_uint16_t;
|
|
typedef float bh_float32_t;
|
|
typedef double bh_float64_t;
|
|
|
|
/* Platform specific type definition */
|
|
#if __STDC_VERSION__ >= 199901L || defined(__GNUC__)
|
|
#include <stdint.h>
|
|
|
|
typedef int32_t bh_int32_t;
|
|
typedef uint32_t bh_uint32_t;
|
|
typedef int64_t bh_int64_t;
|
|
typedef uint64_t bh_uint64_t;
|
|
typedef intptr_t bh_intptr_t;
|
|
typedef uintptr_t bh_uintptr_t;
|
|
|
|
#elif defined(_WIN32)
|
|
typedef __int32 bh_int32_t;
|
|
typedef unsigned __int32 bh_uint32_t;
|
|
typedef __int64 bh_int64_t;
|
|
typedef unsigned __int64 bh_uint64_t;
|
|
|
|
#if defined(_WIN64)
|
|
typedef __int64 bh_intptr_t;
|
|
typedef unsigned __int64 bh_uintptr_t;
|
|
#else
|
|
typedef __int32 bh_intptr_t;
|
|
typedef unsigned __int32 bh_uintptr_t;
|
|
#endif
|
|
|
|
#else
|
|
|
|
#error "Unsupported platform"
|
|
#endif
|
|
|
|
typedef bh_int64_t bh_off_t;
|
|
|
|
#endif /* BHLIB_PLATFORM_H */
|