2018-04-04 Richard Biener <rguenther@suse.de>
[official-gcc.git] / gcc / config / netbsd-stdint.h
bloba8e99af7105f0849e3bd5a81411ecdc79bf6cdc2
1 /* Definitions for <stdint.h> types for NetBSD systems.
2 Copyright (C) 2016-2018 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)
9 any later version.
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
45 #ifdef CHAR_FAST8
46 #define INT_FAST8_TYPE (LONG_TYPE_SIZE == 64 ? "int" : "signed char")
47 #else
48 #define INT_FAST8_TYPE INT32_TYPE
49 #endif
50 #ifdef SHORT_FAST16
51 #define INT_FAST16_TYPE (LONG_TYPE_SIZE == 64 ? "int" : "short int")
52 #else
53 #define INT_FAST16_TYPE INT32_TYPE
54 #endif
55 #define INT_FAST32_TYPE INT32_TYPE
56 #define INT_FAST64_TYPE INT64_TYPE
57 #ifdef CHAR_FAST8
58 #define UINT_FAST8_TYPE "unsigned char"
59 #else
60 #define UINT_FAST8_TYPE UINT32_TYPE
61 #endif
62 #ifdef SHORT_FAST16
63 #define UINT_FAST16_TYPE "short unsigned int"
64 #else
65 #define UINT_FAST16_TYPE UINT32_TYPE
66 #endif
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)