Ban ArrayToPointer
and MutToConstPointer
from runtime MIR
Apparently MIR borrowck cares about at least one of these for checking variance. In runtime MIR, though, there's no need for them as `PtrToPtr` does the same thing. (Banning them simplifies passes like GVN that no longer need to handle multiple cast possibilities.)
This commit is contained in:
parent
894f7a4ba6
commit
4630d1b23b
21 changed files with 60 additions and 32 deletions
|
@ -51,11 +51,11 @@ mod abort_unwinding_calls;
|
|||
mod add_call_guards;
|
||||
mod add_moves_for_packed_drops;
|
||||
mod add_retag;
|
||||
mod add_subtyping_projections;
|
||||
mod check_alignment;
|
||||
mod check_const_item_mutation;
|
||||
mod check_packed_ref;
|
||||
mod remove_place_mention;
|
||||
// This pass is public to allow external drivers to perform MIR cleanup
|
||||
mod add_subtyping_projections;
|
||||
pub mod cleanup_post_borrowck;
|
||||
mod copy_prop;
|
||||
mod coroutine;
|
||||
|
@ -94,6 +94,7 @@ mod prettify;
|
|||
mod promote_consts;
|
||||
mod ref_prop;
|
||||
mod remove_noop_landing_pads;
|
||||
mod remove_place_mention;
|
||||
mod remove_storage_markers;
|
||||
mod remove_uninit_drops;
|
||||
mod remove_unneeded_drops;
|
||||
|
@ -103,7 +104,6 @@ mod reveal_all;
|
|||
mod shim;
|
||||
mod ssa;
|
||||
// This pass is public to allow external drivers to perform MIR cleanup
|
||||
mod check_alignment;
|
||||
pub mod simplify;
|
||||
mod simplify_branches;
|
||||
mod simplify_comparison_integral;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue