-
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
Handle additional multireg args #43870
Conversation
a341ccf
to
668c6fb
Compare
a2eefc9
to
2030c46
Compare
@dotnet/jit-contrib PTAL |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Any diffs?
431d6f1
to
c276f34
Compare
Here are the diffs for Arm64 and x64/ux:
I've sampled some of the regressions, and here are the 3 sources of regressions I've seen (all of the examples below occur on both Arm64 and x64/ux):
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
src/coreclr/src/jit/lclvars.cpp
Outdated
if ((structPromotionInfo.fieldCnt != 2) && | ||
!((structPromotionInfo.fieldCnt == 1) && varTypeIsSIMD(structPromotionInfo.fields[0].fldType))) | ||
{ | ||
JITDUMP("Not promoting multireg struct local V%02u, because lvIsParam is true and #fields != 2\n", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
JITDUMP("Not promoting multireg struct local V%02u, because lvIsParam is true and #fields != 2\n", | |
JITDUMP("Not promoting multireg struct local V%02u, because lvIsParam is true and #fields != 2 and not a single SIMD?\n", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done - with a minor rewording
No description provided.