Issue 165987
Summary [DFAJumpThreading] Extend to simplifying multiple switches.
Labels missed-optimization
Assignees
Reporter XChy
    DFAJumpThreading handles only one threadable switch at a time for now, due to some correctness problems. We could try to extend the implementation to handle multiple switches. There are two possible solutions in my mind now:

The first is:
- Skip collecting the switches that have overlapped blocks with other collected switches.
- Thread collected switches together at last. In this way, we don't need to update invalid loop info.

The second is:
- Get rid of the loop info query in this pass, and still keep compile-time good.
- Iteratively collect and thread only one switch at a time until no threadable switches exist.
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to