1 /* Definitions for <stdint.h> types for NetBSD systems. 2 Copyright (C) 2016-2020 Free Software Foundation, Inc. 3 4 This file is part of GCC. 5 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. 10 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. 15 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. 19 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/>. */ 24 25 #define SIG_ATOMIC_TYPE "int" 26 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") 35 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 44 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 69 70 #define INTPTR_TYPE (LONG_TYPE_SIZE == 64 ? INT64_TYPE : INT32_TYPE) 71 #define UINTPTR_TYPE (LONG_TYPE_SIZE == 64 ? UINT64_TYPE : UINT32_TYPE) 72