1/* This file is auto-generated by i386-builtin-types.awk. */ 2 3enum ix86_builtin_type { 4 IX86_BT_VOID, 5 IX86_BT_CHAR, 6 IX86_BT_UCHAR, 7 IX86_BT_QI, 8 IX86_BT_HI, 9 IX86_BT_SI, 10 IX86_BT_DI, 11 IX86_BT_UQI, 12 IX86_BT_UHI, 13 IX86_BT_USI, 14 IX86_BT_UDI, 15 IX86_BT_USHORT, 16 IX86_BT_INT, 17 IX86_BT_UINT, 18 IX86_BT_UNSIGNED, 19 IX86_BT_LONGLONG, 20 IX86_BT_ULONGLONG, 21 IX86_BT_UINT8, 22 IX86_BT_UINT16, 23 IX86_BT_INT64, 24 IX86_BT_UINT64, 25 IX86_BT_FLOAT, 26 IX86_BT_DOUBLE, 27 IX86_BT_FLOAT80, 28 IX86_BT_FLOAT128, 29 IX86_BT_LAST_PRIM = IX86_BT_FLOAT128, 30 IX86_BT_V2SF, 31 IX86_BT_V1DI, 32 IX86_BT_V2SI, 33 IX86_BT_V4HI, 34 IX86_BT_V8QI, 35 IX86_BT_V2DF, 36 IX86_BT_V4SF, 37 IX86_BT_V2DI, 38 IX86_BT_V4SI, 39 IX86_BT_V8HI, 40 IX86_BT_V16QI, 41 IX86_BT_V2UDI, 42 IX86_BT_V4USI, 43 IX86_BT_V8UHI, 44 IX86_BT_V16UQI, 45 IX86_BT_V4DF, 46 IX86_BT_V8SF, 47 IX86_BT_V4DI, 48 IX86_BT_V8SI, 49 IX86_BT_V16HI, 50 IX86_BT_V32QI, 51 IX86_BT_V4UDI, 52 IX86_BT_V8USI, 53 IX86_BT_LAST_VECT = IX86_BT_V8USI, 54 IX86_BT_PCHAR, 55 IX86_BT_PVOID, 56 IX86_BT_PDOUBLE, 57 IX86_BT_PFLOAT, 58 IX86_BT_PUSHORT, 59 IX86_BT_PINT, 60 IX86_BT_PLONGLONG, 61 IX86_BT_PULONGLONG, 62 IX86_BT_PUNSIGNED, 63 IX86_BT_PV2SI, 64 IX86_BT_PV2DF, 65 IX86_BT_PV2DI, 66 IX86_BT_PV2SF, 67 IX86_BT_PV4DF, 68 IX86_BT_PV4DI, 69 IX86_BT_PV4SF, 70 IX86_BT_PV8SF, 71 IX86_BT_PV4SI, 72 IX86_BT_PV8SI, 73 IX86_BT_LAST_PTR = IX86_BT_PV8SI, 74 IX86_BT_PCCHAR, 75 IX86_BT_PCDOUBLE, 76 IX86_BT_PCFLOAT, 77 IX86_BT_PCINT, 78 IX86_BT_PCINT64, 79 IX86_BT_PCVOID, 80 IX86_BT_PCV2SI, 81 IX86_BT_PCV2DF, 82 IX86_BT_PCV2SF, 83 IX86_BT_PCV4DF, 84 IX86_BT_PCV4SF, 85 IX86_BT_PCV8SF, 86 IX86_BT_PCV2DI, 87 IX86_BT_PCV4SI, 88 IX86_BT_PCV4DI, 89 IX86_BT_PCV8SI, 90 IX86_BT_LAST_CPTR = IX86_BT_PCV8SI 91} 92; 93 94 95#define DEFINE_BUILTIN_PRIMITIVE_TYPES \ 96 ix86_builtin_type_tab[(int)IX86_BT_VOID] = void_type_node, \ 97 ix86_builtin_type_tab[(int)IX86_BT_CHAR] = char_type_node, \ 98 ix86_builtin_type_tab[(int)IX86_BT_UCHAR] = unsigned_char_type_node, \ 99 ix86_builtin_type_tab[(int)IX86_BT_QI] = char_type_node, \ 100 ix86_builtin_type_tab[(int)IX86_BT_HI] = intHI_type_node, \ 101 ix86_builtin_type_tab[(int)IX86_BT_SI] = intSI_type_node, \ 102 ix86_builtin_type_tab[(int)IX86_BT_DI] = long_long_integer_type_node, \ 103 ix86_builtin_type_tab[(int)IX86_BT_UQI] = unsigned_intQI_type_node, \ 104 ix86_builtin_type_tab[(int)IX86_BT_UHI] = unsigned_intHI_type_node, \ 105 ix86_builtin_type_tab[(int)IX86_BT_USI] = unsigned_intSI_type_node, \ 106 ix86_builtin_type_tab[(int)IX86_BT_UDI] = long_long_unsigned_type_node, \ 107 ix86_builtin_type_tab[(int)IX86_BT_USHORT] = short_unsigned_type_node, \ 108 ix86_builtin_type_tab[(int)IX86_BT_INT] = integer_type_node, \ 109 ix86_builtin_type_tab[(int)IX86_BT_UINT] = unsigned_type_node, \ 110 ix86_builtin_type_tab[(int)IX86_BT_UNSIGNED] = unsigned_type_node, \ 111 ix86_builtin_type_tab[(int)IX86_BT_LONGLONG] = long_long_integer_type_node, \ 112 ix86_builtin_type_tab[(int)IX86_BT_ULONGLONG] = long_long_unsigned_type_node, \ 113 ix86_builtin_type_tab[(int)IX86_BT_UINT8] = unsigned_char_type_node, \ 114 ix86_builtin_type_tab[(int)IX86_BT_UINT16] = short_unsigned_type_node, \ 115 ix86_builtin_type_tab[(int)IX86_BT_INT64] = long_long_integer_type_node, \ 116 ix86_builtin_type_tab[(int)IX86_BT_UINT64] = long_long_unsigned_type_node, \ 117 ix86_builtin_type_tab[(int)IX86_BT_FLOAT] = float_type_node, \ 118 ix86_builtin_type_tab[(int)IX86_BT_DOUBLE] = double_type_node, \ 119 ix86_builtin_type_tab[(int)IX86_BT_FLOAT80] = float80_type_node, \ 120 ix86_builtin_type_tab[(int)IX86_BT_FLOAT128] = float128_type_node 121 122 123static const enum machine_mode ix86_builtin_type_vect_mode[] = { 124 V2SFmode, V1DImode, V2SImode, V4HImode, V8QImode, V2DFmode, 125 V4SFmode, V2DImode, V4SImode, V8HImode, V16QImode, V2DImode, 126 V4SImode, V8HImode, V16QImode, V4DFmode, V8SFmode, V4DImode, 127 V8SImode, V16HImode, V32QImode, V4DImode, V8SImode 128}; 129 130 131static const enum ix86_builtin_type ix86_builtin_type_vect_base[] = { 132 IX86_BT_FLOAT, IX86_BT_DI, IX86_BT_SI, IX86_BT_HI, 133 IX86_BT_QI, IX86_BT_DOUBLE, IX86_BT_FLOAT, IX86_BT_DI, 134 IX86_BT_SI, IX86_BT_HI, IX86_BT_QI, IX86_BT_UDI, 135 IX86_BT_USI, IX86_BT_UHI, IX86_BT_UQI, IX86_BT_DOUBLE, 136 IX86_BT_FLOAT, IX86_BT_DI, IX86_BT_SI, IX86_BT_HI, 137 IX86_BT_QI, IX86_BT_UDI, IX86_BT_USI 138}; 139 140 141static const enum ix86_builtin_type ix86_builtin_type_ptr_base[] = { 142 IX86_BT_CHAR, IX86_BT_VOID, IX86_BT_DOUBLE, IX86_BT_FLOAT, 143 IX86_BT_USHORT, IX86_BT_INT, IX86_BT_LONGLONG, IX86_BT_ULONGLONG, 144 IX86_BT_UNSIGNED, IX86_BT_V2SI, IX86_BT_V2DF, IX86_BT_V2DI, 145 IX86_BT_V2SF, IX86_BT_V4DF, IX86_BT_V4DI, IX86_BT_V4SF, 146 IX86_BT_V8SF, IX86_BT_V4SI, IX86_BT_V8SI, 147 /* pointer-to-constant defs start here */ 148 IX86_BT_CHAR, IX86_BT_DOUBLE, IX86_BT_FLOAT, IX86_BT_INT, 149 IX86_BT_INT64, IX86_BT_VOID, IX86_BT_V2SI, IX86_BT_V2DF, 150 IX86_BT_V2SF, IX86_BT_V4DF, IX86_BT_V4SF, IX86_BT_V8SF, 151 IX86_BT_V2DI, IX86_BT_V4SI, IX86_BT_V4DI, IX86_BT_V8SI 152}; 153 154 155enum ix86_builtin_func_type { 156 FLOAT128_FTYPE_VOID, 157 UINT64_FTYPE_VOID, 158 UNSIGNED_FTYPE_VOID, 159 INT_FTYPE_VOID, 160 VOID_FTYPE_VOID, 161 PVOID_FTYPE_VOID, 162 FLOAT_FTYPE_FLOAT, 163 FLOAT128_FTYPE_FLOAT128, 164 INT_FTYPE_INT, 165 INT_FTYPE_V16QI, 166 INT_FTYPE_V2DF, 167 INT_FTYPE_V4DF, 168 INT_FTYPE_V4SF, 169 INT_FTYPE_V8QI, 170 INT_FTYPE_V8SF, 171 INT_FTYPE_V32QI, 172 INT_FTYPE_PCCHAR, 173 INT64_FTYPE_INT64, 174 INT64_FTYPE_V2DF, 175 INT64_FTYPE_V4SF, 176 UINT64_FTYPE_INT, 177 UINT16_FTYPE_UINT16, 178 UINT64_FTYPE_PUNSIGNED, 179 V16QI_FTYPE_PCCHAR, 180 V16QI_FTYPE_V16QI, 181 V2DF_FTYPE_PCDOUBLE, 182 V2DF_FTYPE_V2DF, 183 V2DF_FTYPE_V2SI, 184 V2DF_FTYPE_V4DF, 185 V2DF_FTYPE_V4SF, 186 V2DF_FTYPE_V4SI, 187 V2DI_FTYPE_PV2DI, 188 V2DI_FTYPE_V16QI, 189 V2DI_FTYPE_V2DI, 190 V2DI_FTYPE_V4SI, 191 V2DI_FTYPE_V8HI, 192 V2SF_FTYPE_V2SF, 193 V2SF_FTYPE_V2SI, 194 V2SI_FTYPE_V2DF, 195 V2SI_FTYPE_V2SF, 196 V2SI_FTYPE_V2SI, 197 V2SI_FTYPE_PCV2SI, 198 V2SI_FTYPE_V4SF, 199 V32QI_FTYPE_PCCHAR, 200 V4DF_FTYPE_PCDOUBLE, 201 V4DF_FTYPE_PCV2DF, 202 V4DF_FTYPE_V2DF, 203 V4DF_FTYPE_V4DF, 204 V4DF_FTYPE_V4SF, 205 V4DF_FTYPE_V4SI, 206 V4HI_FTYPE_V4HI, 207 V4SF_FTYPE_PCFLOAT, 208 V4SF_FTYPE_V2DF, 209 V4SF_FTYPE_V4DF, 210 V4SF_FTYPE_V4SF, 211 V4SF_FTYPE_PCV4SF, 212 V4SF_FTYPE_V4SI, 213 V4SF_FTYPE_V8SF, 214 V4SF_FTYPE_V8HI, 215 V4SI_FTYPE_V16QI, 216 V4SI_FTYPE_V2DF, 217 V4SI_FTYPE_V4DF, 218 V4SI_FTYPE_V4SF, 219 V4SI_FTYPE_V4SI, 220 V4SI_FTYPE_V8HI, 221 V4SI_FTYPE_V8SI, 222 V8HI_FTYPE_V16QI, 223 V8HI_FTYPE_V8HI, 224 V8QI_FTYPE_V8QI, 225 V8SF_FTYPE_PCFLOAT, 226 V8SF_FTYPE_PCV4SF, 227 V8SF_FTYPE_PCV8SF, 228 V8SF_FTYPE_V4SF, 229 V8SF_FTYPE_V8SF, 230 V8SF_FTYPE_V8SI, 231 V8SF_FTYPE_V8HI, 232 V8SI_FTYPE_V4SI, 233 V8SI_FTYPE_V8SF, 234 V32QI_FTYPE_V32QI, 235 V32QI_FTYPE_V16QI, 236 V16HI_FTYPE_V16HI, 237 V16HI_FTYPE_V8HI, 238 V8SI_FTYPE_V8SI, 239 VOID_FTYPE_PCVOID, 240 VOID_FTYPE_PVOID, 241 VOID_FTYPE_UINT64, 242 VOID_FTYPE_UNSIGNED, 243 INT_FTYPE_PUSHORT, 244 INT_FTYPE_PUNSIGNED, 245 INT_FTYPE_PULONGLONG, 246 V16HI_FTYPE_V16QI, 247 V8SI_FTYPE_V16QI, 248 V4DI_FTYPE_V16QI, 249 V8SI_FTYPE_V8HI, 250 V4DI_FTYPE_V8HI, 251 V4DI_FTYPE_V4SI, 252 V4DI_FTYPE_PV4DI, 253 V4DI_FTYPE_V2DI, 254 DI_FTYPE_V2DI_INT, 255 DOUBLE_FTYPE_V2DF_INT, 256 FLOAT_FTYPE_V4SF_INT, 257 FLOAT128_FTYPE_FLOAT128_FLOAT128, 258 HI_FTYPE_V4HI_INT, 259 HI_FTYPE_V8HI_INT, 260 INT_FTYPE_V2DF_V2DF, 261 INT_FTYPE_V2DI_V2DI, 262 INT_FTYPE_V4DF_V4DF, 263 INT_FTYPE_V4DI_V4DI, 264 INT_FTYPE_V4SF_V4SF, 265 INT_FTYPE_V8SF_V8SF, 266 QI_FTYPE_V16QI_INT, 267 QI_FTYPE_V8QI_INT, 268 SI_FTYPE_V2SI_INT, 269 SI_FTYPE_V4SI_INT, 270 UINT_FTYPE_UINT_UCHAR, 271 UINT_FTYPE_UINT_UINT, 272 UINT_FTYPE_UINT_USHORT, 273 UINT16_FTYPE_UINT16_INT, 274 UINT64_FTYPE_UINT64_UINT64, 275 UINT8_FTYPE_UINT8_INT, 276 V16QI_FTYPE_V16QI_SI, 277 V16QI_FTYPE_V16QI_V16QI, 278 V16QI_FTYPE_V8HI_V8HI, 279 V1DI_FTYPE_V1DI_SI, 280 V1DI_FTYPE_V1DI_V1DI, 281 V1DI_FTYPE_V2SI_V2SI, 282 V1DI_FTYPE_V8QI_V8QI, 283 V2DF_FTYPE_PCV2DF_V2DI, 284 V2DF_FTYPE_V2DF_DI, 285 V2DF_FTYPE_V2DF_INT, 286 V2DF_FTYPE_V2DF_PCDOUBLE, 287 V2DF_FTYPE_V2DF_SI, 288 V2DF_FTYPE_V2DF_V2DF, 289 V2DF_FTYPE_V2DF_V2DI, 290 V2DF_FTYPE_V2DF_V4SF, 291 V2DF_FTYPE_V4DF_INT, 292 V2DI_FTYPE_V16QI_V16QI, 293 V2DI_FTYPE_V2DF_V2DF, 294 V2DI_FTYPE_V2DI_INT, 295 V2DI_FTYPE_V2DI_SI, 296 V2DI_FTYPE_V2DI_V16QI, 297 V2DI_FTYPE_V2DI_V2DI, 298 V2DI_FTYPE_V4SI_V4SI, 299 V2UDI_FTYPE_V4USI_V4USI, 300 V2DI_FTYPE_PCV2DI_V2DI, 301 V2SF_FTYPE_V2SF_V2SF, 302 V2SI_FTYPE_INT_INT, 303 V2SI_FTYPE_V2SF_V2SF, 304 V2SI_FTYPE_V2SI_SI, 305 V2SI_FTYPE_V2SI_V2SI, 306 V2SI_FTYPE_V4HI_V4HI, 307 V4DF_FTYPE_PCV4DF_V4DI, 308 V4DF_FTYPE_V4DF_INT, 309 V4DF_FTYPE_V4DF_V4DF, 310 V4DF_FTYPE_V4DF_V4DI, 311 V4HI_FTYPE_V2SI_V2SI, 312 V4HI_FTYPE_V4HI_INT, 313 V4HI_FTYPE_V4HI_SI, 314 V4HI_FTYPE_V4HI_V4HI, 315 V4HI_FTYPE_V8QI_V8QI, 316 V4SF_FTYPE_PCV4SF_V4SI, 317 V4SF_FTYPE_V4SF_DI, 318 V4SF_FTYPE_V4SF_INT, 319 V4SF_FTYPE_V4SF_PCV2SF, 320 V4SF_FTYPE_V4SF_SI, 321 V4SF_FTYPE_V4SF_V2DF, 322 V4SF_FTYPE_V4SF_V2SI, 323 V4SF_FTYPE_V4SF_V4SF, 324 V4SF_FTYPE_V4SF_V4SI, 325 V4SF_FTYPE_V8SF_INT, 326 V4SI_FTYPE_V2DF_V2DF, 327 V4SI_FTYPE_V4SF_V4SF, 328 V4SI_FTYPE_V4SI_INT, 329 V4SI_FTYPE_V4SI_SI, 330 V4SI_FTYPE_V4SI_V4SI, 331 V4SI_FTYPE_V8HI_V8HI, 332 V4SI_FTYPE_V8SI_INT, 333 V4SI_FTYPE_PCV4SI_V4SI, 334 V8HI_FTYPE_V16QI_V16QI, 335 V8HI_FTYPE_V4SI_V4SI, 336 V8HI_FTYPE_V8HI_INT, 337 V8HI_FTYPE_V8HI_SI, 338 V8HI_FTYPE_V8HI_V8HI, 339 V8HI_FTYPE_V8SF_INT, 340 V8HI_FTYPE_V4SF_INT, 341 V8QI_FTYPE_V4HI_V4HI, 342 V8QI_FTYPE_V8QI_V8QI, 343 V8SF_FTYPE_PCV8SF_V8SI, 344 V8SF_FTYPE_V8SF_INT, 345 V8SF_FTYPE_V8SF_V8SF, 346 V8SF_FTYPE_V8SF_V8SI, 347 V32QI_FTYPE_V16HI_V16HI, 348 V16HI_FTYPE_V8SI_V8SI, 349 V32QI_FTYPE_V32QI_V32QI, 350 V16HI_FTYPE_V32QI_V32QI, 351 V16HI_FTYPE_V16HI_V8HI, 352 V16HI_FTYPE_V16HI_V16HI, 353 V16HI_FTYPE_V16HI_INT, 354 V16HI_FTYPE_V16HI_SI, 355 V16HI_FTYPE_V16HI_V16HI_INT, 356 V32QI_FTYPE_V32QI_V32QI_INT, 357 V8SI_FTYPE_V4DF_V4DF, 358 V8SI_FTYPE_V8SI_V4SI, 359 V8SI_FTYPE_V8SI_V8SI, 360 V8SI_FTYPE_V16HI_V16HI, 361 V8SI_FTYPE_V8SI_INT, 362 V8SI_FTYPE_V8SI_SI, 363 V8SI_FTYPE_PCV8SI_V8SI, 364 V4DI_FTYPE_V4DI_V4DI, 365 V4DI_FTYPE_V8SI_V8SI, 366 V4UDI_FTYPE_V8USI_V8USI, 367 V4DI_FTYPE_V4DI_V2DI, 368 V4DI_FTYPE_PCV4DI_V4DI, 369 V4DI_FTYPE_V4DI_INT, 370 V2DI_FTYPE_V4DI_INT, 371 VOID_FTYPE_PVOID_INT64, 372 VOID_FTYPE_PCHAR_V16QI, 373 VOID_FTYPE_PCHAR_V32QI, 374 VOID_FTYPE_PDOUBLE_V2DF, 375 VOID_FTYPE_PDOUBLE_V4DF, 376 VOID_FTYPE_PFLOAT_V4SF, 377 VOID_FTYPE_PFLOAT_V8SF, 378 VOID_FTYPE_PINT_INT, 379 VOID_FTYPE_PLONGLONG_LONGLONG, 380 VOID_FTYPE_PULONGLONG_ULONGLONG, 381 VOID_FTYPE_PV2SI_V2SI, 382 VOID_FTYPE_PV2DI_V2DI, 383 VOID_FTYPE_PV2SF_V4SF, 384 VOID_FTYPE_PV4DI_V4DI, 385 VOID_FTYPE_PV4SF_V4SF, 386 VOID_FTYPE_PV8SF_V8SF, 387 VOID_FTYPE_UNSIGNED_UNSIGNED, 388 INT_FTYPE_V16QI_V16QI_INT, 389 UCHAR_FTYPE_UINT_UINT_UINT, 390 UCHAR_FTYPE_UINT64_UINT_UINT, 391 V16HI_FTYPE_V16HI_V16HI_V16HI, 392 V16QI_FTYPE_V16QI_QI_INT, 393 V16QI_FTYPE_V16QI_V16QI_INT, 394 V16QI_FTYPE_V16QI_V16QI_V16QI, 395 V1DI_FTYPE_V1DI_V1DI_INT, 396 V2DF_FTYPE_V2DF_V2DF_INT, 397 V2DF_FTYPE_V2DF_V2DF_V2DF, 398 V2DF_FTYPE_V2DF_V2DF_V2DI_INT, 399 V2DI_FTYPE_V2DI_DI_INT, 400 V2DI_FTYPE_V2DI_UINT_UINT, 401 V2DI_FTYPE_V2DI_V2DI_INT, 402 V2DI_FTYPE_V2DI_V2DI_V2DI, 403 V32QI_FTYPE_V32QI_V32QI_V32QI, 404 V4DF_FTYPE_V4DF_V2DF_INT, 405 V4DF_FTYPE_V4DF_V4DF_INT, 406 V4DF_FTYPE_V4DF_V4DF_V4DF, 407 V4DF_FTYPE_V4DF_V4DF_V4DI_INT, 408 V4DI_FTYPE_V4DI_V4DI_V4DI, 409 V4HI_FTYPE_V4HI_HI_INT, 410 V4SF_FTYPE_V4SF_FLOAT_INT, 411 V4SF_FTYPE_V4SF_V4SF_INT, 412 V4SF_FTYPE_V4SF_V4SF_V4SF, 413 V4SF_FTYPE_V4SF_V4SF_V4SI_INT, 414 V4SI_FTYPE_V4SI_SI_INT, 415 V4SI_FTYPE_V4SI_V4SI_INT, 416 V4SI_FTYPE_V4SI_V4SI_V2DI, 417 V4SI_FTYPE_V4SI_V4SI_V4SI, 418 V8HI_FTYPE_V8HI_HI_INT, 419 V8HI_FTYPE_V8HI_V8HI_INT, 420 V8HI_FTYPE_V8HI_V8HI_V4SI, 421 V8HI_FTYPE_V8HI_V8HI_V8HI, 422 V8SF_FTYPE_V8SF_V4SF_INT, 423 V8SF_FTYPE_V8SF_V8SF_INT, 424 V8SF_FTYPE_V8SF_V8SF_V8SF, 425 V8SF_FTYPE_V8SF_V8SF_V8SI_INT, 426 V8SI_FTYPE_V8SI_V4SI_INT, 427 V8SI_FTYPE_V8SI_V8SI_INT, 428 V8SI_FTYPE_V8SI_V8SI_V8SI, 429 V4DI_FTYPE_V4DI_V4DI_INT, 430 V4DI_FTYPE_V4DI_V2DI_INT, 431 VOID_FTYPE_PCVOID_UNSIGNED_UNSIGNED, 432 VOID_FTYPE_PV2DF_V2DI_V2DF, 433 VOID_FTYPE_PV4DF_V4DI_V4DF, 434 VOID_FTYPE_PV4SF_V4SI_V4SF, 435 VOID_FTYPE_PV8SF_V8SI_V8SF, 436 VOID_FTYPE_PV2DI_V2DI_V2DI, 437 VOID_FTYPE_PV4DI_V4DI_V4DI, 438 VOID_FTYPE_PV4SI_V4SI_V4SI, 439 VOID_FTYPE_PV8SI_V8SI_V8SI, 440 VOID_FTYPE_UINT_UINT_UINT, 441 VOID_FTYPE_UINT64_UINT_UINT, 442 VOID_FTYPE_V16QI_V16QI_PCHAR, 443 VOID_FTYPE_V8QI_V8QI_PCHAR, 444 V2DF_FTYPE_V2DF_V2DF_V2DI, 445 V4SF_FTYPE_V4SF_V4SF_V4SI, 446 V2UDI_FTYPE_V2UDI_V2UDI_V2UDI, 447 V4USI_FTYPE_V4USI_V4USI_V4USI, 448 V8UHI_FTYPE_V8UHI_V8UHI_V8UHI, 449 V16UQI_FTYPE_V16UQI_V16UQI_V16UQI, 450 V4DF_FTYPE_V4DF_V4DF_V4DI, 451 V8SF_FTYPE_V8SF_V8SF_V8SI, 452 V2DI_FTYPE_V2DI_V2DI_UINT_UINT, 453 V4HI_FTYPE_HI_HI_HI_HI, 454 INT_FTYPE_V16QI_INT_V16QI_INT_INT, 455 V16QI_FTYPE_V16QI_INT_V16QI_INT_INT, 456 V8QI_FTYPE_QI_QI_QI_QI_QI_QI_QI_QI, 457 UCHAR_FTYPE_UCHAR_UINT_UINT_PUNSIGNED, 458 UCHAR_FTYPE_UCHAR_ULONGLONG_ULONGLONG_PULONGLONG, 459 V2DF_FTYPE_V2DF_PCDOUBLE_V4SI_V2DF_INT, 460 V4DF_FTYPE_V4DF_PCDOUBLE_V4SI_V4DF_INT, 461 V4DF_FTYPE_V4DF_PCDOUBLE_V8SI_V4DF_INT, 462 V2DF_FTYPE_V2DF_PCDOUBLE_V2DI_V2DF_INT, 463 V4DF_FTYPE_V4DF_PCDOUBLE_V4DI_V4DF_INT, 464 V4SF_FTYPE_V4SF_PCFLOAT_V4SI_V4SF_INT, 465 V8SF_FTYPE_V8SF_PCFLOAT_V8SI_V8SF_INT, 466 V4SF_FTYPE_V4SF_PCFLOAT_V2DI_V4SF_INT, 467 V4SF_FTYPE_V4SF_PCFLOAT_V4DI_V4SF_INT, 468 V8SF_FTYPE_V8SF_PCFLOAT_V4DI_V8SF_INT, 469 V2DI_FTYPE_V2DI_PCINT64_V4SI_V2DI_INT, 470 V4DI_FTYPE_V4DI_PCINT64_V4SI_V4DI_INT, 471 V4DI_FTYPE_V4DI_PCINT64_V8SI_V4DI_INT, 472 V2DI_FTYPE_V2DI_PCINT64_V2DI_V2DI_INT, 473 V4DI_FTYPE_V4DI_PCINT64_V4DI_V4DI_INT, 474 V4SI_FTYPE_V4SI_PCINT_V4SI_V4SI_INT, 475 V8SI_FTYPE_V8SI_PCINT_V8SI_V8SI_INT, 476 V4SI_FTYPE_V4SI_PCINT_V2DI_V4SI_INT, 477 V4SI_FTYPE_V4SI_PCINT_V4DI_V4SI_INT, 478 V8SI_FTYPE_V8SI_PCINT_V4DI_V8SI_INT, 479 IX86_BT_LAST_FUNC = V8SI_FTYPE_V8SI_PCINT_V4DI_V8SI_INT, 480 V2DF_FTYPE_V2DF_ROUND, 481 V4DF_FTYPE_V4DF_ROUND, 482 V4SF_FTYPE_V4SF_ROUND, 483 V8SF_FTYPE_V8SF_ROUND, 484 V4SI_FTYPE_V2DF_V2DF_ROUND, 485 V8SI_FTYPE_V4DF_V4DF_ROUND, 486 V4SI_FTYPE_V4SF_ROUND, 487 V8SI_FTYPE_V8SF_ROUND, 488 INT_FTYPE_V2DF_V2DF_PTEST, 489 INT_FTYPE_V2DI_V2DI_PTEST, 490 INT_FTYPE_V4DF_V4DF_PTEST, 491 INT_FTYPE_V4DI_V4DI_PTEST, 492 INT_FTYPE_V4SF_V4SF_PTEST, 493 INT_FTYPE_V8SF_V8SF_PTEST, 494 V2DF_FTYPE_V2DF_VEC_MERGE, 495 V4SF_FTYPE_V4SF_VEC_MERGE, 496 V1DI_FTYPE_V1DI_SI_COUNT, 497 V2DI_FTYPE_V2DI_SI_COUNT, 498 V2SI_FTYPE_V2SI_SI_COUNT, 499 V4HI_FTYPE_V4HI_SI_COUNT, 500 V4SI_FTYPE_V4SI_SI_COUNT, 501 V8HI_FTYPE_V8HI_SI_COUNT, 502 V1DI_FTYPE_V1DI_V1DI_COUNT, 503 V2DI_FTYPE_V2DI_V2DI_COUNT, 504 V2SI_FTYPE_V2SI_V2SI_COUNT, 505 V4HI_FTYPE_V4HI_V4HI_COUNT, 506 V4SI_FTYPE_V4SI_V4SI_COUNT, 507 V8HI_FTYPE_V8HI_V8HI_COUNT, 508 V16HI_FTYPE_V16HI_SI_COUNT, 509 V16HI_FTYPE_V16HI_V8HI_COUNT, 510 V8SI_FTYPE_V8SI_SI_COUNT, 511 V8SI_FTYPE_V8SI_V4SI_COUNT, 512 V4DI_FTYPE_V4DI_INT_COUNT, 513 V4DI_FTYPE_V4DI_V2DI_COUNT, 514 V2DF_FTYPE_V2DF_V2DF_SWAP, 515 V4SF_FTYPE_V4SF_V4SF_SWAP, 516 V4DI_FTYPE_V4DI_INT_CONVERT, 517 V2DI_FTYPE_V2DI_INT_CONVERT, 518 V4DI_FTYPE_V4DI_V4DI_INT_CONVERT, 519 V2DI_FTYPE_V2DI_V2DI_INT_CONVERT, 520 V1DI_FTYPE_V1DI_V1DI_INT_CONVERT, 521 V16QI_FTYPE_V16QI_V16QI_CMP, 522 V2DI_FTYPE_V2DI_V2DI_CMP, 523 V4SI_FTYPE_V4SI_V4SI_CMP, 524 V8HI_FTYPE_V8HI_V8HI_CMP, 525 V16QI_FTYPE_V16QI_V16QI_TF, 526 V2DF_FTYPE_V2DF_V2DF_TF, 527 V2DI_FTYPE_V2DI_V2DI_TF, 528 V4SF_FTYPE_V4SF_V4SF_TF, 529 V4SI_FTYPE_V4SI_V4SI_TF, 530 V8HI_FTYPE_V8HI_V8HI_TF, 531 IX86_BT_LAST_ALIAS = V8HI_FTYPE_V8HI_V8HI_TF 532} 533; 534 535 536static const enum ix86_builtin_type ix86_builtin_func_args[] = { 537 IX86_BT_FLOAT128, IX86_BT_UINT64, IX86_BT_UNSIGNED, IX86_BT_INT, 538 IX86_BT_VOID, IX86_BT_PVOID, IX86_BT_FLOAT, IX86_BT_FLOAT, 539 IX86_BT_FLOAT128, IX86_BT_FLOAT128, IX86_BT_INT, IX86_BT_INT, 540 IX86_BT_INT, IX86_BT_V16QI, IX86_BT_INT, IX86_BT_V2DF, 541 IX86_BT_INT, IX86_BT_V4DF, IX86_BT_INT, IX86_BT_V4SF, 542 IX86_BT_INT, IX86_BT_V8QI, IX86_BT_INT, IX86_BT_V8SF, 543 IX86_BT_INT, IX86_BT_V32QI, IX86_BT_INT, IX86_BT_PCCHAR, 544 IX86_BT_INT64, IX86_BT_INT64, IX86_BT_INT64, IX86_BT_V2DF, 545 IX86_BT_INT64, IX86_BT_V4SF, IX86_BT_UINT64, IX86_BT_INT, 546 IX86_BT_UINT16, IX86_BT_UINT16, IX86_BT_UINT64, IX86_BT_PUNSIGNED, 547 IX86_BT_V16QI, IX86_BT_PCCHAR, IX86_BT_V16QI, IX86_BT_V16QI, 548 IX86_BT_V2DF, IX86_BT_PCDOUBLE, IX86_BT_V2DF, IX86_BT_V2DF, 549 IX86_BT_V2DF, IX86_BT_V2SI, IX86_BT_V2DF, IX86_BT_V4DF, 550 IX86_BT_V2DF, IX86_BT_V4SF, IX86_BT_V2DF, IX86_BT_V4SI, 551 IX86_BT_V2DI, IX86_BT_PV2DI, IX86_BT_V2DI, IX86_BT_V16QI, 552 IX86_BT_V2DI, IX86_BT_V2DI, IX86_BT_V2DI, IX86_BT_V4SI, 553 IX86_BT_V2DI, IX86_BT_V8HI, IX86_BT_V2SF, IX86_BT_V2SF, 554 IX86_BT_V2SF, IX86_BT_V2SI, IX86_BT_V2SI, IX86_BT_V2DF, 555 IX86_BT_V2SI, IX86_BT_V2SF, IX86_BT_V2SI, IX86_BT_V2SI, 556 IX86_BT_V2SI, IX86_BT_PCV2SI, IX86_BT_V2SI, IX86_BT_V4SF, 557 IX86_BT_V32QI, IX86_BT_PCCHAR, IX86_BT_V4DF, IX86_BT_PCDOUBLE, 558 IX86_BT_V4DF, IX86_BT_PCV2DF, IX86_BT_V4DF, IX86_BT_V2DF, 559 IX86_BT_V4DF, IX86_BT_V4DF, IX86_BT_V4DF, IX86_BT_V4SF, 560 IX86_BT_V4DF, IX86_BT_V4SI, IX86_BT_V4HI, IX86_BT_V4HI, 561 IX86_BT_V4SF, IX86_BT_PCFLOAT, IX86_BT_V4SF, IX86_BT_V2DF, 562 IX86_BT_V4SF, IX86_BT_V4DF, IX86_BT_V4SF, IX86_BT_V4SF, 563 IX86_BT_V4SF, IX86_BT_PCV4SF, IX86_BT_V4SF, IX86_BT_V4SI, 564 IX86_BT_V4SF, IX86_BT_V8SF, IX86_BT_V4SF, IX86_BT_V8HI, 565 IX86_BT_V4SI, IX86_BT_V16QI, IX86_BT_V4SI, IX86_BT_V2DF, 566 IX86_BT_V4SI, IX86_BT_V4DF, IX86_BT_V4SI, IX86_BT_V4SF, 567 IX86_BT_V4SI, IX86_BT_V4SI, IX86_BT_V4SI, IX86_BT_V8HI, 568 IX86_BT_V4SI, IX86_BT_V8SI, IX86_BT_V8HI, IX86_BT_V16QI, 569 IX86_BT_V8HI, IX86_BT_V8HI, IX86_BT_V8QI, IX86_BT_V8QI, 570 IX86_BT_V8SF, IX86_BT_PCFLOAT, IX86_BT_V8SF, IX86_BT_PCV4SF, 571 IX86_BT_V8SF, IX86_BT_PCV8SF, IX86_BT_V8SF, IX86_BT_V4SF, 572 IX86_BT_V8SF, IX86_BT_V8SF, IX86_BT_V8SF, IX86_BT_V8SI, 573 IX86_BT_V8SF, IX86_BT_V8HI, IX86_BT_V8SI, IX86_BT_V4SI, 574 IX86_BT_V8SI, IX86_BT_V8SF, IX86_BT_V32QI, IX86_BT_V32QI, 575 IX86_BT_V32QI, IX86_BT_V16QI, IX86_BT_V16HI, IX86_BT_V16HI, 576 IX86_BT_V16HI, IX86_BT_V8HI, IX86_BT_V8SI, IX86_BT_V8SI, 577 IX86_BT_VOID, IX86_BT_PCVOID, IX86_BT_VOID, IX86_BT_PVOID, 578 IX86_BT_VOID, IX86_BT_UINT64, IX86_BT_VOID, IX86_BT_UNSIGNED, 579 IX86_BT_INT, IX86_BT_PUSHORT, IX86_BT_INT, IX86_BT_PUNSIGNED, 580 IX86_BT_INT, IX86_BT_PULONGLONG, IX86_BT_V16HI, IX86_BT_V16QI, 581 IX86_BT_V8SI, IX86_BT_V16QI, IX86_BT_V4DI, IX86_BT_V16QI, 582 IX86_BT_V8SI, IX86_BT_V8HI, IX86_BT_V4DI, IX86_BT_V8HI, 583 IX86_BT_V4DI, IX86_BT_V4SI, IX86_BT_V4DI, IX86_BT_PV4DI, 584 IX86_BT_V4DI, IX86_BT_V2DI, IX86_BT_DI, IX86_BT_V2DI, 585 IX86_BT_INT, IX86_BT_DOUBLE, IX86_BT_V2DF, IX86_BT_INT, 586 IX86_BT_FLOAT, IX86_BT_V4SF, IX86_BT_INT, IX86_BT_FLOAT128, 587 IX86_BT_FLOAT128, IX86_BT_FLOAT128, IX86_BT_HI, IX86_BT_V4HI, 588 IX86_BT_INT, IX86_BT_HI, IX86_BT_V8HI, IX86_BT_INT, 589 IX86_BT_INT, IX86_BT_V2DF, IX86_BT_V2DF, IX86_BT_INT, 590 IX86_BT_V2DI, IX86_BT_V2DI, IX86_BT_INT, IX86_BT_V4DF, 591 IX86_BT_V4DF, IX86_BT_INT, IX86_BT_V4DI, IX86_BT_V4DI, 592 IX86_BT_INT, IX86_BT_V4SF, IX86_BT_V4SF, IX86_BT_INT, 593 IX86_BT_V8SF, IX86_BT_V8SF, IX86_BT_QI, IX86_BT_V16QI, 594 IX86_BT_INT, IX86_BT_QI, IX86_BT_V8QI, IX86_BT_INT, 595 IX86_BT_SI, IX86_BT_V2SI, IX86_BT_INT, IX86_BT_SI, 596 IX86_BT_V4SI, IX86_BT_INT, IX86_BT_UINT, IX86_BT_UINT, 597 IX86_BT_UCHAR, IX86_BT_UINT, IX86_BT_UINT, IX86_BT_UINT, 598 IX86_BT_UINT, IX86_BT_UINT, IX86_BT_USHORT, IX86_BT_UINT16, 599 IX86_BT_UINT16, IX86_BT_INT, IX86_BT_UINT64, IX86_BT_UINT64, 600 IX86_BT_UINT64, IX86_BT_UINT8, IX86_BT_UINT8, IX86_BT_INT, 601 IX86_BT_V16QI, IX86_BT_V16QI, IX86_BT_SI, IX86_BT_V16QI, 602 IX86_BT_V16QI, IX86_BT_V16QI, IX86_BT_V16QI, IX86_BT_V8HI, 603 IX86_BT_V8HI, IX86_BT_V1DI, IX86_BT_V1DI, IX86_BT_SI, 604 IX86_BT_V1DI, IX86_BT_V1DI, IX86_BT_V1DI, IX86_BT_V1DI, 605 IX86_BT_V2SI, IX86_BT_V2SI, IX86_BT_V1DI, IX86_BT_V8QI, 606 IX86_BT_V8QI, IX86_BT_V2DF, IX86_BT_PCV2DF, IX86_BT_V2DI, 607 IX86_BT_V2DF, IX86_BT_V2DF, IX86_BT_DI, IX86_BT_V2DF, 608 IX86_BT_V2DF, IX86_BT_INT, IX86_BT_V2DF, IX86_BT_V2DF, 609 IX86_BT_PCDOUBLE, IX86_BT_V2DF, IX86_BT_V2DF, IX86_BT_SI, 610 IX86_BT_V2DF, IX86_BT_V2DF, IX86_BT_V2DF, IX86_BT_V2DF, 611 IX86_BT_V2DF, IX86_BT_V2DI, IX86_BT_V2DF, IX86_BT_V2DF, 612 IX86_BT_V4SF, IX86_BT_V2DF, IX86_BT_V4DF, IX86_BT_INT, 613 IX86_BT_V2DI, IX86_BT_V16QI, IX86_BT_V16QI, IX86_BT_V2DI, 614 IX86_BT_V2DF, IX86_BT_V2DF, IX86_BT_V2DI, IX86_BT_V2DI, 615 IX86_BT_INT, IX86_BT_V2DI, IX86_BT_V2DI, IX86_BT_SI, 616 IX86_BT_V2DI, IX86_BT_V2DI, IX86_BT_V16QI, IX86_BT_V2DI, 617 IX86_BT_V2DI, IX86_BT_V2DI, IX86_BT_V2DI, IX86_BT_V4SI, 618 IX86_BT_V4SI, IX86_BT_V2UDI, IX86_BT_V4USI, IX86_BT_V4USI, 619 IX86_BT_V2DI, IX86_BT_PCV2DI, IX86_BT_V2DI, IX86_BT_V2SF, 620 IX86_BT_V2SF, IX86_BT_V2SF, IX86_BT_V2SI, IX86_BT_INT, 621 IX86_BT_INT, IX86_BT_V2SI, IX86_BT_V2SF, IX86_BT_V2SF, 622 IX86_BT_V2SI, IX86_BT_V2SI, IX86_BT_SI, IX86_BT_V2SI, 623 IX86_BT_V2SI, IX86_BT_V2SI, IX86_BT_V2SI, IX86_BT_V4HI, 624 IX86_BT_V4HI, IX86_BT_V4DF, IX86_BT_PCV4DF, IX86_BT_V4DI, 625 IX86_BT_V4DF, IX86_BT_V4DF, IX86_BT_INT, IX86_BT_V4DF, 626 IX86_BT_V4DF, IX86_BT_V4DF, IX86_BT_V4DF, IX86_BT_V4DF, 627 IX86_BT_V4DI, IX86_BT_V4HI, IX86_BT_V2SI, IX86_BT_V2SI, 628 IX86_BT_V4HI, IX86_BT_V4HI, IX86_BT_INT, IX86_BT_V4HI, 629 IX86_BT_V4HI, IX86_BT_SI, IX86_BT_V4HI, IX86_BT_V4HI, 630 IX86_BT_V4HI, IX86_BT_V4HI, IX86_BT_V8QI, IX86_BT_V8QI, 631 IX86_BT_V4SF, IX86_BT_PCV4SF, IX86_BT_V4SI, IX86_BT_V4SF, 632 IX86_BT_V4SF, IX86_BT_DI, IX86_BT_V4SF, IX86_BT_V4SF, 633 IX86_BT_INT, IX86_BT_V4SF, IX86_BT_V4SF, IX86_BT_PCV2SF, 634 IX86_BT_V4SF, IX86_BT_V4SF, IX86_BT_SI, IX86_BT_V4SF, 635 IX86_BT_V4SF, IX86_BT_V2DF, IX86_BT_V4SF, IX86_BT_V4SF, 636 IX86_BT_V2SI, IX86_BT_V4SF, IX86_BT_V4SF, IX86_BT_V4SF, 637 IX86_BT_V4SF, IX86_BT_V4SF, IX86_BT_V4SI, IX86_BT_V4SF, 638 IX86_BT_V8SF, IX86_BT_INT, IX86_BT_V4SI, IX86_BT_V2DF, 639 IX86_BT_V2DF, IX86_BT_V4SI, IX86_BT_V4SF, IX86_BT_V4SF, 640 IX86_BT_V4SI, IX86_BT_V4SI, IX86_BT_INT, IX86_BT_V4SI, 641 IX86_BT_V4SI, IX86_BT_SI, IX86_BT_V4SI, IX86_BT_V4SI, 642 IX86_BT_V4SI, IX86_BT_V4SI, IX86_BT_V8HI, IX86_BT_V8HI, 643 IX86_BT_V4SI, IX86_BT_V8SI, IX86_BT_INT, IX86_BT_V4SI, 644 IX86_BT_PCV4SI, IX86_BT_V4SI, IX86_BT_V8HI, IX86_BT_V16QI, 645 IX86_BT_V16QI, IX86_BT_V8HI, IX86_BT_V4SI, IX86_BT_V4SI, 646 IX86_BT_V8HI, IX86_BT_V8HI, IX86_BT_INT, IX86_BT_V8HI, 647 IX86_BT_V8HI, IX86_BT_SI, IX86_BT_V8HI, IX86_BT_V8HI, 648 IX86_BT_V8HI, IX86_BT_V8HI, IX86_BT_V8SF, IX86_BT_INT, 649 IX86_BT_V8HI, IX86_BT_V4SF, IX86_BT_INT, IX86_BT_V8QI, 650 IX86_BT_V4HI, IX86_BT_V4HI, IX86_BT_V8QI, IX86_BT_V8QI, 651 IX86_BT_V8QI, IX86_BT_V8SF, IX86_BT_PCV8SF, IX86_BT_V8SI, 652 IX86_BT_V8SF, IX86_BT_V8SF, IX86_BT_INT, IX86_BT_V8SF, 653 IX86_BT_V8SF, IX86_BT_V8SF, IX86_BT_V8SF, IX86_BT_V8SF, 654 IX86_BT_V8SI, IX86_BT_V32QI, IX86_BT_V16HI, IX86_BT_V16HI, 655 IX86_BT_V16HI, IX86_BT_V8SI, IX86_BT_V8SI, IX86_BT_V32QI, 656 IX86_BT_V32QI, IX86_BT_V32QI, IX86_BT_V16HI, IX86_BT_V32QI, 657 IX86_BT_V32QI, IX86_BT_V16HI, IX86_BT_V16HI, IX86_BT_V8HI, 658 IX86_BT_V16HI, IX86_BT_V16HI, IX86_BT_V16HI, IX86_BT_V16HI, 659 IX86_BT_V16HI, IX86_BT_INT, IX86_BT_V16HI, IX86_BT_V16HI, 660 IX86_BT_SI, IX86_BT_V16HI, IX86_BT_V16HI, IX86_BT_V16HI, 661 IX86_BT_INT, IX86_BT_V32QI, IX86_BT_V32QI, IX86_BT_V32QI, 662 IX86_BT_INT, IX86_BT_V8SI, IX86_BT_V4DF, IX86_BT_V4DF, 663 IX86_BT_V8SI, IX86_BT_V8SI, IX86_BT_V4SI, IX86_BT_V8SI, 664 IX86_BT_V8SI, IX86_BT_V8SI, IX86_BT_V8SI, IX86_BT_V16HI, 665 IX86_BT_V16HI, IX86_BT_V8SI, IX86_BT_V8SI, IX86_BT_INT, 666 IX86_BT_V8SI, IX86_BT_V8SI, IX86_BT_SI, IX86_BT_V8SI, 667 IX86_BT_PCV8SI, IX86_BT_V8SI, IX86_BT_V4DI, IX86_BT_V4DI, 668 IX86_BT_V4DI, IX86_BT_V4DI, IX86_BT_V8SI, IX86_BT_V8SI, 669 IX86_BT_V4UDI, IX86_BT_V8USI, IX86_BT_V8USI, IX86_BT_V4DI, 670 IX86_BT_V4DI, IX86_BT_V2DI, IX86_BT_V4DI, IX86_BT_PCV4DI, 671 IX86_BT_V4DI, IX86_BT_V4DI, IX86_BT_V4DI, IX86_BT_INT, 672 IX86_BT_V2DI, IX86_BT_V4DI, IX86_BT_INT, IX86_BT_VOID, 673 IX86_BT_PVOID, IX86_BT_INT64, IX86_BT_VOID, IX86_BT_PCHAR, 674 IX86_BT_V16QI, IX86_BT_VOID, IX86_BT_PCHAR, IX86_BT_V32QI, 675 IX86_BT_VOID, IX86_BT_PDOUBLE, IX86_BT_V2DF, IX86_BT_VOID, 676 IX86_BT_PDOUBLE, IX86_BT_V4DF, IX86_BT_VOID, IX86_BT_PFLOAT, 677 IX86_BT_V4SF, IX86_BT_VOID, IX86_BT_PFLOAT, IX86_BT_V8SF, 678 IX86_BT_VOID, IX86_BT_PINT, IX86_BT_INT, IX86_BT_VOID, 679 IX86_BT_PLONGLONG, IX86_BT_LONGLONG, IX86_BT_VOID, IX86_BT_PULONGLONG, 680 IX86_BT_ULONGLONG, IX86_BT_VOID, IX86_BT_PV2SI, IX86_BT_V2SI, 681 IX86_BT_VOID, IX86_BT_PV2DI, IX86_BT_V2DI, IX86_BT_VOID, 682 IX86_BT_PV2SF, IX86_BT_V4SF, IX86_BT_VOID, IX86_BT_PV4DI, 683 IX86_BT_V4DI, IX86_BT_VOID, IX86_BT_PV4SF, IX86_BT_V4SF, 684 IX86_BT_VOID, IX86_BT_PV8SF, IX86_BT_V8SF, IX86_BT_VOID, 685 IX86_BT_UNSIGNED, IX86_BT_UNSIGNED, IX86_BT_INT, IX86_BT_V16QI, 686 IX86_BT_V16QI, IX86_BT_INT, IX86_BT_UCHAR, IX86_BT_UINT, 687 IX86_BT_UINT, IX86_BT_UINT, IX86_BT_UCHAR, IX86_BT_UINT64, 688 IX86_BT_UINT, IX86_BT_UINT, IX86_BT_V16HI, IX86_BT_V16HI, 689 IX86_BT_V16HI, IX86_BT_V16HI, IX86_BT_V16QI, IX86_BT_V16QI, 690 IX86_BT_QI, IX86_BT_INT, IX86_BT_V16QI, IX86_BT_V16QI, 691 IX86_BT_V16QI, IX86_BT_INT, IX86_BT_V16QI, IX86_BT_V16QI, 692 IX86_BT_V16QI, IX86_BT_V16QI, IX86_BT_V1DI, IX86_BT_V1DI, 693 IX86_BT_V1DI, IX86_BT_INT, IX86_BT_V2DF, IX86_BT_V2DF, 694 IX86_BT_V2DF, IX86_BT_INT, IX86_BT_V2DF, IX86_BT_V2DF, 695 IX86_BT_V2DF, IX86_BT_V2DF, IX86_BT_V2DF, IX86_BT_V2DF, 696 IX86_BT_V2DF, IX86_BT_V2DI, IX86_BT_INT, IX86_BT_V2DI, 697 IX86_BT_V2DI, IX86_BT_DI, IX86_BT_INT, IX86_BT_V2DI, 698 IX86_BT_V2DI, IX86_BT_UINT, IX86_BT_UINT, IX86_BT_V2DI, 699 IX86_BT_V2DI, IX86_BT_V2DI, IX86_BT_INT, IX86_BT_V2DI, 700 IX86_BT_V2DI, IX86_BT_V2DI, IX86_BT_V2DI, IX86_BT_V32QI, 701 IX86_BT_V32QI, IX86_BT_V32QI, IX86_BT_V32QI, IX86_BT_V4DF, 702 IX86_BT_V4DF, IX86_BT_V2DF, IX86_BT_INT, IX86_BT_V4DF, 703 IX86_BT_V4DF, IX86_BT_V4DF, IX86_BT_INT, IX86_BT_V4DF, 704 IX86_BT_V4DF, IX86_BT_V4DF, IX86_BT_V4DF, IX86_BT_V4DF, 705 IX86_BT_V4DF, IX86_BT_V4DF, IX86_BT_V4DI, IX86_BT_INT, 706 IX86_BT_V4DI, IX86_BT_V4DI, IX86_BT_V4DI, IX86_BT_V4DI, 707 IX86_BT_V4HI, IX86_BT_V4HI, IX86_BT_HI, IX86_BT_INT, 708 IX86_BT_V4SF, IX86_BT_V4SF, IX86_BT_FLOAT, IX86_BT_INT, 709 IX86_BT_V4SF, IX86_BT_V4SF, IX86_BT_V4SF, IX86_BT_INT, 710 IX86_BT_V4SF, IX86_BT_V4SF, IX86_BT_V4SF, IX86_BT_V4SF, 711 IX86_BT_V4SF, IX86_BT_V4SF, IX86_BT_V4SF, IX86_BT_V4SI, 712 IX86_BT_INT, IX86_BT_V4SI, IX86_BT_V4SI, IX86_BT_SI, 713 IX86_BT_INT, IX86_BT_V4SI, IX86_BT_V4SI, IX86_BT_V4SI, 714 IX86_BT_INT, IX86_BT_V4SI, IX86_BT_V4SI, IX86_BT_V4SI, 715 IX86_BT_V2DI, IX86_BT_V4SI, IX86_BT_V4SI, IX86_BT_V4SI, 716 IX86_BT_V4SI, IX86_BT_V8HI, IX86_BT_V8HI, IX86_BT_HI, 717 IX86_BT_INT, IX86_BT_V8HI, IX86_BT_V8HI, IX86_BT_V8HI, 718 IX86_BT_INT, IX86_BT_V8HI, IX86_BT_V8HI, IX86_BT_V8HI, 719 IX86_BT_V4SI, IX86_BT_V8HI, IX86_BT_V8HI, IX86_BT_V8HI, 720 IX86_BT_V8HI, IX86_BT_V8SF, IX86_BT_V8SF, IX86_BT_V4SF, 721 IX86_BT_INT, IX86_BT_V8SF, IX86_BT_V8SF, IX86_BT_V8SF, 722 IX86_BT_INT, IX86_BT_V8SF, IX86_BT_V8SF, IX86_BT_V8SF, 723 IX86_BT_V8SF, IX86_BT_V8SF, IX86_BT_V8SF, IX86_BT_V8SF, 724 IX86_BT_V8SI, IX86_BT_INT, IX86_BT_V8SI, IX86_BT_V8SI, 725 IX86_BT_V4SI, IX86_BT_INT, IX86_BT_V8SI, IX86_BT_V8SI, 726 IX86_BT_V8SI, IX86_BT_INT, IX86_BT_V8SI, IX86_BT_V8SI, 727 IX86_BT_V8SI, IX86_BT_V8SI, IX86_BT_V4DI, IX86_BT_V4DI, 728 IX86_BT_V4DI, IX86_BT_INT, IX86_BT_V4DI, IX86_BT_V4DI, 729 IX86_BT_V2DI, IX86_BT_INT, IX86_BT_VOID, IX86_BT_PCVOID, 730 IX86_BT_UNSIGNED, IX86_BT_UNSIGNED, IX86_BT_VOID, IX86_BT_PV2DF, 731 IX86_BT_V2DI, IX86_BT_V2DF, IX86_BT_VOID, IX86_BT_PV4DF, 732 IX86_BT_V4DI, IX86_BT_V4DF, IX86_BT_VOID, IX86_BT_PV4SF, 733 IX86_BT_V4SI, IX86_BT_V4SF, IX86_BT_VOID, IX86_BT_PV8SF, 734 IX86_BT_V8SI, IX86_BT_V8SF, IX86_BT_VOID, IX86_BT_PV2DI, 735 IX86_BT_V2DI, IX86_BT_V2DI, IX86_BT_VOID, IX86_BT_PV4DI, 736 IX86_BT_V4DI, IX86_BT_V4DI, IX86_BT_VOID, IX86_BT_PV4SI, 737 IX86_BT_V4SI, IX86_BT_V4SI, IX86_BT_VOID, IX86_BT_PV8SI, 738 IX86_BT_V8SI, IX86_BT_V8SI, IX86_BT_VOID, IX86_BT_UINT, 739 IX86_BT_UINT, IX86_BT_UINT, IX86_BT_VOID, IX86_BT_UINT64, 740 IX86_BT_UINT, IX86_BT_UINT, IX86_BT_VOID, IX86_BT_V16QI, 741 IX86_BT_V16QI, IX86_BT_PCHAR, IX86_BT_VOID, IX86_BT_V8QI, 742 IX86_BT_V8QI, IX86_BT_PCHAR, IX86_BT_V2DF, IX86_BT_V2DF, 743 IX86_BT_V2DF, IX86_BT_V2DI, IX86_BT_V4SF, IX86_BT_V4SF, 744 IX86_BT_V4SF, IX86_BT_V4SI, IX86_BT_V2UDI, IX86_BT_V2UDI, 745 IX86_BT_V2UDI, IX86_BT_V2UDI, IX86_BT_V4USI, IX86_BT_V4USI, 746 IX86_BT_V4USI, IX86_BT_V4USI, IX86_BT_V8UHI, IX86_BT_V8UHI, 747 IX86_BT_V8UHI, IX86_BT_V8UHI, IX86_BT_V16UQI, IX86_BT_V16UQI, 748 IX86_BT_V16UQI, IX86_BT_V16UQI, IX86_BT_V4DF, IX86_BT_V4DF, 749 IX86_BT_V4DF, IX86_BT_V4DI, IX86_BT_V8SF, IX86_BT_V8SF, 750 IX86_BT_V8SF, IX86_BT_V8SI, IX86_BT_V2DI, IX86_BT_V2DI, 751 IX86_BT_V2DI, IX86_BT_UINT, IX86_BT_UINT, IX86_BT_V4HI, 752 IX86_BT_HI, IX86_BT_HI, IX86_BT_HI, IX86_BT_HI, 753 IX86_BT_INT, IX86_BT_V16QI, IX86_BT_INT, IX86_BT_V16QI, 754 IX86_BT_INT, IX86_BT_INT, IX86_BT_V16QI, IX86_BT_V16QI, 755 IX86_BT_INT, IX86_BT_V16QI, IX86_BT_INT, IX86_BT_INT, 756 IX86_BT_V8QI, IX86_BT_QI, IX86_BT_QI, IX86_BT_QI, 757 IX86_BT_QI, IX86_BT_QI, IX86_BT_QI, IX86_BT_QI, 758 IX86_BT_QI, IX86_BT_UCHAR, IX86_BT_UCHAR, IX86_BT_UINT, 759 IX86_BT_UINT, IX86_BT_PUNSIGNED, IX86_BT_UCHAR, IX86_BT_UCHAR, 760 IX86_BT_ULONGLONG, IX86_BT_ULONGLONG, IX86_BT_PULONGLONG, IX86_BT_V2DF, 761 IX86_BT_V2DF, IX86_BT_PCDOUBLE, IX86_BT_V4SI, IX86_BT_V2DF, 762 IX86_BT_INT, IX86_BT_V4DF, IX86_BT_V4DF, IX86_BT_PCDOUBLE, 763 IX86_BT_V4SI, IX86_BT_V4DF, IX86_BT_INT, IX86_BT_V4DF, 764 IX86_BT_V4DF, IX86_BT_PCDOUBLE, IX86_BT_V8SI, IX86_BT_V4DF, 765 IX86_BT_INT, IX86_BT_V2DF, IX86_BT_V2DF, IX86_BT_PCDOUBLE, 766 IX86_BT_V2DI, IX86_BT_V2DF, IX86_BT_INT, IX86_BT_V4DF, 767 IX86_BT_V4DF, IX86_BT_PCDOUBLE, IX86_BT_V4DI, IX86_BT_V4DF, 768 IX86_BT_INT, IX86_BT_V4SF, IX86_BT_V4SF, IX86_BT_PCFLOAT, 769 IX86_BT_V4SI, IX86_BT_V4SF, IX86_BT_INT, IX86_BT_V8SF, 770 IX86_BT_V8SF, IX86_BT_PCFLOAT, IX86_BT_V8SI, IX86_BT_V8SF, 771 IX86_BT_INT, IX86_BT_V4SF, IX86_BT_V4SF, IX86_BT_PCFLOAT, 772 IX86_BT_V2DI, IX86_BT_V4SF, IX86_BT_INT, IX86_BT_V4SF, 773 IX86_BT_V4SF, IX86_BT_PCFLOAT, IX86_BT_V4DI, IX86_BT_V4SF, 774 IX86_BT_INT, IX86_BT_V8SF, IX86_BT_V8SF, IX86_BT_PCFLOAT, 775 IX86_BT_V4DI, IX86_BT_V8SF, IX86_BT_INT, IX86_BT_V2DI, 776 IX86_BT_V2DI, IX86_BT_PCINT64, IX86_BT_V4SI, IX86_BT_V2DI, 777 IX86_BT_INT, IX86_BT_V4DI, IX86_BT_V4DI, IX86_BT_PCINT64, 778 IX86_BT_V4SI, IX86_BT_V4DI, IX86_BT_INT, IX86_BT_V4DI, 779 IX86_BT_V4DI, IX86_BT_PCINT64, IX86_BT_V8SI, IX86_BT_V4DI, 780 IX86_BT_INT, IX86_BT_V2DI, IX86_BT_V2DI, IX86_BT_PCINT64, 781 IX86_BT_V2DI, IX86_BT_V2DI, IX86_BT_INT, IX86_BT_V4DI, 782 IX86_BT_V4DI, IX86_BT_PCINT64, IX86_BT_V4DI, IX86_BT_V4DI, 783 IX86_BT_INT, IX86_BT_V4SI, IX86_BT_V4SI, IX86_BT_PCINT, 784 IX86_BT_V4SI, IX86_BT_V4SI, IX86_BT_INT, IX86_BT_V8SI, 785 IX86_BT_V8SI, IX86_BT_PCINT, IX86_BT_V8SI, IX86_BT_V8SI, 786 IX86_BT_INT, IX86_BT_V4SI, IX86_BT_V4SI, IX86_BT_PCINT, 787 IX86_BT_V2DI, IX86_BT_V4SI, IX86_BT_INT, IX86_BT_V4SI, 788 IX86_BT_V4SI, IX86_BT_PCINT, IX86_BT_V4DI, IX86_BT_V4SI, 789 IX86_BT_INT, IX86_BT_V8SI, IX86_BT_V8SI, IX86_BT_PCINT, 790 IX86_BT_V4DI, IX86_BT_V8SI, IX86_BT_INT 791}; 792 793 794static const unsigned short ix86_builtin_func_start[] = { 795 0, 1, 2, 3, 4, 5, 6, 8, 10, 12, 796 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 797 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 798 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 799 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 800 94, 96, 98, 100, 102, 104, 106, 108, 110, 112, 801 114, 116, 118, 120, 122, 124, 126, 128, 130, 132, 802 134, 136, 138, 140, 142, 144, 146, 148, 150, 152, 803 154, 156, 158, 160, 162, 164, 166, 168, 170, 172, 804 174, 176, 178, 180, 182, 184, 186, 188, 190, 193, 805 196, 199, 202, 205, 208, 211, 214, 217, 220, 223, 806 226, 229, 232, 235, 238, 241, 244, 247, 250, 253, 807 256, 259, 262, 265, 268, 271, 274, 277, 280, 283, 808 286, 289, 292, 295, 298, 301, 304, 307, 310, 313, 809 316, 319, 322, 325, 328, 331, 334, 337, 340, 343, 810 346, 349, 352, 355, 358, 361, 364, 367, 370, 373, 811 376, 379, 382, 385, 388, 391, 394, 397, 400, 403, 812 406, 409, 412, 415, 418, 421, 424, 427, 430, 433, 813 436, 439, 442, 445, 448, 451, 454, 457, 460, 463, 814 466, 469, 472, 475, 478, 481, 484, 487, 490, 493, 815 497, 501, 504, 507, 510, 513, 516, 519, 522, 525, 816 528, 531, 534, 537, 540, 543, 546, 549, 552, 555, 817 558, 561, 564, 567, 570, 573, 576, 579, 582, 585, 818 588, 591, 594, 598, 602, 606, 610, 614, 618, 622, 819 626, 630, 634, 639, 643, 647, 651, 655, 659, 663, 820 667, 671, 676, 680, 684, 688, 692, 696, 701, 705, 821 709, 713, 717, 721, 725, 729, 733, 737, 741, 745, 822 750, 754, 758, 762, 766, 770, 774, 778, 782, 786, 823 790, 794, 798, 802, 806, 810, 814, 818, 822, 826, 824 830, 834, 838, 842, 846, 850, 854, 859, 864, 870, 825 876, 885, 890, 895, 901, 907, 913, 919, 925, 931, 826 937, 943, 949, 955, 961, 967, 973, 979, 985, 991, 827 997, 1003, 1009, 1015 828}; 829 830 831static const enum ix86_builtin_func_type ix86_builtin_func_alias_base[] = { 832 V2DF_FTYPE_V2DF, 833 V4DF_FTYPE_V4DF, 834 V4SF_FTYPE_V4SF, 835 V8SF_FTYPE_V8SF, 836 V4SI_FTYPE_V2DF_V2DF, 837 V8SI_FTYPE_V4DF_V4DF, 838 V4SI_FTYPE_V4SF, 839 V8SI_FTYPE_V8SF, 840 INT_FTYPE_V2DF_V2DF, 841 INT_FTYPE_V2DI_V2DI, 842 INT_FTYPE_V4DF_V4DF, 843 INT_FTYPE_V4DI_V4DI, 844 INT_FTYPE_V4SF_V4SF, 845 INT_FTYPE_V8SF_V8SF, 846 V2DF_FTYPE_V2DF, 847 V4SF_FTYPE_V4SF, 848 V1DI_FTYPE_V1DI_SI, 849 V2DI_FTYPE_V2DI_SI, 850 V2SI_FTYPE_V2SI_SI, 851 V4HI_FTYPE_V4HI_SI, 852 V4SI_FTYPE_V4SI_SI, 853 V8HI_FTYPE_V8HI_SI, 854 V1DI_FTYPE_V1DI_V1DI, 855 V2DI_FTYPE_V2DI_V2DI, 856 V2SI_FTYPE_V2SI_V2SI, 857 V4HI_FTYPE_V4HI_V4HI, 858 V4SI_FTYPE_V4SI_V4SI, 859 V8HI_FTYPE_V8HI_V8HI, 860 V16HI_FTYPE_V16HI_SI, 861 V16HI_FTYPE_V16HI_V8HI, 862 V8SI_FTYPE_V8SI_SI, 863 V8SI_FTYPE_V8SI_V4SI, 864 V4DI_FTYPE_V4DI_INT, 865 V4DI_FTYPE_V4DI_V2DI, 866 V2DF_FTYPE_V2DF_V2DF, 867 V4SF_FTYPE_V4SF_V4SF, 868 V4DI_FTYPE_V4DI_INT, 869 V2DI_FTYPE_V2DI_INT, 870 V4DI_FTYPE_V4DI_V4DI_INT, 871 V2DI_FTYPE_V2DI_V2DI_INT, 872 V1DI_FTYPE_V1DI_V1DI_INT, 873 V16QI_FTYPE_V16QI_V16QI, 874 V2DI_FTYPE_V2DI_V2DI, 875 V4SI_FTYPE_V4SI_V4SI, 876 V8HI_FTYPE_V8HI_V8HI, 877 V16QI_FTYPE_V16QI_V16QI, 878 V2DF_FTYPE_V2DF_V2DF, 879 V2DI_FTYPE_V2DI_V2DI, 880 V4SF_FTYPE_V4SF_V4SF, 881 V4SI_FTYPE_V4SI_V4SI, 882 V8HI_FTYPE_V8HI_V8HI 883}; 884