[Mesa-dev] [PATCH 3/3] i965/fs: Don't propagate saturation modifiers if there are source modifiers.
Matt Turner
mattst88 at gmail.com
Thu Apr 3 17:30:04 PDT 2014
Which would lead to translating
mad vgrf9:F, vgrf3:F, u0:F, vgrf6:F
mov.sat vgrf7:F, -vgrf9:F
into
mad.sat vgrf9:F, vgrf3:F, u0:F, vgrf6:F
mov vgrf7:F, -vgrf9:F
Fixes some lighting effects in Dota2.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=76749
---
src/mesa/drivers/dri/i965/brw_fs_saturate_propagation.cpp | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/mesa/drivers/dri/i965/brw_fs_saturate_propagation.cpp b/src/mesa/drivers/dri/i965/brw_fs_saturate_propagation.cpp
index 4f3dcff..35e6774 100644
--- a/src/mesa/drivers/dri/i965/brw_fs_saturate_propagation.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs_saturate_propagation.cpp
@@ -42,6 +42,8 @@ opt_saturate_propagation_local(fs_visitor *v, bblock_t *block)
if (inst->opcode != BRW_OPCODE_MOV ||
inst->dst.file != GRF ||
inst->src[0].file != GRF ||
+ inst->src[0].abs ||
+ inst->src[0].negate ||
!inst->saturate)
continue;
--
1.8.3.2
More information about the mesa-dev
mailing list