rust/tests/mir-opt/const_prop/offset_of.generic.GVN.panic-unwind.diff
2023-12-24 20:08:57 +00:00

115 lines
3.1 KiB
Diff

- // MIR for `generic` before GVN
+ // MIR for `generic` after GVN
fn generic() -> () {
let mut _0: ();
let _1: usize;
let mut _2: usize;
let mut _4: usize;
let mut _6: usize;
let mut _8: usize;
let mut _10: usize;
let mut _12: usize;
let mut _14: usize;
scope 1 {
debug gx => _1;
let _3: usize;
scope 2 {
debug gy => _3;
let _5: usize;
scope 3 {
debug dx => _5;
let _7: usize;
scope 4 {
debug dy => _7;
let _9: usize;
scope 5 {
debug zA0 => _9;
let _11: usize;
scope 6 {
debug zA1 => _11;
let _13: usize;
scope 7 {
debug zB => _13;
}
}
}
}
}
}
}
bb0: {
StorageLive(_1);
StorageLive(_2);
_2 = OffsetOf(Gamma<T>, [(0, 0)]);
_1 = must_use::<usize>(move _2) -> [return: bb1, unwind continue];
}
bb1: {
StorageDead(_2);
StorageLive(_3);
StorageLive(_4);
_4 = OffsetOf(Gamma<T>, [(0, 1)]);
_3 = must_use::<usize>(move _4) -> [return: bb2, unwind continue];
}
bb2: {
StorageDead(_4);
StorageLive(_5);
StorageLive(_6);
- _6 = OffsetOf(Delta<T>, [(0, 1)]);
- _5 = must_use::<usize>(move _6) -> [return: bb3, unwind continue];
+ _6 = const 0_usize;
+ _5 = must_use::<usize>(const 0_usize) -> [return: bb3, unwind continue];
}
bb3: {
StorageDead(_6);
StorageLive(_7);
StorageLive(_8);
- _8 = OffsetOf(Delta<T>, [(0, 2)]);
- _7 = must_use::<usize>(move _8) -> [return: bb4, unwind continue];
+ _8 = const 2_usize;
+ _7 = must_use::<usize>(const 2_usize) -> [return: bb4, unwind continue];
}
bb4: {
StorageDead(_8);
StorageLive(_9);
StorageLive(_10);
_10 = OffsetOf(Zeta<T>, [(0, 0)]);
_9 = must_use::<usize>(move _10) -> [return: bb5, unwind continue];
}
bb5: {
StorageDead(_10);
StorageLive(_11);
StorageLive(_12);
_12 = OffsetOf(Zeta<T>, [(0, 1)]);
_11 = must_use::<usize>(move _12) -> [return: bb6, unwind continue];
}
bb6: {
StorageDead(_12);
StorageLive(_13);
StorageLive(_14);
_14 = OffsetOf(Zeta<T>, [(1, 0)]);
_13 = must_use::<usize>(move _14) -> [return: bb7, unwind continue];
}
bb7: {
StorageDead(_14);
_0 = const ();
StorageDead(_13);
StorageDead(_11);
StorageDead(_9);
StorageDead(_7);
StorageDead(_5);
StorageDead(_3);
StorageDead(_1);
return;
}
}