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/alpha/alpha-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 TFmode, /* config/alpha/alpha-modes.def:22 */ 72 #define HAVE_TFmode 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 TCmode, /* machmode.def:246 */ 94 #define HAVE_TCmode 95 V2QImode, /* config/alpha/alpha-modes.def:27 */ 96 #define HAVE_V2QImode 97 V4QImode, /* config/alpha/alpha-modes.def:26 */ 98 #define HAVE_V4QImode 99 V8QImode, /* config/alpha/alpha-modes.def:25 */ 100 #define HAVE_V8QImode 101 V4HImode, /* config/alpha/alpha-modes.def:25 */ 102 #define HAVE_V4HImode 103 V2SImode, /* config/alpha/alpha-modes.def:25 */ 104 #define HAVE_V2SImode 105 MAX_MACHINE_MODE, 106 107 MIN_MODE_RANDOM = VOIDmode, 108 MAX_MODE_RANDOM = BLKmode, 109 110 MIN_MODE_CC = CCmode, 111 MAX_MODE_CC = CCmode, 112 113 MIN_MODE_INT = QImode, 114 MAX_MODE_INT = TImode, 115 116 MIN_MODE_PARTIAL_INT = VOIDmode, 117 MAX_MODE_PARTIAL_INT = VOIDmode, 118 119 MIN_MODE_POINTER_BOUNDS = VOIDmode, 120 MAX_MODE_POINTER_BOUNDS = VOIDmode, 121 122 MIN_MODE_FRACT = QQmode, 123 MAX_MODE_FRACT = TQmode, 124 125 MIN_MODE_UFRACT = UQQmode, 126 MAX_MODE_UFRACT = UTQmode, 127 128 MIN_MODE_ACCUM = HAmode, 129 MAX_MODE_ACCUM = TAmode, 130 131 MIN_MODE_UACCUM = UHAmode, 132 MAX_MODE_UACCUM = UTAmode, 133 134 MIN_MODE_FLOAT = SFmode, 135 MAX_MODE_FLOAT = TFmode, 136 137 MIN_MODE_DECIMAL_FLOAT = SDmode, 138 MAX_MODE_DECIMAL_FLOAT = TDmode, 139 140 MIN_MODE_COMPLEX_INT = CQImode, 141 MAX_MODE_COMPLEX_INT = CTImode, 142 143 MIN_MODE_COMPLEX_FLOAT = SCmode, 144 MAX_MODE_COMPLEX_FLOAT = TCmode, 145 146 MIN_MODE_VECTOR_INT = V2QImode, 147 MAX_MODE_VECTOR_INT = V2SImode, 148 149 MIN_MODE_VECTOR_FRACT = VOIDmode, 150 MAX_MODE_VECTOR_FRACT = VOIDmode, 151 152 MIN_MODE_VECTOR_UFRACT = VOIDmode, 153 MAX_MODE_VECTOR_UFRACT = VOIDmode, 154 155 MIN_MODE_VECTOR_ACCUM = VOIDmode, 156 MAX_MODE_VECTOR_ACCUM = VOIDmode, 157 158 MIN_MODE_VECTOR_UACCUM = VOIDmode, 159 MAX_MODE_VECTOR_UACCUM = VOIDmode, 160 161 MIN_MODE_VECTOR_FLOAT = VOIDmode, 162 MAX_MODE_VECTOR_FLOAT = VOIDmode, 163 164 NUM_MACHINE_MODES = MAX_MACHINE_MODE 165 }; 166 167 #define CONST_MODE_SIZE const 168 #define CONST_MODE_BASE_ALIGN const 169 #define CONST_MODE_IBIT const 170 #define CONST_MODE_FBIT const 171 172 #define BITS_PER_UNIT (8) 173 #define MAX_BITSIZE_MODE_ANY_INT (16*BITS_PER_UNIT) 174 #define MAX_BITSIZE_MODE_ANY_MODE (32*BITS_PER_UNIT) 175 #define NUM_INT_N_ENTS 1 176 177 #if !defined (USED_FOR_TARGET) && GCC_VERSION >= 4001 178 179 #ifdef __cplusplus 180 inline __attribute__((__always_inline__)) 181 #else 182 extern __inline__ __attribute__((__always_inline__, __gnu_inline__)) 183 #endif 184 unsigned char 185 mode_size_inline (machine_mode mode) 186 { 187 extern const unsigned char mode_size[NUM_MACHINE_MODES]; 188 switch (mode) 189 { 190 case VOIDmode: return 0; 191 case BLKmode: return 0; 192 case CCmode: return 4; 193 case BImode: return 1; 194 case QImode: return 1; 195 case HImode: return 2; 196 case SImode: return 4; 197 case DImode: return 8; 198 case TImode: return 16; 199 case QQmode: return 1; 200 case HQmode: return 2; 201 case SQmode: return 4; 202 case DQmode: return 8; 203 case TQmode: return 16; 204 case UQQmode: return 1; 205 case UHQmode: return 2; 206 case USQmode: return 4; 207 case UDQmode: return 8; 208 case UTQmode: return 16; 209 case HAmode: return 2; 210 case SAmode: return 4; 211 case DAmode: return 8; 212 case TAmode: return 16; 213 case UHAmode: return 2; 214 case USAmode: return 4; 215 case UDAmode: return 8; 216 case UTAmode: return 16; 217 case SFmode: return 4; 218 case DFmode: return 8; 219 case TFmode: return 16; 220 case SDmode: return 4; 221 case DDmode: return 8; 222 case TDmode: return 16; 223 case CQImode: return 2; 224 case CHImode: return 4; 225 case CSImode: return 8; 226 case CDImode: return 16; 227 case CTImode: return 32; 228 case SCmode: return 8; 229 case DCmode: return 16; 230 case TCmode: return 32; 231 case V2QImode: return 2; 232 case V4QImode: return 4; 233 case V8QImode: return 8; 234 case V4HImode: return 8; 235 case V2SImode: return 8; 236 default: return mode_size[mode]; 237 } 238 } 239 240 #ifdef __cplusplus 241 inline __attribute__((__always_inline__)) 242 #else 243 extern __inline__ __attribute__((__always_inline__, __gnu_inline__)) 244 #endif 245 unsigned char 246 mode_nunits_inline (machine_mode mode) 247 { 248 extern const unsigned char mode_nunits[NUM_MACHINE_MODES]; 249 switch (mode) 250 { 251 case VOIDmode: return 0; 252 case BLKmode: return 0; 253 case CCmode: return 1; 254 case BImode: return 1; 255 case QImode: return 1; 256 case HImode: return 1; 257 case SImode: return 1; 258 case DImode: return 1; 259 case TImode: return 1; 260 case QQmode: return 1; 261 case HQmode: return 1; 262 case SQmode: return 1; 263 case DQmode: return 1; 264 case TQmode: return 1; 265 case UQQmode: return 1; 266 case UHQmode: return 1; 267 case USQmode: return 1; 268 case UDQmode: return 1; 269 case UTQmode: return 1; 270 case HAmode: return 1; 271 case SAmode: return 1; 272 case DAmode: return 1; 273 case TAmode: return 1; 274 case UHAmode: return 1; 275 case USAmode: return 1; 276 case UDAmode: return 1; 277 case UTAmode: return 1; 278 case SFmode: return 1; 279 case DFmode: return 1; 280 case TFmode: return 1; 281 case SDmode: return 1; 282 case DDmode: return 1; 283 case TDmode: return 1; 284 case CQImode: return 2; 285 case CHImode: return 2; 286 case CSImode: return 2; 287 case CDImode: return 2; 288 case CTImode: return 2; 289 case SCmode: return 2; 290 case DCmode: return 2; 291 case TCmode: return 2; 292 case V2QImode: return 2; 293 case V4QImode: return 4; 294 case V8QImode: return 8; 295 case V4HImode: return 4; 296 case V2SImode: return 2; 297 default: return mode_nunits[mode]; 298 } 299 } 300 301 #ifdef __cplusplus 302 inline __attribute__((__always_inline__)) 303 #else 304 extern __inline__ __attribute__((__always_inline__, __gnu_inline__)) 305 #endif 306 unsigned char 307 mode_inner_inline (machine_mode mode) 308 { 309 extern const unsigned char mode_inner[NUM_MACHINE_MODES]; 310 switch (mode) 311 { 312 case VOIDmode: return VOIDmode; 313 case BLKmode: return VOIDmode; 314 case CCmode: return VOIDmode; 315 case BImode: return VOIDmode; 316 case QImode: return VOIDmode; 317 case HImode: return VOIDmode; 318 case SImode: return VOIDmode; 319 case DImode: return VOIDmode; 320 case TImode: return VOIDmode; 321 case QQmode: return VOIDmode; 322 case HQmode: return VOIDmode; 323 case SQmode: return VOIDmode; 324 case DQmode: return VOIDmode; 325 case TQmode: return VOIDmode; 326 case UQQmode: return VOIDmode; 327 case UHQmode: return VOIDmode; 328 case USQmode: return VOIDmode; 329 case UDQmode: return VOIDmode; 330 case UTQmode: return VOIDmode; 331 case HAmode: return VOIDmode; 332 case SAmode: return VOIDmode; 333 case DAmode: return VOIDmode; 334 case TAmode: return VOIDmode; 335 case UHAmode: return VOIDmode; 336 case USAmode: return VOIDmode; 337 case UDAmode: return VOIDmode; 338 case UTAmode: return VOIDmode; 339 case SFmode: return VOIDmode; 340 case DFmode: return VOIDmode; 341 case TFmode: return VOIDmode; 342 case SDmode: return VOIDmode; 343 case DDmode: return VOIDmode; 344 case TDmode: return VOIDmode; 345 case CQImode: return QImode; 346 case CHImode: return HImode; 347 case CSImode: return SImode; 348 case CDImode: return DImode; 349 case CTImode: return TImode; 350 case SCmode: return SFmode; 351 case DCmode: return DFmode; 352 case TCmode: return TFmode; 353 case V2QImode: return QImode; 354 case V4QImode: return QImode; 355 case V8QImode: return QImode; 356 case V4HImode: return HImode; 357 case V2SImode: return SImode; 358 default: return mode_inner[mode]; 359 } 360 } 361 362 #endif /* GCC_VERSION >= 4001 */ 363 364 #endif /* insn-modes.h */ 365