Commit a9a0978
[Headers][X86] Allow MMX/SSE2/AVX2/AVX512BW integer saturated arithmetic intrinsics to be used in constexpr (llvm#153088)
This PR allows the following MMX/SSE2/AVX2/AVX512BW integer saturated arithmetic intrinsics to be used in constexpr
```
_mm_adds_pi8
_mm_adds_pi16
_mm_subs_pi8
_mm_subs_pi16
_mm_adds_pu8
_mm_adds_pu16
_mm_subs_pu8
_mm_subs_pu16
_mm_adds_epi8
_mm_adds_epi16
_mm_subs_epi8
_mm_subs_epi16
_mm_adds_epu8
_mm_adds_epu16
_mm_subs_epu8
_mm_subs_epu16
_mm256_adds_epi8
_mm256_adds_epi16
_mm256_subs_epi8
_mm256_subs_epi16
_mm256_adds_epu8
_mm256_adds_epu16
_mm256_subs_epu8
_mm256_subs_epu16
_mm512_adds_epi8
_mm512_adds_epi16
_mm512_subs_epi8
_mm512_subs_epi16
_mm512_adds_epu8
_mm512_adds_epu16
_mm512_subs_epu8
_mm512_subs_epu16
```
Fixes llvm#152506
---------
Co-authored-by: Simon Pilgrim <[email protected]>1 parent c68b4d6 commit a9a0978
File tree
9 files changed
+176
-96
lines changed- clang
- lib/Headers
- test/CodeGen/X86
9 files changed
+176
-96
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
367 | 367 | | |
368 | 368 | | |
369 | 369 | | |
370 | | - | |
371 | | - | |
372 | | - | |
| 370 | + | |
| 371 | + | |
373 | 372 | | |
374 | 373 | | |
375 | 374 | | |
| |||
385 | 384 | | |
386 | 385 | | |
387 | 386 | | |
388 | | - | |
389 | | - | |
390 | | - | |
| 387 | + | |
| 388 | + | |
391 | 389 | | |
392 | 390 | | |
393 | 391 | | |
| |||
404 | 402 | | |
405 | 403 | | |
406 | 404 | | |
407 | | - | |
408 | | - | |
409 | | - | |
| 405 | + | |
| 406 | + | |
410 | 407 | | |
411 | 408 | | |
412 | 409 | | |
| |||
422 | 419 | | |
423 | 420 | | |
424 | 421 | | |
425 | | - | |
426 | | - | |
427 | | - | |
| 422 | + | |
| 423 | + | |
428 | 424 | | |
429 | 425 | | |
430 | 426 | | |
| |||
2607 | 2603 | | |
2608 | 2604 | | |
2609 | 2605 | | |
2610 | | - | |
2611 | | - | |
2612 | | - | |
| 2606 | + | |
| 2607 | + | |
2613 | 2608 | | |
2614 | 2609 | | |
2615 | 2610 | | |
| |||
2633 | 2628 | | |
2634 | 2629 | | |
2635 | 2630 | | |
2636 | | - | |
2637 | | - | |
2638 | | - | |
| 2631 | + | |
| 2632 | + | |
2639 | 2633 | | |
2640 | 2634 | | |
2641 | 2635 | | |
| |||
2660 | 2654 | | |
2661 | 2655 | | |
2662 | 2656 | | |
2663 | | - | |
2664 | | - | |
2665 | | - | |
| 2657 | + | |
| 2658 | + | |
2666 | 2659 | | |
2667 | 2660 | | |
2668 | 2661 | | |
| |||
2686 | 2679 | | |
2687 | 2680 | | |
2688 | 2681 | | |
2689 | | - | |
2690 | | - | |
2691 | | - | |
| 2682 | + | |
| 2683 | + | |
2692 | 2684 | | |
2693 | 2685 | | |
2694 | 2686 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
613 | 613 | | |
614 | 614 | | |
615 | 615 | | |
616 | | - | |
617 | | - | |
618 | | - | |
| 616 | + | |
| 617 | + | |
619 | 618 | | |
620 | 619 | | |
621 | 620 | | |
| |||
635 | 634 | | |
636 | 635 | | |
637 | 636 | | |
638 | | - | |
639 | | - | |
640 | | - | |
| 637 | + | |
| 638 | + | |
641 | 639 | | |
642 | 640 | | |
643 | 641 | | |
| |||
657 | 655 | | |
658 | 656 | | |
659 | 657 | | |
660 | | - | |
661 | | - | |
662 | | - | |
| 658 | + | |
| 659 | + | |
663 | 660 | | |
664 | 661 | | |
665 | 662 | | |
| |||
679 | 676 | | |
680 | 677 | | |
681 | 678 | | |
682 | | - | |
683 | | - | |
684 | | - | |
| 679 | + | |
| 680 | + | |
685 | 681 | | |
686 | 682 | | |
687 | 683 | | |
| |||
946 | 942 | | |
947 | 943 | | |
948 | 944 | | |
949 | | - | |
950 | | - | |
951 | | - | |
| 945 | + | |
| 946 | + | |
952 | 947 | | |
953 | 948 | | |
954 | 949 | | |
| |||
968 | 963 | | |
969 | 964 | | |
970 | 965 | | |
971 | | - | |
972 | | - | |
973 | | - | |
| 966 | + | |
| 967 | + | |
974 | 968 | | |
975 | 969 | | |
976 | 970 | | |
| |||
990 | 984 | | |
991 | 985 | | |
992 | 986 | | |
993 | | - | |
994 | | - | |
995 | | - | |
| 987 | + | |
| 988 | + | |
996 | 989 | | |
997 | 990 | | |
998 | 991 | | |
| |||
1012 | 1005 | | |
1013 | 1006 | | |
1014 | 1007 | | |
1015 | | - | |
1016 | | - | |
1017 | | - | |
| 1008 | + | |
| 1009 | + | |
1018 | 1010 | | |
1019 | 1011 | | |
1020 | 1012 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2170 | 2170 | | |
2171 | 2171 | | |
2172 | 2172 | | |
2173 | | - | |
2174 | | - | |
| 2173 | + | |
| 2174 | + | |
2175 | 2175 | | |
2176 | 2176 | | |
2177 | 2177 | | |
| |||
2192 | 2192 | | |
2193 | 2193 | | |
2194 | 2194 | | |
2195 | | - | |
2196 | | - | |
| 2195 | + | |
| 2196 | + | |
2197 | 2197 | | |
2198 | 2198 | | |
2199 | 2199 | | |
| |||
2214 | 2214 | | |
2215 | 2215 | | |
2216 | 2216 | | |
2217 | | - | |
2218 | | - | |
| 2217 | + | |
| 2218 | + | |
2219 | 2219 | | |
2220 | 2220 | | |
2221 | 2221 | | |
| |||
2236 | 2236 | | |
2237 | 2237 | | |
2238 | 2238 | | |
2239 | | - | |
2240 | | - | |
| 2239 | + | |
| 2240 | + | |
2241 | 2241 | | |
2242 | 2242 | | |
2243 | 2243 | | |
| |||
2597 | 2597 | | |
2598 | 2598 | | |
2599 | 2599 | | |
2600 | | - | |
2601 | | - | |
| 2600 | + | |
| 2601 | + | |
2602 | 2602 | | |
2603 | 2603 | | |
2604 | 2604 | | |
| |||
2619 | 2619 | | |
2620 | 2620 | | |
2621 | 2621 | | |
2622 | | - | |
2623 | | - | |
| 2622 | + | |
| 2623 | + | |
2624 | 2624 | | |
2625 | 2625 | | |
2626 | 2626 | | |
| |||
2640 | 2640 | | |
2641 | 2641 | | |
2642 | 2642 | | |
2643 | | - | |
2644 | | - | |
| 2643 | + | |
| 2644 | + | |
2645 | 2645 | | |
2646 | 2646 | | |
2647 | 2647 | | |
| |||
2661 | 2661 | | |
2662 | 2662 | | |
2663 | 2663 | | |
2664 | | - | |
2665 | | - | |
| 2664 | + | |
| 2665 | + | |
2666 | 2666 | | |
2667 | 2667 | | |
2668 | 2668 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
448 | 448 | | |
449 | 449 | | |
450 | 450 | | |
451 | | - | |
452 | | - | |
453 | | - | |
454 | | - | |
| 451 | + | |
| 452 | + | |
| 453 | + | |
455 | 454 | | |
456 | 455 | | |
457 | 456 | | |
| |||
472 | 471 | | |
473 | 472 | | |
474 | 473 | | |
475 | | - | |
476 | | - | |
477 | | - | |
478 | | - | |
| 474 | + | |
| 475 | + | |
| 476 | + | |
479 | 477 | | |
480 | 478 | | |
481 | 479 | | |
| |||
495 | 493 | | |
496 | 494 | | |
497 | 495 | | |
498 | | - | |
499 | | - | |
500 | | - | |
501 | | - | |
| 496 | + | |
| 497 | + | |
| 498 | + | |
502 | 499 | | |
503 | 500 | | |
504 | 501 | | |
| |||
518 | 515 | | |
519 | 516 | | |
520 | 517 | | |
521 | | - | |
522 | | - | |
523 | | - | |
524 | | - | |
| 518 | + | |
| 519 | + | |
| 520 | + | |
525 | 521 | | |
526 | 522 | | |
527 | 523 | | |
| |||
605 | 601 | | |
606 | 602 | | |
607 | 603 | | |
608 | | - | |
609 | | - | |
610 | | - | |
611 | | - | |
| 604 | + | |
| 605 | + | |
| 606 | + | |
612 | 607 | | |
613 | 608 | | |
614 | 609 | | |
| |||
629 | 624 | | |
630 | 625 | | |
631 | 626 | | |
632 | | - | |
633 | | - | |
634 | | - | |
635 | | - | |
| 627 | + | |
| 628 | + | |
| 629 | + | |
636 | 630 | | |
637 | 631 | | |
638 | 632 | | |
| |||
653 | 647 | | |
654 | 648 | | |
655 | 649 | | |
656 | | - | |
657 | | - | |
658 | | - | |
659 | | - | |
| 650 | + | |
| 651 | + | |
| 652 | + | |
660 | 653 | | |
661 | 654 | | |
662 | 655 | | |
| |||
677 | 670 | | |
678 | 671 | | |
679 | 672 | | |
680 | | - | |
681 | | - | |
682 | | - | |
683 | | - | |
| 673 | + | |
| 674 | + | |
| 675 | + | |
684 | 676 | | |
685 | 677 | | |
686 | 678 | | |
| |||
0 commit comments