[llvm] [SimplifyCFG] Skip threading if the target may have divergent branches (PR #100185)
via llvm-commits
llvm-commits at lists.llvm.org
Thu Jul 25 11:07:35 PDT 2024
darkbuck wrote:
> > Not only does phase order matter but `llvm::simplifyCFG` is also invoked in other places (one in debug info and the other in AMDGPU's exit, not unification). Simply removing them will trigger up to 21 lit regressions (in my local build), not to mention performance regression (or gain, if possible) for real workloads. I suggest we add this simple workaround first, try to move threading parts into JumpThreading, and refactor JumpThreading into not only a pass but, for simpleCFG to invoke threading functionalities, a library where we could add centralized control on divergent CFG or other fine tune knobs. Any idea?
>
> Sounds good to me, but no immediate thoughts on how to go about doing it.
The approach be similar to
https://github.com/llvm/llvm-project/pull/100185
More information about the llvm-commits
mailing list