-
Notifications
You must be signed in to change notification settings - Fork 110
BE-227: HashQL: Implement call graph analysis for MIR #8214
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
base: main
Are you sure you want to change the base?
Conversation
PR SummaryAdd MIR call graph analysis
Written by Cursor Bugbot for commit c70394b. This will update automatically on new commits. Configure here. |
🤖 Augment PR SummarySummary: Adds an inter-procedural call graph analysis pass for HashQL MIR to track cross-definition references and call sites. Changes:
Technical Notes: Direct call edges are only emitted when the callee is syntactically a 🤖 Was this summary useful? React with 👍 or 👎 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #8214 +/- ##
==========================================
+ Coverage 59.26% 59.37% +0.10%
==========================================
Files 1191 1195 +4
Lines 113436 113796 +360
Branches 4982 4986 +4
==========================================
+ Hits 67232 67570 +338
- Misses 45428 45450 +22
Partials 776 776
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
CodSpeed Performance ReportMerging this PR will improve performance by ×2.7Comparing Summary
Performance Changes
Footnotes
|
9d0c0ed to
964c8b2
Compare
65c3381 to
3d60ecf
Compare
964c8b2 to
7b009a5
Compare
3d60ecf to
0bf9c4a
Compare
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
0bf9c4a to
eaca057
Compare
7b009a5 to
c70394b
Compare

Add call graph analysis for MIR
🌟 What is the purpose of this PR?
This PR adds a call graph analysis pass for MIR that tracks function call relationships between definitions. The call graph can be used for call site enumeration, reachability analysis, and optimization decisions.
🔍 What does this change?
CallGraphto represent function call relationships betweenDefIdsCallGraphAnalysispass to populate the graph from MIR bodiesCallKindenum to distinguish between direct function calls, filter functions, and other referencesidfield toBodystruct to track the definition ID of each bodyDisplayforLocationandGraphReadLocationto improve debuggingPre-Merge Checklist 🚀
🚢 Has this modified a publishable library?
This PR:
📜 Does this require a change to the docs?
The changes in this PR:
🕸️ Does this require a change to the Turbo Graph?
The changes in this PR:
🛡 What tests cover this?