Repository navigation
Adding WriteZipper::remove_subtrie - #162
Open
luketpeterson wants to merge 1 commit into
Open
luketpeterson wants to merge 1 commit into
luketpeterson wants to merge 1 commit into
Conversation
…ation than remove_branches, but remove_branches is useful and correct in its own right. Updating documentation Future-proofing fuzzer .bin format by carrying opcode count in header
Bench A/B vs base: donejob log · 2026-10-09 03:17:28 UTC base cb4e1e4 → head 0c9e6b7, 3 round(s), median of each run averaged; negative is faster
12 case(s) moved more than 5%
Full tables per bench are in the job log and the bench-out artifact. |
Owner
|
I believe this is good iff it's upheld by a lot of laws. |
This file contains hidden or 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
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.
Adding WriteZipper::remove_subtrie as this is a more fundamental operation than remove_branches, but remove_branches is useful and correct in its own right.
This new method balances the API, helping define and explain the consistency fixes proposed in #104 Also, in the future this will be the lowest-cost way to just chop a subtrie, although the current implementation doesn't offer much perf benefit vs. remove_branches.
I also updated the lean model to include the new method. However, this shifted the number of opcodes and threatened to invalidate the existing .bin files. So I made a change to the .bin header to include the opcode count, rather than hard-coding the %56 that was in there.
I pondered going further and actually redoing the .bin format entirely, storing opcodes + args instead of the raw fuzz signal, so decoding only happens once before saving a reproduction - but I didn't go that far because it seemed unnecessary and like I'd be over-stepping.
Thoughts, @imlvts?