mirror of https://github.com/rust-lang/rust
84 lines
2.6 KiB
Diff
84 lines
2.6 KiB
Diff
- // MIR for `adt_transmutes` before InstSimplify-after-simplifycfg
|
|
+ // MIR for `adt_transmutes` after InstSimplify-after-simplifycfg
|
|
|
|
fn adt_transmutes() -> () {
|
|
let mut _0: ();
|
|
let _1: u8;
|
|
let mut _2: std::option::Option<std::num::NonZero<u8>>;
|
|
let mut _4: std::num::Wrapping<i16>;
|
|
let mut _6: std::num::Wrapping<i16>;
|
|
let mut _8: Union32;
|
|
let mut _10: Union32;
|
|
let mut _12: std::mem::MaybeUninit<std::string::String>;
|
|
scope 1 {
|
|
debug _a => _1;
|
|
let _3: i16;
|
|
scope 2 {
|
|
debug _a => _3;
|
|
let _5: u16;
|
|
scope 3 {
|
|
debug _a => _5;
|
|
let _7: u32;
|
|
scope 4 {
|
|
debug _a => _7;
|
|
let _9: i32;
|
|
scope 5 {
|
|
debug _a => _9;
|
|
let _11: std::mem::ManuallyDrop<std::string::String>;
|
|
scope 6 {
|
|
debug _a => _11;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
bb0: {
|
|
StorageLive(_1);
|
|
StorageLive(_2);
|
|
_2 = Option::<NonZero<u8>>::Some(const std::num::NonZero::<u8>::MAX);
|
|
_1 = move _2 as u8 (Transmute);
|
|
StorageDead(_2);
|
|
StorageLive(_3);
|
|
StorageLive(_4);
|
|
_4 = Wrapping::<i16>(const 0_i16);
|
|
- _3 = move _4 as i16 (Transmute);
|
|
+ _3 = move (_4.0: i16);
|
|
StorageDead(_4);
|
|
StorageLive(_5);
|
|
StorageLive(_6);
|
|
_6 = Wrapping::<i16>(const 0_i16);
|
|
_5 = move _6 as u16 (Transmute);
|
|
StorageDead(_6);
|
|
StorageLive(_7);
|
|
StorageLive(_8);
|
|
_8 = Union32 { u32: const 0_i32 };
|
|
_7 = move _8 as u32 (Transmute);
|
|
StorageDead(_8);
|
|
StorageLive(_9);
|
|
StorageLive(_10);
|
|
_10 = Union32 { u32: const 0_u32 };
|
|
_9 = move _10 as i32 (Transmute);
|
|
StorageDead(_10);
|
|
StorageLive(_11);
|
|
StorageLive(_12);
|
|
_12 = MaybeUninit::<String>::uninit() -> [return: bb1, unwind unreachable];
|
|
}
|
|
|
|
bb1: {
|
|
- _11 = move _12 as std::mem::ManuallyDrop<std::string::String> (Transmute);
|
|
+ _11 = move (_12.1: std::mem::ManuallyDrop<std::string::String>);
|
|
StorageDead(_12);
|
|
_0 = const ();
|
|
StorageDead(_11);
|
|
StorageDead(_9);
|
|
StorageDead(_7);
|
|
StorageDead(_5);
|
|
StorageDead(_3);
|
|
StorageDead(_1);
|
|
return;
|
|
}
|
|
}
|
|
|