1 /* This file is automatically generated. DO NOT EDIT! */ 2 /* Generated from: NetBSD: mknative-gcc,v 1.87 2016/03/17 23:41:21 mrg Exp */ 3 /* Generated from: NetBSD: mknative.common,v 1.11 2014/02/17 21:39:43 christos Exp */ 4 5 /* Generated automatically from machmode.def and config/m68k/m68k-modes.def 6 by genmodes. */ 7 8 #ifndef GCC_INSN_MODES_H 9 #define GCC_INSN_MODES_H 10 11 enum machine_mode 12 { 13 VOIDmode, /* machmode.def:172 */ 14 #define HAVE_VOIDmode 15 BLKmode, /* machmode.def:176 */ 16 #define HAVE_BLKmode 17 CCmode, /* machmode.def:214 */ 18 #define HAVE_CCmode 19 BImode, /* machmode.def:179 */ 20 #define HAVE_BImode 21 QImode, /* machmode.def:187 */ 22 #define HAVE_QImode 23 HImode, /* machmode.def:188 */ 24 #define HAVE_HImode 25 SImode, /* machmode.def:189 */ 26 #define HAVE_SImode 27 DImode, /* machmode.def:190 */ 28 #define HAVE_DImode 29 TImode, /* machmode.def:191 */ 30 #define HAVE_TImode 31 QQmode, /* machmode.def:217 */ 32 #define HAVE_QQmode 33 HQmode, /* machmode.def:218 */ 34 #define HAVE_HQmode 35 SQmode, /* machmode.def:219 */ 36 #define HAVE_SQmode 37 DQmode, /* machmode.def:220 */ 38 #define HAVE_DQmode 39 TQmode, /* machmode.def:221 */ 40 #define HAVE_TQmode 41 UQQmode, /* machmode.def:223 */ 42 #define HAVE_UQQmode 43 UHQmode, /* machmode.def:224 */ 44 #define HAVE_UHQmode 45 USQmode, /* machmode.def:225 */ 46 #define HAVE_USQmode 47 UDQmode, /* machmode.def:226 */ 48 #define HAVE_UDQmode 49 UTQmode, /* machmode.def:227 */ 50 #define HAVE_UTQmode 51 HAmode, /* machmode.def:229 */ 52 #define HAVE_HAmode 53 SAmode, /* machmode.def:230 */ 54 #define HAVE_SAmode 55 DAmode, /* machmode.def:231 */ 56 #define HAVE_DAmode 57 TAmode, /* machmode.def:232 */ 58 #define HAVE_TAmode 59 UHAmode, /* machmode.def:234 */ 60 #define HAVE_UHAmode 61 USAmode, /* machmode.def:235 */ 62 #define HAVE_USAmode 63 UDAmode, /* machmode.def:236 */ 64 #define HAVE_UDAmode 65 UTAmode, /* machmode.def:237 */ 66 #define HAVE_UTAmode 67 SFmode, /* machmode.def:209 */ 68 #define HAVE_SFmode 69 DFmode, /* machmode.def:210 */ 70 #define HAVE_DFmode 71 XFmode, /* config/m68k/m68k-modes.def:25 */ 72 #define HAVE_XFmode 73 SDmode, /* machmode.def:249 */ 74 #define HAVE_SDmode 75 DDmode, /* machmode.def:250 */ 76 #define HAVE_DDmode 77 TDmode, /* machmode.def:251 */ 78 #define HAVE_TDmode 79 CQImode, /* machmode.def:245 */ 80 #define HAVE_CQImode 81 CHImode, /* machmode.def:245 */ 82 #define HAVE_CHImode 83 CSImode, /* machmode.def:245 */ 84 #define HAVE_CSImode 85 CDImode, /* machmode.def:245 */ 86 #define HAVE_CDImode 87 CTImode, /* machmode.def:245 */ 88 #define HAVE_CTImode 89 SCmode, /* machmode.def:246 */ 90 #define HAVE_SCmode 91 DCmode, /* machmode.def:246 */ 92 #define HAVE_DCmode 93 XCmode, /* machmode.def:246 */ 94 #define HAVE_XCmode 95 MAX_MACHINE_MODE, 96 97 MIN_MODE_RANDOM = VOIDmode, 98 MAX_MODE_RANDOM = BLKmode, 99 100 MIN_MODE_CC = CCmode, 101 MAX_MODE_CC = CCmode, 102 103 MIN_MODE_INT = QImode, 104 MAX_MODE_INT = TImode, 105 106 MIN_MODE_PARTIAL_INT = VOIDmode, 107 MAX_MODE_PARTIAL_INT = VOIDmode, 108 109 MIN_MODE_POINTER_BOUNDS = VOIDmode, 110 MAX_MODE_POINTER_BOUNDS = VOIDmode, 111 112 MIN_MODE_FRACT = QQmode, 113 MAX_MODE_FRACT = TQmode, 114 115 MIN_MODE_UFRACT = UQQmode, 116 MAX_MODE_UFRACT = UTQmode, 117 118 MIN_MODE_ACCUM = HAmode, 119 MAX_MODE_ACCUM = TAmode, 120 121 MIN_MODE_UACCUM = UHAmode, 122 MAX_MODE_UACCUM = UTAmode, 123 124 MIN_MODE_FLOAT = SFmode, 125 MAX_MODE_FLOAT = XFmode, 126 127 MIN_MODE_DECIMAL_FLOAT = SDmode, 128 MAX_MODE_DECIMAL_FLOAT = TDmode, 129 130 MIN_MODE_COMPLEX_INT = CQImode, 131 MAX_MODE_COMPLEX_INT = CTImode, 132 133 MIN_MODE_COMPLEX_FLOAT = SCmode, 134 MAX_MODE_COMPLEX_FLOAT = XCmode, 135 136 MIN_MODE_VECTOR_INT = VOIDmode, 137 MAX_MODE_VECTOR_INT = VOIDmode, 138 139 MIN_MODE_VECTOR_FRACT = VOIDmode, 140 MAX_MODE_VECTOR_FRACT = VOIDmode, 141 142 MIN_MODE_VECTOR_UFRACT = VOIDmode, 143 MAX_MODE_VECTOR_UFRACT = VOIDmode, 144 145 MIN_MODE_VECTOR_ACCUM = VOIDmode, 146 MAX_MODE_VECTOR_ACCUM = VOIDmode, 147 148 MIN_MODE_VECTOR_UACCUM = VOIDmode, 149 MAX_MODE_VECTOR_UACCUM = VOIDmode, 150 151 MIN_MODE_VECTOR_FLOAT = VOIDmode, 152 MAX_MODE_VECTOR_FLOAT = VOIDmode, 153 154 NUM_MACHINE_MODES = MAX_MACHINE_MODE 155 }; 156 157 #define CONST_MODE_SIZE const 158 #define CONST_MODE_BASE_ALIGN const 159 #define CONST_MODE_IBIT const 160 #define CONST_MODE_FBIT const 161 162 #define BITS_PER_UNIT (8) 163 #define MAX_BITSIZE_MODE_ANY_INT (16*BITS_PER_UNIT) 164 #define MAX_BITSIZE_MODE_ANY_MODE (32*BITS_PER_UNIT) 165 #define NUM_INT_N_ENTS 1 166 167 #if !defined (USED_FOR_TARGET) && GCC_VERSION >= 4001 168 169 #ifdef __cplusplus 170 inline __attribute__((__always_inline__)) 171 #else 172 extern __inline__ __attribute__((__always_inline__, __gnu_inline__)) 173 #endif 174 unsigned char 175 mode_size_inline (machine_mode mode) 176 { 177 extern const unsigned char mode_size[NUM_MACHINE_MODES]; 178 switch (mode) 179 { 180 case VOIDmode: return 0; 181 case BLKmode: return 0; 182 case CCmode: return 4; 183 case BImode: return 1; 184 case QImode: return 1; 185 case HImode: return 2; 186 case SImode: return 4; 187 case DImode: return 8; 188 case TImode: return 16; 189 case QQmode: return 1; 190 case HQmode: return 2; 191 case SQmode: return 4; 192 case DQmode: return 8; 193 case TQmode: return 16; 194 case UQQmode: return 1; 195 case UHQmode: return 2; 196 case USQmode: return 4; 197 case UDQmode: return 8; 198 case UTQmode: return 16; 199 case HAmode: return 2; 200 case SAmode: return 4; 201 case DAmode: return 8; 202 case TAmode: return 16; 203 case UHAmode: return 2; 204 case USAmode: return 4; 205 case UDAmode: return 8; 206 case UTAmode: return 16; 207 case SFmode: return 4; 208 case DFmode: return 8; 209 case XFmode: return 12; 210 case SDmode: return 4; 211 case DDmode: return 8; 212 case TDmode: return 16; 213 case CQImode: return 2; 214 case CHImode: return 4; 215 case CSImode: return 8; 216 case CDImode: return 16; 217 case CTImode: return 32; 218 case SCmode: return 8; 219 case DCmode: return 16; 220 case XCmode: return 24; 221 default: return mode_size[mode]; 222 } 223 } 224 225 #ifdef __cplusplus 226 inline __attribute__((__always_inline__)) 227 #else 228 extern __inline__ __attribute__((__always_inline__, __gnu_inline__)) 229 #endif 230 unsigned char 231 mode_nunits_inline (machine_mode mode) 232 { 233 extern const unsigned char mode_nunits[NUM_MACHINE_MODES]; 234 switch (mode) 235 { 236 case VOIDmode: return 0; 237 case BLKmode: return 0; 238 case CCmode: return 1; 239 case BImode: return 1; 240 case QImode: return 1; 241 case HImode: return 1; 242 case SImode: return 1; 243 case DImode: return 1; 244 case TImode: return 1; 245 case QQmode: return 1; 246 case HQmode: return 1; 247 case SQmode: return 1; 248 case DQmode: return 1; 249 case TQmode: return 1; 250 case UQQmode: return 1; 251 case UHQmode: return 1; 252 case USQmode: return 1; 253 case UDQmode: return 1; 254 case UTQmode: return 1; 255 case HAmode: return 1; 256 case SAmode: return 1; 257 case DAmode: return 1; 258 case TAmode: return 1; 259 case UHAmode: return 1; 260 case USAmode: return 1; 261 case UDAmode: return 1; 262 case UTAmode: return 1; 263 case SFmode: return 1; 264 case DFmode: return 1; 265 case XFmode: return 1; 266 case SDmode: return 1; 267 case DDmode: return 1; 268 case TDmode: return 1; 269 case CQImode: return 2; 270 case CHImode: return 2; 271 case CSImode: return 2; 272 case CDImode: return 2; 273 case CTImode: return 2; 274 case SCmode: return 2; 275 case DCmode: return 2; 276 case XCmode: return 2; 277 default: return mode_nunits[mode]; 278 } 279 } 280 281 #ifdef __cplusplus 282 inline __attribute__((__always_inline__)) 283 #else 284 extern __inline__ __attribute__((__always_inline__, __gnu_inline__)) 285 #endif 286 unsigned char 287 mode_inner_inline (machine_mode mode) 288 { 289 extern const unsigned char mode_inner[NUM_MACHINE_MODES]; 290 switch (mode) 291 { 292 case VOIDmode: return VOIDmode; 293 case BLKmode: return VOIDmode; 294 case CCmode: return VOIDmode; 295 case BImode: return VOIDmode; 296 case QImode: return VOIDmode; 297 case HImode: return VOIDmode; 298 case SImode: return VOIDmode; 299 case DImode: return VOIDmode; 300 case TImode: return VOIDmode; 301 case QQmode: return VOIDmode; 302 case HQmode: return VOIDmode; 303 case SQmode: return VOIDmode; 304 case DQmode: return VOIDmode; 305 case TQmode: return VOIDmode; 306 case UQQmode: return VOIDmode; 307 case UHQmode: return VOIDmode; 308 case USQmode: return VOIDmode; 309 case UDQmode: return VOIDmode; 310 case UTQmode: return VOIDmode; 311 case HAmode: return VOIDmode; 312 case SAmode: return VOIDmode; 313 case DAmode: return VOIDmode; 314 case TAmode: return VOIDmode; 315 case UHAmode: return VOIDmode; 316 case USAmode: return VOIDmode; 317 case UDAmode: return VOIDmode; 318 case UTAmode: return VOIDmode; 319 case SFmode: return VOIDmode; 320 case DFmode: return VOIDmode; 321 case XFmode: return VOIDmode; 322 case SDmode: return VOIDmode; 323 case DDmode: return VOIDmode; 324 case TDmode: return VOIDmode; 325 case CQImode: return QImode; 326 case CHImode: return HImode; 327 case CSImode: return SImode; 328 case CDImode: return DImode; 329 case CTImode: return TImode; 330 case SCmode: return SFmode; 331 case DCmode: return DFmode; 332 case XCmode: return XFmode; 333 default: return mode_inner[mode]; 334 } 335 } 336 337 #endif /* GCC_VERSION >= 4001 */ 338 339 #endif /* insn-modes.h */ 340