-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
[release/7.0] JIT: fix incorrect scale in genCreateAddrMode + no-opt #75560
Conversation
Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch Issue DetailsBackport of #75433 to release/7.0 /cc @EgorBo Customer ImpactTestingRiskIMPORTANT: Is this backport for a servicing release? If so and this change touches code that ships in a NuGet package, please make certain that you have added any necessary package authoring and gotten it explicitly reviewed.
|
@kunalspathak, please review this 7.0 backporting PR. |
cc @jeffschwMSFT for 7.0 backport. |
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.
approved. once we have a code review, a green ci, and the main issue is merged, this can merge.
Main issue has been merged. This has been approved, signed off, and CI is green. Ready to merge. |
Backport of #75433 to release/7.0
/cc @EgorBo
Customer Impact
Fixes a bug where for unoptimized code JIT emits a memory load for e.g. an array with an incorrect offset, e.g.:
array[index * 0 + 1]
ends up accessingarray[index + 1]
instead ofarray[1]
- it's not possible to reproduce this in pure C# because Roslyn foldsx * 0
to0
even in Debug but it can be reproduced with C++/CLI (initially was reported as https://devdiv.visualstudio.com/DevDiv/_workitems/edit/1595540?src=WorkItemMention&src-action=artifact_link) or custom IL.Testing
Test is added, no impact on existing C# code
Risk
Low