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