Commit Graph

60123 Commits

Author SHA1 Message Date
Mark Simulacrum
f051c60d92 Reduce extensions to FunctionContext in cleanup. 2016-12-20 20:03:30 -07:00
Mark-Simulacrum
1804131b6d Remove Ref::clone for MirContext mir 2016-12-20 20:03:30 -07:00
Mark-Simulacrum
937001a1f8 Refactor Callee::call to take bcx by-reference.
Also change to not return anything; nothing used the return ValueRef.

Inlines with_cond.
2016-12-20 20:03:29 -07:00
Mark-Simulacrum
9a198534e2 Remove unused imports 2016-12-20 20:03:29 -07:00
Mark-Simulacrum
21bd747948 Remove unused functions in abi 2016-12-20 20:03:29 -07:00
Mark-Simulacrum
88b2024a28 Cleanup instruction counting 2016-12-20 20:03:29 -07:00
Mark-Simulacrum
449c6d82a7 Simplify basic_block.rs 2016-12-20 20:03:29 -07:00
Mark-Simulacrum
cc1e210ee8 Inline trans_exchange_free 2016-12-20 20:03:28 -07:00
Mark-Simulacrum
9c38a54cae Inline FunctionContext.mir 2016-12-20 20:03:28 -07:00
Mark-Simulacrum
65f040031e Remove FunctionContext.landingpad_alloca. 2016-12-20 20:03:28 -07:00
Mark-Simulacrum
05d107d4a1 Inline validate_substs 2016-12-20 20:03:28 -07:00
Mark-Simulacrum
85ab08084d Remove global builder 2016-12-20 20:03:28 -07:00
Mark-Simulacrum
755850f318 Merge OwnedBuilder and Builder 2016-12-20 20:03:27 -07:00
Mark-Simulacrum
8ed11209d6 Minor cleanup to context 2016-12-20 20:03:27 -07:00
Mark-Simulacrum
c4f6173af8 Replace init with get_entry_block. 2016-12-20 20:03:27 -07:00
Mark-Simulacrum
cbbdb73eb0 Remove FunctionContext::cleanup, replacing it with a Drop impl.
Move alloca and initial entry block creation into FunctionContext::new.
2016-12-20 20:03:27 -07:00
Mark-Simulacrum
bf8614b55a Rename Builder::alloca to dynamic_alloca 2016-12-20 20:03:27 -07:00
Mark-Simulacrum
5262113fa6 Remove fcx.span 2016-12-20 20:03:26 -07:00
Mark-Simulacrum
820164582d Remove DebugLoc. 2016-12-20 20:03:24 -07:00
Mark-Simulacrum
be981dce80 Start FunctionContext privatization and reduction 2016-12-20 20:02:53 -07:00
Mark-Simulacrum
bc0b172f3b Remove BlockAndBuilder.funclet 2016-12-20 20:02:53 -07:00
Mark-Simulacrum
28f511cfbd Remove global Builder 2016-12-20 20:02:52 -07:00
Mark-Simulacrum
e0ccc81bbf Remove needless allows 2016-12-20 20:02:52 -07:00
Mark-Simulacrum
da23332b65 Remove remaining traces of block_arena 2016-12-20 20:02:52 -07:00
Mark-Simulacrum
5bdcc22b79 Remove FIXME 2016-12-20 20:02:52 -07:00
Mark-Simulacrum
dda6c8cf2f Inline base::malloc_raw_dyn.
Move comment about not unwinding into liballoc.
2016-12-20 20:02:52 -07:00
Mark-Simulacrum
14ae76d96b Unbox FunctionDebugContextData.
It is only a pointer and a Cell, which is quite small.
2016-12-20 20:02:51 -07:00
Mark-Simulacrum
b10d89a096 Move around code in cleanup for a more logical ordering, and fix comments 2016-12-20 20:02:51 -07:00
Mark-Simulacrum
c7f8b0cd81 Eagerly evaluate landing pads for cleanup scopes 2016-12-20 20:02:51 -07:00
Mark-Simulacrum
31691692a2 Deduplicate store_operand_direct and store_operand 2016-12-20 20:02:51 -07:00
Mark-Simulacrum
6710af3580 Slightly simplify tvec::slice_for_each 2016-12-20 20:02:51 -07:00
Mark-Simulacrum
6441c977cb Remove push_ctxt 2016-12-20 20:02:50 -07:00
Mark-Simulacrum
3265afa08f Inline and simplify Callee::call duplicates. 2016-12-20 20:02:50 -07:00
Mark-Simulacrum
cd57bbe27a Refactor get_landing_pad to take a CleanupScope
It unwrapped the Option anyway, so this more closely resembles the
reality of what's happening.
2016-12-20 20:02:50 -07:00
Mark-Simulacrum
28d00e781b Remove cleanup scope from FunctionContext 2016-12-20 20:02:50 -07:00
Mark-Simulacrum
51dfba1185 Refactor Vec<CleanupScope> into Option<CleanupScope>. 2016-12-20 20:02:50 -07:00
Mark-Simulacrum
91707dc991 Merge need_invoke and needs_invoke 2016-12-20 20:02:49 -07:00
Mark-Simulacrum
6412f3128d Propagate CleanupScope::needs_invoke being always true 2016-12-20 20:02:49 -07:00
Mark-Simulacrum
85ef02d404 Only one DropValue per CleanupScope 2016-12-20 20:02:49 -07:00
Mark-Simulacrum
da971b7652 Pull out get_or_create landing pad to avoid issues with dynamic borrowck. 2016-12-20 20:02:49 -07:00
Mark-Simulacrum
48715a15ff Reformatting 2016-12-20 20:02:49 -07:00
Mark-Simulacrum
2842912583 Remove DropValue.is_immediate 2016-12-20 20:02:48 -07:00
Mark-Simulacrum
ec518a0069 Remove EarlyExitLabel, it only has one variant and is as such useless 2016-12-20 20:02:48 -07:00
Mark-Simulacrum
5a36f88feb Remove debug_loc from CleanupScope and privatize various helpers 2016-12-20 20:02:48 -07:00
Mark-Simulacrum
ed989d39a1 Simple cleanups/inlines in cleanup 2016-12-20 20:02:48 -07:00
Mark-Simulacrum
86b2bdb435 Rename LandingPad to Funclet
Changes internal storage to direct field values instead of Options,
since both fields are always either set or not set.
2016-12-20 20:02:48 -07:00
Mark-Simulacrum
8f3d824cc7 Remove common::Block. 2016-12-20 20:02:46 -07:00
Mark-Simulacrum
3dbd141b8c Remove unused map_block 2016-12-20 20:01:41 -07:00
Mark-Simulacrum
fec59c5f73 Replace lpad().and_then(..) with None 2016-12-20 20:01:41 -07:00
Mark-Simulacrum
ad0a901d37 Remove *_builder 2016-12-20 20:01:40 -07:00