about summary refs log tree commit diff
path: root/src/test/codegen/stack-alloc-string-slice.rs
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2015-05-12 10:46:14 +0000
committerbors <bors@rust-lang.org>2015-05-12 10:46:14 +0000
commit67dfc177f3c3236a73c7273dd0bf8be80bf1f5b0 (patch)
treeac754b272723e7865906ccfc41eef81d5a9291c3 /src/test/codegen/stack-alloc-string-slice.rs
parentfeac9f1c7b17903ef14ff46bc24c2baa45f3b15f (diff)
parent75cd8f94e1f6319f92f837f9ef6884fafca8fb6f (diff)
downloadrust-67dfc177f3c3236a73c7273dd0bf8be80bf1f5b0.tar.gz
rust-67dfc177f3c3236a73c7273dd0bf8be80bf1f5b0.zip
Auto merge of #25323 - eddyb:coherent-coherence, r=pnkfelix
The loop to load all the known impls from external crates seems to have been used because `ty::populate_implementations_for_trait_if_necessary` wasn't doing its job, and solely relying on it resulted in loading only impls in the same crate as the trait.

Coherence for `librustc` was reduced from 18.310s to 0.610s, from stage1 to stage2.
Interestingly, type checking also went from 46.232s to 42.003s, though that could be noise or unrelated improvements.

On a smaller scale, `fn main() {}` now spends 0.003s in coherence instead of 0.368s, which fixes #22068.
It also peaks at only 1.2MB, instead of 16MB of heap usage.
Diffstat (limited to 'src/test/codegen/stack-alloc-string-slice.rs')
0 files changed, 0 insertions, 0 deletions