mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-25 16:58:10 +02:00
46 lines
1.1 KiB
C
46 lines
1.1 KiB
C
|
|
/*
|
||
|
|
* Copyright 2024 Valve Corporation
|
||
|
|
* Copyright 2023 Alyssa Rosenzweig
|
||
|
|
* SPDX-License-Identifier: MIT
|
||
|
|
*/
|
||
|
|
|
||
|
|
#pragma once
|
||
|
|
|
||
|
|
#ifndef __OPENCL_VERSION__
|
||
|
|
#error "should only be included from OpenCL"
|
||
|
|
#endif
|
||
|
|
|
||
|
|
/* OpenCL lacks explicitly sized integer types, but we know the sizes of
|
||
|
|
* particular integer types. These typedefs allow defining common headers with
|
||
|
|
* explicit integer types (and therefore compatible data layouts).
|
||
|
|
*/
|
||
|
|
typedef ulong uint64_t;
|
||
|
|
typedef uint uint32_t;
|
||
|
|
typedef ushort uint16_t;
|
||
|
|
typedef uchar uint8_t;
|
||
|
|
|
||
|
|
typedef long int64_t;
|
||
|
|
typedef int int32_t;
|
||
|
|
typedef short int16_t;
|
||
|
|
typedef char int8_t;
|
||
|
|
|
||
|
|
typedef int64_t intmax_t;
|
||
|
|
typedef uint64_t uintmax_t;
|
||
|
|
|
||
|
|
/* These duplicate the C standard library and are required for the
|
||
|
|
* u_intN_min/max implementations.
|
||
|
|
*/
|
||
|
|
#define UINT64_MAX 18446744073709551615ul
|
||
|
|
#define INT64_MAX 9223372036854775807l
|
||
|
|
#define UINT64_C(c) c##UL
|
||
|
|
|
||
|
|
#define INT8_MIN (-128)
|
||
|
|
#define INT16_MIN (-32768)
|
||
|
|
#define INT32_MIN (-2147483648)
|
||
|
|
#define INT64_MIN (-9223372036854775807l - 1)
|
||
|
|
|
||
|
|
#define INT8_MAX 127
|
||
|
|
#define INT16_MAX 32767
|
||
|
|
#define INT32_MAX 2147483647
|
||
|
|
#define INT64_MAX 9223372036854775807l
|