-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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: build pred lists when we first build the flow graph #81524
Conversation
This is the last in a (long) series. We now build the pred lists at the same time we are initially connecting up the flow graph. Pred lists are now always valid and need to be maintained by all phases. There are some changes needed in EH normalization, and one special case we need to handle in debug codegen where we create the scratch BB very early on. This was the last client for the cheap pred lists. Note some of the pred list info can't be added right away, in particular the "return" edges from finallies do not appear until we've made it through the importer. I have deferred cleaning up dead code; will do it in follow-up changes. Contributes to dotnet#80193.
Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch, @kunalspathak Issue DetailsThis is the last in a (long) series. We now build the pred lists at the same time we are initially connecting up the flow graph. Pred lists are now always valid and need to be maintained by all phases. There are some changes needed in EH normalization, and one special case we need to handle in debug codegen where we create the scratch BB very early on. This was the last client for the cheap pred lists. Note some of the pred list info can't be added right away, in particular the "return" edges from finallies do not appear until we've made it through the importer. I have deferred cleaning up dead code; will do it in follow-up changes. Contributes to #80193.
|
@jakobbotsch PTAL (or @BruceForstall) Expect this to be zero diff. Cleanup steps that will come after this:
|
/azp run runtime-coreclr jitstress, runtime-coreclr libraries-jitstress |
Azure Pipelines successfully started running 2 pipeline(s). |
|
Going to assume the libraries jitstress failure is unrelated. |
This is the last in a (long) series. We now build the pred lists at the same time we are initially connecting up the flow graph. Pred lists are now always valid and need to be maintained by all phases.
There are some changes needed in EH normalization, and one special case we need to handle in debug codegen where we create the scratch BB very early on. This was the last client for the cheap pred lists.
Note some of the pred list info can't be added right away, in particular the "return" edges from finallies do not appear until we've made it through the importer.
I have deferred cleaning up dead code; will do it in follow-up changes.
Contributes to #80193.