summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/i965/brw_vec4_vp.cpp
diff options
context:
space:
mode:
authorMatt Turner <mattst88@gmail.com>2015-02-09 22:21:21 -0800
committerMatt Turner <mattst88@gmail.com>2015-02-19 21:16:43 -0800
commitf8b435ae6a27fa2274ff166639b22d0b36d68c49 (patch)
tree143828a6372c816401c783f67db7868da0599a09 /src/mesa/drivers/dri/i965/brw_vec4_vp.cpp
parent7f8dd91d166e49d7da98f90d6428dc2705fb96d0 (diff)
downloadexternal_mesa3d-f8b435ae6a27fa2274ff166639b22d0b36d68c49.zip
external_mesa3d-f8b435ae6a27fa2274ff166639b22d0b36d68c49.tar.gz
external_mesa3d-f8b435ae6a27fa2274ff166639b22d0b36d68c49.tar.bz2
i965: Don't emit saturates for instructions without destinations.
We were special casing OPCODE_END but no other instructions that have no destination, like OPCODE_KIL, leading us to emitting MOVs with null destinations. total instructions in shared programs: 5705243 -> 5701539 (-0.06%) instructions in affected programs: 124104 -> 120400 (-2.98%) helped: 904 Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Diffstat (limited to 'src/mesa/drivers/dri/i965/brw_vec4_vp.cpp')
-rw-r--r--src/mesa/drivers/dri/i965/brw_vec4_vp.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_vec4_vp.cpp b/src/mesa/drivers/dri/i965/brw_vec4_vp.cpp
index 60a0f24..a5a5e7b 100644
--- a/src/mesa/drivers/dri/i965/brw_vec4_vp.cpp
+++ b/src/mesa/drivers/dri/i965/brw_vec4_vp.cpp
@@ -386,7 +386,7 @@ vec4_vs_visitor::emit_program_code()
}
/* Copy the temporary back into the actual destination register. */
- if (vpi->Opcode != OPCODE_END) {
+ if (_mesa_num_inst_dst_regs(vpi->Opcode) != 0) {
emit(MOV(get_vp_dst_reg(vpi->DstReg), src_reg(dst)));
}
}