rust/tests/mir-opt/instsimplify/combine_transmutes.identity_transmutes.InstSimplify.diff

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

40 lines
945 B
Diff
Raw Normal View History

2023-05-06 22:20:58 -05:00
- // MIR for `identity_transmutes` before InstSimplify
+ // MIR for `identity_transmutes` after InstSimplify
fn identity_transmutes() -> () {
2023-06-06 08:47:00 -05:00
let mut _0: ();
let _1: i32;
let mut _3: std::vec::Vec<i32>;
scope 1 {
2023-06-06 08:47:00 -05:00
debug _a => _1;
let _2: std::vec::Vec<i32>;
scope 2 {
2023-06-06 08:47:00 -05:00
debug _a => _2;
}
}
bb0: {
2023-06-06 08:47:00 -05:00
StorageLive(_1);
- _1 = const 1_i32 as i32 (Transmute);
+ _1 = const 1_i32;
StorageLive(_2);
StorageLive(_3);
_3 = Vec::<i32>::new() -> [return: bb1, unwind unreachable];
}
bb1: {
2023-06-06 08:47:00 -05:00
- _2 = move _3 as std::vec::Vec<i32> (Transmute);
+ _2 = move _3;
StorageDead(_3);
_0 = const ();
drop(_2) -> [return: bb2, unwind unreachable];
}
bb2: {
2023-06-06 08:47:00 -05:00
StorageDead(_2);
StorageDead(_1);
return;
}
}