-
-
Notifications
You must be signed in to change notification settings - Fork 842
refactor[venom]: extract liveness and cfg data structures #4595
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
refactor[venom]: extract liveness and cfg data structures #4595
Conversation
it's dead, can always be added to the CFGAnalysis object
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #4595 +/- ##
==========================================
- Coverage 92.43% 92.43% -0.01%
==========================================
Files 127 127
Lines 18327 18353 +26
Branches 3179 3178 -1
==========================================
+ Hits 16941 16965 +24
Misses 947 947
- Partials 439 441 +2 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
@@ -3,19 +3,28 @@ | |||
from vyper.exceptions import CompilerPanic | |||
from vyper.utils import OrderedSet | |||
from vyper.venom.analysis import CFGAnalysis, IRAnalysis | |||
from vyper.venom.basicblock import IRBasicBlock, IRVariable | |||
from vyper.venom.basicblock import IRBasicBlock, IRInstruction, IRVariable | |||
|
|||
|
|||
class LivenessAnalysis(IRAnalysis): | |||
""" | |||
Compute liveness information for each instruction in the function. | |||
""" | |||
|
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.
cfg: CFGAnalysis |
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.
I more similar things should I create a PR for that quickly
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.
sure
hints for the typecheck
parametrize request_analysis with generics
|
||
from vyper.codegen.ir_node import IRnode | ||
from vyper.venom.basicblock import IRBasicBlock, IRLabel, IRVariable | ||
|
||
if TYPE_CHECKING: | ||
from vyper.venom.context import IRContext |
Check failure
Code scanning / CodeQL
Module-level cyclic import Error
vyper.venom.context
vyper.venom.function
definition
import
'IRContext' may not be defined if module
What I did
How I did it
How to verify it
Commit message
Description for the changelog
Cute Animal Picture