[llvm-branch-commits] [GlobalISel] Combiner: Observer-based DCE and retrying of combines (PR #102163)
Tobias Stadler via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Tue Aug 6 08:31:03 PDT 2024
https://github.com/tobias-stadler created https://github.com/llvm/llvm-project/pull/102163
Continues the work for disabling fixed-point iteration in the Combiner
(#94291).
This introduces improved Observer-based heuristics in the
GISel Combiner to retry combining defs/uses of modified instructions and
for performing sparse dead code elimination.
I have experimented a lot with the heuristics and this seems to be the
minimal set of heuristics that allows disabling fixed-point iteration
for AArch64 CTMark O2 without regressions.
Enabling this globally would pass all regression tests for all official
targets (apart from small benign diffs), but I have made this fully
opt-in for now, because I can't quantify the impact for other targets.
For performance numbers see my follow-up patch for AArch64.
More information about the llvm-branch-commits
mailing list