diff options
author | Ian Romanick <ian.d.romanick@intel.com> | 2022-06-14 12:30:21 -0700 |
---|---|---|
committer | Dylan Baker <dylan.c.baker@intel.com> | 2022-06-23 09:15:28 -0700 |
commit | 0acb0f4a631775e9a30ac5960b5945ed47cea4d9 (patch) | |
tree | a1b245a80d84bd745ae4eac09945232e79714637 | |
parent | ff1ffa4f03736585178f3846b275fd2e0465fe39 (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.json | 2 | ||||
-rw-r--r-- | src/intel/compiler/brw_fs_generator.cpp | 2 |
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. |