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.
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
fix: support free-threaded CPython with GIL disabled #5148
fix: support free-threaded CPython with GIL disabled #5148
Changes from 4 commits
e5470eb
1831bde
0a57d1d
f53dcb5
2a29578
85f3ff4
3cafb88
44d1fc7
c61f197
d40299a
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
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.
Maybe
?
(The main motivation is to minimize C-style casts. Similarly in a few other places changed in this PR.)
Could it be worth adding a comment to explain why
2 * ...
?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.
Suggestion to move this comment to the
splitmix64
function.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.
This comment is specific to this section of code: it's mostly about why we are ignoring the low bits (
addr >> 20
) when hashing the address.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.
static_cast
seems to work here (with Linux gcc at least). (I see we're already usingreinterpret_cast
in a bunch of similar situations, but maybe that isn't ideal?)Would using
std::uintptr_t
andstd::uint64_t
be slightly better?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.
static_cast
here causes a compiler error for me: https://gcc.godbolt.org/z/bTnosGf61I've updated the other casts and used the
std
namespace.