aco: improve jump threading with wave32
Totals from affected shaders: SGPRS: 748746 -> 748746 (0.00 %) VGPRS: 636984 -> 636984 (0.00 %) Spilled SGPRs: 387 -> 387 (0.00 %) Spilled VGPRs: 15 -> 15 (0.00 %) Code Size: 61138824 -> 60928620 (-0.34 %) bytes Max Waves: 48602 -> 48602 (0.00 %) Instructions: 11967660 -> 11915084 (-0.44 %) Signed-off-by: Rhys Perry <pendingchaos02@gmail.com> Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
This commit is contained in:

committed by
Timur Kristóf

parent
6ff92f3d68
commit
01ccd7839c
@@ -153,7 +153,8 @@ void try_remove_invert_block(ssa_elimination_ctx& ctx, Block* block)
|
||||
for (aco_ptr<Instruction>& instr : block->instructions) {
|
||||
if (instr->opcode != aco_opcode::p_linear_phi &&
|
||||
instr->opcode != aco_opcode::p_phi &&
|
||||
instr->opcode != aco_opcode::s_andn2_b64 &&
|
||||
(instr->opcode != aco_opcode::s_andn2_b64 || ctx.program->wave_size != 64) &&
|
||||
(instr->opcode != aco_opcode::s_andn2_b32 || ctx.program->wave_size != 32) &&
|
||||
instr->opcode != aco_opcode::p_branch)
|
||||
return;
|
||||
}
|
||||
|
Reference in New Issue
Block a user