-
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
Use optimized SmallVec implementation #53384
Conversation
Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @Mark-Simulacrum (or someone else) soon. If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. Due to the way GitHub handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes. Please see the contribution instructions for more information. |
New Current
New
|
@bors try |
⌛ Trying commit 32a928feb6b6541d9198b09594c3f1e9e051d781 with merge 31e325e55811a6bde18f86114c56f04729c78575... |
☀️ Test successful - status-travis |
32a928f
to
17b5a97
Compare
Rebased. |
Thanks for this. I think more important than the cycles, it is 4/8 bytes smaller. |
@rust-timer build 31e325e55811a6bde18f86114c56f04729c78575 |
Success: Queued 31e325e55811a6bde18f86114c56f04729c78575 with parent 81cfaad, comparison URL. |
☔ The latest upstream changes (presumably #53316) made this pull request unmergeable. Please resolve the merge conflicts. |
17b5a97
to
ea92aa6
Compare
Rebased. |
Perf results look fine to me, will try to get a review in sometime today or tomorrow. |
src/librustc/Cargo.toml
Outdated
@@ -33,6 +33,7 @@ parking_lot = "0.5.5" | |||
byteorder = { version = "1.1", features = ["i128"]} | |||
chalk-engine = { version = "0.7.0", default-features=false } | |||
rustc_fs_util = { path = "../librustc_fs_util" } | |||
smallvec = "0.6.4" |
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.
We may want to use the union
feature here. (smallvec = { version = "0.6.4", features = ["union"] }
).
src/librustc_allocator/Cargo.toml
Outdated
@@ -16,3 +16,4 @@ rustc_target = { path = "../librustc_target" } | |||
syntax = { path = "../libsyntax" } | |||
syntax_pos = { path = "../libsyntax_pos" } | |||
log = "0.4" | |||
smallvec = "0.6.4" |
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.
Same here.
@@ -19,6 +19,7 @@ parking_lot_core = "0.2.8" | |||
rustc-rayon = "0.1.1" | |||
rustc-rayon-core = "0.1.1" | |||
rustc-hash = "1.0.1" | |||
smallvec = "0.6.4" |
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.
And here.
src/librustc_mir/Cargo.toml
Outdated
@@ -25,3 +25,4 @@ syntax = { path = "../libsyntax" } | |||
syntax_pos = { path = "../libsyntax_pos" } | |||
byteorder = { version = "1.1", features = ["i128"] } | |||
rustc_apfloat = { path = "../librustc_apfloat" } | |||
smallvec = "0.6.4" |
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.
etc. etc.
I'll push a followup PR to this to change |
ea92aa6
to
663e279
Compare
Addressed review comments. |
@bors try |
⌛ Trying commit 663e279bf28e024a6367226e7de652b8ab4296f1 with merge 40061cbe688a1db38eea0ba1bff9e2a8dc8c8297... |
☀️ Test successful - status-travis |
@rust-timer build 40061cbe688a1db38eea0ba1bff9e2a8dc8c8297 |
Success: Queued 40061cbe688a1db38eea0ba1bff9e2a8dc8c8297 with parent 70c33bb, comparison URL. |
🔒 Merge conflict This pull request and the master branch diverged in a way that cannot be automatically merged. Please rebase on top of the latest master branch, and let the reviewer approve again. How do I rebase?Assuming
You may also read Git Rebasing to Resolve Conflicts by Drew Blessing for a short tutorial. Please avoid the "Resolve conflicts" button on GitHub. It uses Sometimes step 4 will complete without asking for resolution. This is usually due to difference between how Error message
|
23264d1
to
4d81fe9
Compare
Rebased and updated |
@bors r=Mark-Simulacrum p=1 |
📌 Commit 4d81fe9 has been approved by |
@bors r+ |
💡 This pull request was already approved, no need to approve it again.
|
📌 Commit 4d81fe9 has been approved by |
oops... double r+. Looks like it's fine though. |
⌛ Testing commit 4d81fe9 with merge e19ef4419f929459104bcf4a295878ad048bbd6b... |
💔 Test failed - status-travis |
The job Click to expand the log.
I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact |
@bors retry |
Use optimized SmallVec implementation This PR replaces current SmallVec implementation with the one from the Servo project. Closes #51640 r? @Mark-Simulacrum
☀️ Test successful - status-appveyor, status-travis |
This PR replaces current SmallVec implementation with the one from the Servo project.
Closes #51640
r? @Mark-Simulacrum