-
Notifications
You must be signed in to change notification settings - Fork 493
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
AVM: Rework around opcode fields for more flexible costs #3832
Conversation
Simplifies adding a new field. Eliminates need for custom disassembler. Avoids hash lookup in opcode evaluation. Simplifies opdoc.
Codecov Report
@@ Coverage Diff @@
## master #3832 +/- ##
==========================================
- Coverage 49.98% 49.96% -0.02%
==========================================
Files 392 392
Lines 68501 68386 -115
==========================================
- Hits 34239 34169 -70
+ Misses 30501 30475 -26
+ Partials 3761 3742 -19
Continue to review full report at Codecov.
|
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.
@jannotti Thanks for finding a way to support variable field costs while also simplifying opcode maintenance. ☕
This PR makes is possible for opcodes to have different costs depending on their immediate argument. It also opens the door to opcodes that have different costs based on their run-time arguments (on stack).
There was significant rework around how information about opcode fields (immediates) is stored. This rework: