]> git.lizzy.rs Git - rust.git/commitdiff
Auto merge of #32779 - michaelwoerister:partitioning, r=nikomatsakis
authorbors <bors@rust-lang.org>
Sat, 16 Apr 2016 01:13:59 +0000 (18:13 -0700)
committerbors <bors@rust-lang.org>
Sat, 16 Apr 2016 01:13:59 +0000 (18:13 -0700)
Add initial version of codegen unit partitioning for incremental compilation.

The task of the partitioning module is to take the complete set of translation items of a crate and produce a set of codegen units from it, where a codegen unit is a named set of (translation-item, linkage) pairs. That is, this module decides which translation item appears in which codegen units with which linkage.

This version only handles the case of partitioning for incremental compilation, not the regular N-codegen units case. In the future the regular case should be handled too, maybe even doing a bit more analysis to intelligently figure out a good partitioning.

One thing that could be improved is the syntax of the codegen unit tests. Right now they still use the compile-fail error specification infrastructure, so everything has to be on one line. Would be nice to be able to format things in a more readable way.


Trivial merge