It's not invoked anywhere by default.
Details
- Reviewers
- None
Diff Detail
- Repository
- rL LLVM
Event Timeline
lib/Transforms/Scalar/JumpThreading.cpp | ||
---|---|---|
1824 | Should this be |
lib/Transforms/Scalar/JumpThreading.cpp | ||
---|---|---|
1824 | Jump threading over loop headers was never allowed. You can try it and see what happens, but I'm not sure if it would be a good idea to enable it for all target. |
lib/Transforms/Scalar/JumpThreading.cpp | ||
---|---|---|
1824 | I'm testing with a similar patch and I used this check. Wasn't JT over loop headers never allowed because it would turn the loop into irreducible loop, if that is the case this shouldn't be a concern for LateJumpThreading? However, I admit there is no difference in spec2017/perlbench with this. |
lib/Transforms/Scalar/JumpThreading.cpp | ||
---|---|---|
1824 | It could be a problem for the CodeGen passes that use MachineLoopInfo, since some loops would become non-optimizable. |
Should this be
if (!IsLate && (LoopHeaders.count(BB) || LoopHeaders.count(SuccBB))) {