Mesa (main): intel/fs: Add missing synchronization for WaW dependency

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Jun 17 17:25:00 UTC 2022


Module: Mesa
Branch: main
Commit: 676acfe956be79adafb7552829948b8875b86c8d
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=676acfe956be79adafb7552829948b8875b86c8d

Author: Ian Romanick <ian.d.romanick at intel.com>
Date:   Tue Jun 14 12:30:21 2022 -0700

intel/fs: Add missing synchronization for WaW dependency

v2: Do the synchronization in the correct place.  Noticed by Curro.

Fixes: b5fa43952aa ("intel/fs: Better handle constant sources of FS_OPCODE_PACK_HALF_2x16_SPLIT")
Reviewed-by: Francisco Jerez <currojerez at riseup.net>
Tested-by: Felix DeGrood <felix.j.degrood at intel.com> [v1]
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17037>

---

 src/intel/compiler/brw_fs_generator.cpp | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/intel/compiler/brw_fs_generator.cpp b/src/intel/compiler/brw_fs_generator.cpp
index 5a4b2fb35e6..a9032e4c0a9 100644
--- a/src/intel/compiler/brw_fs_generator.cpp
+++ b/src/intel/compiler/brw_fs_generator.cpp
@@ -1785,7 +1785,9 @@ fs_generator::generate_pack_half_2x16_split(fs_inst *,
 
    if (y.file == IMM) {
       const uint32_t hhhh0000 = _mesa_float_to_half(y.f) << 16;
+
       brw_MOV(p, dst, brw_imm_ud(hhhh0000));
+      brw_set_default_swsb(p, tgl_swsb_regdist(1));
    } else {
       /* Give each 32-bit channel of dst the form below, where "." means
        * unchanged.



More information about the mesa-commit mailing list