/*
 * Copyright (c) 2018-2023, Arm Limited and Contributors. All rights reserved.
 *
 * SPDX-License-Identifier: BSD-3-Clause
 */

#define SCHAR_MAX  0x7F
#define SCHAR_MIN  (-SCHAR_MAX - 1)
#define CHAR_MAX   0x7F
#define CHAR_MIN   (-CHAR_MAX - 1)
#define UCHAR_MAX  0xFFU
#define SHRT_MAX   0x7FFF
#define SHRT_MIN   (-SHRT_MAX - 1)
#define USHRT_MAX  0xFFFFU
#define INT_MAX    0x7FFFFFFF
#define INT_MIN    (-INT_MAX - 1)
#define UINT_MAX   0xFFFFFFFFU
#define LONG_MAX   0x7FFFFFFFFFFFFFFFL
#define LONG_MIN   (-LONG_MAX - 1L)
#define ULONG_MAX  0xFFFFFFFFFFFFFFFFUL
#define LLONG_MAX  0x7FFFFFFFFFFFFFFFLL
#define LLONG_MIN  (-LLONG_MAX - 1LL)
#define ULLONG_MAX 0xFFFFFFFFFFFFFFFFULL

#define __LONG_BIT 64
#define __WORD_BIT 32
