authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2024-09-05 09:42:28+02:00
committergravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2024-09-07 02:47:57+02:00
logccf852c31e04e17cfe3b5c017e37479de3439c19
tree10515f3e133cb191ce24b6d0886d8b76211535f0
parent5c128a899057aadbb175c5a22ec840ee2276b0d7
signaturebadge-check Signed by SSH key SHA256:7B/LJ7bpR1eX8aCXSr4mtd5M45VMPKcx9zY8e95b5QM

test: Re-enable `vector reduce operation` for most LLVM targets.

mips64 failure is tracked in #21091. Closes #7138.

1 files changed, 10 insertions(+), 26 deletions(-)

test/behavior/vector.zig+10-26
......@@ -805,14 +805,8 @@ test "vector reduce operation" {
805805 try testReduce(.Min, [4]u16{ 1, 2, 3, 4 }, @as(u16, 1));
806806 try testReduce(.Min, [4]i32{ 1234567, -386, 0, 3 }, @as(i32, -386));
807807 try testReduce(.Min, [4]u32{ 99, 9999, 9, 99999 }, @as(u32, 9));
808
809 // LLVM 11 ERROR: Cannot select type
810 // https://github.com/ziglang/zig/issues/7138
811 if (builtin.zig_backend != .stage2_llvm or builtin.target.cpu.arch != .aarch64) {
812 try testReduce(.Min, [4]i64{ 1234567, -386, 0, 3 }, @as(i64, -386));
813 try testReduce(.Min, [4]u64{ 99, 9999, 9, 99999 }, @as(u64, 9));
814 }
815
808 try testReduce(.Min, [4]i64{ 1234567, -386, 0, 3 }, @as(i64, -386));
809 try testReduce(.Min, [4]u64{ 99, 9999, 9, 99999 }, @as(u64, 9));
816810 try testReduce(.Min, [4]i128{ 1234567, -386, 0, 3 }, @as(i128, -386));
817811 try testReduce(.Min, [4]u128{ 99, 9999, 9, 99999 }, @as(u128, 9));
818812 try testReduce(.Min, [4]f16{ -10.3, 10.0e9, 13.0, -100.0 }, @as(f16, -100.0));
......@@ -823,14 +817,8 @@ test "vector reduce operation" {
823817 try testReduce(.Max, [4]u16{ 1, 2, 3, 4 }, @as(u16, 4));
824818 try testReduce(.Max, [4]i32{ 1234567, -386, 0, 3 }, @as(i32, 1234567));
825819 try testReduce(.Max, [4]u32{ 99, 9999, 9, 99999 }, @as(u32, 99999));
826
827 // LLVM 11 ERROR: Cannot select type
828 // https://github.com/ziglang/zig/issues/7138
829 if (builtin.zig_backend != .stage2_llvm or builtin.target.cpu.arch != .aarch64) {
830 try testReduce(.Max, [4]i64{ 1234567, -386, 0, 3 }, @as(i64, 1234567));
831 try testReduce(.Max, [4]u64{ 99, 9999, 9, 99999 }, @as(u64, 99999));
832 }
833
820 try testReduce(.Max, [4]i64{ 1234567, -386, 0, 3 }, @as(i64, 1234567));
821 try testReduce(.Max, [4]u64{ 99, 9999, 9, 99999 }, @as(u64, 99999));
834822 try testReduce(.Max, [4]i128{ 1234567, -386, 0, 3 }, @as(i128, 1234567));
835823 try testReduce(.Max, [4]u128{ 99, 9999, 9, 99999 }, @as(u128, 99999));
836824 try testReduce(.Max, [4]f16{ -10.3, 10.0e9, 13.0, -100.0 }, @as(f16, 10.0e9));
......@@ -872,17 +860,13 @@ test "vector reduce operation" {
872860 try testReduce(.Add, [4]f32{ -1.9, 5.1, f32_nan, 100.0 }, f32_nan);
873861 try testReduce(.Add, [4]f64{ -1.9, 5.1, f64_nan, 100.0 }, f64_nan);
874862
875 // LLVM 11 ERROR: Cannot select type
876 // https://github.com/ziglang/zig/issues/7138
877 if (builtin.zig_backend != .stage2_llvm) {
878 try testReduce(.Min, [4]f16{ -1.9, 5.1, f16_nan, 100.0 }, @as(f16, -1.9));
879 try testReduce(.Min, [4]f32{ -1.9, 5.1, f32_nan, 100.0 }, @as(f32, -1.9));
880 try testReduce(.Min, [4]f64{ -1.9, 5.1, f64_nan, 100.0 }, @as(f64, -1.9));
863 try testReduce(.Min, [4]f16{ -1.9, 5.1, f16_nan, 100.0 }, @as(f16, -1.9));
864 try testReduce(.Min, [4]f32{ -1.9, 5.1, f32_nan, 100.0 }, @as(f32, -1.9));
865 try testReduce(.Min, [4]f64{ -1.9, 5.1, f64_nan, 100.0 }, @as(f64, -1.9));
881866
882 try testReduce(.Max, [4]f16{ -1.9, 5.1, f16_nan, 100.0 }, @as(f16, 100.0));
883 try testReduce(.Max, [4]f32{ -1.9, 5.1, f32_nan, 100.0 }, @as(f32, 100.0));
884 try testReduce(.Max, [4]f64{ -1.9, 5.1, f64_nan, 100.0 }, @as(f64, 100.0));
885 }
867 try testReduce(.Max, [4]f16{ -1.9, 5.1, f16_nan, 100.0 }, @as(f16, 100.0));
868 try testReduce(.Max, [4]f32{ -1.9, 5.1, f32_nan, 100.0 }, @as(f32, 100.0));
869 try testReduce(.Max, [4]f64{ -1.9, 5.1, f64_nan, 100.0 }, @as(f64, 100.0));
886870
887871 try testReduce(.Mul, [4]f16{ -1.9, 5.1, f16_nan, 100.0 }, f16_nan);
888872 try testReduce(.Mul, [4]f32{ -1.9, 5.1, f32_nan, 100.0 }, f32_nan);