Skip to content

JIT: Fix LowerHWIntrinsicCreate LIR ordering issues#93210

Merged
jakobbotsch merged 4 commits into
dotnet:mainfrom
jakobbotsch:fix-92766
Oct 9, 2023
Merged

JIT: Fix LowerHWIntrinsicCreate LIR ordering issues#93210
jakobbotsch merged 4 commits into
dotnet:mainfrom
jakobbotsch:fix-92766

Conversation

@jakobbotsch
Copy link
Copy Markdown
Member

LowerHWIntrinsicCreate was assuming in many places that operand nodes come in order, which is fundamentally not an assumption that can be made for LIR.

Fix #92766

LowerHWIntrinsicCreate was assuming in many places that operand nodes
come in order, which is fundamentally not an assumption that can be made
for LIR.

Fix dotnet#92766
@ghost ghost added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label Oct 9, 2023
@ghost ghost assigned jakobbotsch Oct 9, 2023
@ghost
Copy link
Copy Markdown

ghost commented Oct 9, 2023

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

Issue Details

LowerHWIntrinsicCreate was assuming in many places that operand nodes come in order, which is fundamentally not an assumption that can be made for LIR.

Fix #92766

Author: jakobbotsch
Assignees: -
Labels:

area-CodeGen-coreclr

Milestone: -

@jakobbotsch
Copy link
Copy Markdown
Member Author

cc @dotnet/jit-contrib PTAL @kunalspathak @BruceForstall

No diffs. Initially I just inserted the new nodes before node, which is what we would usually do, but that had quite a few regressions since that created a lot of long lifetimes for the operands. So I ended up with the LastNode helper.

@jakobbotsch jakobbotsch marked this pull request as ready for review October 9, 2023 18:15
Copy link
Copy Markdown
Contributor

@BruceForstall BruceForstall left a comment

Choose a reason for hiding this comment

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

Nice!

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.

JIT: LowerHWIntrinsicCreate can create illegal IR

2 participants