1 2#include "nir.h" 3 4nir_op 5nir_type_conversion_op(nir_alu_type src, nir_alu_type dst, nir_rounding_mode rnd) 6{ 7 nir_alu_type src_base = (nir_alu_type) nir_alu_type_get_base_type(src); 8 nir_alu_type dst_base = (nir_alu_type) nir_alu_type_get_base_type(dst); 9 unsigned src_bit_size = nir_alu_type_get_type_size(src); 10 unsigned dst_bit_size = nir_alu_type_get_type_size(dst); 11 12 if (src == dst && src_base == nir_type_float) { 13 return nir_op_mov; 14 } else if (src == dst && src_base == nir_type_bool) { 15 return nir_op_mov; 16 } else if ((src_base == nir_type_int || src_base == nir_type_uint) && 17 (dst_base == nir_type_int || dst_base == nir_type_uint) && 18 src_bit_size == dst_bit_size) { 19 /* Integer <-> integer conversions with the same bit-size on both 20 * ends are just no-op moves. 21 */ 22 return nir_op_mov; 23 } 24 25 switch (src_base) { 26 case nir_type_int: 27 switch (dst_base) { 28 case nir_type_int: 29 case nir_type_uint: 30 31 switch (dst_bit_size) { 32 case 1: 33 assert(rnd == nir_rounding_mode_undef); 34 return nir_op_i2i1; 35 case 8: 36 assert(rnd == nir_rounding_mode_undef); 37 return nir_op_i2i8; 38 case 16: 39 assert(rnd == nir_rounding_mode_undef); 40 return nir_op_i2i16; 41 case 32: 42 assert(rnd == nir_rounding_mode_undef); 43 return nir_op_i2i32; 44 case 64: 45 assert(rnd == nir_rounding_mode_undef); 46 return nir_op_i2i64; 47 default: 48 unreachable("Invalid nir alu bit size"); 49 } 50 case nir_type_float: 51 switch (dst_bit_size) { 52 case 16: 53 assert(rnd == nir_rounding_mode_undef); 54 return nir_op_i2f16; 55 case 32: 56 assert(rnd == nir_rounding_mode_undef); 57 return nir_op_i2f32; 58 case 64: 59 assert(rnd == nir_rounding_mode_undef); 60 return nir_op_i2f64; 61 default: 62 unreachable("Invalid nir alu bit size"); 63 } 64 case nir_type_bool: 65 switch (dst_bit_size) { 66 case 1: 67 assert(rnd == nir_rounding_mode_undef); 68 return nir_op_i2b1; 69 case 8: 70 assert(rnd == nir_rounding_mode_undef); 71 return nir_op_i2b8; 72 case 16: 73 assert(rnd == nir_rounding_mode_undef); 74 return nir_op_i2b16; 75 case 32: 76 assert(rnd == nir_rounding_mode_undef); 77 return nir_op_i2b32; 78 default: 79 unreachable("Invalid nir alu bit size"); 80 } 81 default: 82 unreachable("Invalid nir alu base type"); 83 } 84 case nir_type_uint: 85 switch (dst_base) { 86 case nir_type_int: 87 case nir_type_uint: 88 89 switch (dst_bit_size) { 90 case 1: 91 assert(rnd == nir_rounding_mode_undef); 92 return nir_op_u2u1; 93 case 8: 94 assert(rnd == nir_rounding_mode_undef); 95 return nir_op_u2u8; 96 case 16: 97 assert(rnd == nir_rounding_mode_undef); 98 return nir_op_u2u16; 99 case 32: 100 assert(rnd == nir_rounding_mode_undef); 101 return nir_op_u2u32; 102 case 64: 103 assert(rnd == nir_rounding_mode_undef); 104 return nir_op_u2u64; 105 default: 106 unreachable("Invalid nir alu bit size"); 107 } 108 case nir_type_float: 109 switch (dst_bit_size) { 110 case 16: 111 assert(rnd == nir_rounding_mode_undef); 112 return nir_op_u2f16; 113 case 32: 114 assert(rnd == nir_rounding_mode_undef); 115 return nir_op_u2f32; 116 case 64: 117 assert(rnd == nir_rounding_mode_undef); 118 return nir_op_u2f64; 119 default: 120 unreachable("Invalid nir alu bit size"); 121 } 122 case nir_type_bool: 123 124 switch (dst_bit_size) { 125 case 1: 126 assert(rnd == nir_rounding_mode_undef); 127 return nir_op_i2b1; 128 case 8: 129 assert(rnd == nir_rounding_mode_undef); 130 return nir_op_i2b8; 131 case 16: 132 assert(rnd == nir_rounding_mode_undef); 133 return nir_op_i2b16; 134 case 32: 135 assert(rnd == nir_rounding_mode_undef); 136 return nir_op_i2b32; 137 default: 138 unreachable("Invalid nir alu bit size"); 139 } 140 default: 141 unreachable("Invalid nir alu base type"); 142 } 143 case nir_type_float: 144 switch (dst_base) { 145 case nir_type_int: 146 switch (dst_bit_size) { 147 case 1: 148 assert(rnd == nir_rounding_mode_undef); 149 return nir_op_f2i1; 150 case 8: 151 assert(rnd == nir_rounding_mode_undef); 152 return nir_op_f2i8; 153 case 16: 154 assert(rnd == nir_rounding_mode_undef); 155 return nir_op_f2i16; 156 case 32: 157 assert(rnd == nir_rounding_mode_undef); 158 return nir_op_f2i32; 159 case 64: 160 assert(rnd == nir_rounding_mode_undef); 161 return nir_op_f2i64; 162 default: 163 unreachable("Invalid nir alu bit size"); 164 } 165 case nir_type_uint: 166 switch (dst_bit_size) { 167 case 1: 168 assert(rnd == nir_rounding_mode_undef); 169 return nir_op_f2u1; 170 case 8: 171 assert(rnd == nir_rounding_mode_undef); 172 return nir_op_f2u8; 173 case 16: 174 assert(rnd == nir_rounding_mode_undef); 175 return nir_op_f2u16; 176 case 32: 177 assert(rnd == nir_rounding_mode_undef); 178 return nir_op_f2u32; 179 case 64: 180 assert(rnd == nir_rounding_mode_undef); 181 return nir_op_f2u64; 182 default: 183 unreachable("Invalid nir alu bit size"); 184 } 185 case nir_type_float: 186 switch (dst_bit_size) { 187 case 16: 188 switch(rnd) { 189 case nir_rounding_mode_rtne: 190 return nir_op_f2f16_rtne; 191 case nir_rounding_mode_rtz: 192 return nir_op_f2f16_rtz; 193 case nir_rounding_mode_undef: 194 return nir_op_f2f16; 195 default: 196 unreachable("Invalid 16-bit nir rounding mode"); 197 } 198 case 32: 199 assert(rnd == nir_rounding_mode_undef); 200 return nir_op_f2f32; 201 case 64: 202 assert(rnd == nir_rounding_mode_undef); 203 return nir_op_f2f64; 204 default: 205 unreachable("Invalid nir alu bit size"); 206 } 207 case nir_type_bool: 208 switch (dst_bit_size) { 209 case 1: 210 assert(rnd == nir_rounding_mode_undef); 211 return nir_op_f2b1; 212 case 8: 213 assert(rnd == nir_rounding_mode_undef); 214 return nir_op_f2b8; 215 case 16: 216 assert(rnd == nir_rounding_mode_undef); 217 return nir_op_f2b16; 218 case 32: 219 assert(rnd == nir_rounding_mode_undef); 220 return nir_op_f2b32; 221 default: 222 unreachable("Invalid nir alu bit size"); 223 } 224 default: 225 unreachable("Invalid nir alu base type"); 226 } 227 case nir_type_bool: 228 switch (dst_base) { 229 case nir_type_int: 230 case nir_type_uint: 231 232 switch (dst_bit_size) { 233 case 1: 234 assert(rnd == nir_rounding_mode_undef); 235 return nir_op_b2i1; 236 case 8: 237 assert(rnd == nir_rounding_mode_undef); 238 return nir_op_b2i8; 239 case 16: 240 assert(rnd == nir_rounding_mode_undef); 241 return nir_op_b2i16; 242 case 32: 243 assert(rnd == nir_rounding_mode_undef); 244 return nir_op_b2i32; 245 case 64: 246 assert(rnd == nir_rounding_mode_undef); 247 return nir_op_b2i64; 248 default: 249 unreachable("Invalid nir alu bit size"); 250 } 251 case nir_type_float: 252 switch (dst_bit_size) { 253 case 16: 254 assert(rnd == nir_rounding_mode_undef); 255 return nir_op_b2f16; 256 case 32: 257 assert(rnd == nir_rounding_mode_undef); 258 return nir_op_b2f32; 259 case 64: 260 assert(rnd == nir_rounding_mode_undef); 261 return nir_op_b2f64; 262 default: 263 unreachable("Invalid nir alu bit size"); 264 } 265 case nir_type_bool: 266 267 switch (dst_bit_size) { 268 case 1: 269 assert(rnd == nir_rounding_mode_undef); 270 return nir_op_b2i1; 271 case 8: 272 assert(rnd == nir_rounding_mode_undef); 273 return nir_op_b2i8; 274 case 16: 275 assert(rnd == nir_rounding_mode_undef); 276 return nir_op_b2i16; 277 case 32: 278 assert(rnd == nir_rounding_mode_undef); 279 return nir_op_b2i32; 280 case 64: 281 assert(rnd == nir_rounding_mode_undef); 282 return nir_op_b2i64; 283 default: 284 unreachable("Invalid nir alu bit size"); 285 } 286 default: 287 unreachable("Invalid nir alu base type"); 288 } 289 default: 290 unreachable("Invalid nir alu base type"); 291 } 292} 293 294const nir_op_info nir_op_infos[nir_num_opcodes] = { 295{ 296 .name = "amul", 297 .num_inputs = 2, 298 .output_size = 0, 299 .output_type = nir_type_int, 300 .input_sizes = { 301 0, 0 302 }, 303 .input_types = { 304 nir_type_int, nir_type_int 305 }, 306 .is_conversion = false, 307 .algebraic_properties = 308 NIR_OP_IS_2SRC_COMMUTATIVE | NIR_OP_IS_ASSOCIATIVE 309}, 310{ 311 .name = "b16all_fequal16", 312 .num_inputs = 2, 313 .output_size = 1, 314 .output_type = nir_type_bool16, 315 .input_sizes = { 316 16, 16 317 }, 318 .input_types = { 319 nir_type_float, nir_type_float 320 }, 321 .is_conversion = false, 322 .algebraic_properties = 323 NIR_OP_IS_2SRC_COMMUTATIVE 324}, 325{ 326 .name = "b16all_fequal2", 327 .num_inputs = 2, 328 .output_size = 1, 329 .output_type = nir_type_bool16, 330 .input_sizes = { 331 2, 2 332 }, 333 .input_types = { 334 nir_type_float, nir_type_float 335 }, 336 .is_conversion = false, 337 .algebraic_properties = 338 NIR_OP_IS_2SRC_COMMUTATIVE 339}, 340{ 341 .name = "b16all_fequal3", 342 .num_inputs = 2, 343 .output_size = 1, 344 .output_type = nir_type_bool16, 345 .input_sizes = { 346 3, 3 347 }, 348 .input_types = { 349 nir_type_float, nir_type_float 350 }, 351 .is_conversion = false, 352 .algebraic_properties = 353 NIR_OP_IS_2SRC_COMMUTATIVE 354}, 355{ 356 .name = "b16all_fequal4", 357 .num_inputs = 2, 358 .output_size = 1, 359 .output_type = nir_type_bool16, 360 .input_sizes = { 361 4, 4 362 }, 363 .input_types = { 364 nir_type_float, nir_type_float 365 }, 366 .is_conversion = false, 367 .algebraic_properties = 368 NIR_OP_IS_2SRC_COMMUTATIVE 369}, 370{ 371 .name = "b16all_fequal5", 372 .num_inputs = 2, 373 .output_size = 1, 374 .output_type = nir_type_bool16, 375 .input_sizes = { 376 5, 5 377 }, 378 .input_types = { 379 nir_type_float, nir_type_float 380 }, 381 .is_conversion = false, 382 .algebraic_properties = 383 NIR_OP_IS_2SRC_COMMUTATIVE 384}, 385{ 386 .name = "b16all_fequal8", 387 .num_inputs = 2, 388 .output_size = 1, 389 .output_type = nir_type_bool16, 390 .input_sizes = { 391 8, 8 392 }, 393 .input_types = { 394 nir_type_float, nir_type_float 395 }, 396 .is_conversion = false, 397 .algebraic_properties = 398 NIR_OP_IS_2SRC_COMMUTATIVE 399}, 400{ 401 .name = "b16all_iequal16", 402 .num_inputs = 2, 403 .output_size = 1, 404 .output_type = nir_type_bool16, 405 .input_sizes = { 406 16, 16 407 }, 408 .input_types = { 409 nir_type_int, nir_type_int 410 }, 411 .is_conversion = false, 412 .algebraic_properties = 413 NIR_OP_IS_2SRC_COMMUTATIVE 414}, 415{ 416 .name = "b16all_iequal2", 417 .num_inputs = 2, 418 .output_size = 1, 419 .output_type = nir_type_bool16, 420 .input_sizes = { 421 2, 2 422 }, 423 .input_types = { 424 nir_type_int, nir_type_int 425 }, 426 .is_conversion = false, 427 .algebraic_properties = 428 NIR_OP_IS_2SRC_COMMUTATIVE 429}, 430{ 431 .name = "b16all_iequal3", 432 .num_inputs = 2, 433 .output_size = 1, 434 .output_type = nir_type_bool16, 435 .input_sizes = { 436 3, 3 437 }, 438 .input_types = { 439 nir_type_int, nir_type_int 440 }, 441 .is_conversion = false, 442 .algebraic_properties = 443 NIR_OP_IS_2SRC_COMMUTATIVE 444}, 445{ 446 .name = "b16all_iequal4", 447 .num_inputs = 2, 448 .output_size = 1, 449 .output_type = nir_type_bool16, 450 .input_sizes = { 451 4, 4 452 }, 453 .input_types = { 454 nir_type_int, nir_type_int 455 }, 456 .is_conversion = false, 457 .algebraic_properties = 458 NIR_OP_IS_2SRC_COMMUTATIVE 459}, 460{ 461 .name = "b16all_iequal5", 462 .num_inputs = 2, 463 .output_size = 1, 464 .output_type = nir_type_bool16, 465 .input_sizes = { 466 5, 5 467 }, 468 .input_types = { 469 nir_type_int, nir_type_int 470 }, 471 .is_conversion = false, 472 .algebraic_properties = 473 NIR_OP_IS_2SRC_COMMUTATIVE 474}, 475{ 476 .name = "b16all_iequal8", 477 .num_inputs = 2, 478 .output_size = 1, 479 .output_type = nir_type_bool16, 480 .input_sizes = { 481 8, 8 482 }, 483 .input_types = { 484 nir_type_int, nir_type_int 485 }, 486 .is_conversion = false, 487 .algebraic_properties = 488 NIR_OP_IS_2SRC_COMMUTATIVE 489}, 490{ 491 .name = "b16any_fnequal16", 492 .num_inputs = 2, 493 .output_size = 1, 494 .output_type = nir_type_bool16, 495 .input_sizes = { 496 16, 16 497 }, 498 .input_types = { 499 nir_type_float, nir_type_float 500 }, 501 .is_conversion = false, 502 .algebraic_properties = 503 NIR_OP_IS_2SRC_COMMUTATIVE 504}, 505{ 506 .name = "b16any_fnequal2", 507 .num_inputs = 2, 508 .output_size = 1, 509 .output_type = nir_type_bool16, 510 .input_sizes = { 511 2, 2 512 }, 513 .input_types = { 514 nir_type_float, nir_type_float 515 }, 516 .is_conversion = false, 517 .algebraic_properties = 518 NIR_OP_IS_2SRC_COMMUTATIVE 519}, 520{ 521 .name = "b16any_fnequal3", 522 .num_inputs = 2, 523 .output_size = 1, 524 .output_type = nir_type_bool16, 525 .input_sizes = { 526 3, 3 527 }, 528 .input_types = { 529 nir_type_float, nir_type_float 530 }, 531 .is_conversion = false, 532 .algebraic_properties = 533 NIR_OP_IS_2SRC_COMMUTATIVE 534}, 535{ 536 .name = "b16any_fnequal4", 537 .num_inputs = 2, 538 .output_size = 1, 539 .output_type = nir_type_bool16, 540 .input_sizes = { 541 4, 4 542 }, 543 .input_types = { 544 nir_type_float, nir_type_float 545 }, 546 .is_conversion = false, 547 .algebraic_properties = 548 NIR_OP_IS_2SRC_COMMUTATIVE 549}, 550{ 551 .name = "b16any_fnequal5", 552 .num_inputs = 2, 553 .output_size = 1, 554 .output_type = nir_type_bool16, 555 .input_sizes = { 556 5, 5 557 }, 558 .input_types = { 559 nir_type_float, nir_type_float 560 }, 561 .is_conversion = false, 562 .algebraic_properties = 563 NIR_OP_IS_2SRC_COMMUTATIVE 564}, 565{ 566 .name = "b16any_fnequal8", 567 .num_inputs = 2, 568 .output_size = 1, 569 .output_type = nir_type_bool16, 570 .input_sizes = { 571 8, 8 572 }, 573 .input_types = { 574 nir_type_float, nir_type_float 575 }, 576 .is_conversion = false, 577 .algebraic_properties = 578 NIR_OP_IS_2SRC_COMMUTATIVE 579}, 580{ 581 .name = "b16any_inequal16", 582 .num_inputs = 2, 583 .output_size = 1, 584 .output_type = nir_type_bool16, 585 .input_sizes = { 586 16, 16 587 }, 588 .input_types = { 589 nir_type_int, nir_type_int 590 }, 591 .is_conversion = false, 592 .algebraic_properties = 593 NIR_OP_IS_2SRC_COMMUTATIVE 594}, 595{ 596 .name = "b16any_inequal2", 597 .num_inputs = 2, 598 .output_size = 1, 599 .output_type = nir_type_bool16, 600 .input_sizes = { 601 2, 2 602 }, 603 .input_types = { 604 nir_type_int, nir_type_int 605 }, 606 .is_conversion = false, 607 .algebraic_properties = 608 NIR_OP_IS_2SRC_COMMUTATIVE 609}, 610{ 611 .name = "b16any_inequal3", 612 .num_inputs = 2, 613 .output_size = 1, 614 .output_type = nir_type_bool16, 615 .input_sizes = { 616 3, 3 617 }, 618 .input_types = { 619 nir_type_int, nir_type_int 620 }, 621 .is_conversion = false, 622 .algebraic_properties = 623 NIR_OP_IS_2SRC_COMMUTATIVE 624}, 625{ 626 .name = "b16any_inequal4", 627 .num_inputs = 2, 628 .output_size = 1, 629 .output_type = nir_type_bool16, 630 .input_sizes = { 631 4, 4 632 }, 633 .input_types = { 634 nir_type_int, nir_type_int 635 }, 636 .is_conversion = false, 637 .algebraic_properties = 638 NIR_OP_IS_2SRC_COMMUTATIVE 639}, 640{ 641 .name = "b16any_inequal5", 642 .num_inputs = 2, 643 .output_size = 1, 644 .output_type = nir_type_bool16, 645 .input_sizes = { 646 5, 5 647 }, 648 .input_types = { 649 nir_type_int, nir_type_int 650 }, 651 .is_conversion = false, 652 .algebraic_properties = 653 NIR_OP_IS_2SRC_COMMUTATIVE 654}, 655{ 656 .name = "b16any_inequal8", 657 .num_inputs = 2, 658 .output_size = 1, 659 .output_type = nir_type_bool16, 660 .input_sizes = { 661 8, 8 662 }, 663 .input_types = { 664 nir_type_int, nir_type_int 665 }, 666 .is_conversion = false, 667 .algebraic_properties = 668 NIR_OP_IS_2SRC_COMMUTATIVE 669}, 670{ 671 .name = "b16csel", 672 .num_inputs = 3, 673 .output_size = 0, 674 .output_type = nir_type_uint, 675 .input_sizes = { 676 0, 0, 0 677 }, 678 .input_types = { 679 nir_type_bool16, nir_type_uint, nir_type_uint 680 }, 681 .is_conversion = false, 682 .algebraic_properties = 683 0 684}, 685{ 686 .name = "b2b1", 687 .num_inputs = 1, 688 .output_size = 0, 689 .output_type = nir_type_bool1, 690 .input_sizes = { 691 0 692 }, 693 .input_types = { 694 nir_type_bool 695 }, 696 .is_conversion = true, 697 .algebraic_properties = 698 0 699}, 700{ 701 .name = "b2b16", 702 .num_inputs = 1, 703 .output_size = 0, 704 .output_type = nir_type_bool16, 705 .input_sizes = { 706 0 707 }, 708 .input_types = { 709 nir_type_bool 710 }, 711 .is_conversion = true, 712 .algebraic_properties = 713 0 714}, 715{ 716 .name = "b2b32", 717 .num_inputs = 1, 718 .output_size = 0, 719 .output_type = nir_type_bool32, 720 .input_sizes = { 721 0 722 }, 723 .input_types = { 724 nir_type_bool 725 }, 726 .is_conversion = true, 727 .algebraic_properties = 728 0 729}, 730{ 731 .name = "b2b8", 732 .num_inputs = 1, 733 .output_size = 0, 734 .output_type = nir_type_bool8, 735 .input_sizes = { 736 0 737 }, 738 .input_types = { 739 nir_type_bool 740 }, 741 .is_conversion = true, 742 .algebraic_properties = 743 0 744}, 745{ 746 .name = "b2f16", 747 .num_inputs = 1, 748 .output_size = 0, 749 .output_type = nir_type_float16, 750 .input_sizes = { 751 0 752 }, 753 .input_types = { 754 nir_type_bool 755 }, 756 .is_conversion = true, 757 .algebraic_properties = 758 0 759}, 760{ 761 .name = "b2f32", 762 .num_inputs = 1, 763 .output_size = 0, 764 .output_type = nir_type_float32, 765 .input_sizes = { 766 0 767 }, 768 .input_types = { 769 nir_type_bool 770 }, 771 .is_conversion = true, 772 .algebraic_properties = 773 0 774}, 775{ 776 .name = "b2f64", 777 .num_inputs = 1, 778 .output_size = 0, 779 .output_type = nir_type_float64, 780 .input_sizes = { 781 0 782 }, 783 .input_types = { 784 nir_type_bool 785 }, 786 .is_conversion = true, 787 .algebraic_properties = 788 0 789}, 790{ 791 .name = "b2i1", 792 .num_inputs = 1, 793 .output_size = 0, 794 .output_type = nir_type_int1, 795 .input_sizes = { 796 0 797 }, 798 .input_types = { 799 nir_type_bool 800 }, 801 .is_conversion = true, 802 .algebraic_properties = 803 0 804}, 805{ 806 .name = "b2i16", 807 .num_inputs = 1, 808 .output_size = 0, 809 .output_type = nir_type_int16, 810 .input_sizes = { 811 0 812 }, 813 .input_types = { 814 nir_type_bool 815 }, 816 .is_conversion = true, 817 .algebraic_properties = 818 0 819}, 820{ 821 .name = "b2i32", 822 .num_inputs = 1, 823 .output_size = 0, 824 .output_type = nir_type_int32, 825 .input_sizes = { 826 0 827 }, 828 .input_types = { 829 nir_type_bool 830 }, 831 .is_conversion = true, 832 .algebraic_properties = 833 0 834}, 835{ 836 .name = "b2i64", 837 .num_inputs = 1, 838 .output_size = 0, 839 .output_type = nir_type_int64, 840 .input_sizes = { 841 0 842 }, 843 .input_types = { 844 nir_type_bool 845 }, 846 .is_conversion = true, 847 .algebraic_properties = 848 0 849}, 850{ 851 .name = "b2i8", 852 .num_inputs = 1, 853 .output_size = 0, 854 .output_type = nir_type_int8, 855 .input_sizes = { 856 0 857 }, 858 .input_types = { 859 nir_type_bool 860 }, 861 .is_conversion = true, 862 .algebraic_properties = 863 0 864}, 865{ 866 .name = "b32all_fequal16", 867 .num_inputs = 2, 868 .output_size = 1, 869 .output_type = nir_type_bool32, 870 .input_sizes = { 871 16, 16 872 }, 873 .input_types = { 874 nir_type_float, nir_type_float 875 }, 876 .is_conversion = false, 877 .algebraic_properties = 878 NIR_OP_IS_2SRC_COMMUTATIVE 879}, 880{ 881 .name = "b32all_fequal2", 882 .num_inputs = 2, 883 .output_size = 1, 884 .output_type = nir_type_bool32, 885 .input_sizes = { 886 2, 2 887 }, 888 .input_types = { 889 nir_type_float, nir_type_float 890 }, 891 .is_conversion = false, 892 .algebraic_properties = 893 NIR_OP_IS_2SRC_COMMUTATIVE 894}, 895{ 896 .name = "b32all_fequal3", 897 .num_inputs = 2, 898 .output_size = 1, 899 .output_type = nir_type_bool32, 900 .input_sizes = { 901 3, 3 902 }, 903 .input_types = { 904 nir_type_float, nir_type_float 905 }, 906 .is_conversion = false, 907 .algebraic_properties = 908 NIR_OP_IS_2SRC_COMMUTATIVE 909}, 910{ 911 .name = "b32all_fequal4", 912 .num_inputs = 2, 913 .output_size = 1, 914 .output_type = nir_type_bool32, 915 .input_sizes = { 916 4, 4 917 }, 918 .input_types = { 919 nir_type_float, nir_type_float 920 }, 921 .is_conversion = false, 922 .algebraic_properties = 923 NIR_OP_IS_2SRC_COMMUTATIVE 924}, 925{ 926 .name = "b32all_fequal5", 927 .num_inputs = 2, 928 .output_size = 1, 929 .output_type = nir_type_bool32, 930 .input_sizes = { 931 5, 5 932 }, 933 .input_types = { 934 nir_type_float, nir_type_float 935 }, 936 .is_conversion = false, 937 .algebraic_properties = 938 NIR_OP_IS_2SRC_COMMUTATIVE 939}, 940{ 941 .name = "b32all_fequal8", 942 .num_inputs = 2, 943 .output_size = 1, 944 .output_type = nir_type_bool32, 945 .input_sizes = { 946 8, 8 947 }, 948 .input_types = { 949 nir_type_float, nir_type_float 950 }, 951 .is_conversion = false, 952 .algebraic_properties = 953 NIR_OP_IS_2SRC_COMMUTATIVE 954}, 955{ 956 .name = "b32all_iequal16", 957 .num_inputs = 2, 958 .output_size = 1, 959 .output_type = nir_type_bool32, 960 .input_sizes = { 961 16, 16 962 }, 963 .input_types = { 964 nir_type_int, nir_type_int 965 }, 966 .is_conversion = false, 967 .algebraic_properties = 968 NIR_OP_IS_2SRC_COMMUTATIVE 969}, 970{ 971 .name = "b32all_iequal2", 972 .num_inputs = 2, 973 .output_size = 1, 974 .output_type = nir_type_bool32, 975 .input_sizes = { 976 2, 2 977 }, 978 .input_types = { 979 nir_type_int, nir_type_int 980 }, 981 .is_conversion = false, 982 .algebraic_properties = 983 NIR_OP_IS_2SRC_COMMUTATIVE 984}, 985{ 986 .name = "b32all_iequal3", 987 .num_inputs = 2, 988 .output_size = 1, 989 .output_type = nir_type_bool32, 990 .input_sizes = { 991 3, 3 992 }, 993 .input_types = { 994 nir_type_int, nir_type_int 995 }, 996 .is_conversion = false, 997 .algebraic_properties = 998 NIR_OP_IS_2SRC_COMMUTATIVE 999}, 1000{ 1001 .name = "b32all_iequal4", 1002 .num_inputs = 2, 1003 .output_size = 1, 1004 .output_type = nir_type_bool32, 1005 .input_sizes = { 1006 4, 4 1007 }, 1008 .input_types = { 1009 nir_type_int, nir_type_int 1010 }, 1011 .is_conversion = false, 1012 .algebraic_properties = 1013 NIR_OP_IS_2SRC_COMMUTATIVE 1014}, 1015{ 1016 .name = "b32all_iequal5", 1017 .num_inputs = 2, 1018 .output_size = 1, 1019 .output_type = nir_type_bool32, 1020 .input_sizes = { 1021 5, 5 1022 }, 1023 .input_types = { 1024 nir_type_int, nir_type_int 1025 }, 1026 .is_conversion = false, 1027 .algebraic_properties = 1028 NIR_OP_IS_2SRC_COMMUTATIVE 1029}, 1030{ 1031 .name = "b32all_iequal8", 1032 .num_inputs = 2, 1033 .output_size = 1, 1034 .output_type = nir_type_bool32, 1035 .input_sizes = { 1036 8, 8 1037 }, 1038 .input_types = { 1039 nir_type_int, nir_type_int 1040 }, 1041 .is_conversion = false, 1042 .algebraic_properties = 1043 NIR_OP_IS_2SRC_COMMUTATIVE 1044}, 1045{ 1046 .name = "b32any_fnequal16", 1047 .num_inputs = 2, 1048 .output_size = 1, 1049 .output_type = nir_type_bool32, 1050 .input_sizes = { 1051 16, 16 1052 }, 1053 .input_types = { 1054 nir_type_float, nir_type_float 1055 }, 1056 .is_conversion = false, 1057 .algebraic_properties = 1058 NIR_OP_IS_2SRC_COMMUTATIVE 1059}, 1060{ 1061 .name = "b32any_fnequal2", 1062 .num_inputs = 2, 1063 .output_size = 1, 1064 .output_type = nir_type_bool32, 1065 .input_sizes = { 1066 2, 2 1067 }, 1068 .input_types = { 1069 nir_type_float, nir_type_float 1070 }, 1071 .is_conversion = false, 1072 .algebraic_properties = 1073 NIR_OP_IS_2SRC_COMMUTATIVE 1074}, 1075{ 1076 .name = "b32any_fnequal3", 1077 .num_inputs = 2, 1078 .output_size = 1, 1079 .output_type = nir_type_bool32, 1080 .input_sizes = { 1081 3, 3 1082 }, 1083 .input_types = { 1084 nir_type_float, nir_type_float 1085 }, 1086 .is_conversion = false, 1087 .algebraic_properties = 1088 NIR_OP_IS_2SRC_COMMUTATIVE 1089}, 1090{ 1091 .name = "b32any_fnequal4", 1092 .num_inputs = 2, 1093 .output_size = 1, 1094 .output_type = nir_type_bool32, 1095 .input_sizes = { 1096 4, 4 1097 }, 1098 .input_types = { 1099 nir_type_float, nir_type_float 1100 }, 1101 .is_conversion = false, 1102 .algebraic_properties = 1103 NIR_OP_IS_2SRC_COMMUTATIVE 1104}, 1105{ 1106 .name = "b32any_fnequal5", 1107 .num_inputs = 2, 1108 .output_size = 1, 1109 .output_type = nir_type_bool32, 1110 .input_sizes = { 1111 5, 5 1112 }, 1113 .input_types = { 1114 nir_type_float, nir_type_float 1115 }, 1116 .is_conversion = false, 1117 .algebraic_properties = 1118 NIR_OP_IS_2SRC_COMMUTATIVE 1119}, 1120{ 1121 .name = "b32any_fnequal8", 1122 .num_inputs = 2, 1123 .output_size = 1, 1124 .output_type = nir_type_bool32, 1125 .input_sizes = { 1126 8, 8 1127 }, 1128 .input_types = { 1129 nir_type_float, nir_type_float 1130 }, 1131 .is_conversion = false, 1132 .algebraic_properties = 1133 NIR_OP_IS_2SRC_COMMUTATIVE 1134}, 1135{ 1136 .name = "b32any_inequal16", 1137 .num_inputs = 2, 1138 .output_size = 1, 1139 .output_type = nir_type_bool32, 1140 .input_sizes = { 1141 16, 16 1142 }, 1143 .input_types = { 1144 nir_type_int, nir_type_int 1145 }, 1146 .is_conversion = false, 1147 .algebraic_properties = 1148 NIR_OP_IS_2SRC_COMMUTATIVE 1149}, 1150{ 1151 .name = "b32any_inequal2", 1152 .num_inputs = 2, 1153 .output_size = 1, 1154 .output_type = nir_type_bool32, 1155 .input_sizes = { 1156 2, 2 1157 }, 1158 .input_types = { 1159 nir_type_int, nir_type_int 1160 }, 1161 .is_conversion = false, 1162 .algebraic_properties = 1163 NIR_OP_IS_2SRC_COMMUTATIVE 1164}, 1165{ 1166 .name = "b32any_inequal3", 1167 .num_inputs = 2, 1168 .output_size = 1, 1169 .output_type = nir_type_bool32, 1170 .input_sizes = { 1171 3, 3 1172 }, 1173 .input_types = { 1174 nir_type_int, nir_type_int 1175 }, 1176 .is_conversion = false, 1177 .algebraic_properties = 1178 NIR_OP_IS_2SRC_COMMUTATIVE 1179}, 1180{ 1181 .name = "b32any_inequal4", 1182 .num_inputs = 2, 1183 .output_size = 1, 1184 .output_type = nir_type_bool32, 1185 .input_sizes = { 1186 4, 4 1187 }, 1188 .input_types = { 1189 nir_type_int, nir_type_int 1190 }, 1191 .is_conversion = false, 1192 .algebraic_properties = 1193 NIR_OP_IS_2SRC_COMMUTATIVE 1194}, 1195{ 1196 .name = "b32any_inequal5", 1197 .num_inputs = 2, 1198 .output_size = 1, 1199 .output_type = nir_type_bool32, 1200 .input_sizes = { 1201 5, 5 1202 }, 1203 .input_types = { 1204 nir_type_int, nir_type_int 1205 }, 1206 .is_conversion = false, 1207 .algebraic_properties = 1208 NIR_OP_IS_2SRC_COMMUTATIVE 1209}, 1210{ 1211 .name = "b32any_inequal8", 1212 .num_inputs = 2, 1213 .output_size = 1, 1214 .output_type = nir_type_bool32, 1215 .input_sizes = { 1216 8, 8 1217 }, 1218 .input_types = { 1219 nir_type_int, nir_type_int 1220 }, 1221 .is_conversion = false, 1222 .algebraic_properties = 1223 NIR_OP_IS_2SRC_COMMUTATIVE 1224}, 1225{ 1226 .name = "b32csel", 1227 .num_inputs = 3, 1228 .output_size = 0, 1229 .output_type = nir_type_uint, 1230 .input_sizes = { 1231 0, 0, 0 1232 }, 1233 .input_types = { 1234 nir_type_bool32, nir_type_uint, nir_type_uint 1235 }, 1236 .is_conversion = false, 1237 .algebraic_properties = 1238 0 1239}, 1240{ 1241 .name = "b8all_fequal16", 1242 .num_inputs = 2, 1243 .output_size = 1, 1244 .output_type = nir_type_bool8, 1245 .input_sizes = { 1246 16, 16 1247 }, 1248 .input_types = { 1249 nir_type_float, nir_type_float 1250 }, 1251 .is_conversion = false, 1252 .algebraic_properties = 1253 NIR_OP_IS_2SRC_COMMUTATIVE 1254}, 1255{ 1256 .name = "b8all_fequal2", 1257 .num_inputs = 2, 1258 .output_size = 1, 1259 .output_type = nir_type_bool8, 1260 .input_sizes = { 1261 2, 2 1262 }, 1263 .input_types = { 1264 nir_type_float, nir_type_float 1265 }, 1266 .is_conversion = false, 1267 .algebraic_properties = 1268 NIR_OP_IS_2SRC_COMMUTATIVE 1269}, 1270{ 1271 .name = "b8all_fequal3", 1272 .num_inputs = 2, 1273 .output_size = 1, 1274 .output_type = nir_type_bool8, 1275 .input_sizes = { 1276 3, 3 1277 }, 1278 .input_types = { 1279 nir_type_float, nir_type_float 1280 }, 1281 .is_conversion = false, 1282 .algebraic_properties = 1283 NIR_OP_IS_2SRC_COMMUTATIVE 1284}, 1285{ 1286 .name = "b8all_fequal4", 1287 .num_inputs = 2, 1288 .output_size = 1, 1289 .output_type = nir_type_bool8, 1290 .input_sizes = { 1291 4, 4 1292 }, 1293 .input_types = { 1294 nir_type_float, nir_type_float 1295 }, 1296 .is_conversion = false, 1297 .algebraic_properties = 1298 NIR_OP_IS_2SRC_COMMUTATIVE 1299}, 1300{ 1301 .name = "b8all_fequal5", 1302 .num_inputs = 2, 1303 .output_size = 1, 1304 .output_type = nir_type_bool8, 1305 .input_sizes = { 1306 5, 5 1307 }, 1308 .input_types = { 1309 nir_type_float, nir_type_float 1310 }, 1311 .is_conversion = false, 1312 .algebraic_properties = 1313 NIR_OP_IS_2SRC_COMMUTATIVE 1314}, 1315{ 1316 .name = "b8all_fequal8", 1317 .num_inputs = 2, 1318 .output_size = 1, 1319 .output_type = nir_type_bool8, 1320 .input_sizes = { 1321 8, 8 1322 }, 1323 .input_types = { 1324 nir_type_float, nir_type_float 1325 }, 1326 .is_conversion = false, 1327 .algebraic_properties = 1328 NIR_OP_IS_2SRC_COMMUTATIVE 1329}, 1330{ 1331 .name = "b8all_iequal16", 1332 .num_inputs = 2, 1333 .output_size = 1, 1334 .output_type = nir_type_bool8, 1335 .input_sizes = { 1336 16, 16 1337 }, 1338 .input_types = { 1339 nir_type_int, nir_type_int 1340 }, 1341 .is_conversion = false, 1342 .algebraic_properties = 1343 NIR_OP_IS_2SRC_COMMUTATIVE 1344}, 1345{ 1346 .name = "b8all_iequal2", 1347 .num_inputs = 2, 1348 .output_size = 1, 1349 .output_type = nir_type_bool8, 1350 .input_sizes = { 1351 2, 2 1352 }, 1353 .input_types = { 1354 nir_type_int, nir_type_int 1355 }, 1356 .is_conversion = false, 1357 .algebraic_properties = 1358 NIR_OP_IS_2SRC_COMMUTATIVE 1359}, 1360{ 1361 .name = "b8all_iequal3", 1362 .num_inputs = 2, 1363 .output_size = 1, 1364 .output_type = nir_type_bool8, 1365 .input_sizes = { 1366 3, 3 1367 }, 1368 .input_types = { 1369 nir_type_int, nir_type_int 1370 }, 1371 .is_conversion = false, 1372 .algebraic_properties = 1373 NIR_OP_IS_2SRC_COMMUTATIVE 1374}, 1375{ 1376 .name = "b8all_iequal4", 1377 .num_inputs = 2, 1378 .output_size = 1, 1379 .output_type = nir_type_bool8, 1380 .input_sizes = { 1381 4, 4 1382 }, 1383 .input_types = { 1384 nir_type_int, nir_type_int 1385 }, 1386 .is_conversion = false, 1387 .algebraic_properties = 1388 NIR_OP_IS_2SRC_COMMUTATIVE 1389}, 1390{ 1391 .name = "b8all_iequal5", 1392 .num_inputs = 2, 1393 .output_size = 1, 1394 .output_type = nir_type_bool8, 1395 .input_sizes = { 1396 5, 5 1397 }, 1398 .input_types = { 1399 nir_type_int, nir_type_int 1400 }, 1401 .is_conversion = false, 1402 .algebraic_properties = 1403 NIR_OP_IS_2SRC_COMMUTATIVE 1404}, 1405{ 1406 .name = "b8all_iequal8", 1407 .num_inputs = 2, 1408 .output_size = 1, 1409 .output_type = nir_type_bool8, 1410 .input_sizes = { 1411 8, 8 1412 }, 1413 .input_types = { 1414 nir_type_int, nir_type_int 1415 }, 1416 .is_conversion = false, 1417 .algebraic_properties = 1418 NIR_OP_IS_2SRC_COMMUTATIVE 1419}, 1420{ 1421 .name = "b8any_fnequal16", 1422 .num_inputs = 2, 1423 .output_size = 1, 1424 .output_type = nir_type_bool8, 1425 .input_sizes = { 1426 16, 16 1427 }, 1428 .input_types = { 1429 nir_type_float, nir_type_float 1430 }, 1431 .is_conversion = false, 1432 .algebraic_properties = 1433 NIR_OP_IS_2SRC_COMMUTATIVE 1434}, 1435{ 1436 .name = "b8any_fnequal2", 1437 .num_inputs = 2, 1438 .output_size = 1, 1439 .output_type = nir_type_bool8, 1440 .input_sizes = { 1441 2, 2 1442 }, 1443 .input_types = { 1444 nir_type_float, nir_type_float 1445 }, 1446 .is_conversion = false, 1447 .algebraic_properties = 1448 NIR_OP_IS_2SRC_COMMUTATIVE 1449}, 1450{ 1451 .name = "b8any_fnequal3", 1452 .num_inputs = 2, 1453 .output_size = 1, 1454 .output_type = nir_type_bool8, 1455 .input_sizes = { 1456 3, 3 1457 }, 1458 .input_types = { 1459 nir_type_float, nir_type_float 1460 }, 1461 .is_conversion = false, 1462 .algebraic_properties = 1463 NIR_OP_IS_2SRC_COMMUTATIVE 1464}, 1465{ 1466 .name = "b8any_fnequal4", 1467 .num_inputs = 2, 1468 .output_size = 1, 1469 .output_type = nir_type_bool8, 1470 .input_sizes = { 1471 4, 4 1472 }, 1473 .input_types = { 1474 nir_type_float, nir_type_float 1475 }, 1476 .is_conversion = false, 1477 .algebraic_properties = 1478 NIR_OP_IS_2SRC_COMMUTATIVE 1479}, 1480{ 1481 .name = "b8any_fnequal5", 1482 .num_inputs = 2, 1483 .output_size = 1, 1484 .output_type = nir_type_bool8, 1485 .input_sizes = { 1486 5, 5 1487 }, 1488 .input_types = { 1489 nir_type_float, nir_type_float 1490 }, 1491 .is_conversion = false, 1492 .algebraic_properties = 1493 NIR_OP_IS_2SRC_COMMUTATIVE 1494}, 1495{ 1496 .name = "b8any_fnequal8", 1497 .num_inputs = 2, 1498 .output_size = 1, 1499 .output_type = nir_type_bool8, 1500 .input_sizes = { 1501 8, 8 1502 }, 1503 .input_types = { 1504 nir_type_float, nir_type_float 1505 }, 1506 .is_conversion = false, 1507 .algebraic_properties = 1508 NIR_OP_IS_2SRC_COMMUTATIVE 1509}, 1510{ 1511 .name = "b8any_inequal16", 1512 .num_inputs = 2, 1513 .output_size = 1, 1514 .output_type = nir_type_bool8, 1515 .input_sizes = { 1516 16, 16 1517 }, 1518 .input_types = { 1519 nir_type_int, nir_type_int 1520 }, 1521 .is_conversion = false, 1522 .algebraic_properties = 1523 NIR_OP_IS_2SRC_COMMUTATIVE 1524}, 1525{ 1526 .name = "b8any_inequal2", 1527 .num_inputs = 2, 1528 .output_size = 1, 1529 .output_type = nir_type_bool8, 1530 .input_sizes = { 1531 2, 2 1532 }, 1533 .input_types = { 1534 nir_type_int, nir_type_int 1535 }, 1536 .is_conversion = false, 1537 .algebraic_properties = 1538 NIR_OP_IS_2SRC_COMMUTATIVE 1539}, 1540{ 1541 .name = "b8any_inequal3", 1542 .num_inputs = 2, 1543 .output_size = 1, 1544 .output_type = nir_type_bool8, 1545 .input_sizes = { 1546 3, 3 1547 }, 1548 .input_types = { 1549 nir_type_int, nir_type_int 1550 }, 1551 .is_conversion = false, 1552 .algebraic_properties = 1553 NIR_OP_IS_2SRC_COMMUTATIVE 1554}, 1555{ 1556 .name = "b8any_inequal4", 1557 .num_inputs = 2, 1558 .output_size = 1, 1559 .output_type = nir_type_bool8, 1560 .input_sizes = { 1561 4, 4 1562 }, 1563 .input_types = { 1564 nir_type_int, nir_type_int 1565 }, 1566 .is_conversion = false, 1567 .algebraic_properties = 1568 NIR_OP_IS_2SRC_COMMUTATIVE 1569}, 1570{ 1571 .name = "b8any_inequal5", 1572 .num_inputs = 2, 1573 .output_size = 1, 1574 .output_type = nir_type_bool8, 1575 .input_sizes = { 1576 5, 5 1577 }, 1578 .input_types = { 1579 nir_type_int, nir_type_int 1580 }, 1581 .is_conversion = false, 1582 .algebraic_properties = 1583 NIR_OP_IS_2SRC_COMMUTATIVE 1584}, 1585{ 1586 .name = "b8any_inequal8", 1587 .num_inputs = 2, 1588 .output_size = 1, 1589 .output_type = nir_type_bool8, 1590 .input_sizes = { 1591 8, 8 1592 }, 1593 .input_types = { 1594 nir_type_int, nir_type_int 1595 }, 1596 .is_conversion = false, 1597 .algebraic_properties = 1598 NIR_OP_IS_2SRC_COMMUTATIVE 1599}, 1600{ 1601 .name = "b8csel", 1602 .num_inputs = 3, 1603 .output_size = 0, 1604 .output_type = nir_type_uint, 1605 .input_sizes = { 1606 0, 0, 0 1607 }, 1608 .input_types = { 1609 nir_type_bool8, nir_type_uint, nir_type_uint 1610 }, 1611 .is_conversion = false, 1612 .algebraic_properties = 1613 0 1614}, 1615{ 1616 .name = "ball_fequal16", 1617 .num_inputs = 2, 1618 .output_size = 1, 1619 .output_type = nir_type_bool1, 1620 .input_sizes = { 1621 16, 16 1622 }, 1623 .input_types = { 1624 nir_type_float, nir_type_float 1625 }, 1626 .is_conversion = false, 1627 .algebraic_properties = 1628 NIR_OP_IS_2SRC_COMMUTATIVE 1629}, 1630{ 1631 .name = "ball_fequal2", 1632 .num_inputs = 2, 1633 .output_size = 1, 1634 .output_type = nir_type_bool1, 1635 .input_sizes = { 1636 2, 2 1637 }, 1638 .input_types = { 1639 nir_type_float, nir_type_float 1640 }, 1641 .is_conversion = false, 1642 .algebraic_properties = 1643 NIR_OP_IS_2SRC_COMMUTATIVE 1644}, 1645{ 1646 .name = "ball_fequal3", 1647 .num_inputs = 2, 1648 .output_size = 1, 1649 .output_type = nir_type_bool1, 1650 .input_sizes = { 1651 3, 3 1652 }, 1653 .input_types = { 1654 nir_type_float, nir_type_float 1655 }, 1656 .is_conversion = false, 1657 .algebraic_properties = 1658 NIR_OP_IS_2SRC_COMMUTATIVE 1659}, 1660{ 1661 .name = "ball_fequal4", 1662 .num_inputs = 2, 1663 .output_size = 1, 1664 .output_type = nir_type_bool1, 1665 .input_sizes = { 1666 4, 4 1667 }, 1668 .input_types = { 1669 nir_type_float, nir_type_float 1670 }, 1671 .is_conversion = false, 1672 .algebraic_properties = 1673 NIR_OP_IS_2SRC_COMMUTATIVE 1674}, 1675{ 1676 .name = "ball_fequal5", 1677 .num_inputs = 2, 1678 .output_size = 1, 1679 .output_type = nir_type_bool1, 1680 .input_sizes = { 1681 5, 5 1682 }, 1683 .input_types = { 1684 nir_type_float, nir_type_float 1685 }, 1686 .is_conversion = false, 1687 .algebraic_properties = 1688 NIR_OP_IS_2SRC_COMMUTATIVE 1689}, 1690{ 1691 .name = "ball_fequal8", 1692 .num_inputs = 2, 1693 .output_size = 1, 1694 .output_type = nir_type_bool1, 1695 .input_sizes = { 1696 8, 8 1697 }, 1698 .input_types = { 1699 nir_type_float, nir_type_float 1700 }, 1701 .is_conversion = false, 1702 .algebraic_properties = 1703 NIR_OP_IS_2SRC_COMMUTATIVE 1704}, 1705{ 1706 .name = "ball_iequal16", 1707 .num_inputs = 2, 1708 .output_size = 1, 1709 .output_type = nir_type_bool1, 1710 .input_sizes = { 1711 16, 16 1712 }, 1713 .input_types = { 1714 nir_type_int, nir_type_int 1715 }, 1716 .is_conversion = false, 1717 .algebraic_properties = 1718 NIR_OP_IS_2SRC_COMMUTATIVE 1719}, 1720{ 1721 .name = "ball_iequal2", 1722 .num_inputs = 2, 1723 .output_size = 1, 1724 .output_type = nir_type_bool1, 1725 .input_sizes = { 1726 2, 2 1727 }, 1728 .input_types = { 1729 nir_type_int, nir_type_int 1730 }, 1731 .is_conversion = false, 1732 .algebraic_properties = 1733 NIR_OP_IS_2SRC_COMMUTATIVE 1734}, 1735{ 1736 .name = "ball_iequal3", 1737 .num_inputs = 2, 1738 .output_size = 1, 1739 .output_type = nir_type_bool1, 1740 .input_sizes = { 1741 3, 3 1742 }, 1743 .input_types = { 1744 nir_type_int, nir_type_int 1745 }, 1746 .is_conversion = false, 1747 .algebraic_properties = 1748 NIR_OP_IS_2SRC_COMMUTATIVE 1749}, 1750{ 1751 .name = "ball_iequal4", 1752 .num_inputs = 2, 1753 .output_size = 1, 1754 .output_type = nir_type_bool1, 1755 .input_sizes = { 1756 4, 4 1757 }, 1758 .input_types = { 1759 nir_type_int, nir_type_int 1760 }, 1761 .is_conversion = false, 1762 .algebraic_properties = 1763 NIR_OP_IS_2SRC_COMMUTATIVE 1764}, 1765{ 1766 .name = "ball_iequal5", 1767 .num_inputs = 2, 1768 .output_size = 1, 1769 .output_type = nir_type_bool1, 1770 .input_sizes = { 1771 5, 5 1772 }, 1773 .input_types = { 1774 nir_type_int, nir_type_int 1775 }, 1776 .is_conversion = false, 1777 .algebraic_properties = 1778 NIR_OP_IS_2SRC_COMMUTATIVE 1779}, 1780{ 1781 .name = "ball_iequal8", 1782 .num_inputs = 2, 1783 .output_size = 1, 1784 .output_type = nir_type_bool1, 1785 .input_sizes = { 1786 8, 8 1787 }, 1788 .input_types = { 1789 nir_type_int, nir_type_int 1790 }, 1791 .is_conversion = false, 1792 .algebraic_properties = 1793 NIR_OP_IS_2SRC_COMMUTATIVE 1794}, 1795{ 1796 .name = "bany_fnequal16", 1797 .num_inputs = 2, 1798 .output_size = 1, 1799 .output_type = nir_type_bool1, 1800 .input_sizes = { 1801 16, 16 1802 }, 1803 .input_types = { 1804 nir_type_float, nir_type_float 1805 }, 1806 .is_conversion = false, 1807 .algebraic_properties = 1808 NIR_OP_IS_2SRC_COMMUTATIVE 1809}, 1810{ 1811 .name = "bany_fnequal2", 1812 .num_inputs = 2, 1813 .output_size = 1, 1814 .output_type = nir_type_bool1, 1815 .input_sizes = { 1816 2, 2 1817 }, 1818 .input_types = { 1819 nir_type_float, nir_type_float 1820 }, 1821 .is_conversion = false, 1822 .algebraic_properties = 1823 NIR_OP_IS_2SRC_COMMUTATIVE 1824}, 1825{ 1826 .name = "bany_fnequal3", 1827 .num_inputs = 2, 1828 .output_size = 1, 1829 .output_type = nir_type_bool1, 1830 .input_sizes = { 1831 3, 3 1832 }, 1833 .input_types = { 1834 nir_type_float, nir_type_float 1835 }, 1836 .is_conversion = false, 1837 .algebraic_properties = 1838 NIR_OP_IS_2SRC_COMMUTATIVE 1839}, 1840{ 1841 .name = "bany_fnequal4", 1842 .num_inputs = 2, 1843 .output_size = 1, 1844 .output_type = nir_type_bool1, 1845 .input_sizes = { 1846 4, 4 1847 }, 1848 .input_types = { 1849 nir_type_float, nir_type_float 1850 }, 1851 .is_conversion = false, 1852 .algebraic_properties = 1853 NIR_OP_IS_2SRC_COMMUTATIVE 1854}, 1855{ 1856 .name = "bany_fnequal5", 1857 .num_inputs = 2, 1858 .output_size = 1, 1859 .output_type = nir_type_bool1, 1860 .input_sizes = { 1861 5, 5 1862 }, 1863 .input_types = { 1864 nir_type_float, nir_type_float 1865 }, 1866 .is_conversion = false, 1867 .algebraic_properties = 1868 NIR_OP_IS_2SRC_COMMUTATIVE 1869}, 1870{ 1871 .name = "bany_fnequal8", 1872 .num_inputs = 2, 1873 .output_size = 1, 1874 .output_type = nir_type_bool1, 1875 .input_sizes = { 1876 8, 8 1877 }, 1878 .input_types = { 1879 nir_type_float, nir_type_float 1880 }, 1881 .is_conversion = false, 1882 .algebraic_properties = 1883 NIR_OP_IS_2SRC_COMMUTATIVE 1884}, 1885{ 1886 .name = "bany_inequal16", 1887 .num_inputs = 2, 1888 .output_size = 1, 1889 .output_type = nir_type_bool1, 1890 .input_sizes = { 1891 16, 16 1892 }, 1893 .input_types = { 1894 nir_type_int, nir_type_int 1895 }, 1896 .is_conversion = false, 1897 .algebraic_properties = 1898 NIR_OP_IS_2SRC_COMMUTATIVE 1899}, 1900{ 1901 .name = "bany_inequal2", 1902 .num_inputs = 2, 1903 .output_size = 1, 1904 .output_type = nir_type_bool1, 1905 .input_sizes = { 1906 2, 2 1907 }, 1908 .input_types = { 1909 nir_type_int, nir_type_int 1910 }, 1911 .is_conversion = false, 1912 .algebraic_properties = 1913 NIR_OP_IS_2SRC_COMMUTATIVE 1914}, 1915{ 1916 .name = "bany_inequal3", 1917 .num_inputs = 2, 1918 .output_size = 1, 1919 .output_type = nir_type_bool1, 1920 .input_sizes = { 1921 3, 3 1922 }, 1923 .input_types = { 1924 nir_type_int, nir_type_int 1925 }, 1926 .is_conversion = false, 1927 .algebraic_properties = 1928 NIR_OP_IS_2SRC_COMMUTATIVE 1929}, 1930{ 1931 .name = "bany_inequal4", 1932 .num_inputs = 2, 1933 .output_size = 1, 1934 .output_type = nir_type_bool1, 1935 .input_sizes = { 1936 4, 4 1937 }, 1938 .input_types = { 1939 nir_type_int, nir_type_int 1940 }, 1941 .is_conversion = false, 1942 .algebraic_properties = 1943 NIR_OP_IS_2SRC_COMMUTATIVE 1944}, 1945{ 1946 .name = "bany_inequal5", 1947 .num_inputs = 2, 1948 .output_size = 1, 1949 .output_type = nir_type_bool1, 1950 .input_sizes = { 1951 5, 5 1952 }, 1953 .input_types = { 1954 nir_type_int, nir_type_int 1955 }, 1956 .is_conversion = false, 1957 .algebraic_properties = 1958 NIR_OP_IS_2SRC_COMMUTATIVE 1959}, 1960{ 1961 .name = "bany_inequal8", 1962 .num_inputs = 2, 1963 .output_size = 1, 1964 .output_type = nir_type_bool1, 1965 .input_sizes = { 1966 8, 8 1967 }, 1968 .input_types = { 1969 nir_type_int, nir_type_int 1970 }, 1971 .is_conversion = false, 1972 .algebraic_properties = 1973 NIR_OP_IS_2SRC_COMMUTATIVE 1974}, 1975{ 1976 .name = "bcsel", 1977 .num_inputs = 3, 1978 .output_size = 0, 1979 .output_type = nir_type_uint, 1980 .input_sizes = { 1981 0, 0, 0 1982 }, 1983 .input_types = { 1984 nir_type_bool1, nir_type_uint, nir_type_uint 1985 }, 1986 .is_conversion = false, 1987 .algebraic_properties = 1988 0 1989}, 1990{ 1991 .name = "bfi", 1992 .num_inputs = 3, 1993 .output_size = 0, 1994 .output_type = nir_type_uint32, 1995 .input_sizes = { 1996 0, 0, 0 1997 }, 1998 .input_types = { 1999 nir_type_uint32, nir_type_uint32, nir_type_uint32 2000 }, 2001 .is_conversion = false, 2002 .algebraic_properties = 2003 0 2004}, 2005{ 2006 .name = "bfm", 2007 .num_inputs = 2, 2008 .output_size = 0, 2009 .output_type = nir_type_uint32, 2010 .input_sizes = { 2011 0, 0 2012 }, 2013 .input_types = { 2014 nir_type_int32, nir_type_int32 2015 }, 2016 .is_conversion = false, 2017 .algebraic_properties = 2018 0 2019}, 2020{ 2021 .name = "bit_count", 2022 .num_inputs = 1, 2023 .output_size = 0, 2024 .output_type = nir_type_uint32, 2025 .input_sizes = { 2026 0 2027 }, 2028 .input_types = { 2029 nir_type_uint 2030 }, 2031 .is_conversion = false, 2032 .algebraic_properties = 2033 0 2034}, 2035{ 2036 .name = "bitfield_insert", 2037 .num_inputs = 4, 2038 .output_size = 0, 2039 .output_type = nir_type_uint32, 2040 .input_sizes = { 2041 0, 0, 0, 0 2042 }, 2043 .input_types = { 2044 nir_type_uint32, nir_type_uint32, nir_type_int32, nir_type_int32 2045 }, 2046 .is_conversion = false, 2047 .algebraic_properties = 2048 0 2049}, 2050{ 2051 .name = "bitfield_reverse", 2052 .num_inputs = 1, 2053 .output_size = 0, 2054 .output_type = nir_type_uint32, 2055 .input_sizes = { 2056 0 2057 }, 2058 .input_types = { 2059 nir_type_uint32 2060 }, 2061 .is_conversion = false, 2062 .algebraic_properties = 2063 0 2064}, 2065{ 2066 .name = "bitfield_select", 2067 .num_inputs = 3, 2068 .output_size = 0, 2069 .output_type = nir_type_uint, 2070 .input_sizes = { 2071 0, 0, 0 2072 }, 2073 .input_types = { 2074 nir_type_uint, nir_type_uint, nir_type_uint 2075 }, 2076 .is_conversion = false, 2077 .algebraic_properties = 2078 0 2079}, 2080{ 2081 .name = "cube_face_coord_amd", 2082 .num_inputs = 1, 2083 .output_size = 2, 2084 .output_type = nir_type_float32, 2085 .input_sizes = { 2086 3 2087 }, 2088 .input_types = { 2089 nir_type_float32 2090 }, 2091 .is_conversion = false, 2092 .algebraic_properties = 2093 0 2094}, 2095{ 2096 .name = "cube_face_index_amd", 2097 .num_inputs = 1, 2098 .output_size = 1, 2099 .output_type = nir_type_float32, 2100 .input_sizes = { 2101 3 2102 }, 2103 .input_types = { 2104 nir_type_float32 2105 }, 2106 .is_conversion = false, 2107 .algebraic_properties = 2108 0 2109}, 2110{ 2111 .name = "cube_r600", 2112 .num_inputs = 1, 2113 .output_size = 4, 2114 .output_type = nir_type_float32, 2115 .input_sizes = { 2116 3 2117 }, 2118 .input_types = { 2119 nir_type_float32 2120 }, 2121 .is_conversion = false, 2122 .algebraic_properties = 2123 0 2124}, 2125{ 2126 .name = "extract_i16", 2127 .num_inputs = 2, 2128 .output_size = 0, 2129 .output_type = nir_type_int, 2130 .input_sizes = { 2131 0, 0 2132 }, 2133 .input_types = { 2134 nir_type_int, nir_type_int 2135 }, 2136 .is_conversion = false, 2137 .algebraic_properties = 2138 0 2139}, 2140{ 2141 .name = "extract_i8", 2142 .num_inputs = 2, 2143 .output_size = 0, 2144 .output_type = nir_type_int, 2145 .input_sizes = { 2146 0, 0 2147 }, 2148 .input_types = { 2149 nir_type_int, nir_type_int 2150 }, 2151 .is_conversion = false, 2152 .algebraic_properties = 2153 0 2154}, 2155{ 2156 .name = "extract_u16", 2157 .num_inputs = 2, 2158 .output_size = 0, 2159 .output_type = nir_type_uint, 2160 .input_sizes = { 2161 0, 0 2162 }, 2163 .input_types = { 2164 nir_type_uint, nir_type_uint 2165 }, 2166 .is_conversion = false, 2167 .algebraic_properties = 2168 0 2169}, 2170{ 2171 .name = "extract_u8", 2172 .num_inputs = 2, 2173 .output_size = 0, 2174 .output_type = nir_type_uint, 2175 .input_sizes = { 2176 0, 0 2177 }, 2178 .input_types = { 2179 nir_type_uint, nir_type_uint 2180 }, 2181 .is_conversion = false, 2182 .algebraic_properties = 2183 0 2184}, 2185{ 2186 .name = "f2b1", 2187 .num_inputs = 1, 2188 .output_size = 0, 2189 .output_type = nir_type_bool1, 2190 .input_sizes = { 2191 0 2192 }, 2193 .input_types = { 2194 nir_type_float 2195 }, 2196 .is_conversion = true, 2197 .algebraic_properties = 2198 0 2199}, 2200{ 2201 .name = "f2b16", 2202 .num_inputs = 1, 2203 .output_size = 0, 2204 .output_type = nir_type_bool16, 2205 .input_sizes = { 2206 0 2207 }, 2208 .input_types = { 2209 nir_type_float 2210 }, 2211 .is_conversion = true, 2212 .algebraic_properties = 2213 0 2214}, 2215{ 2216 .name = "f2b32", 2217 .num_inputs = 1, 2218 .output_size = 0, 2219 .output_type = nir_type_bool32, 2220 .input_sizes = { 2221 0 2222 }, 2223 .input_types = { 2224 nir_type_float 2225 }, 2226 .is_conversion = true, 2227 .algebraic_properties = 2228 0 2229}, 2230{ 2231 .name = "f2b8", 2232 .num_inputs = 1, 2233 .output_size = 0, 2234 .output_type = nir_type_bool8, 2235 .input_sizes = { 2236 0 2237 }, 2238 .input_types = { 2239 nir_type_float 2240 }, 2241 .is_conversion = true, 2242 .algebraic_properties = 2243 0 2244}, 2245{ 2246 .name = "f2f16", 2247 .num_inputs = 1, 2248 .output_size = 0, 2249 .output_type = nir_type_float16, 2250 .input_sizes = { 2251 0 2252 }, 2253 .input_types = { 2254 nir_type_float 2255 }, 2256 .is_conversion = true, 2257 .algebraic_properties = 2258 0 2259}, 2260{ 2261 .name = "f2f16_rtne", 2262 .num_inputs = 1, 2263 .output_size = 0, 2264 .output_type = nir_type_float16, 2265 .input_sizes = { 2266 0 2267 }, 2268 .input_types = { 2269 nir_type_float 2270 }, 2271 .is_conversion = true, 2272 .algebraic_properties = 2273 0 2274}, 2275{ 2276 .name = "f2f16_rtz", 2277 .num_inputs = 1, 2278 .output_size = 0, 2279 .output_type = nir_type_float16, 2280 .input_sizes = { 2281 0 2282 }, 2283 .input_types = { 2284 nir_type_float 2285 }, 2286 .is_conversion = true, 2287 .algebraic_properties = 2288 0 2289}, 2290{ 2291 .name = "f2f32", 2292 .num_inputs = 1, 2293 .output_size = 0, 2294 .output_type = nir_type_float32, 2295 .input_sizes = { 2296 0 2297 }, 2298 .input_types = { 2299 nir_type_float 2300 }, 2301 .is_conversion = true, 2302 .algebraic_properties = 2303 0 2304}, 2305{ 2306 .name = "f2f64", 2307 .num_inputs = 1, 2308 .output_size = 0, 2309 .output_type = nir_type_float64, 2310 .input_sizes = { 2311 0 2312 }, 2313 .input_types = { 2314 nir_type_float 2315 }, 2316 .is_conversion = true, 2317 .algebraic_properties = 2318 0 2319}, 2320{ 2321 .name = "f2fmp", 2322 .num_inputs = 1, 2323 .output_size = 0, 2324 .output_type = nir_type_float16, 2325 .input_sizes = { 2326 0 2327 }, 2328 .input_types = { 2329 nir_type_float32 2330 }, 2331 .is_conversion = true, 2332 .algebraic_properties = 2333 0 2334}, 2335{ 2336 .name = "f2i1", 2337 .num_inputs = 1, 2338 .output_size = 0, 2339 .output_type = nir_type_int1, 2340 .input_sizes = { 2341 0 2342 }, 2343 .input_types = { 2344 nir_type_float 2345 }, 2346 .is_conversion = true, 2347 .algebraic_properties = 2348 0 2349}, 2350{ 2351 .name = "f2i16", 2352 .num_inputs = 1, 2353 .output_size = 0, 2354 .output_type = nir_type_int16, 2355 .input_sizes = { 2356 0 2357 }, 2358 .input_types = { 2359 nir_type_float 2360 }, 2361 .is_conversion = true, 2362 .algebraic_properties = 2363 0 2364}, 2365{ 2366 .name = "f2i32", 2367 .num_inputs = 1, 2368 .output_size = 0, 2369 .output_type = nir_type_int32, 2370 .input_sizes = { 2371 0 2372 }, 2373 .input_types = { 2374 nir_type_float 2375 }, 2376 .is_conversion = true, 2377 .algebraic_properties = 2378 0 2379}, 2380{ 2381 .name = "f2i64", 2382 .num_inputs = 1, 2383 .output_size = 0, 2384 .output_type = nir_type_int64, 2385 .input_sizes = { 2386 0 2387 }, 2388 .input_types = { 2389 nir_type_float 2390 }, 2391 .is_conversion = true, 2392 .algebraic_properties = 2393 0 2394}, 2395{ 2396 .name = "f2i8", 2397 .num_inputs = 1, 2398 .output_size = 0, 2399 .output_type = nir_type_int8, 2400 .input_sizes = { 2401 0 2402 }, 2403 .input_types = { 2404 nir_type_float 2405 }, 2406 .is_conversion = true, 2407 .algebraic_properties = 2408 0 2409}, 2410{ 2411 .name = "f2imp", 2412 .num_inputs = 1, 2413 .output_size = 0, 2414 .output_type = nir_type_int16, 2415 .input_sizes = { 2416 0 2417 }, 2418 .input_types = { 2419 nir_type_float32 2420 }, 2421 .is_conversion = true, 2422 .algebraic_properties = 2423 0 2424}, 2425{ 2426 .name = "f2u1", 2427 .num_inputs = 1, 2428 .output_size = 0, 2429 .output_type = nir_type_uint1, 2430 .input_sizes = { 2431 0 2432 }, 2433 .input_types = { 2434 nir_type_float 2435 }, 2436 .is_conversion = true, 2437 .algebraic_properties = 2438 0 2439}, 2440{ 2441 .name = "f2u16", 2442 .num_inputs = 1, 2443 .output_size = 0, 2444 .output_type = nir_type_uint16, 2445 .input_sizes = { 2446 0 2447 }, 2448 .input_types = { 2449 nir_type_float 2450 }, 2451 .is_conversion = true, 2452 .algebraic_properties = 2453 0 2454}, 2455{ 2456 .name = "f2u32", 2457 .num_inputs = 1, 2458 .output_size = 0, 2459 .output_type = nir_type_uint32, 2460 .input_sizes = { 2461 0 2462 }, 2463 .input_types = { 2464 nir_type_float 2465 }, 2466 .is_conversion = true, 2467 .algebraic_properties = 2468 0 2469}, 2470{ 2471 .name = "f2u64", 2472 .num_inputs = 1, 2473 .output_size = 0, 2474 .output_type = nir_type_uint64, 2475 .input_sizes = { 2476 0 2477 }, 2478 .input_types = { 2479 nir_type_float 2480 }, 2481 .is_conversion = true, 2482 .algebraic_properties = 2483 0 2484}, 2485{ 2486 .name = "f2u8", 2487 .num_inputs = 1, 2488 .output_size = 0, 2489 .output_type = nir_type_uint8, 2490 .input_sizes = { 2491 0 2492 }, 2493 .input_types = { 2494 nir_type_float 2495 }, 2496 .is_conversion = true, 2497 .algebraic_properties = 2498 0 2499}, 2500{ 2501 .name = "f2ump", 2502 .num_inputs = 1, 2503 .output_size = 0, 2504 .output_type = nir_type_uint16, 2505 .input_sizes = { 2506 0 2507 }, 2508 .input_types = { 2509 nir_type_float32 2510 }, 2511 .is_conversion = true, 2512 .algebraic_properties = 2513 0 2514}, 2515{ 2516 .name = "fabs", 2517 .num_inputs = 1, 2518 .output_size = 0, 2519 .output_type = nir_type_float, 2520 .input_sizes = { 2521 0 2522 }, 2523 .input_types = { 2524 nir_type_float 2525 }, 2526 .is_conversion = false, 2527 .algebraic_properties = 2528 0 2529}, 2530{ 2531 .name = "fadd", 2532 .num_inputs = 2, 2533 .output_size = 0, 2534 .output_type = nir_type_float, 2535 .input_sizes = { 2536 0, 0 2537 }, 2538 .input_types = { 2539 nir_type_float, nir_type_float 2540 }, 2541 .is_conversion = false, 2542 .algebraic_properties = 2543 NIR_OP_IS_2SRC_COMMUTATIVE | NIR_OP_IS_ASSOCIATIVE 2544}, 2545{ 2546 .name = "fall_equal16", 2547 .num_inputs = 2, 2548 .output_size = 1, 2549 .output_type = nir_type_float32, 2550 .input_sizes = { 2551 16, 16 2552 }, 2553 .input_types = { 2554 nir_type_float32, nir_type_float32 2555 }, 2556 .is_conversion = false, 2557 .algebraic_properties = 2558 NIR_OP_IS_2SRC_COMMUTATIVE 2559}, 2560{ 2561 .name = "fall_equal2", 2562 .num_inputs = 2, 2563 .output_size = 1, 2564 .output_type = nir_type_float32, 2565 .input_sizes = { 2566 2, 2 2567 }, 2568 .input_types = { 2569 nir_type_float32, nir_type_float32 2570 }, 2571 .is_conversion = false, 2572 .algebraic_properties = 2573 NIR_OP_IS_2SRC_COMMUTATIVE 2574}, 2575{ 2576 .name = "fall_equal3", 2577 .num_inputs = 2, 2578 .output_size = 1, 2579 .output_type = nir_type_float32, 2580 .input_sizes = { 2581 3, 3 2582 }, 2583 .input_types = { 2584 nir_type_float32, nir_type_float32 2585 }, 2586 .is_conversion = false, 2587 .algebraic_properties = 2588 NIR_OP_IS_2SRC_COMMUTATIVE 2589}, 2590{ 2591 .name = "fall_equal4", 2592 .num_inputs = 2, 2593 .output_size = 1, 2594 .output_type = nir_type_float32, 2595 .input_sizes = { 2596 4, 4 2597 }, 2598 .input_types = { 2599 nir_type_float32, nir_type_float32 2600 }, 2601 .is_conversion = false, 2602 .algebraic_properties = 2603 NIR_OP_IS_2SRC_COMMUTATIVE 2604}, 2605{ 2606 .name = "fall_equal5", 2607 .num_inputs = 2, 2608 .output_size = 1, 2609 .output_type = nir_type_float32, 2610 .input_sizes = { 2611 5, 5 2612 }, 2613 .input_types = { 2614 nir_type_float32, nir_type_float32 2615 }, 2616 .is_conversion = false, 2617 .algebraic_properties = 2618 NIR_OP_IS_2SRC_COMMUTATIVE 2619}, 2620{ 2621 .name = "fall_equal8", 2622 .num_inputs = 2, 2623 .output_size = 1, 2624 .output_type = nir_type_float32, 2625 .input_sizes = { 2626 8, 8 2627 }, 2628 .input_types = { 2629 nir_type_float32, nir_type_float32 2630 }, 2631 .is_conversion = false, 2632 .algebraic_properties = 2633 NIR_OP_IS_2SRC_COMMUTATIVE 2634}, 2635{ 2636 .name = "fany_nequal16", 2637 .num_inputs = 2, 2638 .output_size = 1, 2639 .output_type = nir_type_float32, 2640 .input_sizes = { 2641 16, 16 2642 }, 2643 .input_types = { 2644 nir_type_float32, nir_type_float32 2645 }, 2646 .is_conversion = false, 2647 .algebraic_properties = 2648 NIR_OP_IS_2SRC_COMMUTATIVE 2649}, 2650{ 2651 .name = "fany_nequal2", 2652 .num_inputs = 2, 2653 .output_size = 1, 2654 .output_type = nir_type_float32, 2655 .input_sizes = { 2656 2, 2 2657 }, 2658 .input_types = { 2659 nir_type_float32, nir_type_float32 2660 }, 2661 .is_conversion = false, 2662 .algebraic_properties = 2663 NIR_OP_IS_2SRC_COMMUTATIVE 2664}, 2665{ 2666 .name = "fany_nequal3", 2667 .num_inputs = 2, 2668 .output_size = 1, 2669 .output_type = nir_type_float32, 2670 .input_sizes = { 2671 3, 3 2672 }, 2673 .input_types = { 2674 nir_type_float32, nir_type_float32 2675 }, 2676 .is_conversion = false, 2677 .algebraic_properties = 2678 NIR_OP_IS_2SRC_COMMUTATIVE 2679}, 2680{ 2681 .name = "fany_nequal4", 2682 .num_inputs = 2, 2683 .output_size = 1, 2684 .output_type = nir_type_float32, 2685 .input_sizes = { 2686 4, 4 2687 }, 2688 .input_types = { 2689 nir_type_float32, nir_type_float32 2690 }, 2691 .is_conversion = false, 2692 .algebraic_properties = 2693 NIR_OP_IS_2SRC_COMMUTATIVE 2694}, 2695{ 2696 .name = "fany_nequal5", 2697 .num_inputs = 2, 2698 .output_size = 1, 2699 .output_type = nir_type_float32, 2700 .input_sizes = { 2701 5, 5 2702 }, 2703 .input_types = { 2704 nir_type_float32, nir_type_float32 2705 }, 2706 .is_conversion = false, 2707 .algebraic_properties = 2708 NIR_OP_IS_2SRC_COMMUTATIVE 2709}, 2710{ 2711 .name = "fany_nequal8", 2712 .num_inputs = 2, 2713 .output_size = 1, 2714 .output_type = nir_type_float32, 2715 .input_sizes = { 2716 8, 8 2717 }, 2718 .input_types = { 2719 nir_type_float32, nir_type_float32 2720 }, 2721 .is_conversion = false, 2722 .algebraic_properties = 2723 NIR_OP_IS_2SRC_COMMUTATIVE 2724}, 2725{ 2726 .name = "fceil", 2727 .num_inputs = 1, 2728 .output_size = 0, 2729 .output_type = nir_type_float, 2730 .input_sizes = { 2731 0 2732 }, 2733 .input_types = { 2734 nir_type_float 2735 }, 2736 .is_conversion = false, 2737 .algebraic_properties = 2738 0 2739}, 2740{ 2741 .name = "fclamp_pos_mali", 2742 .num_inputs = 1, 2743 .output_size = 0, 2744 .output_type = nir_type_float, 2745 .input_sizes = { 2746 0 2747 }, 2748 .input_types = { 2749 nir_type_float 2750 }, 2751 .is_conversion = false, 2752 .algebraic_properties = 2753 0 2754}, 2755{ 2756 .name = "fcos", 2757 .num_inputs = 1, 2758 .output_size = 0, 2759 .output_type = nir_type_float, 2760 .input_sizes = { 2761 0 2762 }, 2763 .input_types = { 2764 nir_type_float 2765 }, 2766 .is_conversion = false, 2767 .algebraic_properties = 2768 0 2769}, 2770{ 2771 .name = "fcos_r600", 2772 .num_inputs = 1, 2773 .output_size = 0, 2774 .output_type = nir_type_float32, 2775 .input_sizes = { 2776 0 2777 }, 2778 .input_types = { 2779 nir_type_float32 2780 }, 2781 .is_conversion = false, 2782 .algebraic_properties = 2783 0 2784}, 2785{ 2786 .name = "fcsel", 2787 .num_inputs = 3, 2788 .output_size = 0, 2789 .output_type = nir_type_float32, 2790 .input_sizes = { 2791 0, 0, 0 2792 }, 2793 .input_types = { 2794 nir_type_float32, nir_type_float32, nir_type_float32 2795 }, 2796 .is_conversion = false, 2797 .algebraic_properties = 2798 0 2799}, 2800{ 2801 .name = "fcsel_ge", 2802 .num_inputs = 3, 2803 .output_size = 0, 2804 .output_type = nir_type_float32, 2805 .input_sizes = { 2806 0, 0, 0 2807 }, 2808 .input_types = { 2809 nir_type_float32, nir_type_float32, nir_type_float32 2810 }, 2811 .is_conversion = false, 2812 .algebraic_properties = 2813 0 2814}, 2815{ 2816 .name = "fcsel_gt", 2817 .num_inputs = 3, 2818 .output_size = 0, 2819 .output_type = nir_type_float32, 2820 .input_sizes = { 2821 0, 0, 0 2822 }, 2823 .input_types = { 2824 nir_type_float32, nir_type_float32, nir_type_float32 2825 }, 2826 .is_conversion = false, 2827 .algebraic_properties = 2828 0 2829}, 2830{ 2831 .name = "fddx", 2832 .num_inputs = 1, 2833 .output_size = 0, 2834 .output_type = nir_type_float, 2835 .input_sizes = { 2836 0 2837 }, 2838 .input_types = { 2839 nir_type_float 2840 }, 2841 .is_conversion = false, 2842 .algebraic_properties = 2843 0 2844}, 2845{ 2846 .name = "fddx_coarse", 2847 .num_inputs = 1, 2848 .output_size = 0, 2849 .output_type = nir_type_float, 2850 .input_sizes = { 2851 0 2852 }, 2853 .input_types = { 2854 nir_type_float 2855 }, 2856 .is_conversion = false, 2857 .algebraic_properties = 2858 0 2859}, 2860{ 2861 .name = "fddx_fine", 2862 .num_inputs = 1, 2863 .output_size = 0, 2864 .output_type = nir_type_float, 2865 .input_sizes = { 2866 0 2867 }, 2868 .input_types = { 2869 nir_type_float 2870 }, 2871 .is_conversion = false, 2872 .algebraic_properties = 2873 0 2874}, 2875{ 2876 .name = "fddx_must_abs_mali", 2877 .num_inputs = 1, 2878 .output_size = 0, 2879 .output_type = nir_type_float, 2880 .input_sizes = { 2881 0 2882 }, 2883 .input_types = { 2884 nir_type_float 2885 }, 2886 .is_conversion = false, 2887 .algebraic_properties = 2888 0 2889}, 2890{ 2891 .name = "fddy", 2892 .num_inputs = 1, 2893 .output_size = 0, 2894 .output_type = nir_type_float, 2895 .input_sizes = { 2896 0 2897 }, 2898 .input_types = { 2899 nir_type_float 2900 }, 2901 .is_conversion = false, 2902 .algebraic_properties = 2903 0 2904}, 2905{ 2906 .name = "fddy_coarse", 2907 .num_inputs = 1, 2908 .output_size = 0, 2909 .output_type = nir_type_float, 2910 .input_sizes = { 2911 0 2912 }, 2913 .input_types = { 2914 nir_type_float 2915 }, 2916 .is_conversion = false, 2917 .algebraic_properties = 2918 0 2919}, 2920{ 2921 .name = "fddy_fine", 2922 .num_inputs = 1, 2923 .output_size = 0, 2924 .output_type = nir_type_float, 2925 .input_sizes = { 2926 0 2927 }, 2928 .input_types = { 2929 nir_type_float 2930 }, 2931 .is_conversion = false, 2932 .algebraic_properties = 2933 0 2934}, 2935{ 2936 .name = "fddy_must_abs_mali", 2937 .num_inputs = 1, 2938 .output_size = 0, 2939 .output_type = nir_type_float, 2940 .input_sizes = { 2941 0 2942 }, 2943 .input_types = { 2944 nir_type_float 2945 }, 2946 .is_conversion = false, 2947 .algebraic_properties = 2948 0 2949}, 2950{ 2951 .name = "fdiv", 2952 .num_inputs = 2, 2953 .output_size = 0, 2954 .output_type = nir_type_float, 2955 .input_sizes = { 2956 0, 0 2957 }, 2958 .input_types = { 2959 nir_type_float, nir_type_float 2960 }, 2961 .is_conversion = false, 2962 .algebraic_properties = 2963 0 2964}, 2965{ 2966 .name = "fdot16", 2967 .num_inputs = 2, 2968 .output_size = 1, 2969 .output_type = nir_type_float, 2970 .input_sizes = { 2971 16, 16 2972 }, 2973 .input_types = { 2974 nir_type_float, nir_type_float 2975 }, 2976 .is_conversion = false, 2977 .algebraic_properties = 2978 NIR_OP_IS_2SRC_COMMUTATIVE 2979}, 2980{ 2981 .name = "fdot16_replicated", 2982 .num_inputs = 2, 2983 .output_size = 4, 2984 .output_type = nir_type_float, 2985 .input_sizes = { 2986 16, 16 2987 }, 2988 .input_types = { 2989 nir_type_float, nir_type_float 2990 }, 2991 .is_conversion = false, 2992 .algebraic_properties = 2993 NIR_OP_IS_2SRC_COMMUTATIVE 2994}, 2995{ 2996 .name = "fdot2", 2997 .num_inputs = 2, 2998 .output_size = 1, 2999 .output_type = nir_type_float, 3000 .input_sizes = { 3001 2, 2 3002 }, 3003 .input_types = { 3004 nir_type_float, nir_type_float 3005 }, 3006 .is_conversion = false, 3007 .algebraic_properties = 3008 NIR_OP_IS_2SRC_COMMUTATIVE 3009}, 3010{ 3011 .name = "fdot2_replicated", 3012 .num_inputs = 2, 3013 .output_size = 4, 3014 .output_type = nir_type_float, 3015 .input_sizes = { 3016 2, 2 3017 }, 3018 .input_types = { 3019 nir_type_float, nir_type_float 3020 }, 3021 .is_conversion = false, 3022 .algebraic_properties = 3023 NIR_OP_IS_2SRC_COMMUTATIVE 3024}, 3025{ 3026 .name = "fdot3", 3027 .num_inputs = 2, 3028 .output_size = 1, 3029 .output_type = nir_type_float, 3030 .input_sizes = { 3031 3, 3 3032 }, 3033 .input_types = { 3034 nir_type_float, nir_type_float 3035 }, 3036 .is_conversion = false, 3037 .algebraic_properties = 3038 NIR_OP_IS_2SRC_COMMUTATIVE 3039}, 3040{ 3041 .name = "fdot3_replicated", 3042 .num_inputs = 2, 3043 .output_size = 4, 3044 .output_type = nir_type_float, 3045 .input_sizes = { 3046 3, 3 3047 }, 3048 .input_types = { 3049 nir_type_float, nir_type_float 3050 }, 3051 .is_conversion = false, 3052 .algebraic_properties = 3053 NIR_OP_IS_2SRC_COMMUTATIVE 3054}, 3055{ 3056 .name = "fdot4", 3057 .num_inputs = 2, 3058 .output_size = 1, 3059 .output_type = nir_type_float, 3060 .input_sizes = { 3061 4, 4 3062 }, 3063 .input_types = { 3064 nir_type_float, nir_type_float 3065 }, 3066 .is_conversion = false, 3067 .algebraic_properties = 3068 NIR_OP_IS_2SRC_COMMUTATIVE 3069}, 3070{ 3071 .name = "fdot4_replicated", 3072 .num_inputs = 2, 3073 .output_size = 4, 3074 .output_type = nir_type_float, 3075 .input_sizes = { 3076 4, 4 3077 }, 3078 .input_types = { 3079 nir_type_float, nir_type_float 3080 }, 3081 .is_conversion = false, 3082 .algebraic_properties = 3083 NIR_OP_IS_2SRC_COMMUTATIVE 3084}, 3085{ 3086 .name = "fdot5", 3087 .num_inputs = 2, 3088 .output_size = 1, 3089 .output_type = nir_type_float, 3090 .input_sizes = { 3091 5, 5 3092 }, 3093 .input_types = { 3094 nir_type_float, nir_type_float 3095 }, 3096 .is_conversion = false, 3097 .algebraic_properties = 3098 NIR_OP_IS_2SRC_COMMUTATIVE 3099}, 3100{ 3101 .name = "fdot5_replicated", 3102 .num_inputs = 2, 3103 .output_size = 4, 3104 .output_type = nir_type_float, 3105 .input_sizes = { 3106 5, 5 3107 }, 3108 .input_types = { 3109 nir_type_float, nir_type_float 3110 }, 3111 .is_conversion = false, 3112 .algebraic_properties = 3113 NIR_OP_IS_2SRC_COMMUTATIVE 3114}, 3115{ 3116 .name = "fdot8", 3117 .num_inputs = 2, 3118 .output_size = 1, 3119 .output_type = nir_type_float, 3120 .input_sizes = { 3121 8, 8 3122 }, 3123 .input_types = { 3124 nir_type_float, nir_type_float 3125 }, 3126 .is_conversion = false, 3127 .algebraic_properties = 3128 NIR_OP_IS_2SRC_COMMUTATIVE 3129}, 3130{ 3131 .name = "fdot8_replicated", 3132 .num_inputs = 2, 3133 .output_size = 4, 3134 .output_type = nir_type_float, 3135 .input_sizes = { 3136 8, 8 3137 }, 3138 .input_types = { 3139 nir_type_float, nir_type_float 3140 }, 3141 .is_conversion = false, 3142 .algebraic_properties = 3143 NIR_OP_IS_2SRC_COMMUTATIVE 3144}, 3145{ 3146 .name = "fdph", 3147 .num_inputs = 2, 3148 .output_size = 1, 3149 .output_type = nir_type_float, 3150 .input_sizes = { 3151 3, 4 3152 }, 3153 .input_types = { 3154 nir_type_float, nir_type_float 3155 }, 3156 .is_conversion = false, 3157 .algebraic_properties = 3158 0 3159}, 3160{ 3161 .name = "fdph_replicated", 3162 .num_inputs = 2, 3163 .output_size = 4, 3164 .output_type = nir_type_float, 3165 .input_sizes = { 3166 3, 4 3167 }, 3168 .input_types = { 3169 nir_type_float, nir_type_float 3170 }, 3171 .is_conversion = false, 3172 .algebraic_properties = 3173 0 3174}, 3175{ 3176 .name = "feq", 3177 .num_inputs = 2, 3178 .output_size = 0, 3179 .output_type = nir_type_bool1, 3180 .input_sizes = { 3181 0, 0 3182 }, 3183 .input_types = { 3184 nir_type_float, nir_type_float 3185 }, 3186 .is_conversion = false, 3187 .algebraic_properties = 3188 NIR_OP_IS_2SRC_COMMUTATIVE 3189}, 3190{ 3191 .name = "feq16", 3192 .num_inputs = 2, 3193 .output_size = 0, 3194 .output_type = nir_type_bool16, 3195 .input_sizes = { 3196 0, 0 3197 }, 3198 .input_types = { 3199 nir_type_float, nir_type_float 3200 }, 3201 .is_conversion = false, 3202 .algebraic_properties = 3203 NIR_OP_IS_2SRC_COMMUTATIVE 3204}, 3205{ 3206 .name = "feq32", 3207 .num_inputs = 2, 3208 .output_size = 0, 3209 .output_type = nir_type_bool32, 3210 .input_sizes = { 3211 0, 0 3212 }, 3213 .input_types = { 3214 nir_type_float, nir_type_float 3215 }, 3216 .is_conversion = false, 3217 .algebraic_properties = 3218 NIR_OP_IS_2SRC_COMMUTATIVE 3219}, 3220{ 3221 .name = "feq8", 3222 .num_inputs = 2, 3223 .output_size = 0, 3224 .output_type = nir_type_bool8, 3225 .input_sizes = { 3226 0, 0 3227 }, 3228 .input_types = { 3229 nir_type_float, nir_type_float 3230 }, 3231 .is_conversion = false, 3232 .algebraic_properties = 3233 NIR_OP_IS_2SRC_COMMUTATIVE 3234}, 3235{ 3236 .name = "fexp2", 3237 .num_inputs = 1, 3238 .output_size = 0, 3239 .output_type = nir_type_float, 3240 .input_sizes = { 3241 0 3242 }, 3243 .input_types = { 3244 nir_type_float 3245 }, 3246 .is_conversion = false, 3247 .algebraic_properties = 3248 0 3249}, 3250{ 3251 .name = "ffloor", 3252 .num_inputs = 1, 3253 .output_size = 0, 3254 .output_type = nir_type_float, 3255 .input_sizes = { 3256 0 3257 }, 3258 .input_types = { 3259 nir_type_float 3260 }, 3261 .is_conversion = false, 3262 .algebraic_properties = 3263 0 3264}, 3265{ 3266 .name = "ffma", 3267 .num_inputs = 3, 3268 .output_size = 0, 3269 .output_type = nir_type_float, 3270 .input_sizes = { 3271 0, 0, 0 3272 }, 3273 .input_types = { 3274 nir_type_float, nir_type_float, nir_type_float 3275 }, 3276 .is_conversion = false, 3277 .algebraic_properties = 3278 NIR_OP_IS_2SRC_COMMUTATIVE 3279}, 3280{ 3281 .name = "ffract", 3282 .num_inputs = 1, 3283 .output_size = 0, 3284 .output_type = nir_type_float, 3285 .input_sizes = { 3286 0 3287 }, 3288 .input_types = { 3289 nir_type_float 3290 }, 3291 .is_conversion = false, 3292 .algebraic_properties = 3293 0 3294}, 3295{ 3296 .name = "fge", 3297 .num_inputs = 2, 3298 .output_size = 0, 3299 .output_type = nir_type_bool1, 3300 .input_sizes = { 3301 0, 0 3302 }, 3303 .input_types = { 3304 nir_type_float, nir_type_float 3305 }, 3306 .is_conversion = false, 3307 .algebraic_properties = 3308 0 3309}, 3310{ 3311 .name = "fge16", 3312 .num_inputs = 2, 3313 .output_size = 0, 3314 .output_type = nir_type_bool16, 3315 .input_sizes = { 3316 0, 0 3317 }, 3318 .input_types = { 3319 nir_type_float, nir_type_float 3320 }, 3321 .is_conversion = false, 3322 .algebraic_properties = 3323 0 3324}, 3325{ 3326 .name = "fge32", 3327 .num_inputs = 2, 3328 .output_size = 0, 3329 .output_type = nir_type_bool32, 3330 .input_sizes = { 3331 0, 0 3332 }, 3333 .input_types = { 3334 nir_type_float, nir_type_float 3335 }, 3336 .is_conversion = false, 3337 .algebraic_properties = 3338 0 3339}, 3340{ 3341 .name = "fge8", 3342 .num_inputs = 2, 3343 .output_size = 0, 3344 .output_type = nir_type_bool8, 3345 .input_sizes = { 3346 0, 0 3347 }, 3348 .input_types = { 3349 nir_type_float, nir_type_float 3350 }, 3351 .is_conversion = false, 3352 .algebraic_properties = 3353 0 3354}, 3355{ 3356 .name = "find_lsb", 3357 .num_inputs = 1, 3358 .output_size = 0, 3359 .output_type = nir_type_int32, 3360 .input_sizes = { 3361 0 3362 }, 3363 .input_types = { 3364 nir_type_int 3365 }, 3366 .is_conversion = false, 3367 .algebraic_properties = 3368 0 3369}, 3370{ 3371 .name = "fisfinite", 3372 .num_inputs = 1, 3373 .output_size = 0, 3374 .output_type = nir_type_bool1, 3375 .input_sizes = { 3376 0 3377 }, 3378 .input_types = { 3379 nir_type_float 3380 }, 3381 .is_conversion = false, 3382 .algebraic_properties = 3383 0 3384}, 3385{ 3386 .name = "fisfinite32", 3387 .num_inputs = 1, 3388 .output_size = 0, 3389 .output_type = nir_type_int32, 3390 .input_sizes = { 3391 0 3392 }, 3393 .input_types = { 3394 nir_type_float 3395 }, 3396 .is_conversion = false, 3397 .algebraic_properties = 3398 0 3399}, 3400{ 3401 .name = "fisnormal", 3402 .num_inputs = 1, 3403 .output_size = 0, 3404 .output_type = nir_type_bool1, 3405 .input_sizes = { 3406 0 3407 }, 3408 .input_types = { 3409 nir_type_float 3410 }, 3411 .is_conversion = false, 3412 .algebraic_properties = 3413 0 3414}, 3415{ 3416 .name = "flog2", 3417 .num_inputs = 1, 3418 .output_size = 0, 3419 .output_type = nir_type_float, 3420 .input_sizes = { 3421 0 3422 }, 3423 .input_types = { 3424 nir_type_float 3425 }, 3426 .is_conversion = false, 3427 .algebraic_properties = 3428 0 3429}, 3430{ 3431 .name = "flrp", 3432 .num_inputs = 3, 3433 .output_size = 0, 3434 .output_type = nir_type_float, 3435 .input_sizes = { 3436 0, 0, 0 3437 }, 3438 .input_types = { 3439 nir_type_float, nir_type_float, nir_type_float 3440 }, 3441 .is_conversion = false, 3442 .algebraic_properties = 3443 0 3444}, 3445{ 3446 .name = "flt", 3447 .num_inputs = 2, 3448 .output_size = 0, 3449 .output_type = nir_type_bool1, 3450 .input_sizes = { 3451 0, 0 3452 }, 3453 .input_types = { 3454 nir_type_float, nir_type_float 3455 }, 3456 .is_conversion = false, 3457 .algebraic_properties = 3458 0 3459}, 3460{ 3461 .name = "flt16", 3462 .num_inputs = 2, 3463 .output_size = 0, 3464 .output_type = nir_type_bool16, 3465 .input_sizes = { 3466 0, 0 3467 }, 3468 .input_types = { 3469 nir_type_float, nir_type_float 3470 }, 3471 .is_conversion = false, 3472 .algebraic_properties = 3473 0 3474}, 3475{ 3476 .name = "flt32", 3477 .num_inputs = 2, 3478 .output_size = 0, 3479 .output_type = nir_type_bool32, 3480 .input_sizes = { 3481 0, 0 3482 }, 3483 .input_types = { 3484 nir_type_float, nir_type_float 3485 }, 3486 .is_conversion = false, 3487 .algebraic_properties = 3488 0 3489}, 3490{ 3491 .name = "flt8", 3492 .num_inputs = 2, 3493 .output_size = 0, 3494 .output_type = nir_type_bool8, 3495 .input_sizes = { 3496 0, 0 3497 }, 3498 .input_types = { 3499 nir_type_float, nir_type_float 3500 }, 3501 .is_conversion = false, 3502 .algebraic_properties = 3503 0 3504}, 3505{ 3506 .name = "fmax", 3507 .num_inputs = 2, 3508 .output_size = 0, 3509 .output_type = nir_type_float, 3510 .input_sizes = { 3511 0, 0 3512 }, 3513 .input_types = { 3514 nir_type_float, nir_type_float 3515 }, 3516 .is_conversion = false, 3517 .algebraic_properties = 3518 NIR_OP_IS_2SRC_COMMUTATIVE | NIR_OP_IS_ASSOCIATIVE 3519}, 3520{ 3521 .name = "fmin", 3522 .num_inputs = 2, 3523 .output_size = 0, 3524 .output_type = nir_type_float, 3525 .input_sizes = { 3526 0, 0 3527 }, 3528 .input_types = { 3529 nir_type_float, nir_type_float 3530 }, 3531 .is_conversion = false, 3532 .algebraic_properties = 3533 NIR_OP_IS_2SRC_COMMUTATIVE | NIR_OP_IS_ASSOCIATIVE 3534}, 3535{ 3536 .name = "fmod", 3537 .num_inputs = 2, 3538 .output_size = 0, 3539 .output_type = nir_type_float, 3540 .input_sizes = { 3541 0, 0 3542 }, 3543 .input_types = { 3544 nir_type_float, nir_type_float 3545 }, 3546 .is_conversion = false, 3547 .algebraic_properties = 3548 0 3549}, 3550{ 3551 .name = "fmul", 3552 .num_inputs = 2, 3553 .output_size = 0, 3554 .output_type = nir_type_float, 3555 .input_sizes = { 3556 0, 0 3557 }, 3558 .input_types = { 3559 nir_type_float, nir_type_float 3560 }, 3561 .is_conversion = false, 3562 .algebraic_properties = 3563 NIR_OP_IS_2SRC_COMMUTATIVE | NIR_OP_IS_ASSOCIATIVE 3564}, 3565{ 3566 .name = "fneg", 3567 .num_inputs = 1, 3568 .output_size = 0, 3569 .output_type = nir_type_float, 3570 .input_sizes = { 3571 0 3572 }, 3573 .input_types = { 3574 nir_type_float 3575 }, 3576 .is_conversion = false, 3577 .algebraic_properties = 3578 0 3579}, 3580{ 3581 .name = "fneu", 3582 .num_inputs = 2, 3583 .output_size = 0, 3584 .output_type = nir_type_bool1, 3585 .input_sizes = { 3586 0, 0 3587 }, 3588 .input_types = { 3589 nir_type_float, nir_type_float 3590 }, 3591 .is_conversion = false, 3592 .algebraic_properties = 3593 NIR_OP_IS_2SRC_COMMUTATIVE 3594}, 3595{ 3596 .name = "fneu16", 3597 .num_inputs = 2, 3598 .output_size = 0, 3599 .output_type = nir_type_bool16, 3600 .input_sizes = { 3601 0, 0 3602 }, 3603 .input_types = { 3604 nir_type_float, nir_type_float 3605 }, 3606 .is_conversion = false, 3607 .algebraic_properties = 3608 NIR_OP_IS_2SRC_COMMUTATIVE 3609}, 3610{ 3611 .name = "fneu32", 3612 .num_inputs = 2, 3613 .output_size = 0, 3614 .output_type = nir_type_bool32, 3615 .input_sizes = { 3616 0, 0 3617 }, 3618 .input_types = { 3619 nir_type_float, nir_type_float 3620 }, 3621 .is_conversion = false, 3622 .algebraic_properties = 3623 NIR_OP_IS_2SRC_COMMUTATIVE 3624}, 3625{ 3626 .name = "fneu8", 3627 .num_inputs = 2, 3628 .output_size = 0, 3629 .output_type = nir_type_bool8, 3630 .input_sizes = { 3631 0, 0 3632 }, 3633 .input_types = { 3634 nir_type_float, nir_type_float 3635 }, 3636 .is_conversion = false, 3637 .algebraic_properties = 3638 NIR_OP_IS_2SRC_COMMUTATIVE 3639}, 3640{ 3641 .name = "fpow", 3642 .num_inputs = 2, 3643 .output_size = 0, 3644 .output_type = nir_type_float, 3645 .input_sizes = { 3646 0, 0 3647 }, 3648 .input_types = { 3649 nir_type_float, nir_type_float 3650 }, 3651 .is_conversion = false, 3652 .algebraic_properties = 3653 0 3654}, 3655{ 3656 .name = "fquantize2f16", 3657 .num_inputs = 1, 3658 .output_size = 0, 3659 .output_type = nir_type_float, 3660 .input_sizes = { 3661 0 3662 }, 3663 .input_types = { 3664 nir_type_float 3665 }, 3666 .is_conversion = false, 3667 .algebraic_properties = 3668 0 3669}, 3670{ 3671 .name = "frcp", 3672 .num_inputs = 1, 3673 .output_size = 0, 3674 .output_type = nir_type_float, 3675 .input_sizes = { 3676 0 3677 }, 3678 .input_types = { 3679 nir_type_float 3680 }, 3681 .is_conversion = false, 3682 .algebraic_properties = 3683 0 3684}, 3685{ 3686 .name = "frem", 3687 .num_inputs = 2, 3688 .output_size = 0, 3689 .output_type = nir_type_float, 3690 .input_sizes = { 3691 0, 0 3692 }, 3693 .input_types = { 3694 nir_type_float, nir_type_float 3695 }, 3696 .is_conversion = false, 3697 .algebraic_properties = 3698 0 3699}, 3700{ 3701 .name = "frexp_exp", 3702 .num_inputs = 1, 3703 .output_size = 0, 3704 .output_type = nir_type_int32, 3705 .input_sizes = { 3706 0 3707 }, 3708 .input_types = { 3709 nir_type_float 3710 }, 3711 .is_conversion = false, 3712 .algebraic_properties = 3713 0 3714}, 3715{ 3716 .name = "frexp_sig", 3717 .num_inputs = 1, 3718 .output_size = 0, 3719 .output_type = nir_type_float, 3720 .input_sizes = { 3721 0 3722 }, 3723 .input_types = { 3724 nir_type_float 3725 }, 3726 .is_conversion = false, 3727 .algebraic_properties = 3728 0 3729}, 3730{ 3731 .name = "fround_even", 3732 .num_inputs = 1, 3733 .output_size = 0, 3734 .output_type = nir_type_float, 3735 .input_sizes = { 3736 0 3737 }, 3738 .input_types = { 3739 nir_type_float 3740 }, 3741 .is_conversion = false, 3742 .algebraic_properties = 3743 0 3744}, 3745{ 3746 .name = "frsq", 3747 .num_inputs = 1, 3748 .output_size = 0, 3749 .output_type = nir_type_float, 3750 .input_sizes = { 3751 0 3752 }, 3753 .input_types = { 3754 nir_type_float 3755 }, 3756 .is_conversion = false, 3757 .algebraic_properties = 3758 0 3759}, 3760{ 3761 .name = "fsat", 3762 .num_inputs = 1, 3763 .output_size = 0, 3764 .output_type = nir_type_float, 3765 .input_sizes = { 3766 0 3767 }, 3768 .input_types = { 3769 nir_type_float 3770 }, 3771 .is_conversion = false, 3772 .algebraic_properties = 3773 0 3774}, 3775{ 3776 .name = "fsat_signed_mali", 3777 .num_inputs = 1, 3778 .output_size = 0, 3779 .output_type = nir_type_float, 3780 .input_sizes = { 3781 0 3782 }, 3783 .input_types = { 3784 nir_type_float 3785 }, 3786 .is_conversion = false, 3787 .algebraic_properties = 3788 0 3789}, 3790{ 3791 .name = "fsign", 3792 .num_inputs = 1, 3793 .output_size = 0, 3794 .output_type = nir_type_float, 3795 .input_sizes = { 3796 0 3797 }, 3798 .input_types = { 3799 nir_type_float 3800 }, 3801 .is_conversion = false, 3802 .algebraic_properties = 3803 0 3804}, 3805{ 3806 .name = "fsin", 3807 .num_inputs = 1, 3808 .output_size = 0, 3809 .output_type = nir_type_float, 3810 .input_sizes = { 3811 0 3812 }, 3813 .input_types = { 3814 nir_type_float 3815 }, 3816 .is_conversion = false, 3817 .algebraic_properties = 3818 0 3819}, 3820{ 3821 .name = "fsin_agx", 3822 .num_inputs = 1, 3823 .output_size = 0, 3824 .output_type = nir_type_float, 3825 .input_sizes = { 3826 0 3827 }, 3828 .input_types = { 3829 nir_type_float 3830 }, 3831 .is_conversion = false, 3832 .algebraic_properties = 3833 0 3834}, 3835{ 3836 .name = "fsin_r600", 3837 .num_inputs = 1, 3838 .output_size = 0, 3839 .output_type = nir_type_float32, 3840 .input_sizes = { 3841 0 3842 }, 3843 .input_types = { 3844 nir_type_float32 3845 }, 3846 .is_conversion = false, 3847 .algebraic_properties = 3848 0 3849}, 3850{ 3851 .name = "fsqrt", 3852 .num_inputs = 1, 3853 .output_size = 0, 3854 .output_type = nir_type_float, 3855 .input_sizes = { 3856 0 3857 }, 3858 .input_types = { 3859 nir_type_float 3860 }, 3861 .is_conversion = false, 3862 .algebraic_properties = 3863 0 3864}, 3865{ 3866 .name = "fsub", 3867 .num_inputs = 2, 3868 .output_size = 0, 3869 .output_type = nir_type_float, 3870 .input_sizes = { 3871 0, 0 3872 }, 3873 .input_types = { 3874 nir_type_float, nir_type_float 3875 }, 3876 .is_conversion = false, 3877 .algebraic_properties = 3878 0 3879}, 3880{ 3881 .name = "fsum2", 3882 .num_inputs = 1, 3883 .output_size = 1, 3884 .output_type = nir_type_float, 3885 .input_sizes = { 3886 2 3887 }, 3888 .input_types = { 3889 nir_type_float 3890 }, 3891 .is_conversion = false, 3892 .algebraic_properties = 3893 0 3894}, 3895{ 3896 .name = "fsum3", 3897 .num_inputs = 1, 3898 .output_size = 1, 3899 .output_type = nir_type_float, 3900 .input_sizes = { 3901 3 3902 }, 3903 .input_types = { 3904 nir_type_float 3905 }, 3906 .is_conversion = false, 3907 .algebraic_properties = 3908 0 3909}, 3910{ 3911 .name = "fsum4", 3912 .num_inputs = 1, 3913 .output_size = 1, 3914 .output_type = nir_type_float, 3915 .input_sizes = { 3916 4 3917 }, 3918 .input_types = { 3919 nir_type_float 3920 }, 3921 .is_conversion = false, 3922 .algebraic_properties = 3923 0 3924}, 3925{ 3926 .name = "ftrunc", 3927 .num_inputs = 1, 3928 .output_size = 0, 3929 .output_type = nir_type_float, 3930 .input_sizes = { 3931 0 3932 }, 3933 .input_types = { 3934 nir_type_float 3935 }, 3936 .is_conversion = false, 3937 .algebraic_properties = 3938 0 3939}, 3940{ 3941 .name = "i2b1", 3942 .num_inputs = 1, 3943 .output_size = 0, 3944 .output_type = nir_type_bool1, 3945 .input_sizes = { 3946 0 3947 }, 3948 .input_types = { 3949 nir_type_int 3950 }, 3951 .is_conversion = true, 3952 .algebraic_properties = 3953 0 3954}, 3955{ 3956 .name = "i2b16", 3957 .num_inputs = 1, 3958 .output_size = 0, 3959 .output_type = nir_type_bool16, 3960 .input_sizes = { 3961 0 3962 }, 3963 .input_types = { 3964 nir_type_int 3965 }, 3966 .is_conversion = true, 3967 .algebraic_properties = 3968 0 3969}, 3970{ 3971 .name = "i2b32", 3972 .num_inputs = 1, 3973 .output_size = 0, 3974 .output_type = nir_type_bool32, 3975 .input_sizes = { 3976 0 3977 }, 3978 .input_types = { 3979 nir_type_int 3980 }, 3981 .is_conversion = true, 3982 .algebraic_properties = 3983 0 3984}, 3985{ 3986 .name = "i2b8", 3987 .num_inputs = 1, 3988 .output_size = 0, 3989 .output_type = nir_type_bool8, 3990 .input_sizes = { 3991 0 3992 }, 3993 .input_types = { 3994 nir_type_int 3995 }, 3996 .is_conversion = true, 3997 .algebraic_properties = 3998 0 3999}, 4000{ 4001 .name = "i2f16", 4002 .num_inputs = 1, 4003 .output_size = 0, 4004 .output_type = nir_type_float16, 4005 .input_sizes = { 4006 0 4007 }, 4008 .input_types = { 4009 nir_type_int 4010 }, 4011 .is_conversion = true, 4012 .algebraic_properties = 4013 0 4014}, 4015{ 4016 .name = "i2f32", 4017 .num_inputs = 1, 4018 .output_size = 0, 4019 .output_type = nir_type_float32, 4020 .input_sizes = { 4021 0 4022 }, 4023 .input_types = { 4024 nir_type_int 4025 }, 4026 .is_conversion = true, 4027 .algebraic_properties = 4028 0 4029}, 4030{ 4031 .name = "i2f64", 4032 .num_inputs = 1, 4033 .output_size = 0, 4034 .output_type = nir_type_float64, 4035 .input_sizes = { 4036 0 4037 }, 4038 .input_types = { 4039 nir_type_int 4040 }, 4041 .is_conversion = true, 4042 .algebraic_properties = 4043 0 4044}, 4045{ 4046 .name = "i2fmp", 4047 .num_inputs = 1, 4048 .output_size = 0, 4049 .output_type = nir_type_float16, 4050 .input_sizes = { 4051 0 4052 }, 4053 .input_types = { 4054 nir_type_int32 4055 }, 4056 .is_conversion = true, 4057 .algebraic_properties = 4058 0 4059}, 4060{ 4061 .name = "i2i1", 4062 .num_inputs = 1, 4063 .output_size = 0, 4064 .output_type = nir_type_int1, 4065 .input_sizes = { 4066 0 4067 }, 4068 .input_types = { 4069 nir_type_int 4070 }, 4071 .is_conversion = true, 4072 .algebraic_properties = 4073 0 4074}, 4075{ 4076 .name = "i2i16", 4077 .num_inputs = 1, 4078 .output_size = 0, 4079 .output_type = nir_type_int16, 4080 .input_sizes = { 4081 0 4082 }, 4083 .input_types = { 4084 nir_type_int 4085 }, 4086 .is_conversion = true, 4087 .algebraic_properties = 4088 0 4089}, 4090{ 4091 .name = "i2i32", 4092 .num_inputs = 1, 4093 .output_size = 0, 4094 .output_type = nir_type_int32, 4095 .input_sizes = { 4096 0 4097 }, 4098 .input_types = { 4099 nir_type_int 4100 }, 4101 .is_conversion = true, 4102 .algebraic_properties = 4103 0 4104}, 4105{ 4106 .name = "i2i64", 4107 .num_inputs = 1, 4108 .output_size = 0, 4109 .output_type = nir_type_int64, 4110 .input_sizes = { 4111 0 4112 }, 4113 .input_types = { 4114 nir_type_int 4115 }, 4116 .is_conversion = true, 4117 .algebraic_properties = 4118 0 4119}, 4120{ 4121 .name = "i2i8", 4122 .num_inputs = 1, 4123 .output_size = 0, 4124 .output_type = nir_type_int8, 4125 .input_sizes = { 4126 0 4127 }, 4128 .input_types = { 4129 nir_type_int 4130 }, 4131 .is_conversion = true, 4132 .algebraic_properties = 4133 0 4134}, 4135{ 4136 .name = "i2imp", 4137 .num_inputs = 1, 4138 .output_size = 0, 4139 .output_type = nir_type_int16, 4140 .input_sizes = { 4141 0 4142 }, 4143 .input_types = { 4144 nir_type_int32 4145 }, 4146 .is_conversion = true, 4147 .algebraic_properties = 4148 0 4149}, 4150{ 4151 .name = "i32csel_ge", 4152 .num_inputs = 3, 4153 .output_size = 0, 4154 .output_type = nir_type_int32, 4155 .input_sizes = { 4156 0, 0, 0 4157 }, 4158 .input_types = { 4159 nir_type_int32, nir_type_int32, nir_type_int32 4160 }, 4161 .is_conversion = false, 4162 .algebraic_properties = 4163 0 4164}, 4165{ 4166 .name = "i32csel_gt", 4167 .num_inputs = 3, 4168 .output_size = 0, 4169 .output_type = nir_type_int32, 4170 .input_sizes = { 4171 0, 0, 0 4172 }, 4173 .input_types = { 4174 nir_type_int32, nir_type_int32, nir_type_int32 4175 }, 4176 .is_conversion = false, 4177 .algebraic_properties = 4178 0 4179}, 4180{ 4181 .name = "iabs", 4182 .num_inputs = 1, 4183 .output_size = 0, 4184 .output_type = nir_type_int, 4185 .input_sizes = { 4186 0 4187 }, 4188 .input_types = { 4189 nir_type_int 4190 }, 4191 .is_conversion = false, 4192 .algebraic_properties = 4193 0 4194}, 4195{ 4196 .name = "iadd", 4197 .num_inputs = 2, 4198 .output_size = 0, 4199 .output_type = nir_type_int, 4200 .input_sizes = { 4201 0, 0 4202 }, 4203 .input_types = { 4204 nir_type_int, nir_type_int 4205 }, 4206 .is_conversion = false, 4207 .algebraic_properties = 4208 NIR_OP_IS_2SRC_COMMUTATIVE | NIR_OP_IS_ASSOCIATIVE 4209}, 4210{ 4211 .name = "iadd3", 4212 .num_inputs = 3, 4213 .output_size = 0, 4214 .output_type = nir_type_int, 4215 .input_sizes = { 4216 0, 0, 0 4217 }, 4218 .input_types = { 4219 nir_type_int, nir_type_int, nir_type_int 4220 }, 4221 .is_conversion = false, 4222 .algebraic_properties = 4223 NIR_OP_IS_2SRC_COMMUTATIVE | NIR_OP_IS_ASSOCIATIVE 4224}, 4225{ 4226 .name = "iadd_sat", 4227 .num_inputs = 2, 4228 .output_size = 0, 4229 .output_type = nir_type_int, 4230 .input_sizes = { 4231 0, 0 4232 }, 4233 .input_types = { 4234 nir_type_int, nir_type_int 4235 }, 4236 .is_conversion = false, 4237 .algebraic_properties = 4238 NIR_OP_IS_2SRC_COMMUTATIVE 4239}, 4240{ 4241 .name = "iand", 4242 .num_inputs = 2, 4243 .output_size = 0, 4244 .output_type = nir_type_uint, 4245 .input_sizes = { 4246 0, 0 4247 }, 4248 .input_types = { 4249 nir_type_uint, nir_type_uint 4250 }, 4251 .is_conversion = false, 4252 .algebraic_properties = 4253 NIR_OP_IS_2SRC_COMMUTATIVE | NIR_OP_IS_ASSOCIATIVE 4254}, 4255{ 4256 .name = "ibfe", 4257 .num_inputs = 3, 4258 .output_size = 0, 4259 .output_type = nir_type_int32, 4260 .input_sizes = { 4261 0, 0, 0 4262 }, 4263 .input_types = { 4264 nir_type_int32, nir_type_uint32, nir_type_uint32 4265 }, 4266 .is_conversion = false, 4267 .algebraic_properties = 4268 0 4269}, 4270{ 4271 .name = "ibitfield_extract", 4272 .num_inputs = 3, 4273 .output_size = 0, 4274 .output_type = nir_type_int32, 4275 .input_sizes = { 4276 0, 0, 0 4277 }, 4278 .input_types = { 4279 nir_type_int32, nir_type_int32, nir_type_int32 4280 }, 4281 .is_conversion = false, 4282 .algebraic_properties = 4283 0 4284}, 4285{ 4286 .name = "idiv", 4287 .num_inputs = 2, 4288 .output_size = 0, 4289 .output_type = nir_type_int, 4290 .input_sizes = { 4291 0, 0 4292 }, 4293 .input_types = { 4294 nir_type_int, nir_type_int 4295 }, 4296 .is_conversion = false, 4297 .algebraic_properties = 4298 0 4299}, 4300{ 4301 .name = "ieq", 4302 .num_inputs = 2, 4303 .output_size = 0, 4304 .output_type = nir_type_bool1, 4305 .input_sizes = { 4306 0, 0 4307 }, 4308 .input_types = { 4309 nir_type_int, nir_type_int 4310 }, 4311 .is_conversion = false, 4312 .algebraic_properties = 4313 NIR_OP_IS_2SRC_COMMUTATIVE 4314}, 4315{ 4316 .name = "ieq16", 4317 .num_inputs = 2, 4318 .output_size = 0, 4319 .output_type = nir_type_bool16, 4320 .input_sizes = { 4321 0, 0 4322 }, 4323 .input_types = { 4324 nir_type_int, nir_type_int 4325 }, 4326 .is_conversion = false, 4327 .algebraic_properties = 4328 NIR_OP_IS_2SRC_COMMUTATIVE 4329}, 4330{ 4331 .name = "ieq32", 4332 .num_inputs = 2, 4333 .output_size = 0, 4334 .output_type = nir_type_bool32, 4335 .input_sizes = { 4336 0, 0 4337 }, 4338 .input_types = { 4339 nir_type_int, nir_type_int 4340 }, 4341 .is_conversion = false, 4342 .algebraic_properties = 4343 NIR_OP_IS_2SRC_COMMUTATIVE 4344}, 4345{ 4346 .name = "ieq8", 4347 .num_inputs = 2, 4348 .output_size = 0, 4349 .output_type = nir_type_bool8, 4350 .input_sizes = { 4351 0, 0 4352 }, 4353 .input_types = { 4354 nir_type_int, nir_type_int 4355 }, 4356 .is_conversion = false, 4357 .algebraic_properties = 4358 NIR_OP_IS_2SRC_COMMUTATIVE 4359}, 4360{ 4361 .name = "ifind_msb", 4362 .num_inputs = 1, 4363 .output_size = 0, 4364 .output_type = nir_type_int32, 4365 .input_sizes = { 4366 0 4367 }, 4368 .input_types = { 4369 nir_type_int32 4370 }, 4371 .is_conversion = false, 4372 .algebraic_properties = 4373 0 4374}, 4375{ 4376 .name = "ifind_msb_rev", 4377 .num_inputs = 1, 4378 .output_size = 0, 4379 .output_type = nir_type_int32, 4380 .input_sizes = { 4381 0 4382 }, 4383 .input_types = { 4384 nir_type_int 4385 }, 4386 .is_conversion = false, 4387 .algebraic_properties = 4388 0 4389}, 4390{ 4391 .name = "ige", 4392 .num_inputs = 2, 4393 .output_size = 0, 4394 .output_type = nir_type_bool1, 4395 .input_sizes = { 4396 0, 0 4397 }, 4398 .input_types = { 4399 nir_type_int, nir_type_int 4400 }, 4401 .is_conversion = false, 4402 .algebraic_properties = 4403 0 4404}, 4405{ 4406 .name = "ige16", 4407 .num_inputs = 2, 4408 .output_size = 0, 4409 .output_type = nir_type_bool16, 4410 .input_sizes = { 4411 0, 0 4412 }, 4413 .input_types = { 4414 nir_type_int, nir_type_int 4415 }, 4416 .is_conversion = false, 4417 .algebraic_properties = 4418 0 4419}, 4420{ 4421 .name = "ige32", 4422 .num_inputs = 2, 4423 .output_size = 0, 4424 .output_type = nir_type_bool32, 4425 .input_sizes = { 4426 0, 0 4427 }, 4428 .input_types = { 4429 nir_type_int, nir_type_int 4430 }, 4431 .is_conversion = false, 4432 .algebraic_properties = 4433 0 4434}, 4435{ 4436 .name = "ige8", 4437 .num_inputs = 2, 4438 .output_size = 0, 4439 .output_type = nir_type_bool8, 4440 .input_sizes = { 4441 0, 0 4442 }, 4443 .input_types = { 4444 nir_type_int, nir_type_int 4445 }, 4446 .is_conversion = false, 4447 .algebraic_properties = 4448 0 4449}, 4450{ 4451 .name = "ihadd", 4452 .num_inputs = 2, 4453 .output_size = 0, 4454 .output_type = nir_type_int, 4455 .input_sizes = { 4456 0, 0 4457 }, 4458 .input_types = { 4459 nir_type_int, nir_type_int 4460 }, 4461 .is_conversion = false, 4462 .algebraic_properties = 4463 NIR_OP_IS_2SRC_COMMUTATIVE 4464}, 4465{ 4466 .name = "ilt", 4467 .num_inputs = 2, 4468 .output_size = 0, 4469 .output_type = nir_type_bool1, 4470 .input_sizes = { 4471 0, 0 4472 }, 4473 .input_types = { 4474 nir_type_int, nir_type_int 4475 }, 4476 .is_conversion = false, 4477 .algebraic_properties = 4478 0 4479}, 4480{ 4481 .name = "ilt16", 4482 .num_inputs = 2, 4483 .output_size = 0, 4484 .output_type = nir_type_bool16, 4485 .input_sizes = { 4486 0, 0 4487 }, 4488 .input_types = { 4489 nir_type_int, nir_type_int 4490 }, 4491 .is_conversion = false, 4492 .algebraic_properties = 4493 0 4494}, 4495{ 4496 .name = "ilt32", 4497 .num_inputs = 2, 4498 .output_size = 0, 4499 .output_type = nir_type_bool32, 4500 .input_sizes = { 4501 0, 0 4502 }, 4503 .input_types = { 4504 nir_type_int, nir_type_int 4505 }, 4506 .is_conversion = false, 4507 .algebraic_properties = 4508 0 4509}, 4510{ 4511 .name = "ilt8", 4512 .num_inputs = 2, 4513 .output_size = 0, 4514 .output_type = nir_type_bool8, 4515 .input_sizes = { 4516 0, 0 4517 }, 4518 .input_types = { 4519 nir_type_int, nir_type_int 4520 }, 4521 .is_conversion = false, 4522 .algebraic_properties = 4523 0 4524}, 4525{ 4526 .name = "imad24_ir3", 4527 .num_inputs = 3, 4528 .output_size = 0, 4529 .output_type = nir_type_int32, 4530 .input_sizes = { 4531 0, 0, 0 4532 }, 4533 .input_types = { 4534 nir_type_int32, nir_type_int32, nir_type_int32 4535 }, 4536 .is_conversion = false, 4537 .algebraic_properties = 4538 NIR_OP_IS_2SRC_COMMUTATIVE 4539}, 4540{ 4541 .name = "imadsh_mix16", 4542 .num_inputs = 3, 4543 .output_size = 0, 4544 .output_type = nir_type_int32, 4545 .input_sizes = { 4546 0, 0, 0 4547 }, 4548 .input_types = { 4549 nir_type_int32, nir_type_int32, nir_type_int32 4550 }, 4551 .is_conversion = false, 4552 .algebraic_properties = 4553 0 4554}, 4555{ 4556 .name = "imax", 4557 .num_inputs = 2, 4558 .output_size = 0, 4559 .output_type = nir_type_int, 4560 .input_sizes = { 4561 0, 0 4562 }, 4563 .input_types = { 4564 nir_type_int, nir_type_int 4565 }, 4566 .is_conversion = false, 4567 .algebraic_properties = 4568 NIR_OP_IS_2SRC_COMMUTATIVE | NIR_OP_IS_ASSOCIATIVE 4569}, 4570{ 4571 .name = "imin", 4572 .num_inputs = 2, 4573 .output_size = 0, 4574 .output_type = nir_type_int, 4575 .input_sizes = { 4576 0, 0 4577 }, 4578 .input_types = { 4579 nir_type_int, nir_type_int 4580 }, 4581 .is_conversion = false, 4582 .algebraic_properties = 4583 NIR_OP_IS_2SRC_COMMUTATIVE | NIR_OP_IS_ASSOCIATIVE 4584}, 4585{ 4586 .name = "imod", 4587 .num_inputs = 2, 4588 .output_size = 0, 4589 .output_type = nir_type_int, 4590 .input_sizes = { 4591 0, 0 4592 }, 4593 .input_types = { 4594 nir_type_int, nir_type_int 4595 }, 4596 .is_conversion = false, 4597 .algebraic_properties = 4598 0 4599}, 4600{ 4601 .name = "imul", 4602 .num_inputs = 2, 4603 .output_size = 0, 4604 .output_type = nir_type_int, 4605 .input_sizes = { 4606 0, 0 4607 }, 4608 .input_types = { 4609 nir_type_int, nir_type_int 4610 }, 4611 .is_conversion = false, 4612 .algebraic_properties = 4613 NIR_OP_IS_2SRC_COMMUTATIVE | NIR_OP_IS_ASSOCIATIVE 4614}, 4615{ 4616 .name = "imul24", 4617 .num_inputs = 2, 4618 .output_size = 0, 4619 .output_type = nir_type_int32, 4620 .input_sizes = { 4621 0, 0 4622 }, 4623 .input_types = { 4624 nir_type_int32, nir_type_int32 4625 }, 4626 .is_conversion = false, 4627 .algebraic_properties = 4628 NIR_OP_IS_2SRC_COMMUTATIVE | NIR_OP_IS_ASSOCIATIVE 4629}, 4630{ 4631 .name = "imul24_relaxed", 4632 .num_inputs = 2, 4633 .output_size = 0, 4634 .output_type = nir_type_int32, 4635 .input_sizes = { 4636 0, 0 4637 }, 4638 .input_types = { 4639 nir_type_int32, nir_type_int32 4640 }, 4641 .is_conversion = false, 4642 .algebraic_properties = 4643 NIR_OP_IS_2SRC_COMMUTATIVE | NIR_OP_IS_ASSOCIATIVE 4644}, 4645{ 4646 .name = "imul_2x32_64", 4647 .num_inputs = 2, 4648 .output_size = 0, 4649 .output_type = nir_type_int64, 4650 .input_sizes = { 4651 0, 0 4652 }, 4653 .input_types = { 4654 nir_type_int32, nir_type_int32 4655 }, 4656 .is_conversion = false, 4657 .algebraic_properties = 4658 NIR_OP_IS_2SRC_COMMUTATIVE 4659}, 4660{ 4661 .name = "imul_32x16", 4662 .num_inputs = 2, 4663 .output_size = 0, 4664 .output_type = nir_type_int32, 4665 .input_sizes = { 4666 0, 0 4667 }, 4668 .input_types = { 4669 nir_type_int32, nir_type_int32 4670 }, 4671 .is_conversion = false, 4672 .algebraic_properties = 4673 0 4674}, 4675{ 4676 .name = "imul_high", 4677 .num_inputs = 2, 4678 .output_size = 0, 4679 .output_type = nir_type_int, 4680 .input_sizes = { 4681 0, 0 4682 }, 4683 .input_types = { 4684 nir_type_int, nir_type_int 4685 }, 4686 .is_conversion = false, 4687 .algebraic_properties = 4688 NIR_OP_IS_2SRC_COMMUTATIVE 4689}, 4690{ 4691 .name = "ine", 4692 .num_inputs = 2, 4693 .output_size = 0, 4694 .output_type = nir_type_bool1, 4695 .input_sizes = { 4696 0, 0 4697 }, 4698 .input_types = { 4699 nir_type_int, nir_type_int 4700 }, 4701 .is_conversion = false, 4702 .algebraic_properties = 4703 NIR_OP_IS_2SRC_COMMUTATIVE 4704}, 4705{ 4706 .name = "ine16", 4707 .num_inputs = 2, 4708 .output_size = 0, 4709 .output_type = nir_type_bool16, 4710 .input_sizes = { 4711 0, 0 4712 }, 4713 .input_types = { 4714 nir_type_int, nir_type_int 4715 }, 4716 .is_conversion = false, 4717 .algebraic_properties = 4718 NIR_OP_IS_2SRC_COMMUTATIVE 4719}, 4720{ 4721 .name = "ine32", 4722 .num_inputs = 2, 4723 .output_size = 0, 4724 .output_type = nir_type_bool32, 4725 .input_sizes = { 4726 0, 0 4727 }, 4728 .input_types = { 4729 nir_type_int, nir_type_int 4730 }, 4731 .is_conversion = false, 4732 .algebraic_properties = 4733 NIR_OP_IS_2SRC_COMMUTATIVE 4734}, 4735{ 4736 .name = "ine8", 4737 .num_inputs = 2, 4738 .output_size = 0, 4739 .output_type = nir_type_bool8, 4740 .input_sizes = { 4741 0, 0 4742 }, 4743 .input_types = { 4744 nir_type_int, nir_type_int 4745 }, 4746 .is_conversion = false, 4747 .algebraic_properties = 4748 NIR_OP_IS_2SRC_COMMUTATIVE 4749}, 4750{ 4751 .name = "ineg", 4752 .num_inputs = 1, 4753 .output_size = 0, 4754 .output_type = nir_type_int, 4755 .input_sizes = { 4756 0 4757 }, 4758 .input_types = { 4759 nir_type_int 4760 }, 4761 .is_conversion = false, 4762 .algebraic_properties = 4763 0 4764}, 4765{ 4766 .name = "inot", 4767 .num_inputs = 1, 4768 .output_size = 0, 4769 .output_type = nir_type_int, 4770 .input_sizes = { 4771 0 4772 }, 4773 .input_types = { 4774 nir_type_int 4775 }, 4776 .is_conversion = false, 4777 .algebraic_properties = 4778 0 4779}, 4780{ 4781 .name = "insert_u16", 4782 .num_inputs = 2, 4783 .output_size = 0, 4784 .output_type = nir_type_uint, 4785 .input_sizes = { 4786 0, 0 4787 }, 4788 .input_types = { 4789 nir_type_uint, nir_type_uint 4790 }, 4791 .is_conversion = false, 4792 .algebraic_properties = 4793 0 4794}, 4795{ 4796 .name = "insert_u8", 4797 .num_inputs = 2, 4798 .output_size = 0, 4799 .output_type = nir_type_uint, 4800 .input_sizes = { 4801 0, 0 4802 }, 4803 .input_types = { 4804 nir_type_uint, nir_type_uint 4805 }, 4806 .is_conversion = false, 4807 .algebraic_properties = 4808 0 4809}, 4810{ 4811 .name = "ior", 4812 .num_inputs = 2, 4813 .output_size = 0, 4814 .output_type = nir_type_uint, 4815 .input_sizes = { 4816 0, 0 4817 }, 4818 .input_types = { 4819 nir_type_uint, nir_type_uint 4820 }, 4821 .is_conversion = false, 4822 .algebraic_properties = 4823 NIR_OP_IS_2SRC_COMMUTATIVE | NIR_OP_IS_ASSOCIATIVE 4824}, 4825{ 4826 .name = "irem", 4827 .num_inputs = 2, 4828 .output_size = 0, 4829 .output_type = nir_type_int, 4830 .input_sizes = { 4831 0, 0 4832 }, 4833 .input_types = { 4834 nir_type_int, nir_type_int 4835 }, 4836 .is_conversion = false, 4837 .algebraic_properties = 4838 0 4839}, 4840{ 4841 .name = "irhadd", 4842 .num_inputs = 2, 4843 .output_size = 0, 4844 .output_type = nir_type_int, 4845 .input_sizes = { 4846 0, 0 4847 }, 4848 .input_types = { 4849 nir_type_int, nir_type_int 4850 }, 4851 .is_conversion = false, 4852 .algebraic_properties = 4853 NIR_OP_IS_2SRC_COMMUTATIVE 4854}, 4855{ 4856 .name = "ishl", 4857 .num_inputs = 2, 4858 .output_size = 0, 4859 .output_type = nir_type_int, 4860 .input_sizes = { 4861 0, 0 4862 }, 4863 .input_types = { 4864 nir_type_int, nir_type_uint32 4865 }, 4866 .is_conversion = false, 4867 .algebraic_properties = 4868 0 4869}, 4870{ 4871 .name = "ishr", 4872 .num_inputs = 2, 4873 .output_size = 0, 4874 .output_type = nir_type_int, 4875 .input_sizes = { 4876 0, 0 4877 }, 4878 .input_types = { 4879 nir_type_int, nir_type_uint32 4880 }, 4881 .is_conversion = false, 4882 .algebraic_properties = 4883 0 4884}, 4885{ 4886 .name = "isign", 4887 .num_inputs = 1, 4888 .output_size = 0, 4889 .output_type = nir_type_int, 4890 .input_sizes = { 4891 0 4892 }, 4893 .input_types = { 4894 nir_type_int 4895 }, 4896 .is_conversion = false, 4897 .algebraic_properties = 4898 0 4899}, 4900{ 4901 .name = "isub", 4902 .num_inputs = 2, 4903 .output_size = 0, 4904 .output_type = nir_type_int, 4905 .input_sizes = { 4906 0, 0 4907 }, 4908 .input_types = { 4909 nir_type_int, nir_type_int 4910 }, 4911 .is_conversion = false, 4912 .algebraic_properties = 4913 0 4914}, 4915{ 4916 .name = "isub_sat", 4917 .num_inputs = 2, 4918 .output_size = 0, 4919 .output_type = nir_type_int, 4920 .input_sizes = { 4921 0, 0 4922 }, 4923 .input_types = { 4924 nir_type_int, nir_type_int 4925 }, 4926 .is_conversion = false, 4927 .algebraic_properties = 4928 0 4929}, 4930{ 4931 .name = "ixor", 4932 .num_inputs = 2, 4933 .output_size = 0, 4934 .output_type = nir_type_uint, 4935 .input_sizes = { 4936 0, 0 4937 }, 4938 .input_types = { 4939 nir_type_uint, nir_type_uint 4940 }, 4941 .is_conversion = false, 4942 .algebraic_properties = 4943 NIR_OP_IS_2SRC_COMMUTATIVE | NIR_OP_IS_ASSOCIATIVE 4944}, 4945{ 4946 .name = "ldexp", 4947 .num_inputs = 2, 4948 .output_size = 0, 4949 .output_type = nir_type_float, 4950 .input_sizes = { 4951 0, 0 4952 }, 4953 .input_types = { 4954 nir_type_float, nir_type_int32 4955 }, 4956 .is_conversion = false, 4957 .algebraic_properties = 4958 0 4959}, 4960{ 4961 .name = "mov", 4962 .num_inputs = 1, 4963 .output_size = 0, 4964 .output_type = nir_type_uint, 4965 .input_sizes = { 4966 0 4967 }, 4968 .input_types = { 4969 nir_type_uint 4970 }, 4971 .is_conversion = false, 4972 .algebraic_properties = 4973 0 4974}, 4975{ 4976 .name = "pack_32_2x16", 4977 .num_inputs = 1, 4978 .output_size = 1, 4979 .output_type = nir_type_uint32, 4980 .input_sizes = { 4981 2 4982 }, 4983 .input_types = { 4984 nir_type_uint16 4985 }, 4986 .is_conversion = false, 4987 .algebraic_properties = 4988 0 4989}, 4990{ 4991 .name = "pack_32_2x16_split", 4992 .num_inputs = 2, 4993 .output_size = 0, 4994 .output_type = nir_type_uint32, 4995 .input_sizes = { 4996 0, 0 4997 }, 4998 .input_types = { 4999 nir_type_uint16, nir_type_uint16 5000 }, 5001 .is_conversion = false, 5002 .algebraic_properties = 5003 0 5004}, 5005{ 5006 .name = "pack_32_4x8", 5007 .num_inputs = 1, 5008 .output_size = 1, 5009 .output_type = nir_type_uint32, 5010 .input_sizes = { 5011 4 5012 }, 5013 .input_types = { 5014 nir_type_uint8 5015 }, 5016 .is_conversion = false, 5017 .algebraic_properties = 5018 0 5019}, 5020{ 5021 .name = "pack_32_4x8_split", 5022 .num_inputs = 4, 5023 .output_size = 0, 5024 .output_type = nir_type_uint32, 5025 .input_sizes = { 5026 0, 0, 0, 0 5027 }, 5028 .input_types = { 5029 nir_type_uint8, nir_type_uint8, nir_type_uint8, nir_type_uint8 5030 }, 5031 .is_conversion = false, 5032 .algebraic_properties = 5033 0 5034}, 5035{ 5036 .name = "pack_64_2x32", 5037 .num_inputs = 1, 5038 .output_size = 1, 5039 .output_type = nir_type_uint64, 5040 .input_sizes = { 5041 2 5042 }, 5043 .input_types = { 5044 nir_type_uint32 5045 }, 5046 .is_conversion = false, 5047 .algebraic_properties = 5048 0 5049}, 5050{ 5051 .name = "pack_64_2x32_split", 5052 .num_inputs = 2, 5053 .output_size = 0, 5054 .output_type = nir_type_uint64, 5055 .input_sizes = { 5056 0, 0 5057 }, 5058 .input_types = { 5059 nir_type_uint32, nir_type_uint32 5060 }, 5061 .is_conversion = false, 5062 .algebraic_properties = 5063 0 5064}, 5065{ 5066 .name = "pack_64_4x16", 5067 .num_inputs = 1, 5068 .output_size = 1, 5069 .output_type = nir_type_uint64, 5070 .input_sizes = { 5071 4 5072 }, 5073 .input_types = { 5074 nir_type_uint16 5075 }, 5076 .is_conversion = false, 5077 .algebraic_properties = 5078 0 5079}, 5080{ 5081 .name = "pack_double_2x32_dxil", 5082 .num_inputs = 1, 5083 .output_size = 1, 5084 .output_type = nir_type_uint64, 5085 .input_sizes = { 5086 2 5087 }, 5088 .input_types = { 5089 nir_type_uint32 5090 }, 5091 .is_conversion = false, 5092 .algebraic_properties = 5093 0 5094}, 5095{ 5096 .name = "pack_half_2x16", 5097 .num_inputs = 1, 5098 .output_size = 1, 5099 .output_type = nir_type_uint32, 5100 .input_sizes = { 5101 2 5102 }, 5103 .input_types = { 5104 nir_type_float32 5105 }, 5106 .is_conversion = false, 5107 .algebraic_properties = 5108 0 5109}, 5110{ 5111 .name = "pack_half_2x16_split", 5112 .num_inputs = 2, 5113 .output_size = 1, 5114 .output_type = nir_type_uint32, 5115 .input_sizes = { 5116 1, 1 5117 }, 5118 .input_types = { 5119 nir_type_float32, nir_type_float32 5120 }, 5121 .is_conversion = false, 5122 .algebraic_properties = 5123 0 5124}, 5125{ 5126 .name = "pack_snorm_2x16", 5127 .num_inputs = 1, 5128 .output_size = 1, 5129 .output_type = nir_type_uint32, 5130 .input_sizes = { 5131 2 5132 }, 5133 .input_types = { 5134 nir_type_float32 5135 }, 5136 .is_conversion = false, 5137 .algebraic_properties = 5138 0 5139}, 5140{ 5141 .name = "pack_snorm_4x8", 5142 .num_inputs = 1, 5143 .output_size = 1, 5144 .output_type = nir_type_uint32, 5145 .input_sizes = { 5146 4 5147 }, 5148 .input_types = { 5149 nir_type_float32 5150 }, 5151 .is_conversion = false, 5152 .algebraic_properties = 5153 0 5154}, 5155{ 5156 .name = "pack_unorm_2x16", 5157 .num_inputs = 1, 5158 .output_size = 1, 5159 .output_type = nir_type_uint32, 5160 .input_sizes = { 5161 2 5162 }, 5163 .input_types = { 5164 nir_type_float32 5165 }, 5166 .is_conversion = false, 5167 .algebraic_properties = 5168 0 5169}, 5170{ 5171 .name = "pack_unorm_4x8", 5172 .num_inputs = 1, 5173 .output_size = 1, 5174 .output_type = nir_type_uint32, 5175 .input_sizes = { 5176 4 5177 }, 5178 .input_types = { 5179 nir_type_float32 5180 }, 5181 .is_conversion = false, 5182 .algebraic_properties = 5183 0 5184}, 5185{ 5186 .name = "pack_uvec2_to_uint", 5187 .num_inputs = 1, 5188 .output_size = 1, 5189 .output_type = nir_type_uint32, 5190 .input_sizes = { 5191 2 5192 }, 5193 .input_types = { 5194 nir_type_uint32 5195 }, 5196 .is_conversion = false, 5197 .algebraic_properties = 5198 0 5199}, 5200{ 5201 .name = "pack_uvec4_to_uint", 5202 .num_inputs = 1, 5203 .output_size = 1, 5204 .output_type = nir_type_uint32, 5205 .input_sizes = { 5206 4 5207 }, 5208 .input_types = { 5209 nir_type_uint32 5210 }, 5211 .is_conversion = false, 5212 .algebraic_properties = 5213 0 5214}, 5215{ 5216 .name = "sad_u8x4", 5217 .num_inputs = 3, 5218 .output_size = 1, 5219 .output_type = nir_type_uint, 5220 .input_sizes = { 5221 1, 1, 1 5222 }, 5223 .input_types = { 5224 nir_type_uint, nir_type_uint, nir_type_uint 5225 }, 5226 .is_conversion = false, 5227 .algebraic_properties = 5228 0 5229}, 5230{ 5231 .name = "sdot_2x16_iadd", 5232 .num_inputs = 3, 5233 .output_size = 0, 5234 .output_type = nir_type_int32, 5235 .input_sizes = { 5236 0, 0, 0 5237 }, 5238 .input_types = { 5239 nir_type_uint32, nir_type_uint32, nir_type_int32 5240 }, 5241 .is_conversion = false, 5242 .algebraic_properties = 5243 NIR_OP_IS_2SRC_COMMUTATIVE 5244}, 5245{ 5246 .name = "sdot_2x16_iadd_sat", 5247 .num_inputs = 3, 5248 .output_size = 0, 5249 .output_type = nir_type_int32, 5250 .input_sizes = { 5251 0, 0, 0 5252 }, 5253 .input_types = { 5254 nir_type_uint32, nir_type_uint32, nir_type_int32 5255 }, 5256 .is_conversion = false, 5257 .algebraic_properties = 5258 NIR_OP_IS_2SRC_COMMUTATIVE 5259}, 5260{ 5261 .name = "sdot_4x8_iadd", 5262 .num_inputs = 3, 5263 .output_size = 0, 5264 .output_type = nir_type_int32, 5265 .input_sizes = { 5266 0, 0, 0 5267 }, 5268 .input_types = { 5269 nir_type_uint32, nir_type_uint32, nir_type_int32 5270 }, 5271 .is_conversion = false, 5272 .algebraic_properties = 5273 NIR_OP_IS_2SRC_COMMUTATIVE 5274}, 5275{ 5276 .name = "sdot_4x8_iadd_sat", 5277 .num_inputs = 3, 5278 .output_size = 0, 5279 .output_type = nir_type_int32, 5280 .input_sizes = { 5281 0, 0, 0 5282 }, 5283 .input_types = { 5284 nir_type_uint32, nir_type_uint32, nir_type_int32 5285 }, 5286 .is_conversion = false, 5287 .algebraic_properties = 5288 NIR_OP_IS_2SRC_COMMUTATIVE 5289}, 5290{ 5291 .name = "seq", 5292 .num_inputs = 2, 5293 .output_size = 0, 5294 .output_type = nir_type_float, 5295 .input_sizes = { 5296 0, 0 5297 }, 5298 .input_types = { 5299 nir_type_float, nir_type_float 5300 }, 5301 .is_conversion = false, 5302 .algebraic_properties = 5303 NIR_OP_IS_2SRC_COMMUTATIVE 5304}, 5305{ 5306 .name = "sge", 5307 .num_inputs = 2, 5308 .output_size = 0, 5309 .output_type = nir_type_float, 5310 .input_sizes = { 5311 0, 0 5312 }, 5313 .input_types = { 5314 nir_type_float, nir_type_float 5315 }, 5316 .is_conversion = false, 5317 .algebraic_properties = 5318 0 5319}, 5320{ 5321 .name = "slt", 5322 .num_inputs = 2, 5323 .output_size = 0, 5324 .output_type = nir_type_float, 5325 .input_sizes = { 5326 0, 0 5327 }, 5328 .input_types = { 5329 nir_type_float, nir_type_float 5330 }, 5331 .is_conversion = false, 5332 .algebraic_properties = 5333 0 5334}, 5335{ 5336 .name = "sne", 5337 .num_inputs = 2, 5338 .output_size = 0, 5339 .output_type = nir_type_float, 5340 .input_sizes = { 5341 0, 0 5342 }, 5343 .input_types = { 5344 nir_type_float, nir_type_float 5345 }, 5346 .is_conversion = false, 5347 .algebraic_properties = 5348 NIR_OP_IS_2SRC_COMMUTATIVE 5349}, 5350{ 5351 .name = "sudot_4x8_iadd", 5352 .num_inputs = 3, 5353 .output_size = 0, 5354 .output_type = nir_type_int32, 5355 .input_sizes = { 5356 0, 0, 0 5357 }, 5358 .input_types = { 5359 nir_type_uint32, nir_type_uint32, nir_type_int32 5360 }, 5361 .is_conversion = false, 5362 .algebraic_properties = 5363 0 5364}, 5365{ 5366 .name = "sudot_4x8_iadd_sat", 5367 .num_inputs = 3, 5368 .output_size = 0, 5369 .output_type = nir_type_int32, 5370 .input_sizes = { 5371 0, 0, 0 5372 }, 5373 .input_types = { 5374 nir_type_uint32, nir_type_uint32, nir_type_int32 5375 }, 5376 .is_conversion = false, 5377 .algebraic_properties = 5378 0 5379}, 5380{ 5381 .name = "u2f16", 5382 .num_inputs = 1, 5383 .output_size = 0, 5384 .output_type = nir_type_float16, 5385 .input_sizes = { 5386 0 5387 }, 5388 .input_types = { 5389 nir_type_uint 5390 }, 5391 .is_conversion = true, 5392 .algebraic_properties = 5393 0 5394}, 5395{ 5396 .name = "u2f32", 5397 .num_inputs = 1, 5398 .output_size = 0, 5399 .output_type = nir_type_float32, 5400 .input_sizes = { 5401 0 5402 }, 5403 .input_types = { 5404 nir_type_uint 5405 }, 5406 .is_conversion = true, 5407 .algebraic_properties = 5408 0 5409}, 5410{ 5411 .name = "u2f64", 5412 .num_inputs = 1, 5413 .output_size = 0, 5414 .output_type = nir_type_float64, 5415 .input_sizes = { 5416 0 5417 }, 5418 .input_types = { 5419 nir_type_uint 5420 }, 5421 .is_conversion = true, 5422 .algebraic_properties = 5423 0 5424}, 5425{ 5426 .name = "u2fmp", 5427 .num_inputs = 1, 5428 .output_size = 0, 5429 .output_type = nir_type_float16, 5430 .input_sizes = { 5431 0 5432 }, 5433 .input_types = { 5434 nir_type_uint32 5435 }, 5436 .is_conversion = true, 5437 .algebraic_properties = 5438 0 5439}, 5440{ 5441 .name = "u2u1", 5442 .num_inputs = 1, 5443 .output_size = 0, 5444 .output_type = nir_type_uint1, 5445 .input_sizes = { 5446 0 5447 }, 5448 .input_types = { 5449 nir_type_uint 5450 }, 5451 .is_conversion = true, 5452 .algebraic_properties = 5453 0 5454}, 5455{ 5456 .name = "u2u16", 5457 .num_inputs = 1, 5458 .output_size = 0, 5459 .output_type = nir_type_uint16, 5460 .input_sizes = { 5461 0 5462 }, 5463 .input_types = { 5464 nir_type_uint 5465 }, 5466 .is_conversion = true, 5467 .algebraic_properties = 5468 0 5469}, 5470{ 5471 .name = "u2u32", 5472 .num_inputs = 1, 5473 .output_size = 0, 5474 .output_type = nir_type_uint32, 5475 .input_sizes = { 5476 0 5477 }, 5478 .input_types = { 5479 nir_type_uint 5480 }, 5481 .is_conversion = true, 5482 .algebraic_properties = 5483 0 5484}, 5485{ 5486 .name = "u2u64", 5487 .num_inputs = 1, 5488 .output_size = 0, 5489 .output_type = nir_type_uint64, 5490 .input_sizes = { 5491 0 5492 }, 5493 .input_types = { 5494 nir_type_uint 5495 }, 5496 .is_conversion = true, 5497 .algebraic_properties = 5498 0 5499}, 5500{ 5501 .name = "u2u8", 5502 .num_inputs = 1, 5503 .output_size = 0, 5504 .output_type = nir_type_uint8, 5505 .input_sizes = { 5506 0 5507 }, 5508 .input_types = { 5509 nir_type_uint 5510 }, 5511 .is_conversion = true, 5512 .algebraic_properties = 5513 0 5514}, 5515{ 5516 .name = "uabs_isub", 5517 .num_inputs = 2, 5518 .output_size = 0, 5519 .output_type = nir_type_uint, 5520 .input_sizes = { 5521 0, 0 5522 }, 5523 .input_types = { 5524 nir_type_int, nir_type_int 5525 }, 5526 .is_conversion = false, 5527 .algebraic_properties = 5528 0 5529}, 5530{ 5531 .name = "uabs_usub", 5532 .num_inputs = 2, 5533 .output_size = 0, 5534 .output_type = nir_type_uint, 5535 .input_sizes = { 5536 0, 0 5537 }, 5538 .input_types = { 5539 nir_type_uint, nir_type_uint 5540 }, 5541 .is_conversion = false, 5542 .algebraic_properties = 5543 0 5544}, 5545{ 5546 .name = "uadd_carry", 5547 .num_inputs = 2, 5548 .output_size = 0, 5549 .output_type = nir_type_uint, 5550 .input_sizes = { 5551 0, 0 5552 }, 5553 .input_types = { 5554 nir_type_uint, nir_type_uint 5555 }, 5556 .is_conversion = false, 5557 .algebraic_properties = 5558 NIR_OP_IS_2SRC_COMMUTATIVE 5559}, 5560{ 5561 .name = "uadd_sat", 5562 .num_inputs = 2, 5563 .output_size = 0, 5564 .output_type = nir_type_uint, 5565 .input_sizes = { 5566 0, 0 5567 }, 5568 .input_types = { 5569 nir_type_uint, nir_type_uint 5570 }, 5571 .is_conversion = false, 5572 .algebraic_properties = 5573 NIR_OP_IS_2SRC_COMMUTATIVE 5574}, 5575{ 5576 .name = "ubfe", 5577 .num_inputs = 3, 5578 .output_size = 0, 5579 .output_type = nir_type_uint32, 5580 .input_sizes = { 5581 0, 0, 0 5582 }, 5583 .input_types = { 5584 nir_type_uint32, nir_type_uint32, nir_type_uint32 5585 }, 5586 .is_conversion = false, 5587 .algebraic_properties = 5588 0 5589}, 5590{ 5591 .name = "ubitfield_extract", 5592 .num_inputs = 3, 5593 .output_size = 0, 5594 .output_type = nir_type_uint32, 5595 .input_sizes = { 5596 0, 0, 0 5597 }, 5598 .input_types = { 5599 nir_type_uint32, nir_type_int32, nir_type_int32 5600 }, 5601 .is_conversion = false, 5602 .algebraic_properties = 5603 0 5604}, 5605{ 5606 .name = "uclz", 5607 .num_inputs = 1, 5608 .output_size = 0, 5609 .output_type = nir_type_uint32, 5610 .input_sizes = { 5611 0 5612 }, 5613 .input_types = { 5614 nir_type_uint32 5615 }, 5616 .is_conversion = false, 5617 .algebraic_properties = 5618 0 5619}, 5620{ 5621 .name = "udiv", 5622 .num_inputs = 2, 5623 .output_size = 0, 5624 .output_type = nir_type_uint, 5625 .input_sizes = { 5626 0, 0 5627 }, 5628 .input_types = { 5629 nir_type_uint, nir_type_uint 5630 }, 5631 .is_conversion = false, 5632 .algebraic_properties = 5633 0 5634}, 5635{ 5636 .name = "udot_2x16_uadd", 5637 .num_inputs = 3, 5638 .output_size = 0, 5639 .output_type = nir_type_uint32, 5640 .input_sizes = { 5641 0, 0, 0 5642 }, 5643 .input_types = { 5644 nir_type_uint32, nir_type_uint32, nir_type_uint32 5645 }, 5646 .is_conversion = false, 5647 .algebraic_properties = 5648 NIR_OP_IS_2SRC_COMMUTATIVE 5649}, 5650{ 5651 .name = "udot_2x16_uadd_sat", 5652 .num_inputs = 3, 5653 .output_size = 0, 5654 .output_type = nir_type_int32, 5655 .input_sizes = { 5656 0, 0, 0 5657 }, 5658 .input_types = { 5659 nir_type_uint32, nir_type_uint32, nir_type_int32 5660 }, 5661 .is_conversion = false, 5662 .algebraic_properties = 5663 NIR_OP_IS_2SRC_COMMUTATIVE 5664}, 5665{ 5666 .name = "udot_4x8_uadd", 5667 .num_inputs = 3, 5668 .output_size = 0, 5669 .output_type = nir_type_uint32, 5670 .input_sizes = { 5671 0, 0, 0 5672 }, 5673 .input_types = { 5674 nir_type_uint32, nir_type_uint32, nir_type_uint32 5675 }, 5676 .is_conversion = false, 5677 .algebraic_properties = 5678 NIR_OP_IS_2SRC_COMMUTATIVE 5679}, 5680{ 5681 .name = "udot_4x8_uadd_sat", 5682 .num_inputs = 3, 5683 .output_size = 0, 5684 .output_type = nir_type_int32, 5685 .input_sizes = { 5686 0, 0, 0 5687 }, 5688 .input_types = { 5689 nir_type_uint32, nir_type_uint32, nir_type_int32 5690 }, 5691 .is_conversion = false, 5692 .algebraic_properties = 5693 NIR_OP_IS_2SRC_COMMUTATIVE 5694}, 5695{ 5696 .name = "ufind_msb", 5697 .num_inputs = 1, 5698 .output_size = 0, 5699 .output_type = nir_type_int32, 5700 .input_sizes = { 5701 0 5702 }, 5703 .input_types = { 5704 nir_type_uint 5705 }, 5706 .is_conversion = false, 5707 .algebraic_properties = 5708 0 5709}, 5710{ 5711 .name = "ufind_msb_rev", 5712 .num_inputs = 1, 5713 .output_size = 0, 5714 .output_type = nir_type_int32, 5715 .input_sizes = { 5716 0 5717 }, 5718 .input_types = { 5719 nir_type_uint 5720 }, 5721 .is_conversion = false, 5722 .algebraic_properties = 5723 0 5724}, 5725{ 5726 .name = "uge", 5727 .num_inputs = 2, 5728 .output_size = 0, 5729 .output_type = nir_type_bool1, 5730 .input_sizes = { 5731 0, 0 5732 }, 5733 .input_types = { 5734 nir_type_uint, nir_type_uint 5735 }, 5736 .is_conversion = false, 5737 .algebraic_properties = 5738 0 5739}, 5740{ 5741 .name = "uge16", 5742 .num_inputs = 2, 5743 .output_size = 0, 5744 .output_type = nir_type_bool16, 5745 .input_sizes = { 5746 0, 0 5747 }, 5748 .input_types = { 5749 nir_type_uint, nir_type_uint 5750 }, 5751 .is_conversion = false, 5752 .algebraic_properties = 5753 0 5754}, 5755{ 5756 .name = "uge32", 5757 .num_inputs = 2, 5758 .output_size = 0, 5759 .output_type = nir_type_bool32, 5760 .input_sizes = { 5761 0, 0 5762 }, 5763 .input_types = { 5764 nir_type_uint, nir_type_uint 5765 }, 5766 .is_conversion = false, 5767 .algebraic_properties = 5768 0 5769}, 5770{ 5771 .name = "uge8", 5772 .num_inputs = 2, 5773 .output_size = 0, 5774 .output_type = nir_type_bool8, 5775 .input_sizes = { 5776 0, 0 5777 }, 5778 .input_types = { 5779 nir_type_uint, nir_type_uint 5780 }, 5781 .is_conversion = false, 5782 .algebraic_properties = 5783 0 5784}, 5785{ 5786 .name = "uhadd", 5787 .num_inputs = 2, 5788 .output_size = 0, 5789 .output_type = nir_type_uint, 5790 .input_sizes = { 5791 0, 0 5792 }, 5793 .input_types = { 5794 nir_type_uint, nir_type_uint 5795 }, 5796 .is_conversion = false, 5797 .algebraic_properties = 5798 NIR_OP_IS_2SRC_COMMUTATIVE 5799}, 5800{ 5801 .name = "ult", 5802 .num_inputs = 2, 5803 .output_size = 0, 5804 .output_type = nir_type_bool1, 5805 .input_sizes = { 5806 0, 0 5807 }, 5808 .input_types = { 5809 nir_type_uint, nir_type_uint 5810 }, 5811 .is_conversion = false, 5812 .algebraic_properties = 5813 0 5814}, 5815{ 5816 .name = "ult16", 5817 .num_inputs = 2, 5818 .output_size = 0, 5819 .output_type = nir_type_bool16, 5820 .input_sizes = { 5821 0, 0 5822 }, 5823 .input_types = { 5824 nir_type_uint, nir_type_uint 5825 }, 5826 .is_conversion = false, 5827 .algebraic_properties = 5828 0 5829}, 5830{ 5831 .name = "ult32", 5832 .num_inputs = 2, 5833 .output_size = 0, 5834 .output_type = nir_type_bool32, 5835 .input_sizes = { 5836 0, 0 5837 }, 5838 .input_types = { 5839 nir_type_uint, nir_type_uint 5840 }, 5841 .is_conversion = false, 5842 .algebraic_properties = 5843 0 5844}, 5845{ 5846 .name = "ult8", 5847 .num_inputs = 2, 5848 .output_size = 0, 5849 .output_type = nir_type_bool8, 5850 .input_sizes = { 5851 0, 0 5852 }, 5853 .input_types = { 5854 nir_type_uint, nir_type_uint 5855 }, 5856 .is_conversion = false, 5857 .algebraic_properties = 5858 0 5859}, 5860{ 5861 .name = "umad24", 5862 .num_inputs = 3, 5863 .output_size = 0, 5864 .output_type = nir_type_uint32, 5865 .input_sizes = { 5866 0, 0, 0 5867 }, 5868 .input_types = { 5869 nir_type_uint32, nir_type_uint32, nir_type_uint32 5870 }, 5871 .is_conversion = false, 5872 .algebraic_properties = 5873 NIR_OP_IS_2SRC_COMMUTATIVE 5874}, 5875{ 5876 .name = "umad24_relaxed", 5877 .num_inputs = 3, 5878 .output_size = 0, 5879 .output_type = nir_type_uint32, 5880 .input_sizes = { 5881 0, 0, 0 5882 }, 5883 .input_types = { 5884 nir_type_uint32, nir_type_uint32, nir_type_uint32 5885 }, 5886 .is_conversion = false, 5887 .algebraic_properties = 5888 NIR_OP_IS_2SRC_COMMUTATIVE 5889}, 5890{ 5891 .name = "umax", 5892 .num_inputs = 2, 5893 .output_size = 0, 5894 .output_type = nir_type_uint, 5895 .input_sizes = { 5896 0, 0 5897 }, 5898 .input_types = { 5899 nir_type_uint, nir_type_uint 5900 }, 5901 .is_conversion = false, 5902 .algebraic_properties = 5903 NIR_OP_IS_2SRC_COMMUTATIVE | NIR_OP_IS_ASSOCIATIVE 5904}, 5905{ 5906 .name = "umax_4x8_vc4", 5907 .num_inputs = 2, 5908 .output_size = 0, 5909 .output_type = nir_type_int32, 5910 .input_sizes = { 5911 0, 0 5912 }, 5913 .input_types = { 5914 nir_type_int32, nir_type_int32 5915 }, 5916 .is_conversion = false, 5917 .algebraic_properties = 5918 NIR_OP_IS_2SRC_COMMUTATIVE | NIR_OP_IS_ASSOCIATIVE 5919}, 5920{ 5921 .name = "umin", 5922 .num_inputs = 2, 5923 .output_size = 0, 5924 .output_type = nir_type_uint, 5925 .input_sizes = { 5926 0, 0 5927 }, 5928 .input_types = { 5929 nir_type_uint, nir_type_uint 5930 }, 5931 .is_conversion = false, 5932 .algebraic_properties = 5933 NIR_OP_IS_2SRC_COMMUTATIVE | NIR_OP_IS_ASSOCIATIVE 5934}, 5935{ 5936 .name = "umin_4x8_vc4", 5937 .num_inputs = 2, 5938 .output_size = 0, 5939 .output_type = nir_type_int32, 5940 .input_sizes = { 5941 0, 0 5942 }, 5943 .input_types = { 5944 nir_type_int32, nir_type_int32 5945 }, 5946 .is_conversion = false, 5947 .algebraic_properties = 5948 NIR_OP_IS_2SRC_COMMUTATIVE | NIR_OP_IS_ASSOCIATIVE 5949}, 5950{ 5951 .name = "umod", 5952 .num_inputs = 2, 5953 .output_size = 0, 5954 .output_type = nir_type_uint, 5955 .input_sizes = { 5956 0, 0 5957 }, 5958 .input_types = { 5959 nir_type_uint, nir_type_uint 5960 }, 5961 .is_conversion = false, 5962 .algebraic_properties = 5963 0 5964}, 5965{ 5966 .name = "umul24", 5967 .num_inputs = 2, 5968 .output_size = 0, 5969 .output_type = nir_type_int32, 5970 .input_sizes = { 5971 0, 0 5972 }, 5973 .input_types = { 5974 nir_type_int32, nir_type_int32 5975 }, 5976 .is_conversion = false, 5977 .algebraic_properties = 5978 NIR_OP_IS_2SRC_COMMUTATIVE | NIR_OP_IS_ASSOCIATIVE 5979}, 5980{ 5981 .name = "umul24_relaxed", 5982 .num_inputs = 2, 5983 .output_size = 0, 5984 .output_type = nir_type_uint32, 5985 .input_sizes = { 5986 0, 0 5987 }, 5988 .input_types = { 5989 nir_type_uint32, nir_type_uint32 5990 }, 5991 .is_conversion = false, 5992 .algebraic_properties = 5993 NIR_OP_IS_2SRC_COMMUTATIVE | NIR_OP_IS_ASSOCIATIVE 5994}, 5995{ 5996 .name = "umul_2x32_64", 5997 .num_inputs = 2, 5998 .output_size = 0, 5999 .output_type = nir_type_uint64, 6000 .input_sizes = { 6001 0, 0 6002 }, 6003 .input_types = { 6004 nir_type_uint32, nir_type_uint32 6005 }, 6006 .is_conversion = false, 6007 .algebraic_properties = 6008 NIR_OP_IS_2SRC_COMMUTATIVE 6009}, 6010{ 6011 .name = "umul_32x16", 6012 .num_inputs = 2, 6013 .output_size = 0, 6014 .output_type = nir_type_uint32, 6015 .input_sizes = { 6016 0, 0 6017 }, 6018 .input_types = { 6019 nir_type_uint32, nir_type_uint32 6020 }, 6021 .is_conversion = false, 6022 .algebraic_properties = 6023 0 6024}, 6025{ 6026 .name = "umul_high", 6027 .num_inputs = 2, 6028 .output_size = 0, 6029 .output_type = nir_type_uint, 6030 .input_sizes = { 6031 0, 0 6032 }, 6033 .input_types = { 6034 nir_type_uint, nir_type_uint 6035 }, 6036 .is_conversion = false, 6037 .algebraic_properties = 6038 NIR_OP_IS_2SRC_COMMUTATIVE 6039}, 6040{ 6041 .name = "umul_low", 6042 .num_inputs = 2, 6043 .output_size = 0, 6044 .output_type = nir_type_uint32, 6045 .input_sizes = { 6046 0, 0 6047 }, 6048 .input_types = { 6049 nir_type_uint32, nir_type_uint32 6050 }, 6051 .is_conversion = false, 6052 .algebraic_properties = 6053 NIR_OP_IS_2SRC_COMMUTATIVE 6054}, 6055{ 6056 .name = "umul_unorm_4x8_vc4", 6057 .num_inputs = 2, 6058 .output_size = 0, 6059 .output_type = nir_type_int32, 6060 .input_sizes = { 6061 0, 0 6062 }, 6063 .input_types = { 6064 nir_type_int32, nir_type_int32 6065 }, 6066 .is_conversion = false, 6067 .algebraic_properties = 6068 NIR_OP_IS_2SRC_COMMUTATIVE | NIR_OP_IS_ASSOCIATIVE 6069}, 6070{ 6071 .name = "unpack_32_2x16", 6072 .num_inputs = 1, 6073 .output_size = 2, 6074 .output_type = nir_type_uint16, 6075 .input_sizes = { 6076 1 6077 }, 6078 .input_types = { 6079 nir_type_uint32 6080 }, 6081 .is_conversion = false, 6082 .algebraic_properties = 6083 0 6084}, 6085{ 6086 .name = "unpack_32_2x16_split_x", 6087 .num_inputs = 1, 6088 .output_size = 0, 6089 .output_type = nir_type_uint16, 6090 .input_sizes = { 6091 0 6092 }, 6093 .input_types = { 6094 nir_type_uint32 6095 }, 6096 .is_conversion = false, 6097 .algebraic_properties = 6098 0 6099}, 6100{ 6101 .name = "unpack_32_2x16_split_y", 6102 .num_inputs = 1, 6103 .output_size = 0, 6104 .output_type = nir_type_uint16, 6105 .input_sizes = { 6106 0 6107 }, 6108 .input_types = { 6109 nir_type_uint32 6110 }, 6111 .is_conversion = false, 6112 .algebraic_properties = 6113 0 6114}, 6115{ 6116 .name = "unpack_32_4x8", 6117 .num_inputs = 1, 6118 .output_size = 4, 6119 .output_type = nir_type_uint8, 6120 .input_sizes = { 6121 1 6122 }, 6123 .input_types = { 6124 nir_type_uint32 6125 }, 6126 .is_conversion = false, 6127 .algebraic_properties = 6128 0 6129}, 6130{ 6131 .name = "unpack_64_2x32", 6132 .num_inputs = 1, 6133 .output_size = 2, 6134 .output_type = nir_type_uint32, 6135 .input_sizes = { 6136 1 6137 }, 6138 .input_types = { 6139 nir_type_uint64 6140 }, 6141 .is_conversion = false, 6142 .algebraic_properties = 6143 0 6144}, 6145{ 6146 .name = "unpack_64_2x32_split_x", 6147 .num_inputs = 1, 6148 .output_size = 0, 6149 .output_type = nir_type_uint32, 6150 .input_sizes = { 6151 0 6152 }, 6153 .input_types = { 6154 nir_type_uint64 6155 }, 6156 .is_conversion = false, 6157 .algebraic_properties = 6158 0 6159}, 6160{ 6161 .name = "unpack_64_2x32_split_y", 6162 .num_inputs = 1, 6163 .output_size = 0, 6164 .output_type = nir_type_uint32, 6165 .input_sizes = { 6166 0 6167 }, 6168 .input_types = { 6169 nir_type_uint64 6170 }, 6171 .is_conversion = false, 6172 .algebraic_properties = 6173 0 6174}, 6175{ 6176 .name = "unpack_64_4x16", 6177 .num_inputs = 1, 6178 .output_size = 4, 6179 .output_type = nir_type_uint16, 6180 .input_sizes = { 6181 1 6182 }, 6183 .input_types = { 6184 nir_type_uint64 6185 }, 6186 .is_conversion = false, 6187 .algebraic_properties = 6188 0 6189}, 6190{ 6191 .name = "unpack_double_2x32_dxil", 6192 .num_inputs = 1, 6193 .output_size = 2, 6194 .output_type = nir_type_uint32, 6195 .input_sizes = { 6196 1 6197 }, 6198 .input_types = { 6199 nir_type_uint64 6200 }, 6201 .is_conversion = false, 6202 .algebraic_properties = 6203 0 6204}, 6205{ 6206 .name = "unpack_half_2x16", 6207 .num_inputs = 1, 6208 .output_size = 2, 6209 .output_type = nir_type_float32, 6210 .input_sizes = { 6211 1 6212 }, 6213 .input_types = { 6214 nir_type_uint32 6215 }, 6216 .is_conversion = false, 6217 .algebraic_properties = 6218 0 6219}, 6220{ 6221 .name = "unpack_half_2x16_flush_to_zero", 6222 .num_inputs = 1, 6223 .output_size = 2, 6224 .output_type = nir_type_float32, 6225 .input_sizes = { 6226 1 6227 }, 6228 .input_types = { 6229 nir_type_uint32 6230 }, 6231 .is_conversion = false, 6232 .algebraic_properties = 6233 0 6234}, 6235{ 6236 .name = "unpack_half_2x16_split_x", 6237 .num_inputs = 1, 6238 .output_size = 0, 6239 .output_type = nir_type_float32, 6240 .input_sizes = { 6241 0 6242 }, 6243 .input_types = { 6244 nir_type_uint32 6245 }, 6246 .is_conversion = false, 6247 .algebraic_properties = 6248 0 6249}, 6250{ 6251 .name = "unpack_half_2x16_split_x_flush_to_zero", 6252 .num_inputs = 1, 6253 .output_size = 0, 6254 .output_type = nir_type_float32, 6255 .input_sizes = { 6256 0 6257 }, 6258 .input_types = { 6259 nir_type_uint32 6260 }, 6261 .is_conversion = false, 6262 .algebraic_properties = 6263 0 6264}, 6265{ 6266 .name = "unpack_half_2x16_split_y", 6267 .num_inputs = 1, 6268 .output_size = 0, 6269 .output_type = nir_type_float32, 6270 .input_sizes = { 6271 0 6272 }, 6273 .input_types = { 6274 nir_type_uint32 6275 }, 6276 .is_conversion = false, 6277 .algebraic_properties = 6278 0 6279}, 6280{ 6281 .name = "unpack_half_2x16_split_y_flush_to_zero", 6282 .num_inputs = 1, 6283 .output_size = 0, 6284 .output_type = nir_type_float32, 6285 .input_sizes = { 6286 0 6287 }, 6288 .input_types = { 6289 nir_type_uint32 6290 }, 6291 .is_conversion = false, 6292 .algebraic_properties = 6293 0 6294}, 6295{ 6296 .name = "unpack_snorm_2x16", 6297 .num_inputs = 1, 6298 .output_size = 2, 6299 .output_type = nir_type_float32, 6300 .input_sizes = { 6301 1 6302 }, 6303 .input_types = { 6304 nir_type_uint32 6305 }, 6306 .is_conversion = false, 6307 .algebraic_properties = 6308 0 6309}, 6310{ 6311 .name = "unpack_snorm_4x8", 6312 .num_inputs = 1, 6313 .output_size = 4, 6314 .output_type = nir_type_float32, 6315 .input_sizes = { 6316 1 6317 }, 6318 .input_types = { 6319 nir_type_uint32 6320 }, 6321 .is_conversion = false, 6322 .algebraic_properties = 6323 0 6324}, 6325{ 6326 .name = "unpack_unorm_2x16", 6327 .num_inputs = 1, 6328 .output_size = 2, 6329 .output_type = nir_type_float32, 6330 .input_sizes = { 6331 1 6332 }, 6333 .input_types = { 6334 nir_type_uint32 6335 }, 6336 .is_conversion = false, 6337 .algebraic_properties = 6338 0 6339}, 6340{ 6341 .name = "unpack_unorm_4x8", 6342 .num_inputs = 1, 6343 .output_size = 4, 6344 .output_type = nir_type_float32, 6345 .input_sizes = { 6346 1 6347 }, 6348 .input_types = { 6349 nir_type_uint32 6350 }, 6351 .is_conversion = false, 6352 .algebraic_properties = 6353 0 6354}, 6355{ 6356 .name = "urhadd", 6357 .num_inputs = 2, 6358 .output_size = 0, 6359 .output_type = nir_type_uint, 6360 .input_sizes = { 6361 0, 0 6362 }, 6363 .input_types = { 6364 nir_type_uint, nir_type_uint 6365 }, 6366 .is_conversion = false, 6367 .algebraic_properties = 6368 NIR_OP_IS_2SRC_COMMUTATIVE 6369}, 6370{ 6371 .name = "urol", 6372 .num_inputs = 2, 6373 .output_size = 0, 6374 .output_type = nir_type_uint, 6375 .input_sizes = { 6376 0, 0 6377 }, 6378 .input_types = { 6379 nir_type_uint, nir_type_uint32 6380 }, 6381 .is_conversion = false, 6382 .algebraic_properties = 6383 0 6384}, 6385{ 6386 .name = "uror", 6387 .num_inputs = 2, 6388 .output_size = 0, 6389 .output_type = nir_type_uint, 6390 .input_sizes = { 6391 0, 0 6392 }, 6393 .input_types = { 6394 nir_type_uint, nir_type_uint32 6395 }, 6396 .is_conversion = false, 6397 .algebraic_properties = 6398 0 6399}, 6400{ 6401 .name = "usadd_4x8_vc4", 6402 .num_inputs = 2, 6403 .output_size = 0, 6404 .output_type = nir_type_int32, 6405 .input_sizes = { 6406 0, 0 6407 }, 6408 .input_types = { 6409 nir_type_int32, nir_type_int32 6410 }, 6411 .is_conversion = false, 6412 .algebraic_properties = 6413 NIR_OP_IS_2SRC_COMMUTATIVE | NIR_OP_IS_ASSOCIATIVE 6414}, 6415{ 6416 .name = "ushr", 6417 .num_inputs = 2, 6418 .output_size = 0, 6419 .output_type = nir_type_uint, 6420 .input_sizes = { 6421 0, 0 6422 }, 6423 .input_types = { 6424 nir_type_uint, nir_type_uint32 6425 }, 6426 .is_conversion = false, 6427 .algebraic_properties = 6428 0 6429}, 6430{ 6431 .name = "ussub_4x8_vc4", 6432 .num_inputs = 2, 6433 .output_size = 0, 6434 .output_type = nir_type_int32, 6435 .input_sizes = { 6436 0, 0 6437 }, 6438 .input_types = { 6439 nir_type_int32, nir_type_int32 6440 }, 6441 .is_conversion = false, 6442 .algebraic_properties = 6443 0 6444}, 6445{ 6446 .name = "usub_borrow", 6447 .num_inputs = 2, 6448 .output_size = 0, 6449 .output_type = nir_type_uint, 6450 .input_sizes = { 6451 0, 0 6452 }, 6453 .input_types = { 6454 nir_type_uint, nir_type_uint 6455 }, 6456 .is_conversion = false, 6457 .algebraic_properties = 6458 0 6459}, 6460{ 6461 .name = "usub_sat", 6462 .num_inputs = 2, 6463 .output_size = 0, 6464 .output_type = nir_type_uint, 6465 .input_sizes = { 6466 0, 0 6467 }, 6468 .input_types = { 6469 nir_type_uint, nir_type_uint 6470 }, 6471 .is_conversion = false, 6472 .algebraic_properties = 6473 0 6474}, 6475{ 6476 .name = "vec16", 6477 .num_inputs = 16, 6478 .output_size = 16, 6479 .output_type = nir_type_uint, 6480 .input_sizes = { 6481 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 6482 }, 6483 .input_types = { 6484 nir_type_uint, nir_type_uint, nir_type_uint, nir_type_uint, nir_type_uint, nir_type_uint, nir_type_uint, nir_type_uint, nir_type_uint, nir_type_uint, nir_type_uint, nir_type_uint, nir_type_uint, nir_type_uint, nir_type_uint, nir_type_uint 6485 }, 6486 .is_conversion = false, 6487 .algebraic_properties = 6488 0 6489}, 6490{ 6491 .name = "vec2", 6492 .num_inputs = 2, 6493 .output_size = 2, 6494 .output_type = nir_type_uint, 6495 .input_sizes = { 6496 1, 1 6497 }, 6498 .input_types = { 6499 nir_type_uint, nir_type_uint 6500 }, 6501 .is_conversion = false, 6502 .algebraic_properties = 6503 0 6504}, 6505{ 6506 .name = "vec3", 6507 .num_inputs = 3, 6508 .output_size = 3, 6509 .output_type = nir_type_uint, 6510 .input_sizes = { 6511 1, 1, 1 6512 }, 6513 .input_types = { 6514 nir_type_uint, nir_type_uint, nir_type_uint 6515 }, 6516 .is_conversion = false, 6517 .algebraic_properties = 6518 0 6519}, 6520{ 6521 .name = "vec4", 6522 .num_inputs = 4, 6523 .output_size = 4, 6524 .output_type = nir_type_uint, 6525 .input_sizes = { 6526 1, 1, 1, 1 6527 }, 6528 .input_types = { 6529 nir_type_uint, nir_type_uint, nir_type_uint, nir_type_uint 6530 }, 6531 .is_conversion = false, 6532 .algebraic_properties = 6533 0 6534}, 6535{ 6536 .name = "vec5", 6537 .num_inputs = 5, 6538 .output_size = 5, 6539 .output_type = nir_type_uint, 6540 .input_sizes = { 6541 1, 1, 1, 1, 1 6542 }, 6543 .input_types = { 6544 nir_type_uint, nir_type_uint, nir_type_uint, nir_type_uint, nir_type_uint 6545 }, 6546 .is_conversion = false, 6547 .algebraic_properties = 6548 0 6549}, 6550{ 6551 .name = "vec8", 6552 .num_inputs = 8, 6553 .output_size = 8, 6554 .output_type = nir_type_uint, 6555 .input_sizes = { 6556 1, 1, 1, 1, 1, 1, 1, 1 6557 }, 6558 .input_types = { 6559 nir_type_uint, nir_type_uint, nir_type_uint, nir_type_uint, nir_type_uint, nir_type_uint, nir_type_uint, nir_type_uint 6560 }, 6561 .is_conversion = false, 6562 .algebraic_properties = 6563 0 6564}, 6565}; 6566 6567