Commit 4da62e4
authored
Fix vector's Narrow intrinsics (#81843)
The BCL Vector classes have non-saturating Narrow methods, while wasm instructions are saturating. AFAIK wasm does not have non-saturating narrow instructions. So instead of
i8x16.narrow_i16x8_s
i8x16.narrow_i16x8_u
i16x8.narrow_i32x4_s
i16x8.narrow_i32x4_u
use `v8x16.shuffle` instruction to implement the extract narrow operation.
This fixes `System.Numerics.Tests.GenericVectorTests.Narrow[U]Int*` tests.1 parent 6726915 commit 4da62e4
3 files changed
+35
-12
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9833 | 9833 | | |
9834 | 9834 | | |
9835 | 9835 | | |
| 9836 | + | |
| 9837 | + | |
| 9838 | + | |
| 9839 | + | |
| 9840 | + | |
| 9841 | + | |
| 9842 | + | |
| 9843 | + | |
| 9844 | + | |
| 9845 | + | |
| 9846 | + | |
| 9847 | + | |
| 9848 | + | |
| 9849 | + | |
| 9850 | + | |
| 9851 | + | |
| 9852 | + | |
| 9853 | + | |
| 9854 | + | |
| 9855 | + | |
| 9856 | + | |
| 9857 | + | |
| 9858 | + | |
| 9859 | + | |
| 9860 | + | |
| 9861 | + | |
| 9862 | + | |
| 9863 | + | |
| 9864 | + | |
| 9865 | + | |
| 9866 | + | |
9836 | 9867 | | |
9837 | 9868 | | |
9838 | 9869 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
853 | 853 | | |
854 | 854 | | |
855 | 855 | | |
| 856 | + | |
856 | 857 | | |
857 | 858 | | |
858 | 859 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1621 | 1621 | | |
1622 | 1622 | | |
1623 | 1623 | | |
1624 | | - | |
1625 | 1624 | | |
1626 | 1625 | | |
1627 | | - | |
1628 | | - | |
1629 | 1626 | | |
1630 | | - | |
1631 | | - | |
| 1627 | + | |
1632 | 1628 | | |
1633 | | - | |
1634 | | - | |
1635 | 1629 | | |
1636 | | - | |
1637 | | - | |
| 1630 | + | |
| 1631 | + | |
1638 | 1632 | | |
1639 | 1633 | | |
1640 | | - | |
1641 | | - | |
1642 | | - | |
1643 | 1634 | | |
1644 | 1635 | | |
1645 | 1636 | | |
| |||
0 commit comments