-
Notifications
You must be signed in to change notification settings - Fork 174
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
feat(masm): refactor assembler into a more compiler-like architecture #1277
Merged
+21,805
−14,679
Merged
Changes from all commits
Commits
Show all changes
69 commits
Select commit
Hold shift + click to select a range
6612bf8
fix(assembly): always build as no_std with explicit std feature
bitwalker 5e47ae0
chore(assembly): sort module declarations
bitwalker 6a85c66
feat: add byte(reader|writer) adapters for libstd write/read traits
bitwalker efc0a75
feat: add assert_matches macro to core
bitwalker ad2252e
feat: add basic diagnostics infrastructure
bitwalker f7a8431
feat: introduce thiserror for defining error types
bitwalker 0d30978
feat: introduce new and improved miden assembly parser
bitwalker 60e3a3b
feat: implement miden assembly source code formatter
bitwalker a6fd068
feat: introduce subset of new abstract syntax tree
bitwalker 210dfa3
feat: add miden assembly syntax tree visitors
bitwalker d747981
wip(1/n): refactor procedure types
bitwalker b034c7c
wip(2/n): refactor invocation target type
bitwalker 95d1001
wip(3/n): refactor library types and api
bitwalker da11059
wip(4/n): refactor instruction ast
bitwalker 0821d37
wip:(5/n): refactor module ast
bitwalker df20146
wip(6/n): extend AstSerdeOptions with debug info config
bitwalker 0a57cc2
wip(7/n): remove old code, update ast tests
bitwalker 22a79ad
wip(8/n): implement semantic analysis
bitwalker f50b677
wip(9/n): implement module graph and call graph structures
bitwalker ea792ad
wip(10/n): refactor procedure cache
bitwalker ecc96e8
wip(11/10): refactor assembler interface
bitwalker b0c2c13
fix: update miden repl and stdlib with assembler changes
bitwalker 2897c22
docs: update assembler documentation
bitwalker 5e6b370
fix: fully specify thiserror/miette deps rather than relying purely o…
bitwalker 18e9f07
fix: merge conflict
bitwalker ed3b4a4
fix: replace logos-based lexer with hand-written lexer
bitwalker 860fc1c
fix: improve dynexec/procref test
bitwalker ce6979a
chore: clean up clippy warnings
bitwalker ba6da89
chore: update rust-version to latest stable for assembler
bitwalker 7f334f9
fix(perf): make procedure name parsing actually efficient
bitwalker 2b6ed7f
chore: fix rustdoc warnings
bitwalker 9554ee1
fix: improve parser error messages
bitwalker a82ff86
feat: allow libraries fed to the assembler to be unsized types
bitwalker 1872454
fix: ignore local project settings for zed
bitwalker 4bf76d4
fix: ensure rustfmt enforces line-width guidelines on comments
bitwalker c8d2104
fix: ensure consistent spacing of items and comment width
bitwalker 71a0b3a
fix: only render docs for exported procedures
bitwalker 112db94
fix: clarify reason accessing discriminant value is safe
bitwalker 38b59b8
docs: update comment formatting to follow 100 char rule
bobbinth aa868b5
docs: fix comment formatting and add section separators
bobbinth 65cea31
feat: add compile trait to simplify interfaces accepting modules
bitwalker e5e2712
docs: document some undocumented traits/types
bitwalker 418a7d3
fix: export pretty-assertions helpers from test-utils
bitwalker 1bef681
fix: simplify a few grammar rules, improve precision of related diagn…
bitwalker d66a297
feat: simplify the assembler api using the new compile trait
bitwalker f430317
fix: turn free function for handling parse errors into trait impl
bitwalker 4ca85ff
fix: address a couple of review comments
bitwalker 91f08f2
chore: clean up winterfell deprecations
bitwalker 7046b60
fix: some small tweaks to remove trailing whitespace in pretty-printe…
bitwalker 8c473fb
fix: remove restriction on kernel imports
bitwalker d64524d
fix: use u8 for index in debug.stack decorator
bitwalker cffff84
fix: expose procedure.invoked/extend_invoked to downstream crates
bitwalker a6a1888
fix: replace some uses of text formatter with const_text
bitwalker 55c73a3
docs: comment formatting, section headers, minor typo fixes
bobbinth da0569e
docs: minor comment fixes
bobbinth 14b8c4e
chore: clean up some unused code, minor doc corrections
bitwalker a002a85
refactor: move various modulegraph-related items into module_graph mo…
bitwalker 2628466
refactor: break up module graph implementation more granularly
bitwalker 4ff23af
chore: remove code that was extracted to miden-formatting
bitwalker 29180c7
fix: properly support distinction between errors and warnings
bitwalker 69365d7
docs: update documented behavior of 'exec'
bitwalker 2676d21
fix: add some callgraph tests, remove unused function, fix one bug re…
bitwalker 55669cc
fix: address assorted review comments
bitwalker b46aaf0
chore: clean up implementation a bit, address some review feedback
bitwalker 475dea1
chore: fix typos, comment formatting, add section headers
bobbinth 307a17d
chore: comment formatting and section headers
bobbinth 167b143
fix: address a few more review comments
bitwalker aeb5269
fix: a few small adjustments from review
bitwalker c639420
fix: build errors due to conflict, address some clippy warnings
bitwalker File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -23,3 +23,6 @@ stdlib/assets/std.masl | |
|
||
# VS Code | ||
.vscode/ | ||
|
||
# Zed | ||
.zed/ |
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
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
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
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
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
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
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
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
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
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
Oops, something went wrong.
Oops, something went wrong.
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.
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.
should we move these forks to the
https://github.com/0xPolygonMiden
org?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 want to say yes? I guess the downside is that means all of the Polygon org rules are going to apply, so someone else will have to be involved to sign off on any updates we do to those crates, but they aren't likely to change much in the near term.