rust/src/librustc_mir/transform
bors 26286c7ad0 Auto merge of #66931 - cjgillot:hirene-preamble, r=eddyb
Allocate HIR on an arena 1/4

This PR is the first in a series of 4, aiming at allocating the HIR on an arena, as a memory optimisation.

1. This first PR lays the groundwork and migrates some low-hanging fruits.
2. The second PR will migrate `hir::Expr`, `hir::Pat` and related.
3. The third PR will migrate `hir::Ty` and related.
4. The final PR will be dedicated to eventual cleanups.

In order to make the transition as gradual as possible, some lowering routines receive `Box`-allocated data and move it into the arena. This is a bit wasteful, but hopefully temporary.
Nonetheless, special care should be taken to avoid double arena allocations.

Work mentored by @Zoxc.
2019-12-22 10:30:51 +00:00
..
check_consts 1. ast::Mutability::{Mutable -> Mut, Immutable -> Not}. 2019-12-20 22:22:44 +01:00
add_call_guards.rs rustc: Apply clearer naming to BodyAndCache, fix Deref impl, remove unneeded Index impl, remove body fn 2019-12-05 22:58:41 -05:00
add_moves_for_packed_drops.rs rustc: Apply clearer naming to BodyAndCache, fix Deref impl, remove unneeded Index impl, remove body fn 2019-12-05 22:58:41 -05:00
add_retag.rs Add Rvalue::AddressOf to MIR 2019-12-18 20:09:10 +00:00
check_unsafety.rs Rename to then_some and then 2019-12-06 12:24:54 +00:00
cleanup_post_borrowck.rs rustc: Apply clearer naming to BodyAndCache, fix Deref impl, remove unneeded Index impl, remove body fn 2019-12-05 22:58:41 -05:00
const_prop.rs Rollup merge of #67355 - Centril:merge-mut, r=oli-obk 2019-12-21 15:29:42 +01:00
copy_prop.rs rustc: Apply clearer naming to BodyAndCache, fix Deref impl, remove unneeded Index impl, remove body fn 2019-12-05 22:58:41 -05:00
deaggregator.rs rustc: Apply clearer naming to BodyAndCache, fix Deref impl, remove unneeded Index impl, remove body fn 2019-12-05 22:58:41 -05:00
dump_mir.rs rustc: Apply clearer naming to BodyAndCache, fix Deref impl, remove unneeded Index impl, remove body fn 2019-12-05 22:58:41 -05:00
elaborate_drops.rs Remove uniform_array_move_out passes 2019-12-09 20:43:22 +00:00
erase_regions.rs rustc: Apply clearer naming to BodyAndCache, fix Deref impl, remove unneeded Index impl, remove body fn 2019-12-05 22:58:41 -05:00
generator.rs 1. ast::Mutability::{Mutable -> Mut, Immutable -> Not}. 2019-12-20 22:22:44 +01:00
inline.rs [mir-opt] Fix Inline pass to handle inlining into box expressions 2019-12-20 20:39:47 -05:00
instcombine.rs rustc: Apply clearer naming to BodyAndCache, fix Deref impl, remove unneeded Index impl, remove body fn 2019-12-05 22:58:41 -05:00
mod.rs Use Arena inside hir::EnumDef. 2019-12-21 23:32:42 +01:00
no_landing_pads.rs rustc: Apply clearer naming to BodyAndCache, fix Deref impl, remove unneeded Index impl, remove body fn 2019-12-05 22:58:41 -05:00
promote_consts.rs Add Rvalue::AddressOf to MIR 2019-12-18 20:09:10 +00:00
qualify_min_const_fn.rs 1. ast::Mutability::{Mutable -> Mut, Immutable -> Not}. 2019-12-20 22:22:44 +01:00
remove_noop_landing_pads.rs rustc: Apply clearer naming to BodyAndCache, fix Deref impl, remove unneeded Index impl, remove body fn 2019-12-05 22:58:41 -05:00
rustc_peek.rs Remove uniform_array_move_out passes 2019-12-09 20:43:22 +00:00
simplify_branches.rs rustc: Apply clearer naming to BodyAndCache, fix Deref impl, remove unneeded Index impl, remove body fn 2019-12-05 22:58:41 -05:00
simplify_try.rs rustc: Apply clearer naming to BodyAndCache, fix Deref impl, remove unneeded Index impl, remove body fn 2019-12-05 22:58:41 -05:00
simplify.rs Rollup merge of #67134 - oli-obk:const_prop_zst, r=wesleywiser 2019-12-11 04:32:57 +09:00
uninhabited_enum_branching.rs Rollup merge of #66991 - Nashenas88:body_cache_cleanup, r=eddyb 2019-12-08 03:39:45 +01:00