Vadim Petrochenkov
|
1a496f3379
|
syntax: Use ast::MacArgs for attributes
|
2019-12-02 21:56:34 +03:00 |
|
Vadim Petrochenkov
|
0fac56717a
|
syntax: Remove redundant span from ast::Mac
Also remove a couple of redundant `visit_mac` asserts
|
2019-12-02 21:56:34 +03:00 |
|
Vadim Petrochenkov
|
a81804b4d5
|
syntax: Introduce a struct MacArgs for macro arguments
|
2019-12-02 21:56:34 +03:00 |
|
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 |
|