1 /* Definitions for <stdint.h> types for NetBSD systems.
2 Copyright (C) 2016-2022 Free Software Foundation, Inc.
4 This file is part of GCC.
6 GCC is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 3, or (at your option)
11 GCC is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 Under Section 7 of GPL version 3, you are granted additional
17 permissions described in the GCC Runtime Library Exception, version
18 3.1, as published by the Free Software Foundation.
20 You should have received a copy of the GNU General Public License and
21 a copy of the GCC Runtime Library Exception along with this program;
22 see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
23 <http://www.gnu.org/licenses/>. */
25 #define SIG_ATOMIC_TYPE "int"
27 #define INT8_TYPE "signed char"
28 #define INT16_TYPE "short int"
29 #define INT32_TYPE "int"
30 #define INT64_TYPE (LONG_TYPE_SIZE == 64 ? "long int" : "long long int")
31 #define UINT8_TYPE "unsigned char"
32 #define UINT16_TYPE "short unsigned int"
33 #define UINT32_TYPE "unsigned int"
34 #define UINT64_TYPE (LONG_TYPE_SIZE == 64 ? "long unsigned int" : "long long unsigned int")
36 #define INT_LEAST8_TYPE INT8_TYPE
37 #define INT_LEAST16_TYPE INT16_TYPE
38 #define INT_LEAST32_TYPE INT32_TYPE
39 #define INT_LEAST64_TYPE INT64_TYPE
40 #define UINT_LEAST8_TYPE UINT8_TYPE
41 #define UINT_LEAST16_TYPE UINT16_TYPE
42 #define UINT_LEAST32_TYPE UINT32_TYPE
43 #define UINT_LEAST64_TYPE UINT64_TYPE
46 #define INT_FAST8_TYPE (LONG_TYPE_SIZE == 64 ? "int" : "signed char")
48 #define INT_FAST8_TYPE INT32_TYPE
51 #define INT_FAST16_TYPE (LONG_TYPE_SIZE == 64 ? "int" : "short int")
53 #define INT_FAST16_TYPE INT32_TYPE
55 #define INT_FAST32_TYPE INT32_TYPE
56 #define INT_FAST64_TYPE INT64_TYPE
58 #define UINT_FAST8_TYPE "unsigned char"
60 #define UINT_FAST8_TYPE UINT32_TYPE
63 #define UINT_FAST16_TYPE "short unsigned int"
65 #define UINT_FAST16_TYPE UINT32_TYPE
67 #define UINT_FAST32_TYPE UINT32_TYPE
68 #define UINT_FAST64_TYPE UINT64_TYPE
70 #define INTPTR_TYPE (LONG_TYPE_SIZE == 64 ? INT64_TYPE : INT32_TYPE)
71 #define UINTPTR_TYPE (LONG_TYPE_SIZE == 64 ? UINT64_TYPE : UINT32_TYPE)