From 20fce28dfd5e41cc6e455e83d569475df74990f5 Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Fri, 25 Feb 2022 14:18:44 -0500 Subject: [PATCH] pan/va: Add MUX.v2i16 and MUX.v4i8 opcodes Basically identical to MUX.i32, slight differences in opcode and swizzling only. Signed-off-by: Alyssa Rosenzweig Part-of: --- src/panfrost/bifrost/valhall/ISA.xml | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/src/panfrost/bifrost/valhall/ISA.xml b/src/panfrost/bifrost/valhall/ISA.xml index 5ab5eae..30728e0 100644 --- a/src/panfrost/bifrost/valhall/ISA.xml +++ b/src/panfrost/bifrost/valhall/ISA.xml @@ -1721,6 +1721,34 @@ Mask + + + Mux between A and B based on the provided mask. The condition specified + as the `mux` modifier is evaluated on the mask. If true, `A` is chosen, + else `B` is chosen. The `bit` modifier acts bitwise, equivalent to + `bitselect()` in OpenCL, so `MUX.i32.bit A, B, mask` calculates + `(A & mask) | (A & ~mask)`. + + + A + B + Mask + + + + + Mux between A and B based on the provided mask. The condition specified + as the `mux` modifier is evaluated on the mask. If true, `A` is chosen, + else `B` is chosen. The `bit` modifier acts bitwise, equivalent to + `bitselect()` in OpenCL, so `MUX.i32.bit A, B, mask` calculates + `(A & mask) | (A & ~mask)`. + + + A + B + Mask + + During a cube map transform, select the S coordinate given a selected face. Z coordinate as 32-bit floating point -- 2.7.4