Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Change loop cloning condition blocks flow graph #59233

Merged

Commits on Sep 16, 2021

  1. Change loop cloning condition blocks flow graph

    Currently, the loop choice condition blocks are created in a way that creates
    a confusing flow graph. Restructure them to be simpler, and lay the path for
    future work.
    
    The simpler layout (and, hopefully, code and logic to create them) also
    lays the groundwork to potentially put the slow path loop in the loop table,
    if desired, as it creates a "standard" loop header layout.
    
    While the flow graph has an extra block or two, there are almost no diffs,
    as subsequent phases clean up any extras.
    
    There are a few diffs where the new layout enables some downstream optimization
    phases that were stymied by the old layout, but mostly in cases where we leave
    around dead code slow cloned blocks (a known issue). Also, there are a couple
    trivial CSE changes.
    BruceForstall committed Sep 16, 2021
    Configuration menu
    Copy the full SHA
    5329445 View commit details
    Browse the repository at this point in the history