diff options
Diffstat (limited to 'tests/mir-opt/inline/inline_into_box_place.main.Inline.panic-unwind.diff')
| -rw-r--r-- | tests/mir-opt/inline/inline_into_box_place.main.Inline.panic-unwind.diff | 92 |
1 files changed, 39 insertions, 53 deletions
diff --git a/tests/mir-opt/inline/inline_into_box_place.main.Inline.panic-unwind.diff b/tests/mir-opt/inline/inline_into_box_place.main.Inline.panic-unwind.diff index a5129e0e8c8..a789f9933b4 100644 --- a/tests/mir-opt/inline/inline_into_box_place.main.Inline.panic-unwind.diff +++ b/tests/mir-opt/inline/inline_into_box_place.main.Inline.panic-unwind.diff @@ -2,80 +2,66 @@ + // MIR for `main` after Inline fn main() -> () { - let mut _0: (); // return place in scope 0 at $DIR/inline_into_box_place.rs:+0:11: +0:11 - let _1: std::boxed::Box<std::vec::Vec<u32>>; // in scope 0 at $DIR/inline_into_box_place.rs:+1:9: +1:11 - let mut _2: std::vec::Vec<u32>; // in scope 0 at $DIR/inline_into_box_place.rs:+1:38: +1:48 + let mut _0: (); + let _1: std::boxed::Box<std::vec::Vec<u32>>; + let mut _2: std::vec::Vec<u32>; scope 1 { - debug _x => _1; // in scope 1 at $DIR/inline_into_box_place.rs:+1:9: +1:11 + debug _x => _1; } -+ scope 2 (inlined Vec::<u32>::new) { // at $DIR/inline_into_box_place.rs:8:38: 8:48 -+ let mut _3: alloc::raw_vec::RawVec<u32>; // in scope 2 at $SRC_DIR/alloc/src/vec/mod.rs:LL:COL ++ scope 2 (inlined Vec::<u32>::new) { ++ let mut _3: alloc::raw_vec::RawVec<u32>; + } -+ scope 3 (inlined Box::<Vec<u32>>::new) { // at $DIR/inline_into_box_place.rs:8:29: 8:49 -+ debug x => _2; // in scope 3 at $SRC_DIR/alloc/src/boxed.rs:LL:COL -+ let mut _4: usize; // in scope 3 at $SRC_DIR/alloc/src/boxed.rs:LL:COL -+ let mut _5: usize; // in scope 3 at $SRC_DIR/alloc/src/boxed.rs:LL:COL -+ let mut _6: *mut u8; // in scope 3 at $SRC_DIR/alloc/src/boxed.rs:LL:COL -+ let mut _7: *const std::vec::Vec<u32>; // in scope 3 at $SRC_DIR/alloc/src/boxed.rs:LL:COL ++ scope 3 (inlined Box::<Vec<u32>>::new) { ++ debug x => _2; ++ let mut _4: usize; ++ let mut _5: usize; ++ let mut _6: *mut u8; ++ let mut _7: *const std::vec::Vec<u32>; + scope 4 { + } + } bb0: { - StorageLive(_1); // scope 0 at $DIR/inline_into_box_place.rs:+1:9: +1:11 - StorageLive(_2); // scope 0 at $DIR/inline_into_box_place.rs:+1:38: +1:48 -- _2 = Vec::<u32>::new() -> bb1; // scope 0 at $DIR/inline_into_box_place.rs:+1:38: +1:48 -+ StorageLive(_3); // scope 2 at $SRC_DIR/alloc/src/vec/mod.rs:LL:COL -+ _3 = const _; // scope 2 at $SRC_DIR/alloc/src/vec/mod.rs:LL:COL - // mir::Constant -- // + span: $DIR/inline_into_box_place.rs:8:38: 8:46 -- // + user_ty: UserType(2) -- // + literal: Const { ty: fn() -> Vec<u32> {Vec::<u32>::new}, val: Value(<ZST>) } -+ // + span: $SRC_DIR/alloc/src/vec/mod.rs:LL:COL -+ // + user_ty: UserType(0) -+ // + literal: Const { ty: alloc::raw_vec::RawVec<u32>, val: Unevaluated(alloc::raw_vec::RawVec::<T>::NEW, [u32], None) } -+ _2 = Vec::<u32> { buf: move _3, len: const 0_usize }; // scope 2 at $SRC_DIR/alloc/src/vec/mod.rs:LL:COL -+ StorageDead(_3); // scope 2 at $SRC_DIR/alloc/src/vec/mod.rs:LL:COL -+ _4 = SizeOf(std::vec::Vec<u32>); // scope 4 at $SRC_DIR/alloc/src/boxed.rs:LL:COL -+ _5 = AlignOf(std::vec::Vec<u32>); // scope 4 at $SRC_DIR/alloc/src/boxed.rs:LL:COL -+ _6 = alloc::alloc::exchange_malloc(move _4, move _5) -> [return: bb3, unwind: bb4]; // scope 4 at $SRC_DIR/alloc/src/boxed.rs:LL:COL -+ // mir::Constant -+ // + span: $SRC_DIR/alloc/src/boxed.rs:LL:COL -+ // + literal: Const { ty: unsafe fn(usize, usize) -> *mut u8 {alloc::alloc::exchange_malloc}, val: Value(<ZST>) } + StorageLive(_1); + StorageLive(_2); +- _2 = Vec::<u32>::new() -> bb1; ++ StorageLive(_3); ++ _3 = const _; ++ _2 = Vec::<u32> { buf: move _3, len: const 0_usize }; ++ StorageDead(_3); ++ _4 = SizeOf(std::vec::Vec<u32>); ++ _5 = AlignOf(std::vec::Vec<u32>); ++ _6 = alloc::alloc::exchange_malloc(move _4, move _5) -> [return: bb3, unwind: bb4]; } bb1: { -- _1 = Box::<Vec<u32>>::new(move _2) -> [return: bb2, unwind: bb4]; // scope 0 at $DIR/inline_into_box_place.rs:+1:29: +1:49 -- // mir::Constant -- // + span: $DIR/inline_into_box_place.rs:8:29: 8:37 -- // + user_ty: UserType(1) -- // + literal: Const { ty: fn(Vec<u32>) -> Box<Vec<u32>> {Box::<Vec<u32>>::new}, val: Value(<ZST>) } -+ StorageDead(_1); // scope 0 at $DIR/inline_into_box_place.rs:+2:1: +2:2 -+ return; // scope 0 at $DIR/inline_into_box_place.rs:+2:2: +2:2 +- _1 = Box::<Vec<u32>>::new(move _2) -> [return: bb2, unwind: bb4]; ++ StorageDead(_1); ++ return; } - bb2: { -- StorageDead(_2); // scope 0 at $DIR/inline_into_box_place.rs:+1:48: +1:49 -- _0 = const (); // scope 0 at $DIR/inline_into_box_place.rs:+0:11: +2:2 -- drop(_1) -> [return: bb3, unwind: bb4]; // scope 0 at $DIR/inline_into_box_place.rs:+2:1: +2:2 +- StorageDead(_2); +- _0 = const (); +- drop(_1) -> [return: bb3, unwind: bb4]; + bb2 (cleanup): { -+ resume; // scope 0 at $DIR/inline_into_box_place.rs:+0:1: +2:2 ++ resume; } bb3: { -- StorageDead(_1); // scope 0 at $DIR/inline_into_box_place.rs:+2:1: +2:2 -- return; // scope 0 at $DIR/inline_into_box_place.rs:+2:2: +2:2 -+ _1 = ShallowInitBox(move _6, std::vec::Vec<u32>); // scope 3 at $SRC_DIR/alloc/src/boxed.rs:LL:COL -+ _7 = (((_1.0: std::ptr::Unique<std::vec::Vec<u32>>).0: std::ptr::NonNull<std::vec::Vec<u32>>).0: *const std::vec::Vec<u32>); // scope 3 at $SRC_DIR/alloc/src/boxed.rs:LL:COL -+ (*_7) = move _2; // scope 3 at $SRC_DIR/alloc/src/boxed.rs:LL:COL -+ StorageDead(_2); // scope 0 at $DIR/inline_into_box_place.rs:+1:48: +1:49 -+ _0 = const (); // scope 0 at $DIR/inline_into_box_place.rs:+0:11: +2:2 -+ drop(_1) -> [return: bb1, unwind: bb2]; // scope 0 at $DIR/inline_into_box_place.rs:+2:1: +2:2 +- StorageDead(_1); +- return; ++ _1 = ShallowInitBox(move _6, std::vec::Vec<u32>); ++ _7 = (((_1.0: std::ptr::Unique<std::vec::Vec<u32>>).0: std::ptr::NonNull<std::vec::Vec<u32>>).0: *const std::vec::Vec<u32>); ++ (*_7) = move _2; ++ StorageDead(_2); ++ _0 = const (); ++ drop(_1) -> [return: bb1, unwind: bb2]; } bb4 (cleanup): { -- resume; // scope 0 at $DIR/inline_into_box_place.rs:+0:1: +2:2 -+ drop(_2) -> [return: bb2, unwind terminate]; // scope 3 at $SRC_DIR/alloc/src/boxed.rs:LL:COL +- resume; ++ drop(_2) -> [return: bb2, unwind terminate]; } } |
