summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Romanick <ian.d.romanick@intel.com>2022-06-14 12:30:21 -0700
committerDylan Baker <dylan.c.baker@intel.com>2022-06-23 09:15:28 -0700
commit0acb0f4a631775e9a30ac5960b5945ed47cea4d9 (patch)
treea1b245a80d84bd745ae4eac09945232e79714637
parentff1ffa4f03736585178f3846b275fd2e0465fe39 (diff)
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@riseup.net> Tested-by: Felix DeGrood <felix.j.degrood@intel.com> [v1] Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17037> (cherry picked from commit 676acfe956be79adafb7552829948b8875b86c8d)
-rw-r--r--.pick_status.json2
-rw-r--r--src/intel/compiler/brw_fs_generator.cpp2
2 files changed, 3 insertions, 1 deletions
diff --git a/.pick_status.json b/.pick_status.json
index 3d713173b4f..4ba5df3b538 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -1651,7 +1651,7 @@
"description": "intel/fs: Add missing synchronization for WaW dependency",
"nominated": true,
"nomination_type": 1,
- "resolution": 0,
+ "resolution": 1,
"main_sha": null,
"because_sha": "b5fa43952aaf7a41385402ad2d21af5a17805615"
},
diff --git a/src/intel/compiler/brw_fs_generator.cpp b/src/intel/compiler/brw_fs_generator.cpp
index 4ca3e4cc9e9..b79670a3822 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.