-
Notifications
You must be signed in to change notification settings - Fork 5.3k
Delete some unnecessary code #74527
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
Delete some unnecessary code #74527
Conversation
|
Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch Issue DetailsThree commits:
|
This was originally put in place to allow the corresponding codegen changes to be tested. Now that we have more than adequate coverage from the front-end transformations, we can simply delete the code.
We don't expect any OBJs here.
39110ff to
146d259
Compare
|
@dotnet/jit-contrib |
|
@kunalspathak can you review? |
I am not much familiar with this code lately. Can you elaborate in PR comments why explicit simplification is not needed now? |
Essentially, we are now folding this pattern in local morph, and so don't need the additional checks. Eventually, almost all such checks will be deleted from the codebase; this is a start. |
| { | ||
| if (m_dst->OperIs(GT_OBJ)) | ||
| { | ||
| GenTreeLclVar* lclVar = m_comp->fgMorphTryFoldObjAsLclVar(m_dst->AsObj()); |
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.
Not needed after #71584.
|
|
||
| // First, handle the GT_OBJ case, which loads into the arg register | ||
| // (so we don't set the use to prefer that register for the source address). | ||
| if (op1->OperIs(GT_OBJ)) |
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.
Dead code.
| #endif // !TARGET_X86 | ||
| } | ||
|
|
||
| if (src->OperIs(GT_OBJ) && src->AsObj()->Addr()->OperIsLocalAddr()) |
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.
| // STRUCT args (FIELD_LIST / OBJ / LCL_VAR / LCL_FLD) will always be contained. | ||
| MakeSrcContained(putArgNode, src); | ||
|
|
||
| // TODO-ADDR: always perform this transformation in local morph and delete this code. |
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.
|
Great...thank you. I am not able to access the |
There are no diffs outside of
|
kunalspathak
left a comment
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
Three commits:
OBJ(ADDR(LCL_VAR))anymore. No diffs.Diffs.