mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-25 15:10:10 +01:00
aco: insert s_nop before discard early exit sendmsg(dealloc_vgpr)
Forgot about this one.
fossil-db (gfx1100):
Totals from 3920 (2.94% of 133461) affected shaders:
Instrs: 6632088 -> 6636008 (+0.06%)
CodeSize: 34165376 -> 34181056 (+0.05%)
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Fixes: 37fbfa655a ("aco: insert s_nop before VGPR deallocation")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29770>
This commit is contained in:
parent
814e7c7af5
commit
9fe3af1e2a
2 changed files with 5 additions and 1 deletions
|
|
@ -2375,8 +2375,10 @@ lower_to_hw_instr(Program* program)
|
|||
if (program->stage == fragment_fs)
|
||||
bld.exp(aco_opcode::exp, Operand(v1), Operand(v1), Operand(v1), Operand(v1), 0,
|
||||
target, false, true, true);
|
||||
if (should_dealloc_vgprs)
|
||||
if (should_dealloc_vgprs) {
|
||||
bld.sopp(aco_opcode::s_nop, 0);
|
||||
bld.sopp(aco_opcode::s_sendmsg, sendmsg_dealloc_vgprs);
|
||||
}
|
||||
bld.sopp(aco_opcode::s_endpgm);
|
||||
|
||||
bld.reset(&ctx.instructions);
|
||||
|
|
|
|||
|
|
@ -177,6 +177,7 @@ BEGIN_TEST(isel.discard_early_exit.mrtz)
|
|||
//! s_endpgm ; $_
|
||||
//! BB1:
|
||||
//! exp mrtz off, off, off, off done ; $_ $_
|
||||
//! s_nop 0 ; $_
|
||||
//! s_sendmsg sendmsg(MSG_DEALLOC_VGPRS) ; $_
|
||||
//! s_endpgm ; $_
|
||||
|
||||
|
|
@ -205,6 +206,7 @@ BEGIN_TEST(isel.discard_early_exit.mrt0)
|
|||
//! s_endpgm ; $_
|
||||
//! BB1:
|
||||
//! exp mrt0 off, off, off, off done ; $_ $_
|
||||
//! s_nop 0 ; $_
|
||||
//! s_sendmsg sendmsg(MSG_DEALLOC_VGPRS) ; $_
|
||||
//! s_endpgm ; $_
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue