aboutsummaryrefslogtreecommitdiff
path: root/test/behavior/select.zig
AgeCommit message (Collapse)Author
2025-07-22aarch64: add new from scratch self-hosted backendJacob Young
2025-06-16rename spirv backend nameAli Cheraghi
`stage2_spirv64` -> `stage2_spirv`
2025-06-01Legalize: implement scalarization of `@select`Jacob Young
2025-05-31Legalize: implement scalarization of binary operationsJacob Young
2025-04-11test: Disable a bunch of vector behavior tests for hexagon.Alex Rønne Petersen
Most of the failures are: * https://github.com/llvm/llvm-project/issues/118879 * https://github.com/llvm/llvm-project/issues/134659 But some are also miscompilations leading to wrong results. I'm not going to investigate the latter further until all the backend crashes have been resolved.
2025-03-10x86_64: implement select of register maskJacob Young
2025-02-24test: skip failing tests with spirv-vulkanAli Cheraghi
2024-06-10spirv: new vectorization helperRobin Voetter
The old vectorization helper (WipElementWise) was clunky and a bit annoying to use, and it wasn't really flexible enough. This introduces a new vectorization helper, which uses Temporary and Operation types to deduce a Vectorization to perform the operation in a reasonably efficient manner. It removes the outer loop required by WipElementWise so that implementations of AIR instructions are cleaner. This helps with sanity when we start to introduce support for composite integers. airShift, convertToDirect, convertToIndirect, and normalize are initially implemented using this new method.
2024-05-11riscv: add stage2_riscv to test matrix and bypass failing testsDavid Rubin
2024-02-25x86_64: implement `@select`Jacob Young
2023-11-19test: update behavior to silence 'var is never mutated' errorsmlugg
2023-06-13all: replace `comptime try` with `try comptime`Eric Joldasov
Signed-off-by: Eric Joldasov <bratishkaerik@getgoogleoff.me>
2023-05-11setup spirv backend in behavior testsAli Chraghi
2023-03-05CBE: implement select and shuffleJacob Young
2022-12-10stage2: sparc64: Skip unimplemented testsKoakuma
2022-12-06remove references to stage1 in behavior testsAndrew Kelley
Good riddance.
2022-03-25sema: coerce inputs to vectors in zirSelectJohn Schmidt
2022-03-25stage2: implement `@select`John Schmidt
2022-03-23behavior tests: disable failing stage1 testAndrew Kelley
My previous commit added a new behavior test that passes for stage2 but I forgot to check whether it passes for stage1. Since it does not, it has to be disabled. Additionally, this commit organizes behavior tests; there is no longer a section of tests only passing for stage1. Instead, tests are disabled on an individual basis. There is an except for the file which has global assembly in it.
2021-07-26Add @selectRobin Voetter
@select( comptime T: type, pred: std.meta.Vector(len, bool), a: std.meta.Vector(len, T), b: std.meta.Vector(len, T) ) std.meta.Vector(len, T) Constructs a vector from a & b, based on the values in the predicate vector. For indices where the predicate value is true, the corresponding element from the a vector is selected, and otherwise from b.