Skip to content

JIT: in minimal profiling mode, ignore impact of conditional throws #81972

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

Conversation

AndyAyersMS
Copy link
Member

@AndyAyersMS AndyAyersMS commented Feb 10, 2023

Omit edge probes inspired by throw blocks, if a method can also return normally. In reconstruction, we will just assume those throws never happen.

For simple methods this effectively reduces them to straight-line flow and we can then omit all probes.

Diffs

Omit edge probes inspired by throw blocks, if a method can also return normally.
In reconstruction, we will just assume those throws never happen.

For simple methods this effectively reduces them to straight-line flow and we
can then omit all probes.
@ghost ghost added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label Feb 10, 2023
@ghost ghost assigned AndyAyersMS Feb 10, 2023
@ghost
Copy link

ghost commented Feb 10, 2023

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

Issue Details

Omit edge probes inspired by throw blocks, if a method can also return normally. In reconstruction, we will just assume those throws never happen.

For simple methods this effectively reduces them to straight-line flow and we can then omit all probes.

Author: AndyAyersMS
Assignees: -
Labels:

area-CodeGen-coreclr

Milestone: -

@AndyAyersMS
Copy link
Member Author

@EgorBo PTAL
cc @dotnet/jit-contrib

Some (spurious) regression diffs in Tier0 where SPMI returns the fake instrumentation address.
Some real regressions in Tier1 Instr where we now unroll loops or allocate differently.

@AndyAyersMS AndyAyersMS merged commit e1f90bf into dotnet:main Feb 11, 2023
@ghost ghost locked as resolved and limited conversation to collaborators Mar 13, 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
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants