Skip to content

Conversation

@jakobbotsch
Copy link
Member

Now that async contexts are stored around the body of async methods we need to take special case that these pieces of state get restored on OSR and EnC transitions.

Now that async contexts are stored around the body of async methods we
need to take special case that these pieces of state get restored on OSR
and EnC transitions.
@github-actions github-actions bot added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label Nov 15, 2025
@dotnet-policy-service
Copy link
Contributor

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

Comment on lines +1540 to +1543
if (opts.IsOSR())
{
lvaTable[lvaMonAcquired].lvIsOSRLocal = true;
}
Copy link
Member Author

Choose a reason for hiding this comment

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

I ran into problems with the OSR method zero initializing the context locals if I did not set lvIsOSRLocal = true on them, so I unified things a bit so that we now set it for the special locals too.

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

Labels

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant