-
Notifications
You must be signed in to change notification settings - Fork 21
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
chore: handle assembler refactoring changes #181
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
bitwalker
force-pushed
the
bitwalker/assembler-refactor
branch
from
May 6, 2024 06:13
682ed1c
to
5ea9fde
Compare
greenhat
approved these changes
May 6, 2024
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.
Looking great!
Do you want me to rebase my stack of PRs on top of this PR, or should I wait for the next one? |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
This modifies various bits of the compiler that are tightly integrated with the Miden VM assembler components now that 0xPolygonMiden/miden-vm#1277 is merged. Notably:
assert
andassertz
instructions (fixes Implement support for assertion error codes #33)Module
when emitting stdlib's function calls instackify
pass #57)__main
is an invalid name for a procedure in the Miden Assembler #59)miden-core
for pretty printing AST/IRmiden_codegen_masm::masm::Program
is now more or less a container of modules + the global data segment table, it no longer contains the executable "main" function, that is now generated as part of aModule
of executable type. I'm not super happy with how these structures are organized/used in the codegen backend right now, but until things stabilize a bit, I don't want to try and revisit it. I think longer term we'll want to have a more unified set of core libraries used between the compiler and assembler (or perhaps the assembler becomes more integrated into the compiler), and since most of the awkwardness here is a result of duplication/impedance mismatch, I think those sorts of changes would resolve the vast majority of my complaints.Next up are the felt changes