]> git.lizzy.rs Git - rust.git/commitdiff
auto merge of #19362 : nikomatsakis/rust/crateification, r=nikomatsakis
authorbors <bors@rust-lang.org>
Fri, 5 Dec 2014 09:23:09 +0000 (09:23 +0000)
committerbors <bors@rust-lang.org>
Fri, 5 Dec 2014 09:23:09 +0000 (09:23 +0000)
This has the goal of further reducing peak memory usage and enabling more parallelism. This patch should allow trans/typeck to build in parallel. The plan is to proceed by moving as many additional passes as possible into distinct crates that lay alongside typeck/trans. Basically, the idea is that there is the `rustc` crate which defines the common data structures shared between passes. Individual passes then go into their own crates. Finally, the `rustc_driver` crate knits it all together.

cc @jakub-: One wrinkle is the diagnostics plugin. Currently, it assumes all diagnostics are defined and used within one crate in order to track what is used and what is duplicated. I had to disable this. We'll have to find an alternate strategy, but I wasn't sure what was best so decided to just disable the duplicate checking for now.


Trivial merge