Commit cc9ad9a
authored
[Clang] Add constexpr support for AVX512 permutex2 intrinsics (#165085)
This patch enables compile-time evaluation of AVX512 permutex2var
intrinsics in constexpr contexts.
Extend shuffle generic to handle both integer immediate and vector mask
operands.
Resolves #1613351 parent 0314b93 commit cc9ad9a
File tree
19 files changed
+1096
-265
lines changed- clang
- include/clang/Basic
- lib
- AST
- ByteCode
- Headers
- test/CodeGen/X86
19 files changed
+1096
-265
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1765 | 1765 | | |
1766 | 1766 | | |
1767 | 1767 | | |
1768 | | - | |
| 1768 | + | |
1769 | 1769 | | |
1770 | | - | |
1771 | | - | |
1772 | | - | |
1773 | | - | |
1774 | | - | |
1775 | | - | |
1776 | | - | |
1777 | | - | |
1778 | | - | |
1779 | | - | |
1780 | | - | |
1781 | | - | |
1782 | | - | |
1783 | | - | |
1784 | | - | |
1785 | | - | |
1786 | | - | |
1787 | | - | |
1788 | | - | |
1789 | | - | |
1790 | | - | |
1791 | | - | |
1792 | | - | |
1793 | | - | |
1794 | | - | |
1795 | | - | |
1796 | | - | |
1797 | | - | |
1798 | | - | |
1799 | | - | |
1800 | | - | |
1801 | | - | |
1802 | | - | |
1803 | | - | |
1804 | | - | |
1805 | 1770 | | |
| 1771 | + | |
| 1772 | + | |
1806 | 1773 | | |
1807 | 1774 | | |
1808 | | - | |
| 1775 | + | |
| 1776 | + | |
1809 | 1777 | | |
| 1778 | + | |
| 1779 | + | |
1810 | 1780 | | |
1811 | 1781 | | |
1812 | | - | |
| 1782 | + | |
| 1783 | + | |
1813 | 1784 | | |
| 1785 | + | |
| 1786 | + | |
1814 | 1787 | | |
1815 | 1788 | | |
1816 | | - | |
| 1789 | + | |
1817 | 1790 | | |
1818 | 1791 | | |
1819 | 1792 | | |
1820 | | - | |
| 1793 | + | |
1821 | 1794 | | |
1822 | 1795 | | |
1823 | 1796 | | |
1824 | | - | |
| 1797 | + | |
1825 | 1798 | | |
1826 | 1799 | | |
1827 | 1800 | | |
1828 | | - | |
| 1801 | + | |
1829 | 1802 | | |
1830 | 1803 | | |
1831 | 1804 | | |
1832 | | - | |
| 1805 | + | |
1833 | 1806 | | |
1834 | 1807 | | |
1835 | 1808 | | |
1836 | | - | |
| 1809 | + | |
1837 | 1810 | | |
1838 | 1811 | | |
1839 | 1812 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3415 | 3415 | | |
3416 | 3416 | | |
3417 | 3417 | | |
3418 | | - | |
| 3418 | + | |
| 3419 | + | |
| 3420 | + | |
| 3421 | + | |
| 3422 | + | |
| 3423 | + | |
| 3424 | + | |
| 3425 | + | |
| 3426 | + | |
| 3427 | + | |
| 3428 | + | |
| 3429 | + | |
| 3430 | + | |
| 3431 | + | |
| 3432 | + | |
| 3433 | + | |
| 3434 | + | |
| 3435 | + | |
3419 | 3436 | | |
3420 | 3437 | | |
3421 | 3438 | | |
3422 | 3439 | | |
3423 | 3440 | | |
3424 | 3441 | | |
3425 | | - | |
3426 | | - | |
3427 | 3442 | | |
3428 | 3443 | | |
| 3444 | + | |
| 3445 | + | |
| 3446 | + | |
| 3447 | + | |
| 3448 | + | |
| 3449 | + | |
| 3450 | + | |
| 3451 | + | |
3429 | 3452 | | |
| 3453 | + | |
| 3454 | + | |
| 3455 | + | |
| 3456 | + | |
| 3457 | + | |
3430 | 3458 | | |
3431 | 3459 | | |
3432 | 3460 | | |
| |||
4434 | 4462 | | |
4435 | 4463 | | |
4436 | 4464 | | |
| 4465 | + | |
| 4466 | + | |
| 4467 | + | |
| 4468 | + | |
| 4469 | + | |
| 4470 | + | |
| 4471 | + | |
| 4472 | + | |
| 4473 | + | |
| 4474 | + | |
| 4475 | + | |
| 4476 | + | |
| 4477 | + | |
| 4478 | + | |
| 4479 | + | |
| 4480 | + | |
| 4481 | + | |
| 4482 | + | |
| 4483 | + | |
| 4484 | + | |
| 4485 | + | |
| 4486 | + | |
| 4487 | + | |
| 4488 | + | |
| 4489 | + | |
| 4490 | + | |
| 4491 | + | |
| 4492 | + | |
| 4493 | + | |
| 4494 | + | |
| 4495 | + | |
| 4496 | + | |
| 4497 | + | |
| 4498 | + | |
| 4499 | + | |
| 4500 | + | |
| 4501 | + | |
| 4502 | + | |
| 4503 | + | |
| 4504 | + | |
| 4505 | + | |
| 4506 | + | |
| 4507 | + | |
| 4508 | + | |
| 4509 | + | |
| 4510 | + | |
| 4511 | + | |
| 4512 | + | |
| 4513 | + | |
| 4514 | + | |
| 4515 | + | |
| 4516 | + | |
| 4517 | + | |
| 4518 | + | |
4437 | 4519 | | |
4438 | 4520 | | |
4439 | 4521 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11628 | 11628 | | |
11629 | 11629 | | |
11630 | 11630 | | |
11631 | | - | |
11632 | | - | |
11633 | | - | |
11634 | | - | |
| 11631 | + | |
| 11632 | + | |
| 11633 | + | |
11635 | 11634 | | |
11636 | | - | |
11637 | | - | |
11638 | | - | |
| 11635 | + | |
| 11636 | + | |
| 11637 | + | |
| 11638 | + | |
| 11639 | + | |
| 11640 | + | |
| 11641 | + | |
| 11642 | + | |
| 11643 | + | |
| 11644 | + | |
| 11645 | + | |
| 11646 | + | |
| 11647 | + | |
| 11648 | + | |
| 11649 | + | |
| 11650 | + | |
11639 | 11651 | | |
| 11652 | + | |
11640 | 11653 | | |
11641 | 11654 | | |
11642 | | - | |
| 11655 | + | |
11643 | 11656 | | |
11644 | 11657 | | |
11645 | 11658 | | |
| 11659 | + | |
| 11660 | + | |
| 11661 | + | |
| 11662 | + | |
11646 | 11663 | | |
11647 | 11664 | | |
11648 | 11665 | | |
| |||
13080 | 13097 | | |
13081 | 13098 | | |
13082 | 13099 | | |
| 13100 | + | |
| 13101 | + | |
| 13102 | + | |
| 13103 | + | |
| 13104 | + | |
| 13105 | + | |
| 13106 | + | |
| 13107 | + | |
| 13108 | + | |
| 13109 | + | |
| 13110 | + | |
| 13111 | + | |
| 13112 | + | |
| 13113 | + | |
| 13114 | + | |
| 13115 | + | |
| 13116 | + | |
| 13117 | + | |
| 13118 | + | |
| 13119 | + | |
| 13120 | + | |
| 13121 | + | |
| 13122 | + | |
| 13123 | + | |
| 13124 | + | |
| 13125 | + | |
| 13126 | + | |
| 13127 | + | |
| 13128 | + | |
| 13129 | + | |
| 13130 | + | |
| 13131 | + | |
| 13132 | + | |
| 13133 | + | |
| 13134 | + | |
| 13135 | + | |
| 13136 | + | |
| 13137 | + | |
| 13138 | + | |
| 13139 | + | |
| 13140 | + | |
| 13141 | + | |
| 13142 | + | |
| 13143 | + | |
| 13144 | + | |
| 13145 | + | |
| 13146 | + | |
| 13147 | + | |
| 13148 | + | |
| 13149 | + | |
| 13150 | + | |
| 13151 | + | |
| 13152 | + | |
| 13153 | + | |
| 13154 | + | |
| 13155 | + | |
| 13156 | + | |
| 13157 | + | |
| 13158 | + | |
| 13159 | + | |
| 13160 | + | |
| 13161 | + | |
| 13162 | + | |
| 13163 | + | |
| 13164 | + | |
| 13165 | + | |
| 13166 | + | |
| 13167 | + | |
| 13168 | + | |
| 13169 | + | |
| 13170 | + | |
| 13171 | + | |
| 13172 | + | |
| 13173 | + | |
| 13174 | + | |
| 13175 | + | |
| 13176 | + | |
| 13177 | + | |
13083 | 13178 | | |
13084 | 13179 | | |
13085 | 13180 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
27 | 33 | | |
28 | 34 | | |
29 | 35 | | |
| |||
167 | 173 | | |
168 | 174 | | |
169 | 175 | | |
170 | | - | |
| 176 | + | |
171 | 177 | | |
172 | 178 | | |
173 | 179 | | |
| |||
555 | 561 | | |
556 | 562 | | |
557 | 563 | | |
| 564 | + | |
558 | 565 | | |
559 | 566 | | |
560 | 567 | | |
| |||
0 commit comments