insn-modes.h revision 1.1.1.2
1/* This file is automatically generated. DO NOT EDIT! */ 2/* Generated from: NetBSD: mknative-gcc,v 1.91 2018/02/03 19:06:25 mrg Exp */ 3/* Generated from: NetBSD: mknative.common,v 1.15 2017/11/29 03:32:28 christos Exp */ 4 5/* Generated automatically from machmode.def and config/pa/pa-modes.def 6 by genmodes. */ 7 8#ifndef GCC_INSN_MODES_H 9#define GCC_INSN_MODES_H 10 11enum 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 CCFPmode, /* config/pa/pa-modes.def:32 */ 20#define HAVE_CCFPmode 21 BImode, /* machmode.def:179 */ 22#define HAVE_BImode 23 QImode, /* machmode.def:187 */ 24#define HAVE_QImode 25 HImode, /* machmode.def:188 */ 26#define HAVE_HImode 27 SImode, /* machmode.def:189 */ 28#define HAVE_SImode 29 DImode, /* machmode.def:190 */ 30#define HAVE_DImode 31 TImode, /* machmode.def:191 */ 32#define HAVE_TImode 33 QQmode, /* machmode.def:217 */ 34#define HAVE_QQmode 35 HQmode, /* machmode.def:218 */ 36#define HAVE_HQmode 37 SQmode, /* machmode.def:219 */ 38#define HAVE_SQmode 39 DQmode, /* machmode.def:220 */ 40#define HAVE_DQmode 41 TQmode, /* machmode.def:221 */ 42#define HAVE_TQmode 43 UQQmode, /* machmode.def:223 */ 44#define HAVE_UQQmode 45 UHQmode, /* machmode.def:224 */ 46#define HAVE_UHQmode 47 USQmode, /* machmode.def:225 */ 48#define HAVE_USQmode 49 UDQmode, /* machmode.def:226 */ 50#define HAVE_UDQmode 51 UTQmode, /* machmode.def:227 */ 52#define HAVE_UTQmode 53 HAmode, /* machmode.def:229 */ 54#define HAVE_HAmode 55 SAmode, /* machmode.def:230 */ 56#define HAVE_SAmode 57 DAmode, /* machmode.def:231 */ 58#define HAVE_DAmode 59 TAmode, /* machmode.def:232 */ 60#define HAVE_TAmode 61 UHAmode, /* machmode.def:234 */ 62#define HAVE_UHAmode 63 USAmode, /* machmode.def:235 */ 64#define HAVE_USAmode 65 UDAmode, /* machmode.def:236 */ 66#define HAVE_UDAmode 67 UTAmode, /* machmode.def:237 */ 68#define HAVE_UTAmode 69 SFmode, /* machmode.def:209 */ 70#define HAVE_SFmode 71 DFmode, /* machmode.def:210 */ 72#define HAVE_DFmode 73 TFmode, /* config/pa/pa-modes.def:29 */ 74#define HAVE_TFmode 75 SDmode, /* machmode.def:249 */ 76#define HAVE_SDmode 77 DDmode, /* machmode.def:250 */ 78#define HAVE_DDmode 79 TDmode, /* machmode.def:251 */ 80#define HAVE_TDmode 81 CQImode, /* machmode.def:245 */ 82#define HAVE_CQImode 83 CHImode, /* machmode.def:245 */ 84#define HAVE_CHImode 85 CSImode, /* machmode.def:245 */ 86#define HAVE_CSImode 87 CDImode, /* machmode.def:245 */ 88#define HAVE_CDImode 89 CTImode, /* machmode.def:245 */ 90#define HAVE_CTImode 91 SCmode, /* machmode.def:246 */ 92#define HAVE_SCmode 93 DCmode, /* machmode.def:246 */ 94#define HAVE_DCmode 95 TCmode, /* machmode.def:246 */ 96#define HAVE_TCmode 97 MAX_MACHINE_MODE, 98 99 MIN_MODE_RANDOM = VOIDmode, 100 MAX_MODE_RANDOM = BLKmode, 101 102 MIN_MODE_CC = CCmode, 103 MAX_MODE_CC = CCFPmode, 104 105 MIN_MODE_INT = QImode, 106 MAX_MODE_INT = TImode, 107 108 MIN_MODE_PARTIAL_INT = VOIDmode, 109 MAX_MODE_PARTIAL_INT = VOIDmode, 110 111 MIN_MODE_POINTER_BOUNDS = VOIDmode, 112 MAX_MODE_POINTER_BOUNDS = VOIDmode, 113 114 MIN_MODE_FRACT = QQmode, 115 MAX_MODE_FRACT = TQmode, 116 117 MIN_MODE_UFRACT = UQQmode, 118 MAX_MODE_UFRACT = UTQmode, 119 120 MIN_MODE_ACCUM = HAmode, 121 MAX_MODE_ACCUM = TAmode, 122 123 MIN_MODE_UACCUM = UHAmode, 124 MAX_MODE_UACCUM = UTAmode, 125 126 MIN_MODE_FLOAT = SFmode, 127 MAX_MODE_FLOAT = TFmode, 128 129 MIN_MODE_DECIMAL_FLOAT = SDmode, 130 MAX_MODE_DECIMAL_FLOAT = TDmode, 131 132 MIN_MODE_COMPLEX_INT = CQImode, 133 MAX_MODE_COMPLEX_INT = CTImode, 134 135 MIN_MODE_COMPLEX_FLOAT = SCmode, 136 MAX_MODE_COMPLEX_FLOAT = TCmode, 137 138 MIN_MODE_VECTOR_INT = VOIDmode, 139 MAX_MODE_VECTOR_INT = VOIDmode, 140 141 MIN_MODE_VECTOR_FRACT = VOIDmode, 142 MAX_MODE_VECTOR_FRACT = VOIDmode, 143 144 MIN_MODE_VECTOR_UFRACT = VOIDmode, 145 MAX_MODE_VECTOR_UFRACT = VOIDmode, 146 147 MIN_MODE_VECTOR_ACCUM = VOIDmode, 148 MAX_MODE_VECTOR_ACCUM = VOIDmode, 149 150 MIN_MODE_VECTOR_UACCUM = VOIDmode, 151 MAX_MODE_VECTOR_UACCUM = VOIDmode, 152 153 MIN_MODE_VECTOR_FLOAT = VOIDmode, 154 MAX_MODE_VECTOR_FLOAT = VOIDmode, 155 156 NUM_MACHINE_MODES = MAX_MACHINE_MODE 157}; 158 159#define CONST_MODE_SIZE const 160#define CONST_MODE_UNIT_SIZE const 161#define CONST_MODE_BASE_ALIGN const 162#define CONST_MODE_IBIT const 163#define CONST_MODE_FBIT const 164 165#define BITS_PER_UNIT (8) 166#define MAX_BITSIZE_MODE_ANY_INT (16*BITS_PER_UNIT) 167#define MAX_BITSIZE_MODE_ANY_MODE (32*BITS_PER_UNIT) 168#define NUM_INT_N_ENTS 1 169 170#if !defined (USED_FOR_TARGET) && GCC_VERSION >= 4001 171 172#ifdef __cplusplus 173inline __attribute__((__always_inline__)) 174#else 175extern __inline__ __attribute__((__always_inline__, __gnu_inline__)) 176#endif 177unsigned char 178mode_size_inline (machine_mode mode) 179{ 180 extern const unsigned char mode_size[NUM_MACHINE_MODES]; 181 switch (mode) 182 { 183 case VOIDmode: return 0; 184 case BLKmode: return 0; 185 case CCmode: return 4; 186 case CCFPmode: return 4; 187 case BImode: return 1; 188 case QImode: return 1; 189 case HImode: return 2; 190 case SImode: return 4; 191 case DImode: return 8; 192 case TImode: return 16; 193 case QQmode: return 1; 194 case HQmode: return 2; 195 case SQmode: return 4; 196 case DQmode: return 8; 197 case TQmode: return 16; 198 case UQQmode: return 1; 199 case UHQmode: return 2; 200 case USQmode: return 4; 201 case UDQmode: return 8; 202 case UTQmode: return 16; 203 case HAmode: return 2; 204 case SAmode: return 4; 205 case DAmode: return 8; 206 case TAmode: return 16; 207 case UHAmode: return 2; 208 case USAmode: return 4; 209 case UDAmode: return 8; 210 case UTAmode: return 16; 211 case SFmode: return 4; 212 case DFmode: return 8; 213 case TFmode: return 16; 214 case SDmode: return 4; 215 case DDmode: return 8; 216 case TDmode: return 16; 217 case CQImode: return 2; 218 case CHImode: return 4; 219 case CSImode: return 8; 220 case CDImode: return 16; 221 case CTImode: return 32; 222 case SCmode: return 8; 223 case DCmode: return 16; 224 case TCmode: return 32; 225 default: return mode_size[mode]; 226 } 227} 228 229#ifdef __cplusplus 230inline __attribute__((__always_inline__)) 231#else 232extern __inline__ __attribute__((__always_inline__, __gnu_inline__)) 233#endif 234unsigned char 235mode_nunits_inline (machine_mode mode) 236{ 237 extern const unsigned char mode_nunits[NUM_MACHINE_MODES]; 238 switch (mode) 239 { 240 case VOIDmode: return 0; 241 case BLKmode: return 0; 242 case CCmode: return 1; 243 case CCFPmode: return 1; 244 case BImode: return 1; 245 case QImode: return 1; 246 case HImode: return 1; 247 case SImode: return 1; 248 case DImode: return 1; 249 case TImode: return 1; 250 case QQmode: return 1; 251 case HQmode: return 1; 252 case SQmode: return 1; 253 case DQmode: return 1; 254 case TQmode: return 1; 255 case UQQmode: return 1; 256 case UHQmode: return 1; 257 case USQmode: return 1; 258 case UDQmode: return 1; 259 case UTQmode: return 1; 260 case HAmode: return 1; 261 case SAmode: return 1; 262 case DAmode: return 1; 263 case TAmode: return 1; 264 case UHAmode: return 1; 265 case USAmode: return 1; 266 case UDAmode: return 1; 267 case UTAmode: return 1; 268 case SFmode: return 1; 269 case DFmode: return 1; 270 case TFmode: return 1; 271 case SDmode: return 1; 272 case DDmode: return 1; 273 case TDmode: return 1; 274 case CQImode: return 2; 275 case CHImode: return 2; 276 case CSImode: return 2; 277 case CDImode: return 2; 278 case CTImode: return 2; 279 case SCmode: return 2; 280 case DCmode: return 2; 281 case TCmode: return 2; 282 default: return mode_nunits[mode]; 283 } 284} 285 286#ifdef __cplusplus 287inline __attribute__((__always_inline__)) 288#else 289extern __inline__ __attribute__((__always_inline__, __gnu_inline__)) 290#endif 291unsigned char 292mode_inner_inline (machine_mode mode) 293{ 294 extern const unsigned char mode_inner[NUM_MACHINE_MODES]; 295 switch (mode) 296 { 297 case VOIDmode: return VOIDmode; 298 case BLKmode: return BLKmode; 299 case CCmode: return CCmode; 300 case CCFPmode: return CCFPmode; 301 case BImode: return BImode; 302 case QImode: return QImode; 303 case HImode: return HImode; 304 case SImode: return SImode; 305 case DImode: return DImode; 306 case TImode: return TImode; 307 case QQmode: return QQmode; 308 case HQmode: return HQmode; 309 case SQmode: return SQmode; 310 case DQmode: return DQmode; 311 case TQmode: return TQmode; 312 case UQQmode: return UQQmode; 313 case UHQmode: return UHQmode; 314 case USQmode: return USQmode; 315 case UDQmode: return UDQmode; 316 case UTQmode: return UTQmode; 317 case HAmode: return HAmode; 318 case SAmode: return SAmode; 319 case DAmode: return DAmode; 320 case TAmode: return TAmode; 321 case UHAmode: return UHAmode; 322 case USAmode: return USAmode; 323 case UDAmode: return UDAmode; 324 case UTAmode: return UTAmode; 325 case SFmode: return SFmode; 326 case DFmode: return DFmode; 327 case TFmode: return TFmode; 328 case SDmode: return SDmode; 329 case DDmode: return DDmode; 330 case TDmode: return TDmode; 331 case CQImode: return QImode; 332 case CHImode: return HImode; 333 case CSImode: return SImode; 334 case CDImode: return DImode; 335 case CTImode: return TImode; 336 case SCmode: return SFmode; 337 case DCmode: return DFmode; 338 case TCmode: return TFmode; 339 default: return mode_inner[mode]; 340 } 341} 342 343#ifdef __cplusplus 344inline __attribute__((__always_inline__)) 345#else 346extern __inline__ __attribute__((__always_inline__, __gnu_inline__)) 347#endif 348unsigned char 349mode_unit_size_inline (machine_mode mode) 350{ 351 extern CONST_MODE_UNIT_SIZE unsigned char mode_unit_size[NUM_MACHINE_MODES]; 352 switch (mode) 353 { 354 case VOIDmode: return 0; 355 case BLKmode: return 0; 356 case CCmode: return 4; 357 case CCFPmode: return 4; 358 case BImode: return 1; 359 case QImode: return 1; 360 case HImode: return 2; 361 case SImode: return 4; 362 case DImode: return 8; 363 case TImode: return 16; 364 case QQmode: return 1; 365 case HQmode: return 2; 366 case SQmode: return 4; 367 case DQmode: return 8; 368 case TQmode: return 16; 369 case UQQmode: return 1; 370 case UHQmode: return 2; 371 case USQmode: return 4; 372 case UDQmode: return 8; 373 case UTQmode: return 16; 374 case HAmode: return 2; 375 case SAmode: return 4; 376 case DAmode: return 8; 377 case TAmode: return 16; 378 case UHAmode: return 2; 379 case USAmode: return 4; 380 case UDAmode: return 8; 381 case UTAmode: return 16; 382 case SFmode: return 4; 383 case DFmode: return 8; 384 case TFmode: return 16; 385 case SDmode: return 4; 386 case DDmode: return 8; 387 case TDmode: return 16; 388 case CQImode: return 1; 389 case CHImode: return 2; 390 case CSImode: return 4; 391 case CDImode: return 8; 392 case CTImode: return 16; 393 case SCmode: return 4; 394 case DCmode: return 8; 395 case TCmode: return 16; 396 default: return mode_unit_size[mode]; 397 } 398} 399 400#ifdef __cplusplus 401inline __attribute__((__always_inline__)) 402#else 403extern __inline__ __attribute__((__always_inline__, __gnu_inline__)) 404#endif 405unsigned short 406mode_unit_precision_inline (machine_mode mode) 407{ 408 extern const unsigned short mode_unit_precision[NUM_MACHINE_MODES]; 409 switch (mode) 410 { 411 case VOIDmode: return 0; 412 case BLKmode: return 0; 413 case CCmode: return 4*BITS_PER_UNIT; 414 case CCFPmode: return 4*BITS_PER_UNIT; 415 case BImode: return 1; 416 case QImode: return 1*BITS_PER_UNIT; 417 case HImode: return 2*BITS_PER_UNIT; 418 case SImode: return 4*BITS_PER_UNIT; 419 case DImode: return 8*BITS_PER_UNIT; 420 case TImode: return 16*BITS_PER_UNIT; 421 case QQmode: return 1*BITS_PER_UNIT; 422 case HQmode: return 2*BITS_PER_UNIT; 423 case SQmode: return 4*BITS_PER_UNIT; 424 case DQmode: return 8*BITS_PER_UNIT; 425 case TQmode: return 16*BITS_PER_UNIT; 426 case UQQmode: return 1*BITS_PER_UNIT; 427 case UHQmode: return 2*BITS_PER_UNIT; 428 case USQmode: return 4*BITS_PER_UNIT; 429 case UDQmode: return 8*BITS_PER_UNIT; 430 case UTQmode: return 16*BITS_PER_UNIT; 431 case HAmode: return 2*BITS_PER_UNIT; 432 case SAmode: return 4*BITS_PER_UNIT; 433 case DAmode: return 8*BITS_PER_UNIT; 434 case TAmode: return 16*BITS_PER_UNIT; 435 case UHAmode: return 2*BITS_PER_UNIT; 436 case USAmode: return 4*BITS_PER_UNIT; 437 case UDAmode: return 8*BITS_PER_UNIT; 438 case UTAmode: return 16*BITS_PER_UNIT; 439 case SFmode: return 4*BITS_PER_UNIT; 440 case DFmode: return 8*BITS_PER_UNIT; 441 case TFmode: return 16*BITS_PER_UNIT; 442 case SDmode: return 4*BITS_PER_UNIT; 443 case DDmode: return 8*BITS_PER_UNIT; 444 case TDmode: return 16*BITS_PER_UNIT; 445 case CQImode: return 1*BITS_PER_UNIT; 446 case CHImode: return 2*BITS_PER_UNIT; 447 case CSImode: return 4*BITS_PER_UNIT; 448 case CDImode: return 8*BITS_PER_UNIT; 449 case CTImode: return 16*BITS_PER_UNIT; 450 case SCmode: return 4*BITS_PER_UNIT; 451 case DCmode: return 8*BITS_PER_UNIT; 452 case TCmode: return 16*BITS_PER_UNIT; 453 default: return mode_unit_precision[mode]; 454 } 455} 456 457#endif /* GCC_VERSION >= 4001 */ 458 459#endif /* insn-modes.h */ 460