Skip to content

Conversation

@SingleAccretion
Copy link
Contributor

@SingleAccretion SingleAccretion commented Apr 27, 2023

This moves the rationalization further up the phase list, placing it just before global morph.

@ghost ghost added community-contribution Indicates that the PR has been added by a community member area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI labels Apr 27, 2023
@SingleAccretion SingleAccretion marked this pull request as draft April 27, 2023 23:03
@ghost
Copy link

ghost commented Apr 27, 2023

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

Issue Details

CI/diffs check.

Author: SingleAccretion
Assignees: -
Labels:

area-CodeGen-coreclr, community-contribution

Milestone: -

@SingleAccretion
Copy link
Contributor Author

Overall TP diff:
image

image

(Only MinOpts regression is in a CG collection, which is not representative)

@SingleAccretion SingleAccretion force-pushed the Op-Req-Asg-Before-Global-Morph branch from 114df04 to 2c022d5 Compare May 2, 2023 20:49
@SingleAccretion SingleAccretion force-pushed the Op-Req-Asg-Before-Global-Morph branch from 2c022d5 to 1aa7ffd Compare May 2, 2023 20:56
@SingleAccretion
Copy link
Contributor Author

Diffs.

There are a few code diffs. They come from two sources:

  1. Some assignment nodes for small locals could have types different from their LHSs because we don't retype the parent ASG in local morph when transforming indirect stores. This blocked tail merging.
  2. Early prop logic relied on LHSs having GLOB_REFs to detect globally visible stores. This could not quite be replicated perfectly without the LHS present due to the propagating nature of flags.

@dotnet/jit-contrib

@BruceForstall
Copy link
Contributor

This looks great, and the throughput improvement is amazing. Let's run some stress...

@BruceForstall
Copy link
Contributor

/azp run runtime-coreclr outerloop, runtime-coreclr jitstress, runtime-coreclr libraries-jitstress, Fuzzlyn

@azure-pipelines
Copy link

Azure Pipelines successfully started running 4 pipeline(s).

@BruceForstall
Copy link
Contributor

The only test failure is #85663

Copy link
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.

Thanks again for your substantial contributions to RyuJIT!

@BruceForstall BruceForstall merged commit 6649f98 into dotnet:main May 6, 2023
@SingleAccretion SingleAccretion deleted the Op-Req-Asg-Before-Global-Morph branch May 6, 2023 16:17
@ghost ghost locked as resolved and limited conversation to collaborators Jun 5, 2023
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.

2 participants