diff options
author | Jason Ekstrand <[email protected]> | 2014-12-12 20:37:04 -0800 |
---|---|---|
committer | Jason Ekstrand <[email protected]> | 2015-01-15 07:20:21 -0800 |
commit | b3fd098e7daa491637d66d03366b67c989937a1f (patch) | |
tree | 000f2453d4fe1d914008a484811c1c672589d3c8 /src/glsl/nir/nir_opcodes.h | |
parent | 295faf9462cba88250d8581f65611996eba5e389 (diff) |
nir: Make bcsel a fully vector operation
Previously, the condition was a scalar that applied to all components
simultaneously. As of this commit, the condition is a vector and each
component is switched seperately.
Reviewed-by: Connor Abbott <[email protected]>
Diffstat (limited to 'src/glsl/nir/nir_opcodes.h')
-rw-r--r-- | src/glsl/nir/nir_opcodes.h | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/glsl/nir/nir_opcodes.h b/src/glsl/nir/nir_opcodes.h index c8230b32df0..310c9d83b7c 100644 --- a/src/glsl/nir/nir_opcodes.h +++ b/src/glsl/nir/nir_opcodes.h @@ -325,9 +325,8 @@ TRIOP(flrp, nir_type_float) * bools (0.0 vs 1.0) and one for integer bools (0 vs ~0). */ -OPCODE(fcsel, 3, true, 0, nir_type_float, ARR(1, 0, 0), - ARR(nir_type_float, nir_type_float, nir_type_float)) -OPCODE(bcsel, 3, true, 0, nir_type_unsigned, ARR(1, 0, 0), +TRIOP(fcsel, nir_type_float) +OPCODE(bcsel, 3, true, 0, nir_type_unsigned, ARR(0, 0, 0), ARR(nir_type_bool, nir_type_unsigned, nir_type_unsigned)) TRIOP(bfi, nir_type_unsigned) |