Skip to content

Conversation

BruceForstall
Copy link
Contributor

@BruceForstall BruceForstall commented Nov 12, 2021

Including the version with a GenTreeLclVarCommon* overload.

I mostly replaced &lvaTable[varNum] and lvaTable + varNum
expressions, leaving lvaTable[varNum].xxx.

Made many resulting varDsc* const.

Removed unused lvaRefCount.

Simplifies code, and centralizes assert checking.

Added new lvaGetLclNum(LclVarDsc*) function to map back to a varNum.

This deletes many noway_assert in favor of the lvaGetDesc assert;
I'm not worried about removing asserts from the Release build.

No asm diffs

@ghost ghost added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label Nov 12, 2021
@ghost
Copy link

ghost commented Nov 12, 2021

Tagging subscribers to this area: @JulieLeeMSFT
See info in area-owners.md if you want to be subscribed.

Issue Details

Including the version with a GenTreeLclVarCommon* overload.

I mostly replaced &lvaTable[varNum] and lvaTable + varNum
expressions, leaving lvaTable[varNum].xxx.

Made many resulting varDsc* const.

Removed unused lvaRefCount.

Simplifies code, and centralizes assert checking.

Added new lvaGetLclNum(LclVarDsc*) function to map back to a varNum.

This deletes many noway_assert in favor of the lvaGetDesc assert;
I'm not worried about removing asserts from the Release build.

Author: BruceForstall
Assignees: -
Labels:

area-CodeGen-coreclr

Milestone: -

@BruceForstall
Copy link
Contributor Author

/azp run runtime-coreclr jitstress

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

Including the version with a `GenTreeLclVarCommon*` overload.

I mostly replaced `&lvaTable[varNum]` and `lvaTable + varNum`
expressions, leaving `lvaTable[varNum].xxx`.

Made many resulting `varDsc*` const.

Removed unused `lvaRefCount`.

Simplifies code, and centralizes assert checking.

Added new `lvaGetLclNum(LclVarDsc*)` function to map back to a varNum.

This deletes many `noway_assert` in favor of the lvaGetDesc `assert`;
I'm not worried about removing asserts from the Release build.
@BruceForstall
Copy link
Contributor Author

Rebased/re-pushed to see if the CI will be more compliant

@BruceForstall
Copy link
Contributor Author

/azp run runtime-coreclr jitstress

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@BruceForstall
Copy link
Contributor Author

@dotnet/jit-contrib PTAL

Copy link
Member

@AndyAyersMS AndyAyersMS left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

I only skimmed the first few hundred diffs.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants