Fix JIT this pointer null check elision - #133737
Merged
Merged
Conversation
Initialize inline argument temp mappings before analyzing this pointer dereferences, preventing an unfetched this pointer from being confused with caller local V00. Fixes dotnet#133713 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 78bf0f85-c8ef-4397-a76d-631f5a203e55
|
Azure Pipelines: Successfully started running 5 pipeline(s). 11 pipeline(s) were filtered out due to trigger conditions. There may be pipelines that require an authorized user to comment /azp run to run. |
Contributor
There was a problem hiding this comment.
🟢 Approval recommended
No unresolved review issues remain.
Pull request overview
Fixes JIT this pointer null-check elision and adds regression coverage.
Changes:
- Initialize inline argument mappings with
BAD_VAR_NUM. - Add optimized regression coverage for null receivers.
File summaries
| File | Description |
|---|---|
src/tests/JIT/Regression_o_3/Runtime_133713.cs |
Verifies the required receiver null check. |
src/coreclr/jit/importer.cpp |
Prevents unfetched this from matching caller local V00. |
Review details
- Files reviewed: 2/2 changed files
- Comments generated: 0
- Review effort level: Lite
Member
Author
|
@EgorBo PTAL Not sure about diffs yet, we took a GUID bump. |
This was referenced Sep 12, 2026
Open
EgorBo
reviewed
Sep 12, 2026
EgorBo
approved these changes
Sep 12, 2026
Member
Author
|
/ba-g known mono test errors |
jtschuster
pushed a commit
to jtschuster/runtime
that referenced
this pull request
Sep 18, 2026
## Summary - Initialize inline argument temp mappings with `BAD_VAR_NUM` before analyzing this pointer dereferences. - Prevent an unfetched this pointer from being confused with caller local `V00`, preserving the required null check. - Add a regression test under `Regression_o_3`. Fixes dotnet#133713 > [!NOTE] > This pull request description was generated with GitHub Copilot. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 78bf0f85-c8ef-4397-a76d-631f5a203e55
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
BAD_VAR_NUMbefore analyzing this pointer dereferences.V00, preserving the required null check.Regression_o_3.Fixes #133713
Note
This pull request description was generated with GitHub Copilot.