r600/sfn: Don't schedule GDS instructions early

Atomic GDS instructions like inc, dec, or read will increase the
register pressure, therefore we shouldn't prioritize scheduling them.

Related: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6975

Fixes: 79ca456b48
    r600/sfn: rewrite NIR backend

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Filip Gawin <filip@gawin.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18212>
(cherry picked from commit 79eabb8130)
This commit is contained in:
Gert Wollny
2022-08-23 15:30:23 +02:00
committed by Dylan Baker
parent 36a66a3124
commit e201b751fc
2 changed files with 1 additions and 3 deletions

View File

@@ -10309,7 +10309,7 @@
"description": "r600/sfn: Don't schedule GDS instructions early",
"nominated": true,
"nomination_type": 1,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": "79ca456b4837b3bc21cf9ef3c03c505c4b4909f6"
},

View File

@@ -333,8 +333,6 @@ void BlockSheduler::schedule_block(Block& in_block, Shader::ShaderBlocks& out_bl
current_shed = sched_mem_ring;
else if (rat_instr_ready.size() > 3)
current_shed = sched_rat;
else if (gds_ready.size() > 3)
current_shed = sched_gds;
else if (tex_ready.size() > 3)
current_shed = sched_tex;
}