diff options
| author | bors <bors@rust-lang.org> | 2015-12-11 00:59:48 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2015-12-11 00:59:48 +0000 |
| commit | 7ce713961cb7c36bb66db70a276973eb78cf9e6e (patch) | |
| tree | b7379aa50ccc114e34709bc1f6d041d4905f7be5 /src/test/compile-fail/coherence-impl-trait-for-trait-object-safe.rs | |
| parent | 0d3684063bab26117a8a5c26684470396446fe88 (diff) | |
| parent | 5addc31adb558da1613c8f9748ee05688f6eaf91 (diff) | |
| download | rust-7ce713961cb7c36bb66db70a276973eb78cf9e6e.tar.gz rust-7ce713961cb7c36bb66db70a276973eb78cf9e6e.zip | |
Auto merge of #30301 - michaelwoerister:mir-to-metadata2, r=nikomatsakis
This PR makes `Mir` `RustcEncodable` and `RustcDecodable` and stores it in crate metadata for inlinable items. Some other things in here: - `mir::visit::Visitor` is extended to also visit `Literals`, `Spans` and `DefIds`. - It also adds `mir::visit::MutVisitor` which allows to mutate the visited `Mir` structure in place. - Some numbers on how big MIR is in metadata (total metadata size in bytes): | | w/ MIR | w/o MIR | Rel. Size | |----------------|-----------:|------------:|:---------:| | libcore | 17,695,473 | 14,263,377 | 124% | | liblibc | 411,440 | 404,382 | 102% | | libcollections | 4,537,975 | 3,526,933 | 129% | | libserialize | 2,574,769 | 2,060,798 | 125% | | libsyntax | 15,262,894 | 12,075,574 | 126% | | librustc | 16,984,537 | 13,692,168 | 124% | So, adding MIR to metadata makes it about 25% bigger. It could be worse, considering that it still uses the inefficient RBML encoding. Still, the question is whether we should put MIR emission behind a `-Z` flag.
Diffstat (limited to 'src/test/compile-fail/coherence-impl-trait-for-trait-object-safe.rs')
0 files changed, 0 insertions, 0 deletions
