-
-
Notifications
You must be signed in to change notification settings - Fork 863
feat[venom]: stack order analysis #4646
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: master
Are you sure you want to change the base?
feat[venom]: stack order analysis #4646
Conversation
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #4646 +/- ##
==========================================
+ Coverage 93.20% 93.22% +0.02%
==========================================
Files 131 132 +1
Lines 19169 19322 +153
Branches 3292 3330 +38
==========================================
+ Hits 17866 18013 +147
- Misses 884 889 +5
- Partials 419 420 +1 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
vyper/venom/passes/dft.py
Outdated
|
||
while len(worklist) > 0: | ||
bb = worklist.popleft() | ||
stack_order = self.stack_order.handle_bbs(list(self.cfg.cfg_out(bb))) |
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.
does the liveness need to be recomputed for these bbs?
Stack order rewrite
vyper/venom/analysis/stack_order.py
Outdated
self.stack.append(src) | ||
elif src in next_live: | ||
self.stack.append(src) | ||
if src in self.stack: |
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.
Always true
What I did
inter bb stack analysis
How I did it
used the intra bb analysis (dft) as a base for the inter bb by propagating the information between the basic blocks
How to verify it
Commit message
Commit message for the final, squashed PR. (Optional, but reviewers will appreciate it! Please see our commit message style guide for what we would ideally like to see in a commit message.)
Description for the changelog
Cute Animal Picture