-
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: Follow related intervals for single-reg LIR temp intervals #86632
JIT: Follow related intervals for single-reg LIR temp intervals #86632
Conversation
Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch Issue DetailsNot sure why the code stops following related intervals for LIR temp intervals preferenced to a single register, but maybe the diffs will tell me. I hit some regressions in #86388 due to this difference between intervals for locals and intervals for LIR temps.
|
7153700
to
6347ba6
Compare
cc @dotnet/jit-contrib PTAL @kunalspathak Small number of mostly positive diffs. Sometimes this introduces a new spill; I checked, and that happens because we do not preference LIR edges crossing calls to callee-saved registers. I can try to reopen #81242 after to deal with that. |
How do we know that this only affects for LIR temp intervals? |
All the cases I looked at were LIR temp intervals. Are you worried about some other type of intervals? This loop is going through related intervals and only looking for definitions in those intervals, so I'm not sure it would look at any other kinds of intervals (but in any case, shouldn't the preferencing here work the same regardless?) |
Exactly. We also create |
Not sure why the code stops following related intervals for LIR temp intervals preferenced to a single register... this removes that restriction.
I hit some regressions in #86388 due to this difference between intervals for locals and intervals for LIR temps.