|
2 | 2 | // ignore-emscripten FIXME(#45351) hits an LLVM assert |
3 | 3 |
|
4 | 4 | #![feature(repr_simd, platform_intrinsics)] |
| 5 | +#![allow(incomplete_features)] |
| 6 | +#![feature(inline_const)] |
5 | 7 |
|
6 | 8 | #[repr(simd)] |
7 | 9 | #[derive(Copy, Clone, Debug, PartialEq)] |
@@ -82,19 +84,19 @@ fn main() { |
82 | 84 | let y4 = i32x4(140, 141, 142, 143); |
83 | 85 | let y8 = i32x8(180, 181, 182, 183, 184, 185, 186, 187); |
84 | 86 | unsafe { |
85 | | - all_eq!(simd_shuffle2(x2, y2, [3, 0]), i32x2(121, 20)); |
86 | | - all_eq!(simd_shuffle4(x2, y2, [3, 0, 1, 2]), i32x4(121, 20, 21, 120)); |
87 | | - all_eq!(simd_shuffle8(x2, y2, [3, 0, 1, 2, 1, 2, 3, 0]), |
| 87 | + all_eq!(simd_shuffle2(x2, y2, const { [3u32, 0] }), i32x2(121, 20)); |
| 88 | + all_eq!(simd_shuffle4(x2, y2, const { [3u32, 0, 1, 2] }), i32x4(121, 20, 21, 120)); |
| 89 | + all_eq!(simd_shuffle8(x2, y2, const { [3u32, 0, 1, 2, 1, 2, 3, 0] }), |
88 | 90 | i32x8(121, 20, 21, 120, 21, 120, 121, 20)); |
89 | 91 |
|
90 | | - all_eq!(simd_shuffle2(x4, y4, [7, 2]), i32x2(143, 42)); |
91 | | - all_eq!(simd_shuffle4(x4, y4, [7, 2, 5, 0]), i32x4(143, 42, 141, 40)); |
92 | | - all_eq!(simd_shuffle8(x4, y4, [7, 2, 5, 0, 3, 6, 4, 1]), |
| 92 | + all_eq!(simd_shuffle2(x4, y4, const { [7u32, 2] }), i32x2(143, 42)); |
| 93 | + all_eq!(simd_shuffle4(x4, y4, const { [7u32, 2, 5, 0] }), i32x4(143, 42, 141, 40)); |
| 94 | + all_eq!(simd_shuffle8(x4, y4, const { [7u32, 2, 5, 0, 3, 6, 4, 1] }), |
93 | 95 | i32x8(143, 42, 141, 40, 43, 142, 140, 41)); |
94 | 96 |
|
95 | | - all_eq!(simd_shuffle2(x8, y8, [11, 5]), i32x2(183, 85)); |
96 | | - all_eq!(simd_shuffle4(x8, y8, [11, 5, 15, 0]), i32x4(183, 85, 187, 80)); |
97 | | - all_eq!(simd_shuffle8(x8, y8, [11, 5, 15, 0, 3, 8, 12, 1]), |
| 97 | + all_eq!(simd_shuffle2(x8, y8, const { [11u32, 5] }), i32x2(183, 85)); |
| 98 | + all_eq!(simd_shuffle4(x8, y8, const { [11u32, 5, 15, 0] }), i32x4(183, 85, 187, 80)); |
| 99 | + all_eq!(simd_shuffle8(x8, y8, const { [11u32, 5, 15, 0, 3, 8, 12, 1] }), |
98 | 100 | i32x8(183, 85, 187, 80, 83, 180, 184, 81)); |
99 | 101 | } |
100 | 102 |
|
|
0 commit comments