| 1 | const std = @import("std"); |
| 2 | const expectEqual = std.testing.expectEqual; |
| 3 | |
| 4 | test "vector @reduce" { |
| 5 | const V = @Vector(4, i32); |
| 6 | const value = V{ 1, -1, 1, -1 }; |
| 7 | const result = value > @as(V, @splat(0)); |
| 8 | // result is { true, false, true, false }; |
| 9 | try comptime expectEqual(@Vector(4, bool), @TypeOf(result)); |
| 10 | const is_all_true = @reduce(.And, result); |
| 11 | try comptime expectEqual(bool, @TypeOf(is_all_true)); |
| 12 | try expectEqual(false, is_all_true); |
| 13 | } |
| 14 | |
| 15 | // test |