Skip to content
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

[GR-43979] Reachability trace prototype. #5883

Closed
wants to merge 18 commits into from

Conversation

graalvmbot
Copy link
Collaborator

@graalvmbot graalvmbot commented Feb 1, 2023

This PR explores adding some reachability tracing to the analysis. We aim to answer questions like: why is type X marked as allocated, why is field Y.f marked as written, why is method Z.foo() marked as invoked, etc. This kind of info is essential to reason about what the analysis proves as being run-time reachable.

A good starting point is running the unit test in the PR: mx build && mx native-unittest --build-args --features=com.oracle.svm.test.ReachableTypesFeature -- ReachabilityTraceTest in graal/substratevm and exploring what it does. It builds a hello-world app and it uses a Feature to tap into the AnalysisUniverse and query various analysis elements. It currently prints to the console some reachability reasons for some AnalysisTypes, but it is just a prototype. We want to expand this tracing to cover various scenarios for all analysis elements (AnalysisField.written, AnalysisField.read, AnalysisMethod.inlined, AnalysisType.inHeap, etc.) and integrate it in our error messages eventually.

@oracle-contributor-agreement oracle-contributor-agreement bot added the OCA Verified All contributors have signed the Oracle Contributor Agreement. label Feb 1, 2023
@graalvmbot graalvmbot force-pushed the cs/GR-43979-print-reachability-trace branch from 4d3e870 to b853170 Compare April 13, 2023 12:30
@graalvmbot graalvmbot force-pushed the cs/GR-43979-print-reachability-trace branch 3 times, most recently from da201b2 to 9c44431 Compare April 28, 2023 14:36
@graalvmbot graalvmbot force-pushed the cs/GR-43979-print-reachability-trace branch 2 times, most recently from 73f8d87 to 82f4502 Compare May 8, 2023 11:52
@graalvmbot graalvmbot force-pushed the cs/GR-43979-print-reachability-trace branch from f840176 to 8d087ad Compare May 16, 2023 10:01
@graalvmbot graalvmbot force-pushed the cs/GR-43979-print-reachability-trace branch from 4f7130d to 78247c8 Compare May 30, 2023 11:26
@fniephaus fniephaus closed this Jan 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
OCA Verified All contributors have signed the Oracle Contributor Agreement.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants