i965: Bail on FS copy propagation for scratch writes with source modifiers
authorAnuj Phogat <anuj.phogat@gmail.com>
Tue, 29 Jul 2014 02:27:59 +0000 (19:27 -0700)
committerAnuj Phogat <anuj.phogat@gmail.com>
Thu, 14 Aug 2014 18:03:00 +0000 (11:03 -0700)
Signed-off-by: Anuj Phogat <anuj.phogat@gmail.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
src/mesa/drivers/dri/i965/brw_fs_copy_propagation.cpp

index 498e0782f69c256286d6f35196ce27655494e53d..09f51bc0fa4120ea60020f54c3a97fd05a7a3d5e 100644 (file)
@@ -311,6 +311,10 @@ fs_visitor::try_copy_propagate(fs_inst *inst, int arg, acp_entry *entry)
        !inst->can_do_source_mods(brw))
       return false;
 
+   if (has_source_modifiers &&
+       inst->opcode == SHADER_OPCODE_GEN4_SCRATCH_WRITE)
+      return false;
+
    /* Bail if the result of composing both strides would exceed the
     * hardware limit.
     */