rust/src/test
bors 1cf592fa40 Auto merge of #36551 - eddyb:meta-games, r=nikomatsakis
Refactor away RBML from rustc_metadata.

RBML and `ty{en,de}code` have had their long-overdue purge. Summary of changes:
* Metadata is now a tree encoded in post-order and with relative backward references pointing to children nodes. With auto-deriving and type safety, this makes maintenance and adding new information to metadata painless and bug-free by default. It's also more compact and cache-friendly (cache misses should be proportional to the depth of the node being accessed, not the number of siblings as in EBML/RBML).
* Metadata sizes have been reduced, for `libcore` it went down 16% (`8.38MB` -> `7.05MB`) and for `libstd` 14% (`3.53MB` -> `3.03MB`), while encoding more or less the same information
* Specialization is used in the bundled `libserialize` (crates.io `rustc_serialize` remains unaffected) to customize the encoding (and more importantly, decoding) of various types, most notably those interned in the `TyCtxt`. Some of this abuses a soundness hole pending a fix (cc @aturon), but when that fix arrives, we'll move to macros 1.1 `#[derive]` and custom `TyCtxt`-aware serialization traits.
* Enumerating children of modules from other crates is now orthogonal to describing those items via `Def` - this is a step towards bridging crate-local HIR and cross-crate metadata
* `CrateNum` has been moved to `rustc` and both it and `NodeId` are now newtypes instead of `u32` aliases, for specializing their decoding. This is `[syntax-breaking]` (cc @Manishearth ).

cc @rust-lang/compiler
2016-09-21 19:17:24 -07:00
..
codegen librustc: Implement def-use chains and trivial copy propagation on MIR. 2016-09-19 19:18:38 -07:00
codegen-units Auto merge of #36551 - eddyb:meta-games, r=nikomatsakis 2016-09-21 19:17:24 -07:00
compile-fail rustc_resolve: bring back "struct called like a function" cross-crate. 2016-09-20 20:08:07 +03:00
compile-fail-fulldeps Remove irrelevant test. 2016-09-15 21:17:21 +00:00
debuginfo Add s390x support 2016-09-09 22:28:19 +01:00
incremental Auto merge of #35960 - nikomatsakis:incr-comp-krate-edges, r=michaelwoerister 2016-09-12 17:15:26 -07:00
mir-opt librustc: Implement def-use chains and trivial copy propagation on MIR. 2016-09-19 19:18:38 -07:00
parse-fail Remove parsing of obsolete pre-1.0 syntaxes 2016-09-13 23:33:50 +03:00
pretty Implement RFC#1559: allow all literals in attributes. 2016-08-25 13:25:22 -07:00
run-fail Auto merge of #34942 - porglezomp:master, r=sfackler 2016-09-19 19:03:52 -07:00
run-fail-fulldeps Refactor ExtCtxt to use a Resolver instead of a MacroLoader. 2016-09-13 05:31:16 +00:00
run-make Adapt run-make/sep-comp-inlining test case to new behaviour 2016-09-15 14:46:35 -04:00
run-pass Auto merge of #36551 - eddyb:meta-games, r=nikomatsakis 2016-09-21 19:17:24 -07:00
run-pass-fulldeps rustc_metadata: replace RBML with a simple and type-safe scheme. 2016-09-20 20:08:05 +03:00
run-pass-valgrind Disable old trans access via -Z orbit, #[rustc_no_mir] or --disable-orbit. 2016-08-24 13:23:37 +03:00
rustdoc Auto merge of #36293 - liigo:docblock-short, r=steveklabnik 2016-09-14 15:39:23 -07:00
ui Specify when type parameter shadows primitive type 2016-09-15 20:06:29 -07:00