os-rust/tests/mir-opt/const_prop
Matthias Krüger 6917040cf0
Rollup merge of #107524 - cjgillot:both-storage, r=RalfJung
Remove both StorageLive and StorageDead in CopyProp.

Fixes https://github.com/rust-lang/rust/issues/107511

https://github.com/rust-lang/rust/pull/106908 removed StorageDead without the accompanying StorageLive. In loops, execution would see repeated StorageLive, without any StorageDead, which is UB.

So when removing storage statements, we have to remove both StorageLive and StorageDead.

~I also added a MIR validation pass for StorageLive. It may be a bit overzealous.~
2023-02-02 17:14:06 +01:00
..
aggregate.main.ConstProp.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
aggregate.main.PreCodegen.after.mir Move /src/test to /tests 2023-01-11 09:32:08 +00:00
aggregate.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
array_index.main.ConstProp.32bit.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
array_index.main.ConstProp.64bit.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
array_index.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
bad_op_div_by_zero.main.ConstProp.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
bad_op_div_by_zero.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
bad_op_mod_by_zero.main.ConstProp.diff Remove both StorageLive and StorageDead in CopyProp. 2023-01-31 17:50:04 +00:00
bad_op_mod_by_zero.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
bad_op_unsafe_oob_for_slices.main.ConstProp.32bit.diff Reimplement NormalizeArrayLen. 2023-01-29 21:19:02 +00:00
bad_op_unsafe_oob_for_slices.main.ConstProp.64bit.diff Reimplement NormalizeArrayLen. 2023-01-29 21:19:02 +00:00
bad_op_unsafe_oob_for_slices.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
boolean_identities.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
boolean_identities.test.ConstProp.diff Implement SSA CopyProp pass. 2023-01-27 18:22:45 +00:00
boxes.main.ConstProp.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
boxes.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
cast.main.ConstProp.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
cast.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
checked_add.main.ConstProp.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
checked_add.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
const_prop_fails_gracefully.main.ConstProp.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
const_prop_fails_gracefully.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
control_flow_simplification.hello.ConstProp.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
control_flow_simplification.hello.PreCodegen.before.mir Move /src/test to /tests 2023-01-11 09:32:08 +00:00
control_flow_simplification.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
discriminant.main.ConstProp.32bit.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
discriminant.main.ConstProp.64bit.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
discriminant.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
indirect.main.ConstProp.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
indirect.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
invalid_constant.main.ConstProp.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
invalid_constant.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
issue_66971.main.ConstProp.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
issue_66971.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
issue_67019.main.ConstProp.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
issue_67019.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
large_array_index.main.ConstProp.32bit.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
large_array_index.main.ConstProp.64bit.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
large_array_index.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
mult_by_zero.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
mult_by_zero.test.ConstProp.diff Implement SSA CopyProp pass. 2023-01-27 18:22:45 +00:00
mutable_variable.main.ConstProp.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
mutable_variable.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
mutable_variable_aggregate.main.ConstProp.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
mutable_variable_aggregate.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
mutable_variable_aggregate_mut_ref.main.ConstProp.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
mutable_variable_aggregate_mut_ref.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
mutable_variable_aggregate_partial_read.main.ConstProp.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
mutable_variable_aggregate_partial_read.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
mutable_variable_no_prop.main.ConstProp.diff Fix mir-opt tests for big-endian platforms 2023-01-12 18:05:30 +01:00
mutable_variable_no_prop.rs Fix mir-opt tests for big-endian platforms 2023-01-12 18:05:30 +01:00
mutable_variable_unprop_assign.main.ConstProp.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
mutable_variable_unprop_assign.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
optimizes_into_variable.main.ConstProp.32bit.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
optimizes_into_variable.main.ConstProp.64bit.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
optimizes_into_variable.main.PreCodegen.after.32bit.mir Move /src/test to /tests 2023-01-11 09:32:08 +00:00
optimizes_into_variable.main.PreCodegen.after.64bit.mir Move /src/test to /tests 2023-01-11 09:32:08 +00:00
optimizes_into_variable.main.ScalarReplacementOfAggregates.32bit.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
optimizes_into_variable.main.ScalarReplacementOfAggregates.64bit.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
optimizes_into_variable.main.SimplifyLocals-final.after.32bit.mir Move /src/test to /tests 2023-01-11 09:32:08 +00:00
optimizes_into_variable.main.SimplifyLocals-final.after.64bit.mir Move /src/test to /tests 2023-01-11 09:32:08 +00:00
optimizes_into_variable.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
read_immutable_static.main.ConstProp.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
read_immutable_static.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
ref_deref.main.ConstProp.diff Make tests unit. 2023-01-27 18:22:44 +00:00
ref_deref.rs Make tests unit. 2023-01-27 18:22:44 +00:00
ref_deref_project.main.ConstProp.diff Make tests unit. 2023-01-27 18:22:44 +00:00
ref_deref_project.rs Make tests unit. 2023-01-27 18:22:44 +00:00
reify_fn_ptr.main.ConstProp.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
reify_fn_ptr.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
repeat.main.ConstProp.32bit.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
repeat.main.ConstProp.64bit.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
repeat.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
return_place.add.ConstProp.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
return_place.add.PreCodegen.before.mir Move /src/test to /tests 2023-01-11 09:32:08 +00:00
return_place.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
scalar_literal_propagation.main.ConstProp.diff Remove both StorageLive and StorageDead in CopyProp. 2023-01-31 17:50:04 +00:00
scalar_literal_propagation.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
slice_len.main.ConstProp.32bit.diff Make tests unit. 2023-01-27 18:22:44 +00:00
slice_len.main.ConstProp.64bit.diff Make tests unit. 2023-01-27 18:22:44 +00:00
slice_len.rs Make tests unit. 2023-01-27 18:22:44 +00:00
switch_int.main.ConstProp.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
switch_int.main.SimplifyConstCondition-after-const-prop.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
switch_int.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00
tuple_literal_propagation.main.ConstProp.diff Move /src/test to /tests 2023-01-11 09:32:08 +00:00
tuple_literal_propagation.rs Move /src/test to /tests 2023-01-11 09:32:08 +00:00