-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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: build pred lists before instrumentation #81288
JIT: build pred lists before instrumentation #81288
Conversation
Move pred list building to just before instrumentation (and just after importation -- we are getting very close to the front of the phase list now). The block and edge count instrumenters were both using cheap preds to keep track of some relocated count probes. Revise this so they can use the regular pred lists. Also rework both approaches so their `RelocateProbes` methods are fairly similar and perhaps could be unified one day. Contributes to dotnet#80193.
Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch, @kunalspathak Issue DetailsMove pred list building to just before instrumentation (and just after importation -- we are getting very close to the front of the phase list now). The block and edge count instrumenters were both using cheap preds to keep track of some relocated count probes. Revise this so they can use the regular pred lists. Also rework both approaches so their Contributes to #80193.
|
@EgorBo PTAL For some context -- both block and edge count instrumentors were not only building cheap preds, but hacking the cheap pred lists to convey information from the I obviously couldn't hack the regular pred lists the same way, so had to find different approaches. The result is simpler overall, especially on the edge probe side where the approach I added (just recently) was overly convoluted. Some minimal diffs expected for optimized methods with edge probes, mainly because cheap preds did not have any ordering guarantees, and some of the edge instrumentation is sensitive to the order in which preds are enumerated. |
Failure is some kind of memory corruption on an arm test run. Almost certainly unrelated.
|
/azp run runtime-coreclr jitstress |
Azure Pipelines successfully started running 1 pipeline(s). |
jitstress failure is #81324 |
Move pred list building to just before instrumentation (and just after importation -- we are getting very close to the front of the phase list now).
The block and edge count instrumenters were both using cheap preds to keep track of some relocated count probes. Revise this so they can use the regular pred lists. Also rework both approaches so their
RelocateProbes
methods are fairly similar and perhaps could be unified one day.Contributes to #80193.
Diffs