[Mesa-dev] [PATCHv2 08/38] i965/fs: Don't drop force_writemask_all and _sechalf when copying a CSE temporary.

Francisco Jerez currojerez at riseup.net
Mon Jun 8 08:50:56 PDT 2015


LOAD_PAYLOAD instructions need the same treatment as any other
generator instructions, at least FB writes and typed surface messages
will need a payload built with non-zero execution controls.
---
Same as v1, with a longer explanation in the commit message.

 src/mesa/drivers/dri/i965/brw_fs_cse.cpp | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/mesa/drivers/dri/i965/brw_fs_cse.cpp b/src/mesa/drivers/dri/i965/brw_fs_cse.cpp
index 3ddd17c..822a6a3 100644
--- a/src/mesa/drivers/dri/i965/brw_fs_cse.cpp
+++ b/src/mesa/drivers/dri/i965/brw_fs_cse.cpp
@@ -206,9 +206,10 @@ create_copy_instr(fs_visitor *v, fs_inst *inst, fs_reg src, bool negate)
       copy = v->LOAD_PAYLOAD(inst->dst, payload, sources, header_size);
    } else {
       copy = v->MOV(inst->dst, src);
-      copy->force_writemask_all = inst->force_writemask_all;
       copy->src[0].negate = negate;
    }
+   copy->force_writemask_all = inst->force_writemask_all;
+   copy->force_sechalf = inst->force_sechalf;
    assert(copy->regs_written == written);
 
    return copy;
-- 
2.3.5



More information about the mesa-dev mailing list