[llvm] [WebAssembly] Incorporate SCCs into WebAssemblyFixIrreducibleControlFlow (PR #181755)
Demetrius Kanios via llvm-commits
llvm-commits at lists.llvm.org
Mon Feb 16 15:52:48 PST 2026
QuantumSegfault wrote:
I checked this against the reproducer in #47793 as another test (diff between output before and after PR), and it looks good.
Goes from over 10 GB RAM usage and 35 seconds spent in the pass vs keeping under 150 MB and spending less than 10 ms in the pass.
Pretty significant difference. Even for programs with little or no irreducible control flow, programs with functions containing large numbers of blocks would bring this pass to it's knees. `Reachable` was probably the culprit...mapping each block in a region to every other block it can transitively reach. Compounded by large nested loops.
https://github.com/llvm/llvm-project/pull/181755
More information about the llvm-commits
mailing list