Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upGitHub is where the world builds software
Millions of developers and companies build, ship, and maintain their software on GitHub — the largest and most advanced development platform in the world.
Shrink `Nonterminal` #67340
Shrink `Nonterminal` #67340
Conversation
|
Notable local
Note that |
|
Would appreciate if we could block merging this PR on first merging #67131 since this one will generate a lot of conflicts with that PR. |
|
@bors try @rust-timer queue |
|
Awaiting bors try build completion |
Shrink `Nonterminal` These commits shrink `Nonterminal` from 240 bytes to 40 bytes. When building `serde_derive` they reduce the number of `memcpy` calls from 9.6M to 7.4M, and it's a tiny win on a few other benchmarks. r? @petrochenkov
|
|
|
Queued 23f3174 with parent a605441, future comparison URL. |
|
Finished benchmarking try commit 23f3174, comparison URL. |
|
Here are the
|
|
r=me after rebase |
|
Ping from Triage: Any updates @nnethercote? |
This commit reduces the size of `Nonterminal` from a whopping 240 bytes to 72 bytes (on x86-64), which gets it below the `memcpy` threshold. It also removes some impedance mismatches with `Annotatable`, which already uses `P` for these variants.
This commit reduces the size of `Nonterminal` from a 72 bytes to 40 bytes (on x86-64).
ed9ba9b
to
7d2173e
|
Back now from PTO, I have rebased. @bors try @rust-timer queue |
|
Awaiting bors try build completion |
Shrink `Nonterminal` These commits shrink `Nonterminal` from 240 bytes to 40 bytes. When building `serde_derive` they reduce the number of `memcpy` calls from 9.6M to 7.4M, and it's a tiny win on a few other benchmarks. r? @petrochenkov
|
|
|
Queued 1941303 with parent 9ed29b6, future comparison URL. |
|
rust-timer didn't give us a "finished" message, but the results are in and look as expected -- a small win. |
|
@bors r+ |
|
|
Shrink `Nonterminal` These commits shrink `Nonterminal` from 240 bytes to 40 bytes. When building `serde_derive` they reduce the number of `memcpy` calls from 9.6M to 7.4M, and it's a tiny win on a few other benchmarks. r? @petrochenkov
|
|
|
Tested on commit b1cb3c0. |
Tested on commit rust-lang/rust@b1cb3c0. Direct link to PR: <rust-lang/rust#67340>🎉 rustc-guide on linux: test-fail → test-pass (cc @JohnTitor @amanjeev @spastorino @mark-i-m, @rust-lang/infra).
These commits shrink
Nonterminalfrom 240 bytes to 40 bytes. When buildingserde_derivethey reduce the number ofmemcpycalls from 9.6M to 7.4M, and it's a tiny win on a few other benchmarks.r? @petrochenkov