-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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
Size of HashMap increased between 2/16 and 2/17 nightly #40042
Comments
I see that this is caused by 57940d0#diff-1ab410241f658d595f1c5eec7a979b01R409. Eight bytes for a bool is sad-making, since this increases the size of every single DOM node in Servo. |
In #38368 I proposed packing this bit in |
This is fairly crappy - an "insecure" HashMap is only 3 words long. |
(Aligned up to) 4 words now, with the extra This is unrelated to the size cost of |
Wound something like this https://is.gd/pMbxfY work instead of the Unique<> we use in RawTable? Taking a bit from capacity or length could require some annoying changes to overflow handling, reserving, etc. Edit: that would surely not please the borrow checker though. As Entry<,> require a mut ref to the table. |
Exposes a boolean flag in RawTable and use it instead of a bool field in HashMap. Fixes: rust-lang#40042
Reduce size overhead of adaptative hashmap Exposes a boolean flag in RawTable and use it instead of a bool field in HashMap. Taking a bit from capacity or length would make overflow handling tricky. Fixes: rust-lang#40042
The text was updated successfully, but these errors were encountered: