-
Notifications
You must be signed in to change notification settings - Fork 18
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
Normal format for custom_insn_*
macros we have
#1193
Conversation
92635b2
to
76f4a47
Compare
76f4a47
to
23cc1c0
Compare
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
…) for less space for the wrong signature error
This comment has been minimized.
This comment has been minimized.
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.
Overall this is a big improvement!
LGTM, but just the macro use of opcode = const #opcode
to insert assembly is a little weird to me.
There is one const vs sym
question.
Also, does anything in the book/docs need to be updated, or do we not even mention this macro in the book / documentation?
Heads up I will likely merge #1107 first, so there will be a small(hopefully) rebase necessary.
This comment has been minimized.
This comment has been minimized.
Commit: 5ab6d6b |
Btw yes, I think we don't mention these macros anywhere in the docs |
This resolves INT-2667.
The following is done here:
custom_insn_r
andcustom_insn_i
macros (are now procedural and) now have a clearer signature, where all arguments must be named, and the register types also have to be explicitly specified,#[cfg(target_os = "zkvm")]
block, which would help the developer to catch the wrong macro signature things instantly if they have the language server running, but in reality we also want tolet uninit = ...
under the same block anyway, so now this change is not really represented. Maybe we will want to makeuninit
an additional valid macro argument at some point, but this would overcomplicate things imo.