bors
|
fdc0011561
|
Auto merge of #64736 - Nashenas88:mir_predecessors_cache_cleanup, r=oli-obk
Remove interior mutability in mir predecessors cache
|
2019-12-02 14:51:02 +00:00 |
|
Paul Daniel Faria
|
3eaad564d2
|
Fix issues caused during rebasing
|
2019-12-02 09:40:03 -05:00 |
|
Paul Daniel Faria
|
6123478f2a
|
Fix issues caused during rebasing
|
2019-12-02 08:43:01 -05:00 |
|
Paul Daniel Faria
|
38bd3a2342
|
Use new HashStable proc macro
|
2019-12-02 08:43:01 -05:00 |
|
Paul Daniel Faria
|
acb90eb014
|
Fix tidy issues
|
2019-12-02 08:43:01 -05:00 |
|
Paul Daniel Faria
|
9978574c9e
|
Fix rebasing errors, convert some BodyCache::body() calls to reborrows
|
2019-12-02 08:43:01 -05:00 |
|
Paul Daniel Faria
|
64654ce1f1
|
Fix type errors created during rebasing
|
2019-12-02 08:42:24 -05:00 |
|
Paul Daniel Faria
|
598797c6e7
|
Remove unchecked inline attribute, remove unused functions, make chache mod private again
|
2019-12-02 08:41:30 -05:00 |
|
Paul Daniel Faria
|
c6354e9839
|
Remove inline attributes that hadn't been profiled, unexport Cache since it no longer needs to be public
|
2019-12-02 08:41:30 -05:00 |
|
Paul Daniel Faria
|
245abc49be
|
Fix type errors cause during rebasing
|
2019-12-02 08:41:30 -05:00 |
|
Paul Daniel Faria
|
05dc5e9f47
|
Compute predecessors in mir_build query and use existing cache for generating ReadOnlyBodyCache, remove unneeded fns
|
2019-12-02 08:41:30 -05:00 |
|
Paul Daniel Faria
|
ed90818ac8
|
Remove files created during conflict resolution
|
2019-12-02 08:40:56 -05:00 |
|
Paul Daniel Faria
|
51b06656da
|
Fix typos caused during rebase
|
2019-12-02 08:40:56 -05:00 |
|
Paul Daniel Faria
|
b2fe254c98
|
Remove HasLocalDecls impl from BodyCache's, properly reborrow to Body, rename all body_cache back to body
|
2019-12-02 08:40:56 -05:00 |
|
Paul Daniel Faria
|
595d161d36
|
Remove BodyCache.body and rely on Deref as much as possible for ReadOnlyBodyCache
|
2019-12-02 08:38:16 -05:00 |
|
Paul Daniel Faria
|
c42bdb8c74
|
Undo minor changes that weren't needed, fix one lifetime typo
|
2019-12-02 08:38:16 -05:00 |
|
Paul Daniel Faria
|
e54c610f85
|
Fix compilation errors created during rebase
|
2019-12-02 08:38:16 -05:00 |
|
Paul Daniel Faria
|
ab657e3b6b
|
Fix typo
|
2019-12-02 08:38:16 -05:00 |
|
Paul Daniel Faria
|
67b7a78231
|
Fix tidy errors
|
2019-12-02 08:38:16 -05:00 |
|
Paul Daniel Faria
|
35590b5cc8
|
Fix typos caused during rebase
|
2019-12-02 08:37:23 -05:00 |
|
Paul Daniel Faria
|
4de31b26d1
|
Fix remaining compilation issues
|
2019-12-02 08:37:04 -05:00 |
|
Paul Daniel Faria
|
fc6b58d0a8
|
Simplify BodyCache impl and fix all remaining type errors in librustc_mir (lifetime errors still exist)
|
2019-12-02 08:35:08 -05:00 |
|
Paul Daniel Faria
|
38c0887c76
|
Fix remaining Body -> (ReadOnly)BodyCache type errors in librustc_mir outside of librustc_mir/transform
|
2019-12-02 08:31:35 -05:00 |
|
Paul Daniel Faria
|
3642a71da2
|
Fix typo caused by rebasing
|
2019-12-02 08:31:35 -05:00 |
|
Paul Daniel Faria
|
0a19371243
|
Add predecessors fn to ReadOnlyBodyCache, fix more Body -> (ReadOnly)BodyCache type errors
|
2019-12-02 08:31:35 -05:00 |
|
Paul Daniel Faria
|
26f1c01ff7
|
Add read_only fn to BodyCache<&mut...> impl, fix more Body -> (ReadOnly)BodyCache type errors
|
2019-12-02 08:31:35 -05:00 |
|
Paul Daniel Faria
|
ab98c595ea
|
Fix a large number of Body -> (ReadOnly)BodyCache type errors, add predecessor_locations fn to ReadOnlyBodyCache
|
2019-12-02 08:31:35 -05:00 |
|
Paul Daniel Faria
|
2eed90a621
|
Account for new maybe_sideeffect helper that requires predecessors
|
2019-12-02 08:30:30 -05:00 |
|
Paul Daniel Faria
|
c8c266a0fb
|
Convert &mut to & since the reference didn't need to be mutable
|
2019-12-02 08:30:30 -05:00 |
|
Paul Daniel Faria
|
66279d12f9
|
Revert back to using FunctionCx's Body
|
2019-12-02 08:30:30 -05:00 |
|
Paul Daniel Faria
|
16952cce01
|
Add Body back as field of FunctionCx, but under a different lifetime
|
2019-12-02 08:30:30 -05:00 |
|
Paul Daniel Faria
|
3d68f5f3e7
|
Improved BodyCache body impl so it only returns a sharable ref, add new body_mut method, fix visit macros, simplify usage in codegen_ssa analyzer
|
2019-12-02 08:30:30 -05:00 |
|
Paul Daniel Faria
|
30b1d9e798
|
Remove Body from FunctionCx, pass it along during librustc_codegen_ssa
|
2019-12-02 08:30:30 -05:00 |
|
Paul Daniel Faria
|
649c73f96d
|
Simplify Cache wrapper to single type, impl Deref on it, fix all compilation errors in librustc_codegen_ssa
|
2019-12-02 08:30:30 -05:00 |
|
Paul Daniel Faria
|
c0592faa67
|
Move predecessor cache outside of Body, use wrapper types to manage Cache and Body (WIP, amend this commit)
|
2019-12-02 08:30:30 -05:00 |
|
Paul Daniel Faria
|
9b335ce1a6
|
Move predecessors cache back to its own type
This ensures that the cache can be properly ignored during encoding and decoding.
Fix panics that arose due to lack of encoding
|
2019-12-02 08:30:30 -05:00 |
|
Paul Daniel Faria
|
22bc8a01c1
|
Add back cache invalidation to basic_blocks_and_local_decls_mut
|
2019-12-02 08:30:30 -05:00 |
|
Paul Daniel Faria
|
52cc85f008
|
Address nits and remove unneeded pass
|
2019-12-02 08:30:30 -05:00 |
|
Paul Daniel Faria
|
94414ac7bb
|
Address excessive line length that was triggering warning during linting
|
2019-12-02 08:30:30 -05:00 |
|
Paul Daniel Faria
|
ad734680af
|
Move predecessors cache invalidation back to basic_blocks_mut, add a couple more ensure_predecessors to prevent panics
|
2019-12-02 08:30:30 -05:00 |
|
Paul Daniel Faria
|
8e8c97e5fd
|
Ensure predecessors are recomputed at critical points, fixes panics
|
2019-12-02 08:30:30 -05:00 |
|
Paul Daniel Faria
|
570e4182e8
|
Address linting errors caught by CI
|
2019-12-02 08:30:30 -05:00 |
|
Paul Daniel Faria
|
e1afa519e8
|
Fix Mir visitor macro to ensure it calls the proper method to invalidate the predecessors cache
|
2019-12-02 08:30:30 -05:00 |
|
Paul Daniel Faria
|
2b31456068
|
Add pass to ensure predecessors cache is generated after optimization
|
2019-12-02 08:30:30 -05:00 |
|
Paul Daniel Faria
|
f534d9f8c4
|
Stop invalidating predecessors cache when accessing unique basic block, invalidate cache when accessing unique terminator
|
2019-12-02 08:30:30 -05:00 |
|
Paul Daniel Faria
|
ce29f43f52
|
Get rid of old comment
|
2019-12-02 08:30:30 -05:00 |
|
Paul Daniel Faria
|
b5240596d2
|
Inline cache impl into Body, rename predecessor fns, change output of predecessors_for to slice
|
2019-12-02 08:30:29 -05:00 |
|
Paul Daniel Faria
|
c16ef6b21d
|
Remove interior mutability in mir predecessors cache
|
2019-12-02 08:30:29 -05:00 |
|
bors
|
2da942f328
|
Auto merge of #66874 - RalfJung:miri-assert-panic, r=oli-obk
Miri engine: proper support for `Assert` MIR terminators
This puts down the basis for https://github.com/rust-lang/miri/issues/1070, and I also did some clean-up. The Miri side of this is at https://github.com/rust-lang/miri/pull/1084.
r? @oli-obk
|
2019-12-02 11:43:50 +00:00 |
|
bors
|
4af3ee8ee2
|
Auto merge of #66950 - RalfJung:rollup-12d0zx8, r=RalfJung
Rollup of 5 pull requests
Successful merges:
- #66245 (Conditional compilation for sanitizers)
- #66654 (Handle const-checks for `&mut` outside of `HasMutInterior`)
- #66822 (libunwind_panic: adjust miri panic hack)
- #66827 (handle diverging functions forwarding their return place)
- #66834 (rustbuild fixes)
Failed merges:
r? @ghost
|
2019-12-02 08:35:24 +00:00 |
|