Add triggered field access information analysis and use for call graphs #211
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The current field access information analysis is eager. Using it in call graphs usually results in many upfront calculations, growing directly proportional to the number of methods under analysis, regardless of whether they are reachable or not.
This PR adds a triggered analysis for field accesses tor rectify this issue and thus brings the field access information analysis in line with other call graph related analysis and others that are used during call graph computation. Now, field accesses are only computed for methods that are deemed reachable, which is also the only case call graph analyses need such information.
Thus, the points to keys are reconfigured to use the new triggered analysis instead of the previous eager analysis.