Skip to content

Deduplicate some HWI codegen code - #65302

Merged
echesakov merged 3 commits into
dotnet:mainfrom
SingleAccretion:AddrModeDesc
Feb 23, 2022
Merged

echesakov merged 3 commits into
dotnet:mainfrom
SingleAccretion:AddrModeDesc

Conversation

@SingleAccretion

@SingleAccretion SingleAccretion commented Feb 14, 2022 •

Copy link
Copy Markdown
Contributor

I've been taking a look at some x86 codegen-related issues recently, and solving one of them requires supporting containment for sources of PUTARG_STK/FIELD_LIST nodes.

However, the code for determining how exactly should this be handled is not "trivial", so to support that change, I am first making this one, which introduces a new helper class, OperandDesc, and a method to create one, to help codegen determine what emitter methods should be called, in case there are multiple possibilities.

No diffs as expected.

@tannergooding curious to know of your opinion on this.

@ghost ghost added area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI community-contribution Indicates that the PR has been added by a community member labels Feb 14, 2022
@ghost

ghost commented Feb 14, 2022

Copy link
Copy Markdown

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

Issue Details

I've been taking a look at some x86 codegen-related issues recently, and solving one of them requires supporting containment for sources of PUTARG_STK/FIELD_LIST nodes.

However, the code for determining how exactly should this be handled is not "trivial", so to support that change, I am first making this one, which introduces a new helper class, OperandDesc, and a method to create one, to help codegen determine what emitter methods should be called, in case there are multiple possibilities.

@tannergooding curious to know of your opinion on this.

Author: SingleAccretion
Assignees: -
Labels:

area-CodeGen-coreclr

Milestone: -

@SingleAccretion
SingleAccretion marked this pull request as ready for review February 14, 2022 17:19
@SingleAccretion

Copy link
Copy Markdown
Contributor Author

@dotnet/jit-contrib

@tannergooding

Copy link
Copy Markdown
Member

@tannergooding curious to know of your opinion on this.

Talked with Single about this in Discord. I think simplifying some of the checks/logic here is general goodness. In particular I like how most of the checks around which form to pick are centralized. The individual paths then just need to worry about passing the args along to the right emit method.

It might be good to see if it can be extended to the areas outside of HWI as well, such as to inst_RV_TT.

@echesakov

Copy link
Copy Markdown
Contributor

/azp run runtime-coreclr jitstress

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@echesakov
echesakov merged commit 0aaf37f into dotnet:main Feb 23, 2022
@SingleAccretion
SingleAccretion deleted the AddrModeDesc branch February 23, 2022 13:24
@ghost ghost locked as resolved and limited conversation to collaborators Mar 25, 2022
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 community-contribution Indicates that the PR has been added by a community member

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants