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

JIT: maintain pred lists during loop unrolling #80625

Merged
merged 1 commit into from
Jan 18, 2023

Commits on Jan 13, 2023

  1. JIT: maintain pred lists during loop unrolling

    We now update pred lists during loop unrolling, rather than recomputing
    them from scratch.
    
    There are several parts to the fix: first, `optRedirectBlock' now has
    a new ability to add pred references for the flow from a newly cloned
    block, be it either to a remapped successor or a non-remapped successor.
    Along with this we no longer copy over the block ref count in `CloneBlockState`.
    These changes allow us to create the right pred links and ref counts in the
    interior of a cloned subgraph.
    
    Second, we now scrub block references from the original loop body blocks
    instead of just setting their ref counts to zero.
    
    Finally, we fix up references for exterior flow into and out of the unroll
    complex.
    
    Addresses one of the cases mentioned in dotnet#49030.
    AndyAyersMS committed Jan 13, 2023
    Configuration menu
    Copy the full SHA
    6bebcb1 View commit details
    Browse the repository at this point in the history