Update MIR opt tests
This commit is contained in:
parent
9185bb3061
commit
43fce075d3
14 changed files with 83 additions and 125 deletions
|
|
@ -21,13 +21,13 @@ fn main() {
|
|||
// END RUST SOURCE
|
||||
|
||||
// START rustc.norm2.InstCombine.before.mir
|
||||
// _5 = Len(_1);
|
||||
// _4 = Len(_1);
|
||||
// ...
|
||||
// _10 = Len(_1);
|
||||
// _8 = Len(_1);
|
||||
// END rustc.norm2.InstCombine.before.mir
|
||||
|
||||
// START rustc.norm2.InstCombine.after.mir
|
||||
// _5 = const 2usize;
|
||||
// _4 = const 2usize;
|
||||
// ...
|
||||
// _10 = const 2usize;
|
||||
// _8 = const 2usize;
|
||||
// END rustc.norm2.InstCombine.after.mir
|
||||
|
|
|
|||
|
|
@ -22,12 +22,9 @@ fn main() {
|
|||
// START rustc.test.CopyPropagation.before.mir
|
||||
// bb0: {
|
||||
// ...
|
||||
// _3 = _1;
|
||||
// _2 = _1;
|
||||
// ...
|
||||
// _2 = move _3;
|
||||
// ...
|
||||
// _4 = _2;
|
||||
// _0 = move _4;
|
||||
// _0 = _2;
|
||||
// ...
|
||||
// return;
|
||||
// }
|
||||
|
|
@ -35,7 +32,7 @@ fn main() {
|
|||
// START rustc.test.CopyPropagation.after.mir
|
||||
// bb0: {
|
||||
// ...
|
||||
// _0 = move _1;
|
||||
// _0 = _1;
|
||||
// ...
|
||||
// return;
|
||||
// }
|
||||
|
|
|
|||
|
|
@ -117,13 +117,11 @@ fn main() {
|
|||
// START rustc.arg_src.CopyPropagation.before.mir
|
||||
// bb0: {
|
||||
// ...
|
||||
// _3 = _1;
|
||||
// _2 = move _3;
|
||||
// _2 = _1;
|
||||
// ...
|
||||
// _1 = const 123i32;
|
||||
// ...
|
||||
// _4 = _2;
|
||||
// _0 = move _4;
|
||||
// _0 = _2;
|
||||
// ...
|
||||
// return;
|
||||
// }
|
||||
|
|
@ -131,11 +129,11 @@ fn main() {
|
|||
// START rustc.arg_src.CopyPropagation.after.mir
|
||||
// bb0: {
|
||||
// ...
|
||||
// _3 = _1;
|
||||
// _2 = _1;
|
||||
// ...
|
||||
// _1 = const 123i32;
|
||||
// ...
|
||||
// _0 = move _3;
|
||||
// _0 = _2;
|
||||
// ...
|
||||
// return;
|
||||
// }
|
||||
|
|
|
|||
|
|
@ -68,13 +68,9 @@ fn foo<F>(f: F) where F: FnOnce() -> i32 {
|
|||
// START rustc.main-{{closure}}.SimplifyCfg-qualify-consts.after.mir
|
||||
// fn main::{{closure}}(_1: [closure@NodeId(18) d:&'14s D]) -> i32 {
|
||||
// let mut _0: i32;
|
||||
// let mut _2: i32;
|
||||
//
|
||||
// bb0: {
|
||||
// StorageLive(_2);
|
||||
// _2 = ((*(_1.0: &'14s D)).0: i32);
|
||||
// _0 = move _2;
|
||||
// StorageDead(_2);
|
||||
// _0 = ((*(_1.0: &'14s D)).0: i32);
|
||||
// return;
|
||||
// }
|
||||
// END rustc.main-{{closure}}.SimplifyCfg-qualify-consts.after.mir
|
||||
|
|
|
|||
|
|
@ -70,14 +70,10 @@ fn foo<F>(f: F) where F: FnOnce() -> i32 {
|
|||
// ...
|
||||
// let _2: &'16_0rs D;
|
||||
// ...
|
||||
// let mut _3: i32;
|
||||
// bb0: {
|
||||
// StorageLive(_2);
|
||||
// _2 = &'16_0rs (*(_1.0: &'19s D));
|
||||
// StorageLive(_3);
|
||||
// _3 = ((*_2).0: i32);
|
||||
// _0 = move _3;
|
||||
// StorageDead(_3);
|
||||
// _0 = ((*_2).0: i32);
|
||||
// EndRegion('16_0rs);
|
||||
// StorageDead(_2);
|
||||
// return;
|
||||
|
|
|
|||
|
|
@ -78,14 +78,10 @@ fn foo<F>(f: F) where F: FnOnce() -> i32 {
|
|||
// ...
|
||||
// let _2: &'16_0rs D;
|
||||
// ...
|
||||
// let mut _3: i32;
|
||||
// bb0: {
|
||||
// StorageLive(_2);
|
||||
// _2 = &'16_0rs (_1.0: D);
|
||||
// StorageLive(_3);
|
||||
// _3 = ((*_2).0: i32);
|
||||
// _0 = move _3;
|
||||
// StorageDead(_3);
|
||||
// _0 = ((*_2).0: i32);
|
||||
// EndRegion('16_0rs);
|
||||
// StorageDead(_2);
|
||||
// drop(_1) -> [return: bb2, unwind: bb1];
|
||||
|
|
|
|||
|
|
@ -76,13 +76,9 @@ fn foo<F>(f: F) where F: FnOnce() -> i32 {
|
|||
// START rustc.main-{{closure}}.SimplifyCfg-qualify-consts.after.mir
|
||||
// fn main::{{closure}}(_1: [closure@NodeId(22) r:&'19s D]) -> i32 {
|
||||
// let mut _0: i32;
|
||||
// let mut _2: i32;
|
||||
//
|
||||
// bb0: {
|
||||
// StorageLive(_2);
|
||||
// _2 = ((*(_1.0: &'21_1rs D)).0: i32);
|
||||
// _0 = move _2;
|
||||
// StorageDead(_2);
|
||||
// _0 = ((*(_1.0: &'21_1rs D)).0: i32);
|
||||
// return;
|
||||
// }
|
||||
// }
|
||||
|
|
|
|||
|
|
@ -65,52 +65,45 @@ unsafe impl<'a, #[may_dangle] 'b> Drop for D1<'a, 'b> {
|
|||
|
||||
// START rustc.main.QualifyAndPromoteConstants.before.mir
|
||||
// fn main() -> () {
|
||||
// let mut _0: ();
|
||||
// let mut _0: ();
|
||||
// let mut _1: &'12ds S1;
|
||||
// let mut _2: &'12ds S1;
|
||||
// let mut _3: D1<'12ds, '10s>;
|
||||
// let mut _2: D1<'12ds, '10s>;
|
||||
// let mut _3: &'12ds S1;
|
||||
// let mut _4: &'12ds S1;
|
||||
// let mut _5: &'12ds S1;
|
||||
// let mut _6: S1;
|
||||
// let mut _5: S1;
|
||||
// let mut _6: &'10s S1;
|
||||
// let mut _7: &'10s S1;
|
||||
// let mut _8: &'10s S1;
|
||||
// let mut _9: S1;
|
||||
//
|
||||
// let mut _8: S1;
|
||||
// bb0: {
|
||||
// StorageLive(_2);
|
||||
// StorageLive(_3);
|
||||
// StorageLive(_4);
|
||||
// StorageLive(_5);
|
||||
// _5 = S1::{{constructor}}(const "ex1",);
|
||||
// _4 = &'12ds _5;
|
||||
// _3 = &'12ds (*_4);
|
||||
// StorageLive(_6);
|
||||
// _6 = S1::{{constructor}}(const "ex1",);
|
||||
// _5 = &'12ds _6;
|
||||
// _4 = &'12ds (*_5);
|
||||
// StorageLive(_7);
|
||||
// StorageLive(_8);
|
||||
// StorageLive(_9);
|
||||
// _9 = S1::{{constructor}}(const "dang1",);
|
||||
// _8 = &'10s _9;
|
||||
// _7 = &'10s (*_8);
|
||||
// _3 = D1<'12ds, '10s>::{{constructor}}(move _4, move _7);
|
||||
// _8 = S1::{{constructor}}(const "dang1",);
|
||||
// _7 = &'10s _8;
|
||||
// _6 = &'10s (*_7);
|
||||
// _2 = D1<'12ds, '10s>::{{constructor}}(move _3, move _6);
|
||||
// EndRegion('10s);
|
||||
// StorageDead(_7);
|
||||
// StorageDead(_4);
|
||||
// _2 = (_3.0: &'12ds S1);
|
||||
// _1 = move _2;
|
||||
// StorageDead(_2);
|
||||
// drop(_3) -> [return: bb2, unwind: bb1];
|
||||
// StorageDead(_6);
|
||||
// StorageDead(_3);
|
||||
// _1 = (_2.0: &'12ds S1);
|
||||
// drop(_2) -> [return: bb2, unwind: bb1];
|
||||
// }
|
||||
//
|
||||
// bb1: {
|
||||
// resume;
|
||||
// }
|
||||
//
|
||||
// bb2: {
|
||||
// StorageDead(_3);
|
||||
// StorageDead(_2);
|
||||
// StorageDead(_7);
|
||||
// StorageDead(_8);
|
||||
// StorageDead(_9);
|
||||
// StorageDead(_4);
|
||||
// StorageDead(_5);
|
||||
// StorageDead(_6);
|
||||
// EndRegion('12ds);
|
||||
// _0 = ();
|
||||
// return;
|
||||
|
|
@ -119,51 +112,44 @@ unsafe impl<'a, #[may_dangle] 'b> Drop for D1<'a, 'b> {
|
|||
// END rustc.main.QualifyAndPromoteConstants.before.mir
|
||||
|
||||
// START rustc.main.QualifyAndPromoteConstants.after.mir
|
||||
// fn main() -> () {
|
||||
// fn main() -> (){
|
||||
// let mut _0: ();
|
||||
// let mut _1: &'12ds S1;
|
||||
// let mut _2: &'12ds S1;
|
||||
// let mut _3: D1<'12ds, '10s>;
|
||||
// let mut _2: D1<'12ds, '10s>;
|
||||
// let mut _3: &'12ds S1;
|
||||
// let mut _4: &'12ds S1;
|
||||
// let mut _5: &'12ds S1;
|
||||
// let mut _6: S1;
|
||||
// let mut _5: S1;
|
||||
// let mut _6: &'10s S1;
|
||||
// let mut _7: &'10s S1;
|
||||
// let mut _8: &'10s S1;
|
||||
// let mut _9: S1;
|
||||
// let mut _10: &'10s S1;
|
||||
// let mut _11: &'12ds S1;
|
||||
//
|
||||
// let mut _8: S1;
|
||||
// let mut _9: &'10s S1;
|
||||
// let mut _10: &'12ds S1;
|
||||
// bb0: {
|
||||
// StorageLive(_2);
|
||||
// StorageLive(_3);
|
||||
// StorageLive(_4);
|
||||
// StorageLive(_5);
|
||||
// _11 = promoted[1];
|
||||
// _5 = &'12ds (*_11);
|
||||
// _4 = &'12ds (*_5);
|
||||
// _10 = promoted[1];
|
||||
// _4 = &'12ds (*_10);
|
||||
// _3 = &'12ds (*_4);
|
||||
// StorageLive(_6);
|
||||
// StorageLive(_7);
|
||||
// StorageLive(_8);
|
||||
// _10 = promoted[0];
|
||||
// _8 = &'10s (*_10);
|
||||
// _7 = &'10s (*_8);
|
||||
// _3 = D1<'12ds, '10s>::{{constructor}}(move _4, move _7);
|
||||
// _9 = promoted[0];
|
||||
// _7 = &'10s (*_9);
|
||||
// _6 = &'10s (*_7);
|
||||
// _2 = D1<'12ds, '10s>::{{constructor}}(move _3, move _6);
|
||||
// EndRegion('10s);
|
||||
// StorageDead(_7);
|
||||
// StorageDead(_4);
|
||||
// _2 = (_3.0: &'12ds S1);
|
||||
// _1 = move _2;
|
||||
// StorageDead(_2);
|
||||
// drop(_3) -> [return: bb2, unwind: bb1];
|
||||
// StorageDead(_6);
|
||||
// StorageDead(_3);
|
||||
// _1 = (_2.0: &'12ds S1);
|
||||
// drop(_2) -> [return: bb2, unwind: bb1];
|
||||
// }
|
||||
//
|
||||
// bb1: {
|
||||
// resume;
|
||||
// }
|
||||
//
|
||||
// bb2: {
|
||||
// StorageDead(_3);
|
||||
// StorageDead(_8);
|
||||
// StorageDead(_5);
|
||||
// StorageDead(_2);
|
||||
// StorageDead(_7);
|
||||
// StorageDead(_4);
|
||||
// EndRegion('12ds);
|
||||
// _0 = ();
|
||||
// return;
|
||||
|
|
|
|||
|
|
@ -38,11 +38,9 @@ fn foo<T: Copy>(_t: T, q: &i32) -> i32 {
|
|||
// ...
|
||||
// _7 = &(*_2);
|
||||
// _5 = (move _6, move _7);
|
||||
// _9 = move (_5.0: &i32);
|
||||
// _10 = move (_5.1: &i32);
|
||||
// StorageLive(_8);
|
||||
// _8 = (*_9);
|
||||
// _0 = move _8;
|
||||
// _8 = move (_5.0: &i32);
|
||||
// _9 = move (_5.1: &i32);
|
||||
// _0 = (*_8);
|
||||
// ...
|
||||
// return;
|
||||
// }
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@ fn foo<T: Copy>(_t: T, q: i32) -> i32 {
|
|||
// _5 = (move _6, move _7);
|
||||
// _8 = move (_5.0: i32);
|
||||
// _9 = move (_5.1: i32);
|
||||
// _0 = move _8;
|
||||
// _0 = _8;
|
||||
// ...
|
||||
// return;
|
||||
// }
|
||||
|
|
|
|||
|
|
@ -182,8 +182,8 @@ fn main() {
|
|||
// ...
|
||||
// _1 = move (_13.0: i128);
|
||||
// ...
|
||||
// _17 = const 7i32 as u128 (Misc);
|
||||
// _14 = const compiler_builtins::int::shift::rust_i128_shro(_1, move _17) -> bb16;
|
||||
// _16 = const 7i32 as u128 (Misc);
|
||||
// _14 = const compiler_builtins::int::shift::rust_i128_shro(_1, move _16) -> bb16;
|
||||
// ...
|
||||
// _1 = move (_14.0: i128);
|
||||
// ...
|
||||
|
|
@ -195,8 +195,8 @@ fn main() {
|
|||
// ...
|
||||
// assert(!move (_13.1: bool), "attempt to shift left with overflow") -> bb8;
|
||||
// ...
|
||||
// _16 = const 6i32 as u128 (Misc);
|
||||
// _13 = const compiler_builtins::int::shift::rust_i128_shlo(_1, move _16) -> bb14;
|
||||
// _15 = const 6i32 as u128 (Misc);
|
||||
// _13 = const compiler_builtins::int::shift::rust_i128_shlo(_1, move _15) -> bb14;
|
||||
// ...
|
||||
// assert(!move (_14.1: bool), "attempt to shift right with overflow") -> bb9;
|
||||
// END rustc.test_signed.Lower128Bit.after.mir
|
||||
|
|
@ -218,8 +218,8 @@ fn main() {
|
|||
// ...
|
||||
// _1 = move (_7.0: u128);
|
||||
// ...
|
||||
// _11 = const 7i32 as u128 (Misc);
|
||||
// _8 = const compiler_builtins::int::shift::rust_u128_shro(_1, move _11) -> bb14;
|
||||
// _10 = const 7i32 as u128 (Misc);
|
||||
// _8 = const compiler_builtins::int::shift::rust_u128_shro(_1, move _10) -> bb14;
|
||||
// ...
|
||||
// _1 = move (_8.0: u128);
|
||||
// ...
|
||||
|
|
@ -231,8 +231,8 @@ fn main() {
|
|||
// ...
|
||||
// assert(!move (_7.1: bool), "attempt to shift left with overflow") -> bb6;
|
||||
// ...
|
||||
// _10 = const 6i32 as u128 (Misc);
|
||||
// _7 = const compiler_builtins::int::shift::rust_u128_shlo(_1, move _10) -> bb12;
|
||||
// _9 = const 6i32 as u128 (Misc);
|
||||
// _7 = const compiler_builtins::int::shift::rust_u128_shlo(_1, move _9) -> bb12;
|
||||
// ...
|
||||
// assert(!move (_8.1: bool), "attempt to shift right with overflow") -> bb7;
|
||||
// END rustc.test_unsigned.Lower128Bit.after.mir
|
||||
|
|
|
|||
|
|
@ -176,11 +176,11 @@ fn main() {
|
|||
// ...
|
||||
// _1 = const compiler_builtins::int::addsub::rust_i128_sub(_1, const 2i128) -> bb6;
|
||||
// ...
|
||||
// _11 = const 7i32 as u32 (Misc);
|
||||
// _1 = const compiler_builtins::int::shift::rust_i128_shr(_1, move _11) -> bb9;
|
||||
// _10 = const 7i32 as u32 (Misc);
|
||||
// _1 = const compiler_builtins::int::shift::rust_i128_shr(_1, move _10) -> bb9;
|
||||
// ...
|
||||
// _12 = const 6i32 as u32 (Misc);
|
||||
// _1 = const compiler_builtins::int::shift::rust_i128_shl(_1, move _12) -> bb10;
|
||||
// _11 = const 6i32 as u32 (Misc);
|
||||
// _1 = const compiler_builtins::int::shift::rust_i128_shl(_1, move _11) -> bb10;
|
||||
// END rustc.test_signed.Lower128Bit.after.mir
|
||||
|
||||
// START rustc.test_unsigned.Lower128Bit.after.mir
|
||||
|
|
@ -194,9 +194,9 @@ fn main() {
|
|||
// ...
|
||||
// _1 = const compiler_builtins::int::addsub::rust_u128_sub(_1, const 2u128) -> bb4;
|
||||
// ...
|
||||
// _5 = const 7i32 as u32 (Misc);
|
||||
// _1 = const compiler_builtins::int::shift::rust_u128_shr(_1, move _5) -> bb7;
|
||||
// _4 = const 7i32 as u32 (Misc);
|
||||
// _1 = const compiler_builtins::int::shift::rust_u128_shr(_1, move _4) -> bb7;
|
||||
// ...
|
||||
// _6 = const 6i32 as u32 (Misc);
|
||||
// _1 = const compiler_builtins::int::shift::rust_u128_shl(_1, move _6) -> bb8;
|
||||
// _5 = const 6i32 as u32 (Misc);
|
||||
// _1 = const compiler_builtins::int::shift::rust_u128_shl(_1, move _5) -> bb8;
|
||||
// END rustc.test_unsigned.Lower128Bit.after.mir
|
||||
|
|
|
|||
|
|
@ -32,9 +32,9 @@ fn main() {
|
|||
|
||||
// END RUST SOURCE
|
||||
// START rustc.main.nll.0.mir
|
||||
// | '_#2r | {bb2[0..=6], bb3[0..=1]}
|
||||
// | '_#3r | {bb2[1..=6], bb3[0..=1]}
|
||||
// | '_#4r | {bb2[5..=6], bb3[0..=1]}
|
||||
// | '_#2r | {bb2[0..=3], bb3[0..=1]}
|
||||
// | '_#3r | {bb2[1..=3], bb3[0..=1]}
|
||||
// | '_#4r | {bb2[3], bb3[0..=1]}
|
||||
// END rustc.main.nll.0.mir
|
||||
// START rustc.main.nll.0.mir
|
||||
// let _6: &'_#4r usize;
|
||||
|
|
@ -43,7 +43,5 @@ fn main() {
|
|||
// ...
|
||||
// _2 = &'_#2r _1[_3];
|
||||
// ...
|
||||
// _7 = _2;
|
||||
// ...
|
||||
// _6 = move _7;
|
||||
// _6 = _2;
|
||||
// END rustc.main.nll.0.mir
|
||||
|
|
|
|||
|
|
@ -67,10 +67,7 @@ fn main() {
|
|||
// Validate(Suspend(ReScope(Remainder(BlockRemainder { block: ItemLocalId(25), first_statement_index: 0 }))), [(*_2): i32]);
|
||||
// _3 = &ReErased (*_2);
|
||||
// Validate(Acquire, [(*_3): i32/ReScope(Remainder(BlockRemainder { block: ItemLocalId(25), first_statement_index: 0 })) (imm)]);
|
||||
// StorageLive(_4);
|
||||
// _4 = (*_3);
|
||||
// _0 = move _4;
|
||||
// StorageDead(_4);
|
||||
// _0 = (*_3);
|
||||
// EndRegion(ReScope(Remainder(BlockRemainder { block: ItemLocalId(25), first_statement_index: 0 })));
|
||||
// StorageDead(_3);
|
||||
// return;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue