summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorConnor Abbott <[email protected]>2015-07-09 14:28:39 -0400
committerConnor Abbott <[email protected]>2015-07-09 14:28:39 -0400
commit3318a86d12cfd2d436bf5418b73d363018678d84 (patch)
tree9acc17574ad2dde83eaebb5f114722a6aea63153 /src
parentb8fedc19f5f4cccac827160b7e9ae3068e9982f6 (diff)
nir/spirv: fix wrong writemask for ALU operations
Diffstat (limited to 'src')
-rw-r--r--src/glsl/nir/spirv_to_nir.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/glsl/nir/spirv_to_nir.c b/src/glsl/nir/spirv_to_nir.c
index 5401908b15b..6819f88833a 100644
--- a/src/glsl/nir/spirv_to_nir.c
+++ b/src/glsl/nir/spirv_to_nir.c
@@ -1840,6 +1840,7 @@ vtn_handle_alu(struct vtn_builder *b, SpvOp opcode,
nir_alu_instr *instr = nir_alu_instr_create(b->shader, op);
nir_ssa_dest_init(&instr->instr, &instr->dest.dest,
glsl_get_vector_elements(type), val->name);
+ instr->dest.write_mask = (1 << glsl_get_vector_elements(type)) - 1;
val->ssa->def = &instr->dest.dest.ssa;
for (unsigned i = 0; i < nir_op_infos[op].num_inputs; i++)