-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
Jit double zeros for async int method returning ValueTask<T> #38070
Labels
area-CodeGen-coreclr
CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI
tenet-performance
Performance related issue
Milestone
Comments
Dotnet-GitSync-Bot
added
area-CodeGen-coreclr
CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI
untriaged
New issue has not been triaged by the area owner
labels
Jun 18, 2020
CIL for above
|
Closed
JulieLeeMSFT
removed
the
untriaged
New issue has not been triaged by the area owner
label
Jun 18, 2020
@benaadams Thank you for following up on this and for the repro. I'll take a look this week. |
erozenfeld
added a commit
to erozenfeld/runtime
that referenced
this issue
Jun 24, 2020
…GT_OBJ(lcl_addr)` and `GT_BLK(lcl_addr)` Fixes dotnet#38070.
ghost
locked as resolved and limited conversation to collaborators
Dec 8, 2020
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
tenet-performance
Performance related issue
Follow up to #2325
An optimization was added in #36918 "Optimization to remove redundant zero initializations."; however it doesn't kick in for the initiation methods of async methods returning large
ValueTask<T>
; which still double zero.Given
It produces the following asm which double zeros:
Preferably it would be (skipping the second zeroing)
Aside I've added an optimization to Roslyn to move storing parameters to the async statemachine later in the method, after the second zeroing, rather than before which may have blocked the optimization dotnet/roslyn#45262; however this issue occurs even when parameters are not passed as seen above.
/cc @erozenfeld
The text was updated successfully, but these errors were encountered: