summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIan Romanick <[email protected]>2018-03-14 10:19:19 -0700
committerIan Romanick <[email protected]>2018-03-26 08:50:43 -0700
commit5bbb3d60d358cf906ca7078641ae7fb50c4d4e06 (patch)
treeeb3e698fe6bb879f439d0d1cbef29b51b80c6952
parent8f83eea71e233227d34dc8547dac79d2912c2311 (diff)
i965/fs: Allow cmod propagation when src0 is a uniform or shader input
No shader-db changes. This source must have been written by a previous instruction, so it cannot be a uniform or a shader input. However, this change allows the next commit to help about 900 more shaders. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Alejandro PiƱeiro <[email protected]> Reviewed-by: Matt Turner <[email protected]>
-rw-r--r--src/intel/compiler/brw_fs_cmod_propagation.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/intel/compiler/brw_fs_cmod_propagation.cpp b/src/intel/compiler/brw_fs_cmod_propagation.cpp
index 4625d69f89e..b995a51d3c3 100644
--- a/src/intel/compiler/brw_fs_cmod_propagation.cpp
+++ b/src/intel/compiler/brw_fs_cmod_propagation.cpp
@@ -62,7 +62,8 @@ opt_cmod_propagation_local(const gen_device_info *devinfo, bblock_t *block)
inst->opcode != BRW_OPCODE_MOV) ||
inst->predicate != BRW_PREDICATE_NONE ||
!inst->dst.is_null() ||
- inst->src[0].file != VGRF ||
+ (inst->src[0].file != VGRF && inst->src[0].file != ATTR &&
+ inst->src[0].file != UNIFORM) ||
inst->src[0].abs)
continue;