-
Notifications
You must be signed in to change notification settings - Fork 52
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
improve fidelity of check if atom fits in SmallAtom
#384
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
Pull Request Test Coverage Report for Build 7900735840Details
💛 - Coveralls |
Rigidity
previously approved these changes
Feb 13, 2024
…m NodePtr representation
arvidn
force-pushed
the
small-atom-fidelity
branch
from
February 13, 2024 16:36
1636fbc
to
a8581ab
Compare
Rigidity
previously approved these changes
Feb 14, 2024
arvidn
force-pushed
the
small-atom-fidelity
branch
3 times, most recently
from
February 14, 2024 11:40
035365d
to
53cbaa2
Compare
…targets to fail to link on Linux. Revert to the previous release
arvidn
force-pushed
the
small-atom-fidelity
branch
from
February 14, 2024 11:50
11465d2
to
90040ee
Compare
Rigidity
approved these changes
Feb 14, 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.
lgtm
Merged
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 factors out some common code and generally simplifies and unifies the behavior. With additional tests and fuzzer checks.
The second commit addresses the use of
as_unique_address()
, which is used inObjectCache
as a cheap hash map (index into aVec
). However, with theSmallAtom
feature,NodePtr
indices is no longer dense, and it no longer works to use aVec
instead of aHashMap
. It allocates too much memory if you create an atom with value0x3ffffff
.This commit is included in this PR since the increased fidelity of matching atoms to
SmallAtom
pushed the fuzzer over the limit and started failing with out-of-memory.