-
Notifications
You must be signed in to change notification settings - Fork 5.8k
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
Yul: Immutable AST class with top-level block #15258
Conversation
clonker
commented
Jul 11, 2024
•
edited
Loading
edited
- depends on PR Yul: Add const version of FunctionCallFinder #15253
9f43c25
to
7a46c24
Compare
Looks like this is in dire need of a rebase |
b1ae6a5
to
4247ad4
Compare
4247ad4
to
f261123
Compare
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.
No issues on terms of correctness, but could use better naming and the override in compilability checker could be done differently. See comments.
9af3770
to
f2a572b
Compare
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.
Unfortunately I did find some new stuff on this second pass:
- I think we should move
AsmAnalysisInfo
to theAST
struct and make it immutable as well. It would reduce the risk of forgetting to update it and we would also be able to calculate it just once per AST. YulOptimizerTest
allows arbitrary object nesting but does not handle that properly (only cares about the top-level one). And now with the extra copying added by this PR that gets extra unsafe, because we're not doing full copies of the objects. We should safeguard that with some asserts and maybe consider also actually fixing it properly (later, in a separate PR).
a057641
to
27e2479
Compare
ae6b298
to
ca2eabe
Compare
ca2eabe
to
44bfa72
Compare