intel/compiler: Update block IPs once in register_coalesce
Performance improvement in dEQP-VK.ssbo.phys.layout.random.16bit.scalar.13 for n=30: release build (w/Fedora build flags): -0.82% ± 0.23% Meson -Dbuildtype=debugoptimized: -0.74% ± 0.27% The difference in the debugoptimized build is the calls to inst_is_in_block(block, this) still exist on each call to remove(). v2: Only update each block's IP data once instead of once per block. Suggested by Emma. Reviewed-by: Emma Anholt <emma@anholt.net> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/11632>
This commit is contained in:
parent
f3f3817307
commit
8f1052938d
|
@ -330,10 +330,12 @@ fs_visitor::register_coalesce()
|
|||
if (progress) {
|
||||
foreach_block_and_inst_safe (block, backend_instruction, inst, cfg) {
|
||||
if (inst->opcode == BRW_OPCODE_NOP) {
|
||||
inst->remove(block);
|
||||
inst->remove(block, true);
|
||||
}
|
||||
}
|
||||
|
||||
cfg->adjust_block_ips();
|
||||
|
||||
invalidate_analysis(DEPENDENCY_INSTRUCTIONS);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue