Mesa (master): intel/fs/gen7: Fix fs_inst::flags_written() for SHADER_OPCODE_FIND_LIVE_CHANNEL.

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Feb 14 22:36:08 UTC 2020


Module: Mesa
Branch: master
Commit: b8b509fb921a7c2f687b9f7e5075c72847740ac4
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b8b509fb921a7c2f687b9f7e5075c72847740ac4

Author: Francisco Jerez <currojerez at riseup.net>
Date:   Thu Jan 23 23:00:54 2020 -0800

intel/fs/gen7: Fix fs_inst::flags_written() for SHADER_OPCODE_FIND_LIVE_CHANNEL.

We need to pass a width of 32 since the opcode bashes the whole f1.0
register on IVB.  This is unlikely to have caused problems since f1.0
is largely unused currently.  That's likely to change soon though,
even on platforms other than Gen7.

Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira at intel.com>
Cc: 20.0 <mesa-stable at lists.freedesktop.org>

---

 src/intel/compiler/brw_fs.cpp | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/intel/compiler/brw_fs.cpp b/src/intel/compiler/brw_fs.cpp
index 855c99dcb9a..d54fa7a640b 100644
--- a/src/intel/compiler/brw_fs.cpp
+++ b/src/intel/compiler/brw_fs.cpp
@@ -1086,9 +1086,10 @@ fs_inst::flags_written() const
                             opcode != BRW_OPCODE_CSEL &&
                             opcode != BRW_OPCODE_IF &&
                             opcode != BRW_OPCODE_WHILE)) ||
-       opcode == SHADER_OPCODE_FIND_LIVE_CHANNEL ||
        opcode == FS_OPCODE_FB_WRITE) {
       return flag_mask(this, 1);
+   } else if (opcode == SHADER_OPCODE_FIND_LIVE_CHANNEL) {
+      return flag_mask(this, 32);
    } else {
       return flag_mask(dst, size_written);
    }



More information about the mesa-commit mailing list