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

Author: Kenneth Graunke <[email protected]>
Date:   Wed Nov 22 01:46:58 2023 -0800

intel/fs: Allow omitting the destination of A64 untyped atomics

This works exactly the same as the other atomics and the missing
destination is already handled in lower_logical_sends().

Only affects 2 shaders in fossil-db (in Cyberpunk 2077), but the
cycle count drops by 4.23%.  Nice to have in place at any rate.

Reviewed-by: Lionel Landwerlin <[email protected]>
Reviewed-by: Ian Romanick <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26343>

---

 src/intel/compiler/brw_fs_dead_code_eliminate.cpp | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/intel/compiler/brw_fs_dead_code_eliminate.cpp 
b/src/intel/compiler/brw_fs_dead_code_eliminate.cpp
index 5964acf47f4..51e1bd549cd 100644
--- a/src/intel/compiler/brw_fs_dead_code_eliminate.cpp
+++ b/src/intel/compiler/brw_fs_dead_code_eliminate.cpp
@@ -56,6 +56,7 @@ static bool
 can_omit_write(const fs_inst *inst)
 {
    switch (inst->opcode) {
+   case SHADER_OPCODE_A64_UNTYPED_ATOMIC_LOGICAL:
    case SHADER_OPCODE_UNTYPED_ATOMIC_LOGICAL:
    case SHADER_OPCODE_TYPED_ATOMIC_LOGICAL:
       return true;

Reply via email to