blob: 1488779f93b84e827d09c587c6594d52aa6a70ae [file] [log] [blame]
// MIR for `variant_a::{closure#0}` after PreCodegen
fn variant_a::{closure#0}(_1: &mut [closure@$DIR/slice_filter.rs:7:25: 7:39], _2: &&(usize, usize, usize, usize)) -> bool {
let mut _0: bool;
let mut _3: &(usize, usize, usize, usize);
let _4: &usize;
let mut _5: &(usize, usize, usize, usize);
let _6: &usize;
let mut _7: &(usize, usize, usize, usize);
let _8: &usize;
let mut _9: &(usize, usize, usize, usize);
let _10: &usize;
let _11: &usize;
let mut _16: bool;
let mut _17: bool;
let _18: &usize;
let mut _23: bool;
let _24: &usize;
let mut _29: bool;
let mut _30: bool;
let _31: &usize;
let mut _36: bool;
let mut _37: &&usize;
let mut _38: &&usize;
let mut _39: &&usize;
let mut _40: &&usize;
let mut _41: &&usize;
let mut _42: &&usize;
let mut _43: &&usize;
let mut _44: &&usize;
scope 1 {
debug a => _4;
debug b => _6;
debug c => _8;
debug d => _10;
scope 2 (inlined cmp::impls::<impl PartialOrd for &usize>::le) {
debug self => _37;
debug other => _38;
let mut _12: &usize;
let mut _13: &usize;
scope 3 (inlined cmp::impls::<impl PartialOrd for usize>::le) {
debug self => _12;
debug other => _13;
let mut _14: usize;
let mut _15: usize;
}
}
scope 4 (inlined cmp::impls::<impl PartialOrd for &usize>::le) {
debug self => _41;
debug other => _42;
let mut _25: &usize;
let mut _26: &usize;
scope 5 (inlined cmp::impls::<impl PartialOrd for usize>::le) {
debug self => _25;
debug other => _26;
let mut _27: usize;
let mut _28: usize;
}
}
scope 6 (inlined cmp::impls::<impl PartialOrd for &usize>::le) {
debug self => _39;
debug other => _40;
let mut _19: &usize;
let mut _20: &usize;
scope 7 (inlined cmp::impls::<impl PartialOrd for usize>::le) {
debug self => _19;
debug other => _20;
let mut _21: usize;
let mut _22: usize;
}
}
scope 8 (inlined cmp::impls::<impl PartialOrd for &usize>::le) {
debug self => _43;
debug other => _44;
let mut _32: &usize;
let mut _33: &usize;
scope 9 (inlined cmp::impls::<impl PartialOrd for usize>::le) {
debug self => _32;
debug other => _33;
let mut _34: usize;
let mut _35: usize;
}
}
}
bb0: {
StorageLive(_4);
_3 = deref_copy (*_2);
_4 = &((*_3).0: usize);
StorageLive(_6);
_5 = deref_copy (*_2);
_6 = &((*_5).1: usize);
StorageLive(_8);
_7 = deref_copy (*_2);
_8 = &((*_7).2: usize);
StorageLive(_10);
_9 = deref_copy (*_2);
_10 = &((*_9).3: usize);
StorageLive(_17);
StorageLive(_16);
StorageLive(_37);
StorageLive(_38);
StorageLive(_11);
_11 = _8;
_12 = deref_copy _4;
_13 = deref_copy _11;
StorageLive(_14);
_14 = (*_12);
StorageLive(_15);
_15 = (*_13);
_16 = Le(move _14, move _15);
StorageDead(_15);
StorageDead(_14);
StorageDead(_11);
StorageDead(_38);
StorageDead(_37);
switchInt(move _16) -> [0: bb1, otherwise: bb2];
}
bb1: {
_17 = const false;
goto -> bb3;
}
bb2: {
StorageLive(_23);
StorageLive(_39);
StorageLive(_40);
StorageLive(_18);
_18 = _6;
_19 = deref_copy _10;
_20 = deref_copy _18;
StorageLive(_21);
_21 = (*_19);
StorageLive(_22);
_22 = (*_20);
_23 = Le(move _21, move _22);
StorageDead(_22);
StorageDead(_21);
StorageDead(_18);
StorageDead(_40);
StorageDead(_39);
_17 = move _23;
goto -> bb3;
}
bb3: {
StorageDead(_23);
StorageDead(_16);
switchInt(move _17) -> [0: bb4, otherwise: bb8];
}
bb4: {
StorageLive(_30);
StorageLive(_29);
StorageLive(_41);
StorageLive(_42);
StorageLive(_24);
_24 = _4;
_25 = deref_copy _8;
_26 = deref_copy _24;
StorageLive(_27);
_27 = (*_25);
StorageLive(_28);
_28 = (*_26);
_29 = Le(move _27, move _28);
StorageDead(_28);
StorageDead(_27);
StorageDead(_24);
StorageDead(_42);
StorageDead(_41);
switchInt(move _29) -> [0: bb5, otherwise: bb6];
}
bb5: {
_30 = const false;
goto -> bb7;
}
bb6: {
StorageLive(_36);
StorageLive(_43);
StorageLive(_44);
StorageLive(_31);
_31 = _10;
_32 = deref_copy _6;
_33 = deref_copy _31;
StorageLive(_34);
_34 = (*_32);
StorageLive(_35);
_35 = (*_33);
_36 = Le(move _34, move _35);
StorageDead(_35);
StorageDead(_34);
StorageDead(_31);
StorageDead(_44);
StorageDead(_43);
_30 = move _36;
goto -> bb7;
}
bb7: {
StorageDead(_36);
StorageDead(_29);
_0 = move _30;
goto -> bb9;
}
bb8: {
_0 = const true;
goto -> bb9;
}
bb9: {
StorageDead(_30);
StorageDead(_17);
StorageDead(_10);
StorageDead(_8);
StorageDead(_6);
StorageDead(_4);
return;
}
}