1
Fork 0

Do not remove unused definitions inside GVN.

This commit is contained in:
Camille GILLOT 2023-09-16 17:13:30 +00:00
parent 2e4e2a8f28
commit d28405972f
28 changed files with 1348 additions and 1126 deletions

View file

@ -118,16 +118,11 @@ fn propagate_ssa<'tcx>(tcx: TyCtxt<'tcx>, body: &mut Body<'tcx>) {
let data = &mut body.basic_blocks.as_mut_preserves_cfg()[bb]; let data = &mut body.basic_blocks.as_mut_preserves_cfg()[bb];
state.visit_basic_block_data(bb, data); state.visit_basic_block_data(bb, data);
} }
let any_replacement = state.any_replacement;
// For each local that is reused (`y` above), we remove its storage statements do avoid any // For each local that is reused (`y` above), we remove its storage statements do avoid any
// difficulty. Those locals are SSA, so should be easy to optimize by LLVM without storage // difficulty. Those locals are SSA, so should be easy to optimize by LLVM without storage
// statements. // statements.
StorageRemover { tcx, reused_locals: state.reused_locals }.visit_body_preserves_cfg(body); StorageRemover { tcx, reused_locals: state.reused_locals }.visit_body_preserves_cfg(body);
if any_replacement {
crate::simplify::remove_unused_definitions(body);
}
} }
newtype_index! { newtype_index! {
@ -190,7 +185,6 @@ struct VnState<'body, 'tcx> {
ssa: &'body SsaLocals, ssa: &'body SsaLocals,
dominators: &'body Dominators<BasicBlock>, dominators: &'body Dominators<BasicBlock>,
reused_locals: BitSet<Local>, reused_locals: BitSet<Local>,
any_replacement: bool,
} }
impl<'body, 'tcx> VnState<'body, 'tcx> { impl<'body, 'tcx> VnState<'body, 'tcx> {
@ -212,7 +206,6 @@ impl<'body, 'tcx> VnState<'body, 'tcx> {
ssa, ssa,
dominators, dominators,
reused_locals: BitSet::new_empty(local_decls.len()), reused_locals: BitSet::new_empty(local_decls.len()),
any_replacement: false,
} }
} }
@ -324,14 +317,12 @@ impl<'body, 'tcx> VnState<'body, 'tcx> {
{ {
*place = local.into(); *place = local.into();
self.reused_locals.insert(local); self.reused_locals.insert(local);
self.any_replacement = true;
} else if place_ref.local != place.local } else if place_ref.local != place.local
|| place_ref.projection.len() < place.projection.len() || place_ref.projection.len() < place.projection.len()
{ {
// By the invariant on `place_ref`. // By the invariant on `place_ref`.
*place = place_ref.project_deeper(&[], self.tcx); *place = place_ref.project_deeper(&[], self.tcx);
self.reused_locals.insert(place_ref.local); self.reused_locals.insert(place_ref.local);
self.any_replacement = true;
} }
Some(value) Some(value)
@ -349,7 +340,6 @@ impl<'body, 'tcx> VnState<'body, 'tcx> {
let value = self.simplify_place_value(place, location)?; let value = self.simplify_place_value(place, location)?;
if let Some(const_) = self.try_as_constant(value) { if let Some(const_) = self.try_as_constant(value) {
*operand = Operand::Constant(Box::new(const_)); *operand = Operand::Constant(Box::new(const_));
self.any_replacement = true;
} }
Some(value) Some(value)
} }
@ -502,13 +492,11 @@ impl<'tcx> MutVisitor<'tcx> for VnState<'_, 'tcx> {
{ {
if let Some(const_) = self.try_as_constant(value) { if let Some(const_) = self.try_as_constant(value) {
*rvalue = Rvalue::Use(Operand::Constant(Box::new(const_))); *rvalue = Rvalue::Use(Operand::Constant(Box::new(const_)));
self.any_replacement = true;
} else if let Some(local) = self.try_as_local(value, location) } else if let Some(local) = self.try_as_local(value, location)
&& *rvalue != Rvalue::Use(Operand::Move(local.into())) && *rvalue != Rvalue::Use(Operand::Move(local.into()))
{ {
*rvalue = Rvalue::Use(Operand::Copy(local.into())); *rvalue = Rvalue::Use(Operand::Copy(local.into()));
self.reused_locals.insert(local); self.reused_locals.insert(local);
self.any_replacement = true;
} }
} }
} }

View file

@ -570,6 +570,7 @@ fn run_optimization_passes<'tcx>(tcx: TyCtxt<'tcx>, body: &mut Body<'tcx>) {
&separate_const_switch::SeparateConstSwitch, &separate_const_switch::SeparateConstSwitch,
&const_prop::ConstProp, &const_prop::ConstProp,
&gvn::GVN, &gvn::GVN,
&simplify::SimplifyLocals::AfterGVN,
&dataflow_const_prop::DataflowConstProp, &dataflow_const_prop::DataflowConstProp,
&const_debuginfo::ConstDebugInfo, &const_debuginfo::ConstDebugInfo,
&o1(simplify_branches::SimplifyConstCondition::AfterConstProp), &o1(simplify_branches::SimplifyConstCondition::AfterConstProp),

View file

@ -366,6 +366,7 @@ pub fn remove_dead_blocks(body: &mut Body<'_>) {
pub enum SimplifyLocals { pub enum SimplifyLocals {
BeforeConstProp, BeforeConstProp,
AfterGVN,
Final, Final,
} }
@ -373,6 +374,7 @@ impl<'tcx> MirPass<'tcx> for SimplifyLocals {
fn name(&self) -> &'static str { fn name(&self) -> &'static str {
match &self { match &self {
SimplifyLocals::BeforeConstProp => "SimplifyLocals-before-const-prop", SimplifyLocals::BeforeConstProp => "SimplifyLocals-before-const-prop",
SimplifyLocals::AfterGVN => "SimplifyLocals-after-value-numbering",
SimplifyLocals::Final => "SimplifyLocals-final", SimplifyLocals::Final => "SimplifyLocals-final",
} }
} }

View file

@ -4,12 +4,6 @@
fn main() -> () { fn main() -> () {
let mut _0: (); let mut _0: ();
let _1: u8; let _1: u8;
let mut _5: u8;
let mut _6: u8;
let mut _7: u8;
let mut _8: u8;
let mut _12: u32;
let mut _13: u32;
scope 1 { scope 1 {
- debug x => _1; - debug x => _1;
+ debug x => const 1_u8; + debug x => const 1_u8;
@ -25,34 +19,34 @@
scope 4 { scope 4 {
- debug sum => _4; - debug sum => _4;
+ debug sum => const 6_u8; + debug sum => const 6_u8;
let _9: &str; let _5: &str;
scope 5 { scope 5 {
- debug s => _9; - debug s => _5;
+ debug s => const "hello, world!"; + debug s => const "hello, world!";
let _14: bool; let _8: bool;
let _15: bool; let _9: bool;
let _16: u32; let _10: u32;
scope 6 { scope 6 {
- debug ((f: (bool, bool, u32)).0: bool) => _14; - debug ((f: (bool, bool, u32)).0: bool) => _8;
- debug ((f: (bool, bool, u32)).1: bool) => _15; - debug ((f: (bool, bool, u32)).1: bool) => _9;
- debug ((f: (bool, bool, u32)).2: u32) => _16; - debug ((f: (bool, bool, u32)).2: u32) => _10;
+ debug ((f: (bool, bool, u32)).0: bool) => const true; + debug ((f: (bool, bool, u32)).0: bool) => const true;
+ debug ((f: (bool, bool, u32)).1: bool) => const false; + debug ((f: (bool, bool, u32)).1: bool) => const false;
+ debug ((f: (bool, bool, u32)).2: u32) => const 123_u32; + debug ((f: (bool, bool, u32)).2: u32) => const 123_u32;
let _10: std::option::Option<u16>; let _6: std::option::Option<u16>;
scope 7 { scope 7 {
- debug o => _10; - debug o => _6;
+ debug o => const Option::<u16>::Some(99_u16); + debug o => const Option::<u16>::Some(99_u16);
let _17: u32; let _11: u32;
let _18: u32; let _12: u32;
scope 8 { scope 8 {
- debug ((p: Point).0: u32) => _17; - debug ((p: Point).0: u32) => _11;
- debug ((p: Point).1: u32) => _18; - debug ((p: Point).1: u32) => _12;
+ debug ((p: Point).0: u32) => const 32_u32; + debug ((p: Point).0: u32) => const 32_u32;
+ debug ((p: Point).1: u32) => const 32_u32; + debug ((p: Point).1: u32) => const 32_u32;
let _11: u32; let _7: u32;
scope 9 { scope 9 {
- debug a => _11; - debug a => _7;
+ debug a => const 64_u32; + debug a => const 64_u32;
} }
} }
@ -69,30 +63,27 @@
_2 = const 2_u8; _2 = const 2_u8;
_3 = const 3_u8; _3 = const 3_u8;
StorageLive(_4); StorageLive(_4);
StorageLive(_5);
_5 = const 3_u8;
_4 = const 6_u8; _4 = const 6_u8;
StorageDead(_5); StorageLive(_5);
_5 = const "hello, world!";
StorageLive(_8);
StorageLive(_9); StorageLive(_9);
_9 = const "hello, world!";
StorageLive(_14);
StorageLive(_15);
StorageLive(_16);
_14 = const true;
_15 = const false;
_16 = const 123_u32;
StorageLive(_10); StorageLive(_10);
_10 = const Option::<u16>::Some(99_u16); _8 = const true;
_17 = const 32_u32; _9 = const false;
_18 = const 32_u32; _10 = const 123_u32;
StorageLive(_11); StorageLive(_6);
_11 = const 64_u32; _6 = const Option::<u16>::Some(99_u16);
StorageDead(_11); _11 = const 32_u32;
StorageDead(_10); _12 = const 32_u32;
StorageDead(_14); StorageLive(_7);
StorageDead(_15); _7 = const 64_u32;
StorageDead(_16); StorageDead(_7);
StorageDead(_6);
StorageDead(_8);
StorageDead(_9); StorageDead(_9);
StorageDead(_10);
StorageDead(_5);
StorageDead(_4); StorageDead(_4);
return; return;
} }

View file

@ -67,11 +67,11 @@
bb0: { bb0: {
StorageLive(_2); StorageLive(_2);
StorageLive(_3); StorageLive(_3);
- StorageLive(_4); StorageLive(_4);
- _4 = _1; _4 = _1;
- _3 = Add(move _4, const 0_u64); - _3 = Add(move _4, const 0_u64);
- StorageDead(_4);
+ _3 = Add(_1, const 0_u64); + _3 = Add(_1, const 0_u64);
StorageDead(_4);
_2 = opaque::<u64>(move _3) -> [return: bb1, unwind unreachable]; _2 = opaque::<u64>(move _3) -> [return: bb1, unwind unreachable];
} }
@ -80,11 +80,11 @@
StorageDead(_2); StorageDead(_2);
StorageLive(_5); StorageLive(_5);
StorageLive(_6); StorageLive(_6);
- StorageLive(_7); StorageLive(_7);
- _7 = _1; _7 = _1;
- _6 = Sub(move _7, const 0_u64); - _6 = Sub(move _7, const 0_u64);
- StorageDead(_7);
+ _6 = Sub(_1, const 0_u64); + _6 = Sub(_1, const 0_u64);
StorageDead(_7);
_5 = opaque::<u64>(move _6) -> [return: bb2, unwind unreachable]; _5 = opaque::<u64>(move _6) -> [return: bb2, unwind unreachable];
} }
@ -93,11 +93,11 @@
StorageDead(_5); StorageDead(_5);
StorageLive(_8); StorageLive(_8);
StorageLive(_9); StorageLive(_9);
- StorageLive(_10); StorageLive(_10);
- _10 = _1; _10 = _1;
- _9 = Mul(move _10, const 0_u64); - _9 = Mul(move _10, const 0_u64);
- StorageDead(_10);
+ _9 = Mul(_1, const 0_u64); + _9 = Mul(_1, const 0_u64);
StorageDead(_10);
_8 = opaque::<u64>(move _9) -> [return: bb3, unwind unreachable]; _8 = opaque::<u64>(move _9) -> [return: bb3, unwind unreachable];
} }
@ -106,11 +106,11 @@
StorageDead(_8); StorageDead(_8);
StorageLive(_11); StorageLive(_11);
StorageLive(_12); StorageLive(_12);
- StorageLive(_13); StorageLive(_13);
- _13 = _1; _13 = _1;
- _12 = Mul(move _13, const 1_u64); - _12 = Mul(move _13, const 1_u64);
- StorageDead(_13);
+ _12 = Mul(_1, const 1_u64); + _12 = Mul(_1, const 1_u64);
StorageDead(_13);
_11 = opaque::<u64>(move _12) -> [return: bb4, unwind unreachable]; _11 = opaque::<u64>(move _12) -> [return: bb4, unwind unreachable];
} }
@ -119,8 +119,8 @@
StorageDead(_11); StorageDead(_11);
StorageLive(_14); StorageLive(_14);
StorageLive(_15); StorageLive(_15);
- StorageLive(_16); StorageLive(_16);
- _16 = _1; _16 = _1;
_17 = Eq(const 0_u64, const 0_u64); _17 = Eq(const 0_u64, const 0_u64);
- assert(!move _17, "attempt to divide `{}` by zero", _16) -> [success: bb5, unwind unreachable]; - assert(!move _17, "attempt to divide `{}` by zero", _16) -> [success: bb5, unwind unreachable];
+ assert(!_17, "attempt to divide `{}` by zero", _1) -> [success: bb5, unwind unreachable]; + assert(!_17, "attempt to divide `{}` by zero", _1) -> [success: bb5, unwind unreachable];
@ -128,8 +128,8 @@
bb5: { bb5: {
- _15 = Div(move _16, const 0_u64); - _15 = Div(move _16, const 0_u64);
- StorageDead(_16);
+ _15 = Div(_1, const 0_u64); + _15 = Div(_1, const 0_u64);
StorageDead(_16);
_14 = opaque::<u64>(move _15) -> [return: bb6, unwind unreachable]; _14 = opaque::<u64>(move _15) -> [return: bb6, unwind unreachable];
} }
@ -138,8 +138,8 @@
StorageDead(_14); StorageDead(_14);
StorageLive(_18); StorageLive(_18);
StorageLive(_19); StorageLive(_19);
- StorageLive(_20); StorageLive(_20);
- _20 = _1; _20 = _1;
_21 = Eq(const 1_u64, const 0_u64); _21 = Eq(const 1_u64, const 0_u64);
- assert(!move _21, "attempt to divide `{}` by zero", _20) -> [success: bb7, unwind unreachable]; - assert(!move _21, "attempt to divide `{}` by zero", _20) -> [success: bb7, unwind unreachable];
+ assert(!_21, "attempt to divide `{}` by zero", _1) -> [success: bb7, unwind unreachable]; + assert(!_21, "attempt to divide `{}` by zero", _1) -> [success: bb7, unwind unreachable];
@ -147,8 +147,8 @@
bb7: { bb7: {
- _19 = Div(move _20, const 1_u64); - _19 = Div(move _20, const 1_u64);
- StorageDead(_20);
+ _19 = Div(_1, const 1_u64); + _19 = Div(_1, const 1_u64);
StorageDead(_20);
_18 = opaque::<u64>(move _19) -> [return: bb8, unwind unreachable]; _18 = opaque::<u64>(move _19) -> [return: bb8, unwind unreachable];
} }
@ -157,8 +157,8 @@
StorageDead(_18); StorageDead(_18);
StorageLive(_22); StorageLive(_22);
StorageLive(_23); StorageLive(_23);
- StorageLive(_24); StorageLive(_24);
- _24 = _1; _24 = _1;
- _25 = Eq(_24, const 0_u64); - _25 = Eq(_24, const 0_u64);
- assert(!move _25, "attempt to divide `{}` by zero", const 0_u64) -> [success: bb9, unwind unreachable]; - assert(!move _25, "attempt to divide `{}` by zero", const 0_u64) -> [success: bb9, unwind unreachable];
+ _25 = Eq(_1, const 0_u64); + _25 = Eq(_1, const 0_u64);
@ -167,8 +167,8 @@
bb9: { bb9: {
- _23 = Div(const 0_u64, move _24); - _23 = Div(const 0_u64, move _24);
- StorageDead(_24);
+ _23 = Div(const 0_u64, _1); + _23 = Div(const 0_u64, _1);
StorageDead(_24);
_22 = opaque::<u64>(move _23) -> [return: bb10, unwind unreachable]; _22 = opaque::<u64>(move _23) -> [return: bb10, unwind unreachable];
} }
@ -177,17 +177,18 @@
StorageDead(_22); StorageDead(_22);
StorageLive(_26); StorageLive(_26);
StorageLive(_27); StorageLive(_27);
- StorageLive(_28); StorageLive(_28);
- _28 = _1; _28 = _1;
- _29 = Eq(_28, const 0_u64); - _29 = Eq(_28, const 0_u64);
- assert(!move _29, "attempt to divide `{}` by zero", const 1_u64) -> [success: bb11, unwind unreachable]; - assert(!move _29, "attempt to divide `{}` by zero", const 1_u64) -> [success: bb11, unwind unreachable];
+ _29 = _25;
+ assert(!_25, "attempt to divide `{}` by zero", const 1_u64) -> [success: bb11, unwind unreachable]; + assert(!_25, "attempt to divide `{}` by zero", const 1_u64) -> [success: bb11, unwind unreachable];
} }
bb11: { bb11: {
- _27 = Div(const 1_u64, move _28); - _27 = Div(const 1_u64, move _28);
- StorageDead(_28);
+ _27 = Div(const 1_u64, _1); + _27 = Div(const 1_u64, _1);
StorageDead(_28);
_26 = opaque::<u64>(move _27) -> [return: bb12, unwind unreachable]; _26 = opaque::<u64>(move _27) -> [return: bb12, unwind unreachable];
} }
@ -196,17 +197,18 @@
StorageDead(_26); StorageDead(_26);
StorageLive(_30); StorageLive(_30);
StorageLive(_31); StorageLive(_31);
- StorageLive(_32); StorageLive(_32);
- _32 = _1; _32 = _1;
- _33 = Eq(const 0_u64, const 0_u64); - _33 = Eq(const 0_u64, const 0_u64);
- assert(!move _33, "attempt to calculate the remainder of `{}` with a divisor of zero", _32) -> [success: bb13, unwind unreachable]; - assert(!move _33, "attempt to calculate the remainder of `{}` with a divisor of zero", _32) -> [success: bb13, unwind unreachable];
+ _33 = _17;
+ assert(!_17, "attempt to calculate the remainder of `{}` with a divisor of zero", _1) -> [success: bb13, unwind unreachable]; + assert(!_17, "attempt to calculate the remainder of `{}` with a divisor of zero", _1) -> [success: bb13, unwind unreachable];
} }
bb13: { bb13: {
- _31 = Rem(move _32, const 0_u64); - _31 = Rem(move _32, const 0_u64);
- StorageDead(_32);
+ _31 = Rem(_1, const 0_u64); + _31 = Rem(_1, const 0_u64);
StorageDead(_32);
_30 = opaque::<u64>(move _31) -> [return: bb14, unwind unreachable]; _30 = opaque::<u64>(move _31) -> [return: bb14, unwind unreachable];
} }
@ -215,17 +217,18 @@
StorageDead(_30); StorageDead(_30);
StorageLive(_34); StorageLive(_34);
StorageLive(_35); StorageLive(_35);
- StorageLive(_36); StorageLive(_36);
- _36 = _1; _36 = _1;
- _37 = Eq(const 1_u64, const 0_u64); - _37 = Eq(const 1_u64, const 0_u64);
- assert(!move _37, "attempt to calculate the remainder of `{}` with a divisor of zero", _36) -> [success: bb15, unwind unreachable]; - assert(!move _37, "attempt to calculate the remainder of `{}` with a divisor of zero", _36) -> [success: bb15, unwind unreachable];
+ _37 = _21;
+ assert(!_21, "attempt to calculate the remainder of `{}` with a divisor of zero", _1) -> [success: bb15, unwind unreachable]; + assert(!_21, "attempt to calculate the remainder of `{}` with a divisor of zero", _1) -> [success: bb15, unwind unreachable];
} }
bb15: { bb15: {
- _35 = Rem(move _36, const 1_u64); - _35 = Rem(move _36, const 1_u64);
- StorageDead(_36);
+ _35 = Rem(_1, const 1_u64); + _35 = Rem(_1, const 1_u64);
StorageDead(_36);
_34 = opaque::<u64>(move _35) -> [return: bb16, unwind unreachable]; _34 = opaque::<u64>(move _35) -> [return: bb16, unwind unreachable];
} }
@ -234,17 +237,18 @@
StorageDead(_34); StorageDead(_34);
StorageLive(_38); StorageLive(_38);
StorageLive(_39); StorageLive(_39);
- StorageLive(_40); StorageLive(_40);
- _40 = _1; _40 = _1;
- _41 = Eq(_40, const 0_u64); - _41 = Eq(_40, const 0_u64);
- assert(!move _41, "attempt to calculate the remainder of `{}` with a divisor of zero", const 0_u64) -> [success: bb17, unwind unreachable]; - assert(!move _41, "attempt to calculate the remainder of `{}` with a divisor of zero", const 0_u64) -> [success: bb17, unwind unreachable];
+ _41 = _25;
+ assert(!_25, "attempt to calculate the remainder of `{}` with a divisor of zero", const 0_u64) -> [success: bb17, unwind unreachable]; + assert(!_25, "attempt to calculate the remainder of `{}` with a divisor of zero", const 0_u64) -> [success: bb17, unwind unreachable];
} }
bb17: { bb17: {
- _39 = Rem(const 0_u64, move _40); - _39 = Rem(const 0_u64, move _40);
- StorageDead(_40);
+ _39 = Rem(const 0_u64, _1); + _39 = Rem(const 0_u64, _1);
StorageDead(_40);
_38 = opaque::<u64>(move _39) -> [return: bb18, unwind unreachable]; _38 = opaque::<u64>(move _39) -> [return: bb18, unwind unreachable];
} }
@ -253,17 +257,18 @@
StorageDead(_38); StorageDead(_38);
StorageLive(_42); StorageLive(_42);
StorageLive(_43); StorageLive(_43);
- StorageLive(_44); StorageLive(_44);
- _44 = _1; _44 = _1;
- _45 = Eq(_44, const 0_u64); - _45 = Eq(_44, const 0_u64);
- assert(!move _45, "attempt to calculate the remainder of `{}` with a divisor of zero", const 1_u64) -> [success: bb19, unwind unreachable]; - assert(!move _45, "attempt to calculate the remainder of `{}` with a divisor of zero", const 1_u64) -> [success: bb19, unwind unreachable];
+ _45 = _25;
+ assert(!_25, "attempt to calculate the remainder of `{}` with a divisor of zero", const 1_u64) -> [success: bb19, unwind unreachable]; + assert(!_25, "attempt to calculate the remainder of `{}` with a divisor of zero", const 1_u64) -> [success: bb19, unwind unreachable];
} }
bb19: { bb19: {
- _43 = Rem(const 1_u64, move _44); - _43 = Rem(const 1_u64, move _44);
- StorageDead(_44);
+ _43 = Rem(const 1_u64, _1); + _43 = Rem(const 1_u64, _1);
StorageDead(_44);
_42 = opaque::<u64>(move _43) -> [return: bb20, unwind unreachable]; _42 = opaque::<u64>(move _43) -> [return: bb20, unwind unreachable];
} }
@ -272,11 +277,11 @@
StorageDead(_42); StorageDead(_42);
StorageLive(_46); StorageLive(_46);
StorageLive(_47); StorageLive(_47);
- StorageLive(_48); StorageLive(_48);
- _48 = _1; _48 = _1;
- _47 = BitAnd(move _48, const 0_u64); - _47 = BitAnd(move _48, const 0_u64);
- StorageDead(_48);
+ _47 = BitAnd(_1, const 0_u64); + _47 = BitAnd(_1, const 0_u64);
StorageDead(_48);
_46 = opaque::<u64>(move _47) -> [return: bb21, unwind unreachable]; _46 = opaque::<u64>(move _47) -> [return: bb21, unwind unreachable];
} }
@ -285,11 +290,11 @@
StorageDead(_46); StorageDead(_46);
StorageLive(_49); StorageLive(_49);
StorageLive(_50); StorageLive(_50);
- StorageLive(_51); StorageLive(_51);
- _51 = _1; _51 = _1;
- _50 = BitOr(move _51, const 0_u64); - _50 = BitOr(move _51, const 0_u64);
- StorageDead(_51);
+ _50 = BitOr(_1, const 0_u64); + _50 = BitOr(_1, const 0_u64);
StorageDead(_51);
_49 = opaque::<u64>(move _50) -> [return: bb22, unwind unreachable]; _49 = opaque::<u64>(move _50) -> [return: bb22, unwind unreachable];
} }
@ -298,11 +303,11 @@
StorageDead(_49); StorageDead(_49);
StorageLive(_52); StorageLive(_52);
StorageLive(_53); StorageLive(_53);
- StorageLive(_54); StorageLive(_54);
- _54 = _1; _54 = _1;
- _53 = BitXor(move _54, const 0_u64); - _53 = BitXor(move _54, const 0_u64);
- StorageDead(_54);
+ _53 = BitXor(_1, const 0_u64); + _53 = BitXor(_1, const 0_u64);
StorageDead(_54);
_52 = opaque::<u64>(move _53) -> [return: bb23, unwind unreachable]; _52 = opaque::<u64>(move _53) -> [return: bb23, unwind unreachable];
} }
@ -311,11 +316,11 @@
StorageDead(_52); StorageDead(_52);
StorageLive(_55); StorageLive(_55);
StorageLive(_56); StorageLive(_56);
- StorageLive(_57); StorageLive(_57);
- _57 = _1; _57 = _1;
- _56 = Shr(move _57, const 0_i32); - _56 = Shr(move _57, const 0_i32);
- StorageDead(_57);
+ _56 = Shr(_1, const 0_i32); + _56 = Shr(_1, const 0_i32);
StorageDead(_57);
_55 = opaque::<u64>(move _56) -> [return: bb24, unwind unreachable]; _55 = opaque::<u64>(move _56) -> [return: bb24, unwind unreachable];
} }
@ -324,11 +329,11 @@
StorageDead(_55); StorageDead(_55);
StorageLive(_58); StorageLive(_58);
StorageLive(_59); StorageLive(_59);
- StorageLive(_60); StorageLive(_60);
- _60 = _1; _60 = _1;
- _59 = Shl(move _60, const 0_i32); - _59 = Shl(move _60, const 0_i32);
- StorageDead(_60);
+ _59 = Shl(_1, const 0_i32); + _59 = Shl(_1, const 0_i32);
StorageDead(_60);
_58 = opaque::<u64>(move _59) -> [return: bb25, unwind unreachable]; _58 = opaque::<u64>(move _59) -> [return: bb25, unwind unreachable];
} }

View file

@ -67,11 +67,11 @@
bb0: { bb0: {
StorageLive(_2); StorageLive(_2);
StorageLive(_3); StorageLive(_3);
- StorageLive(_4); StorageLive(_4);
- _4 = _1; _4 = _1;
- _3 = Add(move _4, const 0_u64); - _3 = Add(move _4, const 0_u64);
- StorageDead(_4);
+ _3 = Add(_1, const 0_u64); + _3 = Add(_1, const 0_u64);
StorageDead(_4);
_2 = opaque::<u64>(move _3) -> [return: bb1, unwind continue]; _2 = opaque::<u64>(move _3) -> [return: bb1, unwind continue];
} }
@ -80,11 +80,11 @@
StorageDead(_2); StorageDead(_2);
StorageLive(_5); StorageLive(_5);
StorageLive(_6); StorageLive(_6);
- StorageLive(_7); StorageLive(_7);
- _7 = _1; _7 = _1;
- _6 = Sub(move _7, const 0_u64); - _6 = Sub(move _7, const 0_u64);
- StorageDead(_7);
+ _6 = Sub(_1, const 0_u64); + _6 = Sub(_1, const 0_u64);
StorageDead(_7);
_5 = opaque::<u64>(move _6) -> [return: bb2, unwind continue]; _5 = opaque::<u64>(move _6) -> [return: bb2, unwind continue];
} }
@ -93,11 +93,11 @@
StorageDead(_5); StorageDead(_5);
StorageLive(_8); StorageLive(_8);
StorageLive(_9); StorageLive(_9);
- StorageLive(_10); StorageLive(_10);
- _10 = _1; _10 = _1;
- _9 = Mul(move _10, const 0_u64); - _9 = Mul(move _10, const 0_u64);
- StorageDead(_10);
+ _9 = Mul(_1, const 0_u64); + _9 = Mul(_1, const 0_u64);
StorageDead(_10);
_8 = opaque::<u64>(move _9) -> [return: bb3, unwind continue]; _8 = opaque::<u64>(move _9) -> [return: bb3, unwind continue];
} }
@ -106,11 +106,11 @@
StorageDead(_8); StorageDead(_8);
StorageLive(_11); StorageLive(_11);
StorageLive(_12); StorageLive(_12);
- StorageLive(_13); StorageLive(_13);
- _13 = _1; _13 = _1;
- _12 = Mul(move _13, const 1_u64); - _12 = Mul(move _13, const 1_u64);
- StorageDead(_13);
+ _12 = Mul(_1, const 1_u64); + _12 = Mul(_1, const 1_u64);
StorageDead(_13);
_11 = opaque::<u64>(move _12) -> [return: bb4, unwind continue]; _11 = opaque::<u64>(move _12) -> [return: bb4, unwind continue];
} }
@ -119,8 +119,8 @@
StorageDead(_11); StorageDead(_11);
StorageLive(_14); StorageLive(_14);
StorageLive(_15); StorageLive(_15);
- StorageLive(_16); StorageLive(_16);
- _16 = _1; _16 = _1;
_17 = Eq(const 0_u64, const 0_u64); _17 = Eq(const 0_u64, const 0_u64);
- assert(!move _17, "attempt to divide `{}` by zero", _16) -> [success: bb5, unwind continue]; - assert(!move _17, "attempt to divide `{}` by zero", _16) -> [success: bb5, unwind continue];
+ assert(!_17, "attempt to divide `{}` by zero", _1) -> [success: bb5, unwind continue]; + assert(!_17, "attempt to divide `{}` by zero", _1) -> [success: bb5, unwind continue];
@ -128,8 +128,8 @@
bb5: { bb5: {
- _15 = Div(move _16, const 0_u64); - _15 = Div(move _16, const 0_u64);
- StorageDead(_16);
+ _15 = Div(_1, const 0_u64); + _15 = Div(_1, const 0_u64);
StorageDead(_16);
_14 = opaque::<u64>(move _15) -> [return: bb6, unwind continue]; _14 = opaque::<u64>(move _15) -> [return: bb6, unwind continue];
} }
@ -138,8 +138,8 @@
StorageDead(_14); StorageDead(_14);
StorageLive(_18); StorageLive(_18);
StorageLive(_19); StorageLive(_19);
- StorageLive(_20); StorageLive(_20);
- _20 = _1; _20 = _1;
_21 = Eq(const 1_u64, const 0_u64); _21 = Eq(const 1_u64, const 0_u64);
- assert(!move _21, "attempt to divide `{}` by zero", _20) -> [success: bb7, unwind continue]; - assert(!move _21, "attempt to divide `{}` by zero", _20) -> [success: bb7, unwind continue];
+ assert(!_21, "attempt to divide `{}` by zero", _1) -> [success: bb7, unwind continue]; + assert(!_21, "attempt to divide `{}` by zero", _1) -> [success: bb7, unwind continue];
@ -147,8 +147,8 @@
bb7: { bb7: {
- _19 = Div(move _20, const 1_u64); - _19 = Div(move _20, const 1_u64);
- StorageDead(_20);
+ _19 = Div(_1, const 1_u64); + _19 = Div(_1, const 1_u64);
StorageDead(_20);
_18 = opaque::<u64>(move _19) -> [return: bb8, unwind continue]; _18 = opaque::<u64>(move _19) -> [return: bb8, unwind continue];
} }
@ -157,8 +157,8 @@
StorageDead(_18); StorageDead(_18);
StorageLive(_22); StorageLive(_22);
StorageLive(_23); StorageLive(_23);
- StorageLive(_24); StorageLive(_24);
- _24 = _1; _24 = _1;
- _25 = Eq(_24, const 0_u64); - _25 = Eq(_24, const 0_u64);
- assert(!move _25, "attempt to divide `{}` by zero", const 0_u64) -> [success: bb9, unwind continue]; - assert(!move _25, "attempt to divide `{}` by zero", const 0_u64) -> [success: bb9, unwind continue];
+ _25 = Eq(_1, const 0_u64); + _25 = Eq(_1, const 0_u64);
@ -167,8 +167,8 @@
bb9: { bb9: {
- _23 = Div(const 0_u64, move _24); - _23 = Div(const 0_u64, move _24);
- StorageDead(_24);
+ _23 = Div(const 0_u64, _1); + _23 = Div(const 0_u64, _1);
StorageDead(_24);
_22 = opaque::<u64>(move _23) -> [return: bb10, unwind continue]; _22 = opaque::<u64>(move _23) -> [return: bb10, unwind continue];
} }
@ -177,17 +177,18 @@
StorageDead(_22); StorageDead(_22);
StorageLive(_26); StorageLive(_26);
StorageLive(_27); StorageLive(_27);
- StorageLive(_28); StorageLive(_28);
- _28 = _1; _28 = _1;
- _29 = Eq(_28, const 0_u64); - _29 = Eq(_28, const 0_u64);
- assert(!move _29, "attempt to divide `{}` by zero", const 1_u64) -> [success: bb11, unwind continue]; - assert(!move _29, "attempt to divide `{}` by zero", const 1_u64) -> [success: bb11, unwind continue];
+ _29 = _25;
+ assert(!_25, "attempt to divide `{}` by zero", const 1_u64) -> [success: bb11, unwind continue]; + assert(!_25, "attempt to divide `{}` by zero", const 1_u64) -> [success: bb11, unwind continue];
} }
bb11: { bb11: {
- _27 = Div(const 1_u64, move _28); - _27 = Div(const 1_u64, move _28);
- StorageDead(_28);
+ _27 = Div(const 1_u64, _1); + _27 = Div(const 1_u64, _1);
StorageDead(_28);
_26 = opaque::<u64>(move _27) -> [return: bb12, unwind continue]; _26 = opaque::<u64>(move _27) -> [return: bb12, unwind continue];
} }
@ -196,17 +197,18 @@
StorageDead(_26); StorageDead(_26);
StorageLive(_30); StorageLive(_30);
StorageLive(_31); StorageLive(_31);
- StorageLive(_32); StorageLive(_32);
- _32 = _1; _32 = _1;
- _33 = Eq(const 0_u64, const 0_u64); - _33 = Eq(const 0_u64, const 0_u64);
- assert(!move _33, "attempt to calculate the remainder of `{}` with a divisor of zero", _32) -> [success: bb13, unwind continue]; - assert(!move _33, "attempt to calculate the remainder of `{}` with a divisor of zero", _32) -> [success: bb13, unwind continue];
+ _33 = _17;
+ assert(!_17, "attempt to calculate the remainder of `{}` with a divisor of zero", _1) -> [success: bb13, unwind continue]; + assert(!_17, "attempt to calculate the remainder of `{}` with a divisor of zero", _1) -> [success: bb13, unwind continue];
} }
bb13: { bb13: {
- _31 = Rem(move _32, const 0_u64); - _31 = Rem(move _32, const 0_u64);
- StorageDead(_32);
+ _31 = Rem(_1, const 0_u64); + _31 = Rem(_1, const 0_u64);
StorageDead(_32);
_30 = opaque::<u64>(move _31) -> [return: bb14, unwind continue]; _30 = opaque::<u64>(move _31) -> [return: bb14, unwind continue];
} }
@ -215,17 +217,18 @@
StorageDead(_30); StorageDead(_30);
StorageLive(_34); StorageLive(_34);
StorageLive(_35); StorageLive(_35);
- StorageLive(_36); StorageLive(_36);
- _36 = _1; _36 = _1;
- _37 = Eq(const 1_u64, const 0_u64); - _37 = Eq(const 1_u64, const 0_u64);
- assert(!move _37, "attempt to calculate the remainder of `{}` with a divisor of zero", _36) -> [success: bb15, unwind continue]; - assert(!move _37, "attempt to calculate the remainder of `{}` with a divisor of zero", _36) -> [success: bb15, unwind continue];
+ _37 = _21;
+ assert(!_21, "attempt to calculate the remainder of `{}` with a divisor of zero", _1) -> [success: bb15, unwind continue]; + assert(!_21, "attempt to calculate the remainder of `{}` with a divisor of zero", _1) -> [success: bb15, unwind continue];
} }
bb15: { bb15: {
- _35 = Rem(move _36, const 1_u64); - _35 = Rem(move _36, const 1_u64);
- StorageDead(_36);
+ _35 = Rem(_1, const 1_u64); + _35 = Rem(_1, const 1_u64);
StorageDead(_36);
_34 = opaque::<u64>(move _35) -> [return: bb16, unwind continue]; _34 = opaque::<u64>(move _35) -> [return: bb16, unwind continue];
} }
@ -234,17 +237,18 @@
StorageDead(_34); StorageDead(_34);
StorageLive(_38); StorageLive(_38);
StorageLive(_39); StorageLive(_39);
- StorageLive(_40); StorageLive(_40);
- _40 = _1; _40 = _1;
- _41 = Eq(_40, const 0_u64); - _41 = Eq(_40, const 0_u64);
- assert(!move _41, "attempt to calculate the remainder of `{}` with a divisor of zero", const 0_u64) -> [success: bb17, unwind continue]; - assert(!move _41, "attempt to calculate the remainder of `{}` with a divisor of zero", const 0_u64) -> [success: bb17, unwind continue];
+ _41 = _25;
+ assert(!_25, "attempt to calculate the remainder of `{}` with a divisor of zero", const 0_u64) -> [success: bb17, unwind continue]; + assert(!_25, "attempt to calculate the remainder of `{}` with a divisor of zero", const 0_u64) -> [success: bb17, unwind continue];
} }
bb17: { bb17: {
- _39 = Rem(const 0_u64, move _40); - _39 = Rem(const 0_u64, move _40);
- StorageDead(_40);
+ _39 = Rem(const 0_u64, _1); + _39 = Rem(const 0_u64, _1);
StorageDead(_40);
_38 = opaque::<u64>(move _39) -> [return: bb18, unwind continue]; _38 = opaque::<u64>(move _39) -> [return: bb18, unwind continue];
} }
@ -253,17 +257,18 @@
StorageDead(_38); StorageDead(_38);
StorageLive(_42); StorageLive(_42);
StorageLive(_43); StorageLive(_43);
- StorageLive(_44); StorageLive(_44);
- _44 = _1; _44 = _1;
- _45 = Eq(_44, const 0_u64); - _45 = Eq(_44, const 0_u64);
- assert(!move _45, "attempt to calculate the remainder of `{}` with a divisor of zero", const 1_u64) -> [success: bb19, unwind continue]; - assert(!move _45, "attempt to calculate the remainder of `{}` with a divisor of zero", const 1_u64) -> [success: bb19, unwind continue];
+ _45 = _25;
+ assert(!_25, "attempt to calculate the remainder of `{}` with a divisor of zero", const 1_u64) -> [success: bb19, unwind continue]; + assert(!_25, "attempt to calculate the remainder of `{}` with a divisor of zero", const 1_u64) -> [success: bb19, unwind continue];
} }
bb19: { bb19: {
- _43 = Rem(const 1_u64, move _44); - _43 = Rem(const 1_u64, move _44);
- StorageDead(_44);
+ _43 = Rem(const 1_u64, _1); + _43 = Rem(const 1_u64, _1);
StorageDead(_44);
_42 = opaque::<u64>(move _43) -> [return: bb20, unwind continue]; _42 = opaque::<u64>(move _43) -> [return: bb20, unwind continue];
} }
@ -272,11 +277,11 @@
StorageDead(_42); StorageDead(_42);
StorageLive(_46); StorageLive(_46);
StorageLive(_47); StorageLive(_47);
- StorageLive(_48); StorageLive(_48);
- _48 = _1; _48 = _1;
- _47 = BitAnd(move _48, const 0_u64); - _47 = BitAnd(move _48, const 0_u64);
- StorageDead(_48);
+ _47 = BitAnd(_1, const 0_u64); + _47 = BitAnd(_1, const 0_u64);
StorageDead(_48);
_46 = opaque::<u64>(move _47) -> [return: bb21, unwind continue]; _46 = opaque::<u64>(move _47) -> [return: bb21, unwind continue];
} }
@ -285,11 +290,11 @@
StorageDead(_46); StorageDead(_46);
StorageLive(_49); StorageLive(_49);
StorageLive(_50); StorageLive(_50);
- StorageLive(_51); StorageLive(_51);
- _51 = _1; _51 = _1;
- _50 = BitOr(move _51, const 0_u64); - _50 = BitOr(move _51, const 0_u64);
- StorageDead(_51);
+ _50 = BitOr(_1, const 0_u64); + _50 = BitOr(_1, const 0_u64);
StorageDead(_51);
_49 = opaque::<u64>(move _50) -> [return: bb22, unwind continue]; _49 = opaque::<u64>(move _50) -> [return: bb22, unwind continue];
} }
@ -298,11 +303,11 @@
StorageDead(_49); StorageDead(_49);
StorageLive(_52); StorageLive(_52);
StorageLive(_53); StorageLive(_53);
- StorageLive(_54); StorageLive(_54);
- _54 = _1; _54 = _1;
- _53 = BitXor(move _54, const 0_u64); - _53 = BitXor(move _54, const 0_u64);
- StorageDead(_54);
+ _53 = BitXor(_1, const 0_u64); + _53 = BitXor(_1, const 0_u64);
StorageDead(_54);
_52 = opaque::<u64>(move _53) -> [return: bb23, unwind continue]; _52 = opaque::<u64>(move _53) -> [return: bb23, unwind continue];
} }
@ -311,11 +316,11 @@
StorageDead(_52); StorageDead(_52);
StorageLive(_55); StorageLive(_55);
StorageLive(_56); StorageLive(_56);
- StorageLive(_57); StorageLive(_57);
- _57 = _1; _57 = _1;
- _56 = Shr(move _57, const 0_i32); - _56 = Shr(move _57, const 0_i32);
- StorageDead(_57);
+ _56 = Shr(_1, const 0_i32); + _56 = Shr(_1, const 0_i32);
StorageDead(_57);
_55 = opaque::<u64>(move _56) -> [return: bb24, unwind continue]; _55 = opaque::<u64>(move _56) -> [return: bb24, unwind continue];
} }
@ -324,11 +329,11 @@
StorageDead(_55); StorageDead(_55);
StorageLive(_58); StorageLive(_58);
StorageLive(_59); StorageLive(_59);
- StorageLive(_60); StorageLive(_60);
- _60 = _1; _60 = _1;
- _59 = Shl(move _60, const 0_i32); - _59 = Shl(move _60, const 0_i32);
- StorageDead(_60);
+ _59 = Shl(_1, const 0_i32); + _59 = Shl(_1, const 0_i32);
StorageDead(_60);
_58 = opaque::<u64>(move _59) -> [return: bb25, unwind continue]; _58 = opaque::<u64>(move _59) -> [return: bb25, unwind continue];
} }

View file

@ -75,8 +75,8 @@
bb0: { bb0: {
StorageLive(_2); StorageLive(_2);
StorageLive(_3); StorageLive(_3);
- StorageLive(_4); StorageLive(_4);
- _4 = _1; _4 = _1;
- _5 = CheckedAdd(_4, const 0_u64); - _5 = CheckedAdd(_4, const 0_u64);
- assert(!move (_5.1: bool), "attempt to compute `{} + {}`, which would overflow", move _4, const 0_u64) -> [success: bb1, unwind unreachable]; - assert(!move (_5.1: bool), "attempt to compute `{} + {}`, which would overflow", move _4, const 0_u64) -> [success: bb1, unwind unreachable];
+ _5 = CheckedAdd(_1, const 0_u64); + _5 = CheckedAdd(_1, const 0_u64);
@ -85,7 +85,7 @@
bb1: { bb1: {
_3 = move (_5.0: u64); _3 = move (_5.0: u64);
- StorageDead(_4); StorageDead(_4);
_2 = opaque::<u64>(move _3) -> [return: bb2, unwind unreachable]; _2 = opaque::<u64>(move _3) -> [return: bb2, unwind unreachable];
} }
@ -94,8 +94,8 @@
StorageDead(_2); StorageDead(_2);
StorageLive(_6); StorageLive(_6);
StorageLive(_7); StorageLive(_7);
- StorageLive(_8); StorageLive(_8);
- _8 = _1; _8 = _1;
- _9 = CheckedSub(_8, const 0_u64); - _9 = CheckedSub(_8, const 0_u64);
- assert(!move (_9.1: bool), "attempt to compute `{} - {}`, which would overflow", move _8, const 0_u64) -> [success: bb3, unwind unreachable]; - assert(!move (_9.1: bool), "attempt to compute `{} - {}`, which would overflow", move _8, const 0_u64) -> [success: bb3, unwind unreachable];
+ _9 = CheckedSub(_1, const 0_u64); + _9 = CheckedSub(_1, const 0_u64);
@ -104,7 +104,7 @@
bb3: { bb3: {
_7 = move (_9.0: u64); _7 = move (_9.0: u64);
- StorageDead(_8); StorageDead(_8);
_6 = opaque::<u64>(move _7) -> [return: bb4, unwind unreachable]; _6 = opaque::<u64>(move _7) -> [return: bb4, unwind unreachable];
} }
@ -113,8 +113,8 @@
StorageDead(_6); StorageDead(_6);
StorageLive(_10); StorageLive(_10);
StorageLive(_11); StorageLive(_11);
- StorageLive(_12); StorageLive(_12);
- _12 = _1; _12 = _1;
- _13 = CheckedMul(_12, const 0_u64); - _13 = CheckedMul(_12, const 0_u64);
- assert(!move (_13.1: bool), "attempt to compute `{} * {}`, which would overflow", move _12, const 0_u64) -> [success: bb5, unwind unreachable]; - assert(!move (_13.1: bool), "attempt to compute `{} * {}`, which would overflow", move _12, const 0_u64) -> [success: bb5, unwind unreachable];
+ _13 = CheckedMul(_1, const 0_u64); + _13 = CheckedMul(_1, const 0_u64);
@ -123,7 +123,7 @@
bb5: { bb5: {
_11 = move (_13.0: u64); _11 = move (_13.0: u64);
- StorageDead(_12); StorageDead(_12);
_10 = opaque::<u64>(move _11) -> [return: bb6, unwind unreachable]; _10 = opaque::<u64>(move _11) -> [return: bb6, unwind unreachable];
} }
@ -132,8 +132,8 @@
StorageDead(_10); StorageDead(_10);
StorageLive(_14); StorageLive(_14);
StorageLive(_15); StorageLive(_15);
- StorageLive(_16); StorageLive(_16);
- _16 = _1; _16 = _1;
- _17 = CheckedMul(_16, const 1_u64); - _17 = CheckedMul(_16, const 1_u64);
- assert(!move (_17.1: bool), "attempt to compute `{} * {}`, which would overflow", move _16, const 1_u64) -> [success: bb7, unwind unreachable]; - assert(!move (_17.1: bool), "attempt to compute `{} * {}`, which would overflow", move _16, const 1_u64) -> [success: bb7, unwind unreachable];
+ _17 = CheckedMul(_1, const 1_u64); + _17 = CheckedMul(_1, const 1_u64);
@ -142,7 +142,7 @@
bb7: { bb7: {
_15 = move (_17.0: u64); _15 = move (_17.0: u64);
- StorageDead(_16); StorageDead(_16);
_14 = opaque::<u64>(move _15) -> [return: bb8, unwind unreachable]; _14 = opaque::<u64>(move _15) -> [return: bb8, unwind unreachable];
} }
@ -151,8 +151,8 @@
StorageDead(_14); StorageDead(_14);
StorageLive(_18); StorageLive(_18);
StorageLive(_19); StorageLive(_19);
- StorageLive(_20); StorageLive(_20);
- _20 = _1; _20 = _1;
_21 = Eq(const 0_u64, const 0_u64); _21 = Eq(const 0_u64, const 0_u64);
- assert(!move _21, "attempt to divide `{}` by zero", _20) -> [success: bb9, unwind unreachable]; - assert(!move _21, "attempt to divide `{}` by zero", _20) -> [success: bb9, unwind unreachable];
+ assert(!_21, "attempt to divide `{}` by zero", _1) -> [success: bb9, unwind unreachable]; + assert(!_21, "attempt to divide `{}` by zero", _1) -> [success: bb9, unwind unreachable];
@ -160,8 +160,8 @@
bb9: { bb9: {
- _19 = Div(move _20, const 0_u64); - _19 = Div(move _20, const 0_u64);
- StorageDead(_20);
+ _19 = Div(_1, const 0_u64); + _19 = Div(_1, const 0_u64);
StorageDead(_20);
_18 = opaque::<u64>(move _19) -> [return: bb10, unwind unreachable]; _18 = opaque::<u64>(move _19) -> [return: bb10, unwind unreachable];
} }
@ -170,8 +170,8 @@
StorageDead(_18); StorageDead(_18);
StorageLive(_22); StorageLive(_22);
StorageLive(_23); StorageLive(_23);
- StorageLive(_24); StorageLive(_24);
- _24 = _1; _24 = _1;
_25 = Eq(const 1_u64, const 0_u64); _25 = Eq(const 1_u64, const 0_u64);
- assert(!move _25, "attempt to divide `{}` by zero", _24) -> [success: bb11, unwind unreachable]; - assert(!move _25, "attempt to divide `{}` by zero", _24) -> [success: bb11, unwind unreachable];
+ assert(!_25, "attempt to divide `{}` by zero", _1) -> [success: bb11, unwind unreachable]; + assert(!_25, "attempt to divide `{}` by zero", _1) -> [success: bb11, unwind unreachable];
@ -179,8 +179,8 @@
bb11: { bb11: {
- _23 = Div(move _24, const 1_u64); - _23 = Div(move _24, const 1_u64);
- StorageDead(_24);
+ _23 = Div(_1, const 1_u64); + _23 = Div(_1, const 1_u64);
StorageDead(_24);
_22 = opaque::<u64>(move _23) -> [return: bb12, unwind unreachable]; _22 = opaque::<u64>(move _23) -> [return: bb12, unwind unreachable];
} }
@ -189,8 +189,8 @@
StorageDead(_22); StorageDead(_22);
StorageLive(_26); StorageLive(_26);
StorageLive(_27); StorageLive(_27);
- StorageLive(_28); StorageLive(_28);
- _28 = _1; _28 = _1;
- _29 = Eq(_28, const 0_u64); - _29 = Eq(_28, const 0_u64);
- assert(!move _29, "attempt to divide `{}` by zero", const 0_u64) -> [success: bb13, unwind unreachable]; - assert(!move _29, "attempt to divide `{}` by zero", const 0_u64) -> [success: bb13, unwind unreachable];
+ _29 = Eq(_1, const 0_u64); + _29 = Eq(_1, const 0_u64);
@ -199,8 +199,8 @@
bb13: { bb13: {
- _27 = Div(const 0_u64, move _28); - _27 = Div(const 0_u64, move _28);
- StorageDead(_28);
+ _27 = Div(const 0_u64, _1); + _27 = Div(const 0_u64, _1);
StorageDead(_28);
_26 = opaque::<u64>(move _27) -> [return: bb14, unwind unreachable]; _26 = opaque::<u64>(move _27) -> [return: bb14, unwind unreachable];
} }
@ -209,17 +209,18 @@
StorageDead(_26); StorageDead(_26);
StorageLive(_30); StorageLive(_30);
StorageLive(_31); StorageLive(_31);
- StorageLive(_32); StorageLive(_32);
- _32 = _1; _32 = _1;
- _33 = Eq(_32, const 0_u64); - _33 = Eq(_32, const 0_u64);
- assert(!move _33, "attempt to divide `{}` by zero", const 1_u64) -> [success: bb15, unwind unreachable]; - assert(!move _33, "attempt to divide `{}` by zero", const 1_u64) -> [success: bb15, unwind unreachable];
+ _33 = _29;
+ assert(!_29, "attempt to divide `{}` by zero", const 1_u64) -> [success: bb15, unwind unreachable]; + assert(!_29, "attempt to divide `{}` by zero", const 1_u64) -> [success: bb15, unwind unreachable];
} }
bb15: { bb15: {
- _31 = Div(const 1_u64, move _32); - _31 = Div(const 1_u64, move _32);
- StorageDead(_32);
+ _31 = Div(const 1_u64, _1); + _31 = Div(const 1_u64, _1);
StorageDead(_32);
_30 = opaque::<u64>(move _31) -> [return: bb16, unwind unreachable]; _30 = opaque::<u64>(move _31) -> [return: bb16, unwind unreachable];
} }
@ -228,17 +229,18 @@
StorageDead(_30); StorageDead(_30);
StorageLive(_34); StorageLive(_34);
StorageLive(_35); StorageLive(_35);
- StorageLive(_36); StorageLive(_36);
- _36 = _1; _36 = _1;
- _37 = Eq(const 0_u64, const 0_u64); - _37 = Eq(const 0_u64, const 0_u64);
- assert(!move _37, "attempt to calculate the remainder of `{}` with a divisor of zero", _36) -> [success: bb17, unwind unreachable]; - assert(!move _37, "attempt to calculate the remainder of `{}` with a divisor of zero", _36) -> [success: bb17, unwind unreachable];
+ _37 = _21;
+ assert(!_21, "attempt to calculate the remainder of `{}` with a divisor of zero", _1) -> [success: bb17, unwind unreachable]; + assert(!_21, "attempt to calculate the remainder of `{}` with a divisor of zero", _1) -> [success: bb17, unwind unreachable];
} }
bb17: { bb17: {
- _35 = Rem(move _36, const 0_u64); - _35 = Rem(move _36, const 0_u64);
- StorageDead(_36);
+ _35 = Rem(_1, const 0_u64); + _35 = Rem(_1, const 0_u64);
StorageDead(_36);
_34 = opaque::<u64>(move _35) -> [return: bb18, unwind unreachable]; _34 = opaque::<u64>(move _35) -> [return: bb18, unwind unreachable];
} }
@ -247,17 +249,18 @@
StorageDead(_34); StorageDead(_34);
StorageLive(_38); StorageLive(_38);
StorageLive(_39); StorageLive(_39);
- StorageLive(_40); StorageLive(_40);
- _40 = _1; _40 = _1;
- _41 = Eq(const 1_u64, const 0_u64); - _41 = Eq(const 1_u64, const 0_u64);
- assert(!move _41, "attempt to calculate the remainder of `{}` with a divisor of zero", _40) -> [success: bb19, unwind unreachable]; - assert(!move _41, "attempt to calculate the remainder of `{}` with a divisor of zero", _40) -> [success: bb19, unwind unreachable];
+ _41 = _25;
+ assert(!_25, "attempt to calculate the remainder of `{}` with a divisor of zero", _1) -> [success: bb19, unwind unreachable]; + assert(!_25, "attempt to calculate the remainder of `{}` with a divisor of zero", _1) -> [success: bb19, unwind unreachable];
} }
bb19: { bb19: {
- _39 = Rem(move _40, const 1_u64); - _39 = Rem(move _40, const 1_u64);
- StorageDead(_40);
+ _39 = Rem(_1, const 1_u64); + _39 = Rem(_1, const 1_u64);
StorageDead(_40);
_38 = opaque::<u64>(move _39) -> [return: bb20, unwind unreachable]; _38 = opaque::<u64>(move _39) -> [return: bb20, unwind unreachable];
} }
@ -266,17 +269,18 @@
StorageDead(_38); StorageDead(_38);
StorageLive(_42); StorageLive(_42);
StorageLive(_43); StorageLive(_43);
- StorageLive(_44); StorageLive(_44);
- _44 = _1; _44 = _1;
- _45 = Eq(_44, const 0_u64); - _45 = Eq(_44, const 0_u64);
- assert(!move _45, "attempt to calculate the remainder of `{}` with a divisor of zero", const 0_u64) -> [success: bb21, unwind unreachable]; - assert(!move _45, "attempt to calculate the remainder of `{}` with a divisor of zero", const 0_u64) -> [success: bb21, unwind unreachable];
+ _45 = _29;
+ assert(!_29, "attempt to calculate the remainder of `{}` with a divisor of zero", const 0_u64) -> [success: bb21, unwind unreachable]; + assert(!_29, "attempt to calculate the remainder of `{}` with a divisor of zero", const 0_u64) -> [success: bb21, unwind unreachable];
} }
bb21: { bb21: {
- _43 = Rem(const 0_u64, move _44); - _43 = Rem(const 0_u64, move _44);
- StorageDead(_44);
+ _43 = Rem(const 0_u64, _1); + _43 = Rem(const 0_u64, _1);
StorageDead(_44);
_42 = opaque::<u64>(move _43) -> [return: bb22, unwind unreachable]; _42 = opaque::<u64>(move _43) -> [return: bb22, unwind unreachable];
} }
@ -285,17 +289,18 @@
StorageDead(_42); StorageDead(_42);
StorageLive(_46); StorageLive(_46);
StorageLive(_47); StorageLive(_47);
- StorageLive(_48); StorageLive(_48);
- _48 = _1; _48 = _1;
- _49 = Eq(_48, const 0_u64); - _49 = Eq(_48, const 0_u64);
- assert(!move _49, "attempt to calculate the remainder of `{}` with a divisor of zero", const 1_u64) -> [success: bb23, unwind unreachable]; - assert(!move _49, "attempt to calculate the remainder of `{}` with a divisor of zero", const 1_u64) -> [success: bb23, unwind unreachable];
+ _49 = _29;
+ assert(!_29, "attempt to calculate the remainder of `{}` with a divisor of zero", const 1_u64) -> [success: bb23, unwind unreachable]; + assert(!_29, "attempt to calculate the remainder of `{}` with a divisor of zero", const 1_u64) -> [success: bb23, unwind unreachable];
} }
bb23: { bb23: {
- _47 = Rem(const 1_u64, move _48); - _47 = Rem(const 1_u64, move _48);
- StorageDead(_48);
+ _47 = Rem(const 1_u64, _1); + _47 = Rem(const 1_u64, _1);
StorageDead(_48);
_46 = opaque::<u64>(move _47) -> [return: bb24, unwind unreachable]; _46 = opaque::<u64>(move _47) -> [return: bb24, unwind unreachable];
} }
@ -304,11 +309,11 @@
StorageDead(_46); StorageDead(_46);
StorageLive(_50); StorageLive(_50);
StorageLive(_51); StorageLive(_51);
- StorageLive(_52); StorageLive(_52);
- _52 = _1; _52 = _1;
- _51 = BitAnd(move _52, const 0_u64); - _51 = BitAnd(move _52, const 0_u64);
- StorageDead(_52);
+ _51 = BitAnd(_1, const 0_u64); + _51 = BitAnd(_1, const 0_u64);
StorageDead(_52);
_50 = opaque::<u64>(move _51) -> [return: bb25, unwind unreachable]; _50 = opaque::<u64>(move _51) -> [return: bb25, unwind unreachable];
} }
@ -317,11 +322,11 @@
StorageDead(_50); StorageDead(_50);
StorageLive(_53); StorageLive(_53);
StorageLive(_54); StorageLive(_54);
- StorageLive(_55); StorageLive(_55);
- _55 = _1; _55 = _1;
- _54 = BitOr(move _55, const 0_u64); - _54 = BitOr(move _55, const 0_u64);
- StorageDead(_55);
+ _54 = BitOr(_1, const 0_u64); + _54 = BitOr(_1, const 0_u64);
StorageDead(_55);
_53 = opaque::<u64>(move _54) -> [return: bb26, unwind unreachable]; _53 = opaque::<u64>(move _54) -> [return: bb26, unwind unreachable];
} }
@ -330,11 +335,11 @@
StorageDead(_53); StorageDead(_53);
StorageLive(_56); StorageLive(_56);
StorageLive(_57); StorageLive(_57);
- StorageLive(_58); StorageLive(_58);
- _58 = _1; _58 = _1;
- _57 = BitXor(move _58, const 0_u64); - _57 = BitXor(move _58, const 0_u64);
- StorageDead(_58);
+ _57 = BitXor(_1, const 0_u64); + _57 = BitXor(_1, const 0_u64);
StorageDead(_58);
_56 = opaque::<u64>(move _57) -> [return: bb27, unwind unreachable]; _56 = opaque::<u64>(move _57) -> [return: bb27, unwind unreachable];
} }
@ -343,8 +348,8 @@
StorageDead(_56); StorageDead(_56);
StorageLive(_59); StorageLive(_59);
StorageLive(_60); StorageLive(_60);
- StorageLive(_61); StorageLive(_61);
- _61 = _1; _61 = _1;
_62 = const 0_i32 as u32 (IntToInt); _62 = const 0_i32 as u32 (IntToInt);
- _63 = Lt(move _62, const 64_u32); - _63 = Lt(move _62, const 64_u32);
- assert(move _63, "attempt to shift right by `{}`, which would overflow", const 0_i32) -> [success: bb28, unwind unreachable]; - assert(move _63, "attempt to shift right by `{}`, which would overflow", const 0_i32) -> [success: bb28, unwind unreachable];
@ -354,8 +359,8 @@
bb28: { bb28: {
- _60 = Shr(move _61, const 0_i32); - _60 = Shr(move _61, const 0_i32);
- StorageDead(_61);
+ _60 = Shr(_1, const 0_i32); + _60 = Shr(_1, const 0_i32);
StorageDead(_61);
_59 = opaque::<u64>(move _60) -> [return: bb29, unwind unreachable]; _59 = opaque::<u64>(move _60) -> [return: bb29, unwind unreachable];
} }
@ -364,18 +369,20 @@
StorageDead(_59); StorageDead(_59);
StorageLive(_64); StorageLive(_64);
StorageLive(_65); StorageLive(_65);
- StorageLive(_66); StorageLive(_66);
- _66 = _1; _66 = _1;
- _67 = const 0_i32 as u32 (IntToInt); - _67 = const 0_i32 as u32 (IntToInt);
- _68 = Lt(move _67, const 64_u32); - _68 = Lt(move _67, const 64_u32);
- assert(move _68, "attempt to shift left by `{}`, which would overflow", const 0_i32) -> [success: bb30, unwind unreachable]; - assert(move _68, "attempt to shift left by `{}`, which would overflow", const 0_i32) -> [success: bb30, unwind unreachable];
+ _67 = _62;
+ _68 = _63;
+ assert(_63, "attempt to shift left by `{}`, which would overflow", const 0_i32) -> [success: bb30, unwind unreachable]; + assert(_63, "attempt to shift left by `{}`, which would overflow", const 0_i32) -> [success: bb30, unwind unreachable];
} }
bb30: { bb30: {
- _65 = Shl(move _66, const 0_i32); - _65 = Shl(move _66, const 0_i32);
- StorageDead(_66);
+ _65 = Shl(_1, const 0_i32); + _65 = Shl(_1, const 0_i32);
StorageDead(_66);
_64 = opaque::<u64>(move _65) -> [return: bb31, unwind unreachable]; _64 = opaque::<u64>(move _65) -> [return: bb31, unwind unreachable];
} }

View file

@ -75,8 +75,8 @@
bb0: { bb0: {
StorageLive(_2); StorageLive(_2);
StorageLive(_3); StorageLive(_3);
- StorageLive(_4); StorageLive(_4);
- _4 = _1; _4 = _1;
- _5 = CheckedAdd(_4, const 0_u64); - _5 = CheckedAdd(_4, const 0_u64);
- assert(!move (_5.1: bool), "attempt to compute `{} + {}`, which would overflow", move _4, const 0_u64) -> [success: bb1, unwind continue]; - assert(!move (_5.1: bool), "attempt to compute `{} + {}`, which would overflow", move _4, const 0_u64) -> [success: bb1, unwind continue];
+ _5 = CheckedAdd(_1, const 0_u64); + _5 = CheckedAdd(_1, const 0_u64);
@ -85,7 +85,7 @@
bb1: { bb1: {
_3 = move (_5.0: u64); _3 = move (_5.0: u64);
- StorageDead(_4); StorageDead(_4);
_2 = opaque::<u64>(move _3) -> [return: bb2, unwind continue]; _2 = opaque::<u64>(move _3) -> [return: bb2, unwind continue];
} }
@ -94,8 +94,8 @@
StorageDead(_2); StorageDead(_2);
StorageLive(_6); StorageLive(_6);
StorageLive(_7); StorageLive(_7);
- StorageLive(_8); StorageLive(_8);
- _8 = _1; _8 = _1;
- _9 = CheckedSub(_8, const 0_u64); - _9 = CheckedSub(_8, const 0_u64);
- assert(!move (_9.1: bool), "attempt to compute `{} - {}`, which would overflow", move _8, const 0_u64) -> [success: bb3, unwind continue]; - assert(!move (_9.1: bool), "attempt to compute `{} - {}`, which would overflow", move _8, const 0_u64) -> [success: bb3, unwind continue];
+ _9 = CheckedSub(_1, const 0_u64); + _9 = CheckedSub(_1, const 0_u64);
@ -104,7 +104,7 @@
bb3: { bb3: {
_7 = move (_9.0: u64); _7 = move (_9.0: u64);
- StorageDead(_8); StorageDead(_8);
_6 = opaque::<u64>(move _7) -> [return: bb4, unwind continue]; _6 = opaque::<u64>(move _7) -> [return: bb4, unwind continue];
} }
@ -113,8 +113,8 @@
StorageDead(_6); StorageDead(_6);
StorageLive(_10); StorageLive(_10);
StorageLive(_11); StorageLive(_11);
- StorageLive(_12); StorageLive(_12);
- _12 = _1; _12 = _1;
- _13 = CheckedMul(_12, const 0_u64); - _13 = CheckedMul(_12, const 0_u64);
- assert(!move (_13.1: bool), "attempt to compute `{} * {}`, which would overflow", move _12, const 0_u64) -> [success: bb5, unwind continue]; - assert(!move (_13.1: bool), "attempt to compute `{} * {}`, which would overflow", move _12, const 0_u64) -> [success: bb5, unwind continue];
+ _13 = CheckedMul(_1, const 0_u64); + _13 = CheckedMul(_1, const 0_u64);
@ -123,7 +123,7 @@
bb5: { bb5: {
_11 = move (_13.0: u64); _11 = move (_13.0: u64);
- StorageDead(_12); StorageDead(_12);
_10 = opaque::<u64>(move _11) -> [return: bb6, unwind continue]; _10 = opaque::<u64>(move _11) -> [return: bb6, unwind continue];
} }
@ -132,8 +132,8 @@
StorageDead(_10); StorageDead(_10);
StorageLive(_14); StorageLive(_14);
StorageLive(_15); StorageLive(_15);
- StorageLive(_16); StorageLive(_16);
- _16 = _1; _16 = _1;
- _17 = CheckedMul(_16, const 1_u64); - _17 = CheckedMul(_16, const 1_u64);
- assert(!move (_17.1: bool), "attempt to compute `{} * {}`, which would overflow", move _16, const 1_u64) -> [success: bb7, unwind continue]; - assert(!move (_17.1: bool), "attempt to compute `{} * {}`, which would overflow", move _16, const 1_u64) -> [success: bb7, unwind continue];
+ _17 = CheckedMul(_1, const 1_u64); + _17 = CheckedMul(_1, const 1_u64);
@ -142,7 +142,7 @@
bb7: { bb7: {
_15 = move (_17.0: u64); _15 = move (_17.0: u64);
- StorageDead(_16); StorageDead(_16);
_14 = opaque::<u64>(move _15) -> [return: bb8, unwind continue]; _14 = opaque::<u64>(move _15) -> [return: bb8, unwind continue];
} }
@ -151,8 +151,8 @@
StorageDead(_14); StorageDead(_14);
StorageLive(_18); StorageLive(_18);
StorageLive(_19); StorageLive(_19);
- StorageLive(_20); StorageLive(_20);
- _20 = _1; _20 = _1;
_21 = Eq(const 0_u64, const 0_u64); _21 = Eq(const 0_u64, const 0_u64);
- assert(!move _21, "attempt to divide `{}` by zero", _20) -> [success: bb9, unwind continue]; - assert(!move _21, "attempt to divide `{}` by zero", _20) -> [success: bb9, unwind continue];
+ assert(!_21, "attempt to divide `{}` by zero", _1) -> [success: bb9, unwind continue]; + assert(!_21, "attempt to divide `{}` by zero", _1) -> [success: bb9, unwind continue];
@ -160,8 +160,8 @@
bb9: { bb9: {
- _19 = Div(move _20, const 0_u64); - _19 = Div(move _20, const 0_u64);
- StorageDead(_20);
+ _19 = Div(_1, const 0_u64); + _19 = Div(_1, const 0_u64);
StorageDead(_20);
_18 = opaque::<u64>(move _19) -> [return: bb10, unwind continue]; _18 = opaque::<u64>(move _19) -> [return: bb10, unwind continue];
} }
@ -170,8 +170,8 @@
StorageDead(_18); StorageDead(_18);
StorageLive(_22); StorageLive(_22);
StorageLive(_23); StorageLive(_23);
- StorageLive(_24); StorageLive(_24);
- _24 = _1; _24 = _1;
_25 = Eq(const 1_u64, const 0_u64); _25 = Eq(const 1_u64, const 0_u64);
- assert(!move _25, "attempt to divide `{}` by zero", _24) -> [success: bb11, unwind continue]; - assert(!move _25, "attempt to divide `{}` by zero", _24) -> [success: bb11, unwind continue];
+ assert(!_25, "attempt to divide `{}` by zero", _1) -> [success: bb11, unwind continue]; + assert(!_25, "attempt to divide `{}` by zero", _1) -> [success: bb11, unwind continue];
@ -179,8 +179,8 @@
bb11: { bb11: {
- _23 = Div(move _24, const 1_u64); - _23 = Div(move _24, const 1_u64);
- StorageDead(_24);
+ _23 = Div(_1, const 1_u64); + _23 = Div(_1, const 1_u64);
StorageDead(_24);
_22 = opaque::<u64>(move _23) -> [return: bb12, unwind continue]; _22 = opaque::<u64>(move _23) -> [return: bb12, unwind continue];
} }
@ -189,8 +189,8 @@
StorageDead(_22); StorageDead(_22);
StorageLive(_26); StorageLive(_26);
StorageLive(_27); StorageLive(_27);
- StorageLive(_28); StorageLive(_28);
- _28 = _1; _28 = _1;
- _29 = Eq(_28, const 0_u64); - _29 = Eq(_28, const 0_u64);
- assert(!move _29, "attempt to divide `{}` by zero", const 0_u64) -> [success: bb13, unwind continue]; - assert(!move _29, "attempt to divide `{}` by zero", const 0_u64) -> [success: bb13, unwind continue];
+ _29 = Eq(_1, const 0_u64); + _29 = Eq(_1, const 0_u64);
@ -199,8 +199,8 @@
bb13: { bb13: {
- _27 = Div(const 0_u64, move _28); - _27 = Div(const 0_u64, move _28);
- StorageDead(_28);
+ _27 = Div(const 0_u64, _1); + _27 = Div(const 0_u64, _1);
StorageDead(_28);
_26 = opaque::<u64>(move _27) -> [return: bb14, unwind continue]; _26 = opaque::<u64>(move _27) -> [return: bb14, unwind continue];
} }
@ -209,17 +209,18 @@
StorageDead(_26); StorageDead(_26);
StorageLive(_30); StorageLive(_30);
StorageLive(_31); StorageLive(_31);
- StorageLive(_32); StorageLive(_32);
- _32 = _1; _32 = _1;
- _33 = Eq(_32, const 0_u64); - _33 = Eq(_32, const 0_u64);
- assert(!move _33, "attempt to divide `{}` by zero", const 1_u64) -> [success: bb15, unwind continue]; - assert(!move _33, "attempt to divide `{}` by zero", const 1_u64) -> [success: bb15, unwind continue];
+ _33 = _29;
+ assert(!_29, "attempt to divide `{}` by zero", const 1_u64) -> [success: bb15, unwind continue]; + assert(!_29, "attempt to divide `{}` by zero", const 1_u64) -> [success: bb15, unwind continue];
} }
bb15: { bb15: {
- _31 = Div(const 1_u64, move _32); - _31 = Div(const 1_u64, move _32);
- StorageDead(_32);
+ _31 = Div(const 1_u64, _1); + _31 = Div(const 1_u64, _1);
StorageDead(_32);
_30 = opaque::<u64>(move _31) -> [return: bb16, unwind continue]; _30 = opaque::<u64>(move _31) -> [return: bb16, unwind continue];
} }
@ -228,17 +229,18 @@
StorageDead(_30); StorageDead(_30);
StorageLive(_34); StorageLive(_34);
StorageLive(_35); StorageLive(_35);
- StorageLive(_36); StorageLive(_36);
- _36 = _1; _36 = _1;
- _37 = Eq(const 0_u64, const 0_u64); - _37 = Eq(const 0_u64, const 0_u64);
- assert(!move _37, "attempt to calculate the remainder of `{}` with a divisor of zero", _36) -> [success: bb17, unwind continue]; - assert(!move _37, "attempt to calculate the remainder of `{}` with a divisor of zero", _36) -> [success: bb17, unwind continue];
+ _37 = _21;
+ assert(!_21, "attempt to calculate the remainder of `{}` with a divisor of zero", _1) -> [success: bb17, unwind continue]; + assert(!_21, "attempt to calculate the remainder of `{}` with a divisor of zero", _1) -> [success: bb17, unwind continue];
} }
bb17: { bb17: {
- _35 = Rem(move _36, const 0_u64); - _35 = Rem(move _36, const 0_u64);
- StorageDead(_36);
+ _35 = Rem(_1, const 0_u64); + _35 = Rem(_1, const 0_u64);
StorageDead(_36);
_34 = opaque::<u64>(move _35) -> [return: bb18, unwind continue]; _34 = opaque::<u64>(move _35) -> [return: bb18, unwind continue];
} }
@ -247,17 +249,18 @@
StorageDead(_34); StorageDead(_34);
StorageLive(_38); StorageLive(_38);
StorageLive(_39); StorageLive(_39);
- StorageLive(_40); StorageLive(_40);
- _40 = _1; _40 = _1;
- _41 = Eq(const 1_u64, const 0_u64); - _41 = Eq(const 1_u64, const 0_u64);
- assert(!move _41, "attempt to calculate the remainder of `{}` with a divisor of zero", _40) -> [success: bb19, unwind continue]; - assert(!move _41, "attempt to calculate the remainder of `{}` with a divisor of zero", _40) -> [success: bb19, unwind continue];
+ _41 = _25;
+ assert(!_25, "attempt to calculate the remainder of `{}` with a divisor of zero", _1) -> [success: bb19, unwind continue]; + assert(!_25, "attempt to calculate the remainder of `{}` with a divisor of zero", _1) -> [success: bb19, unwind continue];
} }
bb19: { bb19: {
- _39 = Rem(move _40, const 1_u64); - _39 = Rem(move _40, const 1_u64);
- StorageDead(_40);
+ _39 = Rem(_1, const 1_u64); + _39 = Rem(_1, const 1_u64);
StorageDead(_40);
_38 = opaque::<u64>(move _39) -> [return: bb20, unwind continue]; _38 = opaque::<u64>(move _39) -> [return: bb20, unwind continue];
} }
@ -266,17 +269,18 @@
StorageDead(_38); StorageDead(_38);
StorageLive(_42); StorageLive(_42);
StorageLive(_43); StorageLive(_43);
- StorageLive(_44); StorageLive(_44);
- _44 = _1; _44 = _1;
- _45 = Eq(_44, const 0_u64); - _45 = Eq(_44, const 0_u64);
- assert(!move _45, "attempt to calculate the remainder of `{}` with a divisor of zero", const 0_u64) -> [success: bb21, unwind continue]; - assert(!move _45, "attempt to calculate the remainder of `{}` with a divisor of zero", const 0_u64) -> [success: bb21, unwind continue];
+ _45 = _29;
+ assert(!_29, "attempt to calculate the remainder of `{}` with a divisor of zero", const 0_u64) -> [success: bb21, unwind continue]; + assert(!_29, "attempt to calculate the remainder of `{}` with a divisor of zero", const 0_u64) -> [success: bb21, unwind continue];
} }
bb21: { bb21: {
- _43 = Rem(const 0_u64, move _44); - _43 = Rem(const 0_u64, move _44);
- StorageDead(_44);
+ _43 = Rem(const 0_u64, _1); + _43 = Rem(const 0_u64, _1);
StorageDead(_44);
_42 = opaque::<u64>(move _43) -> [return: bb22, unwind continue]; _42 = opaque::<u64>(move _43) -> [return: bb22, unwind continue];
} }
@ -285,17 +289,18 @@
StorageDead(_42); StorageDead(_42);
StorageLive(_46); StorageLive(_46);
StorageLive(_47); StorageLive(_47);
- StorageLive(_48); StorageLive(_48);
- _48 = _1; _48 = _1;
- _49 = Eq(_48, const 0_u64); - _49 = Eq(_48, const 0_u64);
- assert(!move _49, "attempt to calculate the remainder of `{}` with a divisor of zero", const 1_u64) -> [success: bb23, unwind continue]; - assert(!move _49, "attempt to calculate the remainder of `{}` with a divisor of zero", const 1_u64) -> [success: bb23, unwind continue];
+ _49 = _29;
+ assert(!_29, "attempt to calculate the remainder of `{}` with a divisor of zero", const 1_u64) -> [success: bb23, unwind continue]; + assert(!_29, "attempt to calculate the remainder of `{}` with a divisor of zero", const 1_u64) -> [success: bb23, unwind continue];
} }
bb23: { bb23: {
- _47 = Rem(const 1_u64, move _48); - _47 = Rem(const 1_u64, move _48);
- StorageDead(_48);
+ _47 = Rem(const 1_u64, _1); + _47 = Rem(const 1_u64, _1);
StorageDead(_48);
_46 = opaque::<u64>(move _47) -> [return: bb24, unwind continue]; _46 = opaque::<u64>(move _47) -> [return: bb24, unwind continue];
} }
@ -304,11 +309,11 @@
StorageDead(_46); StorageDead(_46);
StorageLive(_50); StorageLive(_50);
StorageLive(_51); StorageLive(_51);
- StorageLive(_52); StorageLive(_52);
- _52 = _1; _52 = _1;
- _51 = BitAnd(move _52, const 0_u64); - _51 = BitAnd(move _52, const 0_u64);
- StorageDead(_52);
+ _51 = BitAnd(_1, const 0_u64); + _51 = BitAnd(_1, const 0_u64);
StorageDead(_52);
_50 = opaque::<u64>(move _51) -> [return: bb25, unwind continue]; _50 = opaque::<u64>(move _51) -> [return: bb25, unwind continue];
} }
@ -317,11 +322,11 @@
StorageDead(_50); StorageDead(_50);
StorageLive(_53); StorageLive(_53);
StorageLive(_54); StorageLive(_54);
- StorageLive(_55); StorageLive(_55);
- _55 = _1; _55 = _1;
- _54 = BitOr(move _55, const 0_u64); - _54 = BitOr(move _55, const 0_u64);
- StorageDead(_55);
+ _54 = BitOr(_1, const 0_u64); + _54 = BitOr(_1, const 0_u64);
StorageDead(_55);
_53 = opaque::<u64>(move _54) -> [return: bb26, unwind continue]; _53 = opaque::<u64>(move _54) -> [return: bb26, unwind continue];
} }
@ -330,11 +335,11 @@
StorageDead(_53); StorageDead(_53);
StorageLive(_56); StorageLive(_56);
StorageLive(_57); StorageLive(_57);
- StorageLive(_58); StorageLive(_58);
- _58 = _1; _58 = _1;
- _57 = BitXor(move _58, const 0_u64); - _57 = BitXor(move _58, const 0_u64);
- StorageDead(_58);
+ _57 = BitXor(_1, const 0_u64); + _57 = BitXor(_1, const 0_u64);
StorageDead(_58);
_56 = opaque::<u64>(move _57) -> [return: bb27, unwind continue]; _56 = opaque::<u64>(move _57) -> [return: bb27, unwind continue];
} }
@ -343,8 +348,8 @@
StorageDead(_56); StorageDead(_56);
StorageLive(_59); StorageLive(_59);
StorageLive(_60); StorageLive(_60);
- StorageLive(_61); StorageLive(_61);
- _61 = _1; _61 = _1;
_62 = const 0_i32 as u32 (IntToInt); _62 = const 0_i32 as u32 (IntToInt);
- _63 = Lt(move _62, const 64_u32); - _63 = Lt(move _62, const 64_u32);
- assert(move _63, "attempt to shift right by `{}`, which would overflow", const 0_i32) -> [success: bb28, unwind continue]; - assert(move _63, "attempt to shift right by `{}`, which would overflow", const 0_i32) -> [success: bb28, unwind continue];
@ -354,8 +359,8 @@
bb28: { bb28: {
- _60 = Shr(move _61, const 0_i32); - _60 = Shr(move _61, const 0_i32);
- StorageDead(_61);
+ _60 = Shr(_1, const 0_i32); + _60 = Shr(_1, const 0_i32);
StorageDead(_61);
_59 = opaque::<u64>(move _60) -> [return: bb29, unwind continue]; _59 = opaque::<u64>(move _60) -> [return: bb29, unwind continue];
} }
@ -364,18 +369,20 @@
StorageDead(_59); StorageDead(_59);
StorageLive(_64); StorageLive(_64);
StorageLive(_65); StorageLive(_65);
- StorageLive(_66); StorageLive(_66);
- _66 = _1; _66 = _1;
- _67 = const 0_i32 as u32 (IntToInt); - _67 = const 0_i32 as u32 (IntToInt);
- _68 = Lt(move _67, const 64_u32); - _68 = Lt(move _67, const 64_u32);
- assert(move _68, "attempt to shift left by `{}`, which would overflow", const 0_i32) -> [success: bb30, unwind continue]; - assert(move _68, "attempt to shift left by `{}`, which would overflow", const 0_i32) -> [success: bb30, unwind continue];
+ _67 = _62;
+ _68 = _63;
+ assert(_63, "attempt to shift left by `{}`, which would overflow", const 0_i32) -> [success: bb30, unwind continue]; + assert(_63, "attempt to shift left by `{}`, which would overflow", const 0_i32) -> [success: bb30, unwind continue];
} }
bb30: { bb30: {
- _65 = Shl(move _66, const 0_i32); - _65 = Shl(move _66, const 0_i32);
- StorageDead(_66);
+ _65 = Shl(_1, const 0_i32); + _65 = Shl(_1, const 0_i32);
StorageDead(_66);
_64 = opaque::<u64>(move _65) -> [return: bb31, unwind continue]; _64 = opaque::<u64>(move _65) -> [return: bb31, unwind continue];
} }

View file

@ -37,11 +37,11 @@
bb0: { bb0: {
StorageLive(_2); StorageLive(_2);
StorageLive(_3); StorageLive(_3);
- StorageLive(_4); StorageLive(_4);
- _4 = _1; _4 = _1;
- _3 = Add(move _4, const 0f64); - _3 = Add(move _4, const 0f64);
- StorageDead(_4);
+ _3 = Add(_1, const 0f64); + _3 = Add(_1, const 0f64);
StorageDead(_4);
_2 = opaque::<f64>(move _3) -> [return: bb1, unwind unreachable]; _2 = opaque::<f64>(move _3) -> [return: bb1, unwind unreachable];
} }
@ -50,11 +50,11 @@
StorageDead(_2); StorageDead(_2);
StorageLive(_5); StorageLive(_5);
StorageLive(_6); StorageLive(_6);
- StorageLive(_7); StorageLive(_7);
- _7 = _1; _7 = _1;
- _6 = Sub(move _7, const 0f64); - _6 = Sub(move _7, const 0f64);
- StorageDead(_7);
+ _6 = Sub(_1, const 0f64); + _6 = Sub(_1, const 0f64);
StorageDead(_7);
_5 = opaque::<f64>(move _6) -> [return: bb2, unwind unreachable]; _5 = opaque::<f64>(move _6) -> [return: bb2, unwind unreachable];
} }
@ -63,11 +63,11 @@
StorageDead(_5); StorageDead(_5);
StorageLive(_8); StorageLive(_8);
StorageLive(_9); StorageLive(_9);
- StorageLive(_10); StorageLive(_10);
- _10 = _1; _10 = _1;
- _9 = Mul(move _10, const 0f64); - _9 = Mul(move _10, const 0f64);
- StorageDead(_10);
+ _9 = Mul(_1, const 0f64); + _9 = Mul(_1, const 0f64);
StorageDead(_10);
_8 = opaque::<f64>(move _9) -> [return: bb3, unwind unreachable]; _8 = opaque::<f64>(move _9) -> [return: bb3, unwind unreachable];
} }
@ -76,11 +76,11 @@
StorageDead(_8); StorageDead(_8);
StorageLive(_11); StorageLive(_11);
StorageLive(_12); StorageLive(_12);
- StorageLive(_13); StorageLive(_13);
- _13 = _1; _13 = _1;
- _12 = Div(move _13, const 0f64); - _12 = Div(move _13, const 0f64);
- StorageDead(_13);
+ _12 = Div(_1, const 0f64); + _12 = Div(_1, const 0f64);
StorageDead(_13);
_11 = opaque::<f64>(move _12) -> [return: bb4, unwind unreachable]; _11 = opaque::<f64>(move _12) -> [return: bb4, unwind unreachable];
} }
@ -89,11 +89,11 @@
StorageDead(_11); StorageDead(_11);
StorageLive(_14); StorageLive(_14);
StorageLive(_15); StorageLive(_15);
- StorageLive(_16); StorageLive(_16);
- _16 = _1; _16 = _1;
- _15 = Div(const 0f64, move _16); - _15 = Div(const 0f64, move _16);
- StorageDead(_16);
+ _15 = Div(const 0f64, _1); + _15 = Div(const 0f64, _1);
StorageDead(_16);
_14 = opaque::<f64>(move _15) -> [return: bb5, unwind unreachable]; _14 = opaque::<f64>(move _15) -> [return: bb5, unwind unreachable];
} }
@ -102,11 +102,11 @@
StorageDead(_14); StorageDead(_14);
StorageLive(_17); StorageLive(_17);
StorageLive(_18); StorageLive(_18);
- StorageLive(_19); StorageLive(_19);
- _19 = _1; _19 = _1;
- _18 = Rem(move _19, const 0f64); - _18 = Rem(move _19, const 0f64);
- StorageDead(_19);
+ _18 = Rem(_1, const 0f64); + _18 = Rem(_1, const 0f64);
StorageDead(_19);
_17 = opaque::<f64>(move _18) -> [return: bb6, unwind unreachable]; _17 = opaque::<f64>(move _18) -> [return: bb6, unwind unreachable];
} }
@ -115,11 +115,11 @@
StorageDead(_17); StorageDead(_17);
StorageLive(_20); StorageLive(_20);
StorageLive(_21); StorageLive(_21);
- StorageLive(_22); StorageLive(_22);
- _22 = _1; _22 = _1;
- _21 = Rem(const 0f64, move _22); - _21 = Rem(const 0f64, move _22);
- StorageDead(_22);
+ _21 = Rem(const 0f64, _1); + _21 = Rem(const 0f64, _1);
StorageDead(_22);
_20 = opaque::<f64>(move _21) -> [return: bb7, unwind unreachable]; _20 = opaque::<f64>(move _21) -> [return: bb7, unwind unreachable];
} }
@ -128,14 +128,14 @@
StorageDead(_20); StorageDead(_20);
StorageLive(_23); StorageLive(_23);
StorageLive(_24); StorageLive(_24);
- StorageLive(_25); StorageLive(_25);
- _25 = _1; _25 = _1;
- StorageLive(_26); StorageLive(_26);
- _26 = _1; _26 = _1;
- _24 = Eq(move _25, move _26); - _24 = Eq(move _25, move _26);
- StorageDead(_26);
- StorageDead(_25);
+ _24 = Eq(_1, _1); + _24 = Eq(_1, _1);
StorageDead(_26);
StorageDead(_25);
_23 = opaque::<bool>(move _24) -> [return: bb8, unwind unreachable]; _23 = opaque::<bool>(move _24) -> [return: bb8, unwind unreachable];
} }
@ -144,14 +144,14 @@
StorageDead(_23); StorageDead(_23);
StorageLive(_27); StorageLive(_27);
StorageLive(_28); StorageLive(_28);
- StorageLive(_29); StorageLive(_29);
- _29 = _1; _29 = _1;
- StorageLive(_30); StorageLive(_30);
- _30 = _1; _30 = _1;
- _28 = Ne(move _29, move _30); - _28 = Ne(move _29, move _30);
- StorageDead(_30);
- StorageDead(_29);
+ _28 = Ne(_1, _1); + _28 = Ne(_1, _1);
StorageDead(_30);
StorageDead(_29);
_27 = opaque::<bool>(move _28) -> [return: bb9, unwind unreachable]; _27 = opaque::<bool>(move _28) -> [return: bb9, unwind unreachable];
} }

View file

@ -37,11 +37,11 @@
bb0: { bb0: {
StorageLive(_2); StorageLive(_2);
StorageLive(_3); StorageLive(_3);
- StorageLive(_4); StorageLive(_4);
- _4 = _1; _4 = _1;
- _3 = Add(move _4, const 0f64); - _3 = Add(move _4, const 0f64);
- StorageDead(_4);
+ _3 = Add(_1, const 0f64); + _3 = Add(_1, const 0f64);
StorageDead(_4);
_2 = opaque::<f64>(move _3) -> [return: bb1, unwind continue]; _2 = opaque::<f64>(move _3) -> [return: bb1, unwind continue];
} }
@ -50,11 +50,11 @@
StorageDead(_2); StorageDead(_2);
StorageLive(_5); StorageLive(_5);
StorageLive(_6); StorageLive(_6);
- StorageLive(_7); StorageLive(_7);
- _7 = _1; _7 = _1;
- _6 = Sub(move _7, const 0f64); - _6 = Sub(move _7, const 0f64);
- StorageDead(_7);
+ _6 = Sub(_1, const 0f64); + _6 = Sub(_1, const 0f64);
StorageDead(_7);
_5 = opaque::<f64>(move _6) -> [return: bb2, unwind continue]; _5 = opaque::<f64>(move _6) -> [return: bb2, unwind continue];
} }
@ -63,11 +63,11 @@
StorageDead(_5); StorageDead(_5);
StorageLive(_8); StorageLive(_8);
StorageLive(_9); StorageLive(_9);
- StorageLive(_10); StorageLive(_10);
- _10 = _1; _10 = _1;
- _9 = Mul(move _10, const 0f64); - _9 = Mul(move _10, const 0f64);
- StorageDead(_10);
+ _9 = Mul(_1, const 0f64); + _9 = Mul(_1, const 0f64);
StorageDead(_10);
_8 = opaque::<f64>(move _9) -> [return: bb3, unwind continue]; _8 = opaque::<f64>(move _9) -> [return: bb3, unwind continue];
} }
@ -76,11 +76,11 @@
StorageDead(_8); StorageDead(_8);
StorageLive(_11); StorageLive(_11);
StorageLive(_12); StorageLive(_12);
- StorageLive(_13); StorageLive(_13);
- _13 = _1; _13 = _1;
- _12 = Div(move _13, const 0f64); - _12 = Div(move _13, const 0f64);
- StorageDead(_13);
+ _12 = Div(_1, const 0f64); + _12 = Div(_1, const 0f64);
StorageDead(_13);
_11 = opaque::<f64>(move _12) -> [return: bb4, unwind continue]; _11 = opaque::<f64>(move _12) -> [return: bb4, unwind continue];
} }
@ -89,11 +89,11 @@
StorageDead(_11); StorageDead(_11);
StorageLive(_14); StorageLive(_14);
StorageLive(_15); StorageLive(_15);
- StorageLive(_16); StorageLive(_16);
- _16 = _1; _16 = _1;
- _15 = Div(const 0f64, move _16); - _15 = Div(const 0f64, move _16);
- StorageDead(_16);
+ _15 = Div(const 0f64, _1); + _15 = Div(const 0f64, _1);
StorageDead(_16);
_14 = opaque::<f64>(move _15) -> [return: bb5, unwind continue]; _14 = opaque::<f64>(move _15) -> [return: bb5, unwind continue];
} }
@ -102,11 +102,11 @@
StorageDead(_14); StorageDead(_14);
StorageLive(_17); StorageLive(_17);
StorageLive(_18); StorageLive(_18);
- StorageLive(_19); StorageLive(_19);
- _19 = _1; _19 = _1;
- _18 = Rem(move _19, const 0f64); - _18 = Rem(move _19, const 0f64);
- StorageDead(_19);
+ _18 = Rem(_1, const 0f64); + _18 = Rem(_1, const 0f64);
StorageDead(_19);
_17 = opaque::<f64>(move _18) -> [return: bb6, unwind continue]; _17 = opaque::<f64>(move _18) -> [return: bb6, unwind continue];
} }
@ -115,11 +115,11 @@
StorageDead(_17); StorageDead(_17);
StorageLive(_20); StorageLive(_20);
StorageLive(_21); StorageLive(_21);
- StorageLive(_22); StorageLive(_22);
- _22 = _1; _22 = _1;
- _21 = Rem(const 0f64, move _22); - _21 = Rem(const 0f64, move _22);
- StorageDead(_22);
+ _21 = Rem(const 0f64, _1); + _21 = Rem(const 0f64, _1);
StorageDead(_22);
_20 = opaque::<f64>(move _21) -> [return: bb7, unwind continue]; _20 = opaque::<f64>(move _21) -> [return: bb7, unwind continue];
} }
@ -128,14 +128,14 @@
StorageDead(_20); StorageDead(_20);
StorageLive(_23); StorageLive(_23);
StorageLive(_24); StorageLive(_24);
- StorageLive(_25); StorageLive(_25);
- _25 = _1; _25 = _1;
- StorageLive(_26); StorageLive(_26);
- _26 = _1; _26 = _1;
- _24 = Eq(move _25, move _26); - _24 = Eq(move _25, move _26);
- StorageDead(_26);
- StorageDead(_25);
+ _24 = Eq(_1, _1); + _24 = Eq(_1, _1);
StorageDead(_26);
StorageDead(_25);
_23 = opaque::<bool>(move _24) -> [return: bb8, unwind continue]; _23 = opaque::<bool>(move _24) -> [return: bb8, unwind continue];
} }
@ -144,14 +144,14 @@
StorageDead(_23); StorageDead(_23);
StorageLive(_27); StorageLive(_27);
StorageLive(_28); StorageLive(_28);
- StorageLive(_29); StorageLive(_29);
- _29 = _1; _29 = _1;
- StorageLive(_30); StorageLive(_30);
- _30 = _1; _30 = _1;
- _28 = Ne(move _29, move _30); - _28 = Ne(move _29, move _30);
- StorageDead(_30);
- StorageDead(_29);
+ _28 = Ne(_1, _1); + _28 = Ne(_1, _1);
StorageDead(_30);
StorageDead(_29);
_27 = opaque::<bool>(move _28) -> [return: bb9, unwind continue]; _27 = opaque::<bool>(move _28) -> [return: bb9, unwind continue];
} }

View file

@ -105,18 +105,22 @@
bb0: { bb0: {
- StorageLive(_1); - StorageLive(_1);
+ nop;
_1 = const 1_i64; _1 = const 1_i64;
- StorageLive(_2); - StorageLive(_2);
+ nop;
_2 = const 1_u64; _2 = const 1_u64;
- StorageLive(_3); - StorageLive(_3);
+ nop;
_3 = const 1f64; _3 = const 1f64;
StorageLive(_4); StorageLive(_4);
StorageLive(_5); StorageLive(_5);
- StorageLive(_6); StorageLive(_6);
- _6 = _1; - _6 = _1;
- _5 = move _6 as u8 (IntToInt); - _5 = move _6 as u8 (IntToInt);
- StorageDead(_6); + _6 = const 1_i64;
+ _5 = const 1_i64 as u8 (IntToInt); + _5 = const 1_i64 as u8 (IntToInt);
StorageDead(_6);
_4 = opaque::<u8>(move _5) -> [return: bb1, unwind unreachable]; _4 = opaque::<u8>(move _5) -> [return: bb1, unwind unreachable];
} }
@ -125,11 +129,12 @@
StorageDead(_4); StorageDead(_4);
StorageLive(_7); StorageLive(_7);
StorageLive(_8); StorageLive(_8);
- StorageLive(_9); StorageLive(_9);
- _9 = _1; - _9 = _1;
- _8 = move _9 as u16 (IntToInt); - _8 = move _9 as u16 (IntToInt);
- StorageDead(_9); + _9 = const 1_i64;
+ _8 = const 1_i64 as u16 (IntToInt); + _8 = const 1_i64 as u16 (IntToInt);
StorageDead(_9);
_7 = opaque::<u16>(move _8) -> [return: bb2, unwind unreachable]; _7 = opaque::<u16>(move _8) -> [return: bb2, unwind unreachable];
} }
@ -138,11 +143,12 @@
StorageDead(_7); StorageDead(_7);
StorageLive(_10); StorageLive(_10);
StorageLive(_11); StorageLive(_11);
- StorageLive(_12); StorageLive(_12);
- _12 = _1; - _12 = _1;
- _11 = move _12 as u32 (IntToInt); - _11 = move _12 as u32 (IntToInt);
- StorageDead(_12); + _12 = const 1_i64;
+ _11 = const 1_i64 as u32 (IntToInt); + _11 = const 1_i64 as u32 (IntToInt);
StorageDead(_12);
_10 = opaque::<u32>(move _11) -> [return: bb3, unwind unreachable]; _10 = opaque::<u32>(move _11) -> [return: bb3, unwind unreachable];
} }
@ -151,11 +157,12 @@
StorageDead(_10); StorageDead(_10);
StorageLive(_13); StorageLive(_13);
StorageLive(_14); StorageLive(_14);
- StorageLive(_15); StorageLive(_15);
- _15 = _1; - _15 = _1;
- _14 = move _15 as u64 (IntToInt); - _14 = move _15 as u64 (IntToInt);
- StorageDead(_15); + _15 = const 1_i64;
+ _14 = const 1_i64 as u64 (IntToInt); + _14 = const 1_i64 as u64 (IntToInt);
StorageDead(_15);
_13 = opaque::<u64>(move _14) -> [return: bb4, unwind unreachable]; _13 = opaque::<u64>(move _14) -> [return: bb4, unwind unreachable];
} }
@ -164,11 +171,12 @@
StorageDead(_13); StorageDead(_13);
StorageLive(_16); StorageLive(_16);
StorageLive(_17); StorageLive(_17);
- StorageLive(_18); StorageLive(_18);
- _18 = _1; - _18 = _1;
- _17 = move _18 as i8 (IntToInt); - _17 = move _18 as i8 (IntToInt);
- StorageDead(_18); + _18 = const 1_i64;
+ _17 = const 1_i64 as i8 (IntToInt); + _17 = const 1_i64 as i8 (IntToInt);
StorageDead(_18);
_16 = opaque::<i8>(move _17) -> [return: bb5, unwind unreachable]; _16 = opaque::<i8>(move _17) -> [return: bb5, unwind unreachable];
} }
@ -177,11 +185,12 @@
StorageDead(_16); StorageDead(_16);
StorageLive(_19); StorageLive(_19);
StorageLive(_20); StorageLive(_20);
- StorageLive(_21); StorageLive(_21);
- _21 = _1; - _21 = _1;
- _20 = move _21 as i16 (IntToInt); - _20 = move _21 as i16 (IntToInt);
- StorageDead(_21); + _21 = const 1_i64;
+ _20 = const 1_i64 as i16 (IntToInt); + _20 = const 1_i64 as i16 (IntToInt);
StorageDead(_21);
_19 = opaque::<i16>(move _20) -> [return: bb6, unwind unreachable]; _19 = opaque::<i16>(move _20) -> [return: bb6, unwind unreachable];
} }
@ -190,11 +199,12 @@
StorageDead(_19); StorageDead(_19);
StorageLive(_22); StorageLive(_22);
StorageLive(_23); StorageLive(_23);
- StorageLive(_24); StorageLive(_24);
- _24 = _1; - _24 = _1;
- _23 = move _24 as i32 (IntToInt); - _23 = move _24 as i32 (IntToInt);
- StorageDead(_24); + _24 = const 1_i64;
+ _23 = const 1_i64 as i32 (IntToInt); + _23 = const 1_i64 as i32 (IntToInt);
StorageDead(_24);
_22 = opaque::<i32>(move _23) -> [return: bb7, unwind unreachable]; _22 = opaque::<i32>(move _23) -> [return: bb7, unwind unreachable];
} }
@ -202,22 +212,24 @@
StorageDead(_23); StorageDead(_23);
StorageDead(_22); StorageDead(_22);
StorageLive(_25); StorageLive(_25);
- StorageLive(_26); StorageLive(_26);
- _26 = _1; - _26 = _1;
- _25 = opaque::<i64>(move _26) -> [return: bb8, unwind unreachable]; - _25 = opaque::<i64>(move _26) -> [return: bb8, unwind unreachable];
+ _26 = const 1_i64;
+ _25 = opaque::<i64>(const 1_i64) -> [return: bb8, unwind unreachable]; + _25 = opaque::<i64>(const 1_i64) -> [return: bb8, unwind unreachable];
} }
bb8: { bb8: {
- StorageDead(_26); StorageDead(_26);
StorageDead(_25); StorageDead(_25);
StorageLive(_27); StorageLive(_27);
StorageLive(_28); StorageLive(_28);
- StorageLive(_29); StorageLive(_29);
- _29 = _1; - _29 = _1;
- _28 = move _29 as f32 (IntToFloat); - _28 = move _29 as f32 (IntToFloat);
- StorageDead(_29); + _29 = const 1_i64;
+ _28 = const 1_i64 as f32 (IntToFloat); + _28 = const 1_i64 as f32 (IntToFloat);
StorageDead(_29);
_27 = opaque::<f32>(move _28) -> [return: bb9, unwind unreachable]; _27 = opaque::<f32>(move _28) -> [return: bb9, unwind unreachable];
} }
@ -226,11 +238,12 @@
StorageDead(_27); StorageDead(_27);
StorageLive(_30); StorageLive(_30);
StorageLive(_31); StorageLive(_31);
- StorageLive(_32); StorageLive(_32);
- _32 = _1; - _32 = _1;
- _31 = move _32 as f64 (IntToFloat); - _31 = move _32 as f64 (IntToFloat);
- StorageDead(_32); + _32 = const 1_i64;
+ _31 = const 1_i64 as f64 (IntToFloat); + _31 = const 1_i64 as f64 (IntToFloat);
StorageDead(_32);
_30 = opaque::<f64>(move _31) -> [return: bb10, unwind unreachable]; _30 = opaque::<f64>(move _31) -> [return: bb10, unwind unreachable];
} }
@ -239,11 +252,12 @@
StorageDead(_30); StorageDead(_30);
StorageLive(_33); StorageLive(_33);
StorageLive(_34); StorageLive(_34);
- StorageLive(_35); StorageLive(_35);
- _35 = _2; - _35 = _2;
- _34 = move _35 as u8 (IntToInt); - _34 = move _35 as u8 (IntToInt);
- StorageDead(_35); + _35 = const 1_u64;
+ _34 = const 1_u64 as u8 (IntToInt); + _34 = const 1_u64 as u8 (IntToInt);
StorageDead(_35);
_33 = opaque::<u8>(move _34) -> [return: bb11, unwind unreachable]; _33 = opaque::<u8>(move _34) -> [return: bb11, unwind unreachable];
} }
@ -252,11 +266,12 @@
StorageDead(_33); StorageDead(_33);
StorageLive(_36); StorageLive(_36);
StorageLive(_37); StorageLive(_37);
- StorageLive(_38); StorageLive(_38);
- _38 = _2; - _38 = _2;
- _37 = move _38 as u16 (IntToInt); - _37 = move _38 as u16 (IntToInt);
- StorageDead(_38); + _38 = const 1_u64;
+ _37 = const 1_u64 as u16 (IntToInt); + _37 = const 1_u64 as u16 (IntToInt);
StorageDead(_38);
_36 = opaque::<u16>(move _37) -> [return: bb12, unwind unreachable]; _36 = opaque::<u16>(move _37) -> [return: bb12, unwind unreachable];
} }
@ -265,11 +280,12 @@
StorageDead(_36); StorageDead(_36);
StorageLive(_39); StorageLive(_39);
StorageLive(_40); StorageLive(_40);
- StorageLive(_41); StorageLive(_41);
- _41 = _2; - _41 = _2;
- _40 = move _41 as u32 (IntToInt); - _40 = move _41 as u32 (IntToInt);
- StorageDead(_41); + _41 = const 1_u64;
+ _40 = const 1_u64 as u32 (IntToInt); + _40 = const 1_u64 as u32 (IntToInt);
StorageDead(_41);
_39 = opaque::<u32>(move _40) -> [return: bb13, unwind unreachable]; _39 = opaque::<u32>(move _40) -> [return: bb13, unwind unreachable];
} }
@ -277,22 +293,24 @@
StorageDead(_40); StorageDead(_40);
StorageDead(_39); StorageDead(_39);
StorageLive(_42); StorageLive(_42);
- StorageLive(_43); StorageLive(_43);
- _43 = _2; - _43 = _2;
- _42 = opaque::<u64>(move _43) -> [return: bb14, unwind unreachable]; - _42 = opaque::<u64>(move _43) -> [return: bb14, unwind unreachable];
+ _43 = const 1_u64;
+ _42 = opaque::<u64>(const 1_u64) -> [return: bb14, unwind unreachable]; + _42 = opaque::<u64>(const 1_u64) -> [return: bb14, unwind unreachable];
} }
bb14: { bb14: {
- StorageDead(_43); StorageDead(_43);
StorageDead(_42); StorageDead(_42);
StorageLive(_44); StorageLive(_44);
StorageLive(_45); StorageLive(_45);
- StorageLive(_46); StorageLive(_46);
- _46 = _2; - _46 = _2;
- _45 = move _46 as i8 (IntToInt); - _45 = move _46 as i8 (IntToInt);
- StorageDead(_46); + _46 = const 1_u64;
+ _45 = const 1_u64 as i8 (IntToInt); + _45 = const 1_u64 as i8 (IntToInt);
StorageDead(_46);
_44 = opaque::<i8>(move _45) -> [return: bb15, unwind unreachable]; _44 = opaque::<i8>(move _45) -> [return: bb15, unwind unreachable];
} }
@ -301,11 +319,12 @@
StorageDead(_44); StorageDead(_44);
StorageLive(_47); StorageLive(_47);
StorageLive(_48); StorageLive(_48);
- StorageLive(_49); StorageLive(_49);
- _49 = _2; - _49 = _2;
- _48 = move _49 as i16 (IntToInt); - _48 = move _49 as i16 (IntToInt);
- StorageDead(_49); + _49 = const 1_u64;
+ _48 = const 1_u64 as i16 (IntToInt); + _48 = const 1_u64 as i16 (IntToInt);
StorageDead(_49);
_47 = opaque::<i16>(move _48) -> [return: bb16, unwind unreachable]; _47 = opaque::<i16>(move _48) -> [return: bb16, unwind unreachable];
} }
@ -314,11 +333,12 @@
StorageDead(_47); StorageDead(_47);
StorageLive(_50); StorageLive(_50);
StorageLive(_51); StorageLive(_51);
- StorageLive(_52); StorageLive(_52);
- _52 = _2; - _52 = _2;
- _51 = move _52 as i32 (IntToInt); - _51 = move _52 as i32 (IntToInt);
- StorageDead(_52); + _52 = const 1_u64;
+ _51 = const 1_u64 as i32 (IntToInt); + _51 = const 1_u64 as i32 (IntToInt);
StorageDead(_52);
_50 = opaque::<i32>(move _51) -> [return: bb17, unwind unreachable]; _50 = opaque::<i32>(move _51) -> [return: bb17, unwind unreachable];
} }
@ -327,11 +347,12 @@
StorageDead(_50); StorageDead(_50);
StorageLive(_53); StorageLive(_53);
StorageLive(_54); StorageLive(_54);
- StorageLive(_55); StorageLive(_55);
- _55 = _2; - _55 = _2;
- _54 = move _55 as i64 (IntToInt); - _54 = move _55 as i64 (IntToInt);
- StorageDead(_55); + _55 = const 1_u64;
+ _54 = const 1_u64 as i64 (IntToInt); + _54 = const 1_u64 as i64 (IntToInt);
StorageDead(_55);
_53 = opaque::<i64>(move _54) -> [return: bb18, unwind unreachable]; _53 = opaque::<i64>(move _54) -> [return: bb18, unwind unreachable];
} }
@ -340,11 +361,12 @@
StorageDead(_53); StorageDead(_53);
StorageLive(_56); StorageLive(_56);
StorageLive(_57); StorageLive(_57);
- StorageLive(_58); StorageLive(_58);
- _58 = _2; - _58 = _2;
- _57 = move _58 as f32 (IntToFloat); - _57 = move _58 as f32 (IntToFloat);
- StorageDead(_58); + _58 = const 1_u64;
+ _57 = const 1_u64 as f32 (IntToFloat); + _57 = const 1_u64 as f32 (IntToFloat);
StorageDead(_58);
_56 = opaque::<f32>(move _57) -> [return: bb19, unwind unreachable]; _56 = opaque::<f32>(move _57) -> [return: bb19, unwind unreachable];
} }
@ -353,11 +375,12 @@
StorageDead(_56); StorageDead(_56);
StorageLive(_59); StorageLive(_59);
StorageLive(_60); StorageLive(_60);
- StorageLive(_61); StorageLive(_61);
- _61 = _2; - _61 = _2;
- _60 = move _61 as f64 (IntToFloat); - _60 = move _61 as f64 (IntToFloat);
- StorageDead(_61); + _61 = const 1_u64;
+ _60 = const 1_u64 as f64 (IntToFloat); + _60 = const 1_u64 as f64 (IntToFloat);
StorageDead(_61);
_59 = opaque::<f64>(move _60) -> [return: bb20, unwind unreachable]; _59 = opaque::<f64>(move _60) -> [return: bb20, unwind unreachable];
} }
@ -366,11 +389,12 @@
StorageDead(_59); StorageDead(_59);
StorageLive(_62); StorageLive(_62);
StorageLive(_63); StorageLive(_63);
- StorageLive(_64); StorageLive(_64);
- _64 = _3; - _64 = _3;
- _63 = move _64 as u8 (FloatToInt); - _63 = move _64 as u8 (FloatToInt);
- StorageDead(_64); + _64 = const 1f64;
+ _63 = const 1f64 as u8 (FloatToInt); + _63 = const 1f64 as u8 (FloatToInt);
StorageDead(_64);
_62 = opaque::<u8>(move _63) -> [return: bb21, unwind unreachable]; _62 = opaque::<u8>(move _63) -> [return: bb21, unwind unreachable];
} }
@ -379,11 +403,12 @@
StorageDead(_62); StorageDead(_62);
StorageLive(_65); StorageLive(_65);
StorageLive(_66); StorageLive(_66);
- StorageLive(_67); StorageLive(_67);
- _67 = _3; - _67 = _3;
- _66 = move _67 as u16 (FloatToInt); - _66 = move _67 as u16 (FloatToInt);
- StorageDead(_67); + _67 = const 1f64;
+ _66 = const 1f64 as u16 (FloatToInt); + _66 = const 1f64 as u16 (FloatToInt);
StorageDead(_67);
_65 = opaque::<u16>(move _66) -> [return: bb22, unwind unreachable]; _65 = opaque::<u16>(move _66) -> [return: bb22, unwind unreachable];
} }
@ -392,11 +417,12 @@
StorageDead(_65); StorageDead(_65);
StorageLive(_68); StorageLive(_68);
StorageLive(_69); StorageLive(_69);
- StorageLive(_70); StorageLive(_70);
- _70 = _3; - _70 = _3;
- _69 = move _70 as u32 (FloatToInt); - _69 = move _70 as u32 (FloatToInt);
- StorageDead(_70); + _70 = const 1f64;
+ _69 = const 1f64 as u32 (FloatToInt); + _69 = const 1f64 as u32 (FloatToInt);
StorageDead(_70);
_68 = opaque::<u32>(move _69) -> [return: bb23, unwind unreachable]; _68 = opaque::<u32>(move _69) -> [return: bb23, unwind unreachable];
} }
@ -405,11 +431,12 @@
StorageDead(_68); StorageDead(_68);
StorageLive(_71); StorageLive(_71);
StorageLive(_72); StorageLive(_72);
- StorageLive(_73); StorageLive(_73);
- _73 = _3; - _73 = _3;
- _72 = move _73 as u64 (FloatToInt); - _72 = move _73 as u64 (FloatToInt);
- StorageDead(_73); + _73 = const 1f64;
+ _72 = const 1f64 as u64 (FloatToInt); + _72 = const 1f64 as u64 (FloatToInt);
StorageDead(_73);
_71 = opaque::<u64>(move _72) -> [return: bb24, unwind unreachable]; _71 = opaque::<u64>(move _72) -> [return: bb24, unwind unreachable];
} }
@ -418,11 +445,12 @@
StorageDead(_71); StorageDead(_71);
StorageLive(_74); StorageLive(_74);
StorageLive(_75); StorageLive(_75);
- StorageLive(_76); StorageLive(_76);
- _76 = _3; - _76 = _3;
- _75 = move _76 as i8 (FloatToInt); - _75 = move _76 as i8 (FloatToInt);
- StorageDead(_76); + _76 = const 1f64;
+ _75 = const 1f64 as i8 (FloatToInt); + _75 = const 1f64 as i8 (FloatToInt);
StorageDead(_76);
_74 = opaque::<i8>(move _75) -> [return: bb25, unwind unreachable]; _74 = opaque::<i8>(move _75) -> [return: bb25, unwind unreachable];
} }
@ -431,11 +459,12 @@
StorageDead(_74); StorageDead(_74);
StorageLive(_77); StorageLive(_77);
StorageLive(_78); StorageLive(_78);
- StorageLive(_79); StorageLive(_79);
- _79 = _3; - _79 = _3;
- _78 = move _79 as i16 (FloatToInt); - _78 = move _79 as i16 (FloatToInt);
- StorageDead(_79); + _79 = const 1f64;
+ _78 = const 1f64 as i16 (FloatToInt); + _78 = const 1f64 as i16 (FloatToInt);
StorageDead(_79);
_77 = opaque::<i16>(move _78) -> [return: bb26, unwind unreachable]; _77 = opaque::<i16>(move _78) -> [return: bb26, unwind unreachable];
} }
@ -444,11 +473,12 @@
StorageDead(_77); StorageDead(_77);
StorageLive(_80); StorageLive(_80);
StorageLive(_81); StorageLive(_81);
- StorageLive(_82); StorageLive(_82);
- _82 = _3; - _82 = _3;
- _81 = move _82 as i32 (FloatToInt); - _81 = move _82 as i32 (FloatToInt);
- StorageDead(_82); + _82 = const 1f64;
+ _81 = const 1f64 as i32 (FloatToInt); + _81 = const 1f64 as i32 (FloatToInt);
StorageDead(_82);
_80 = opaque::<i32>(move _81) -> [return: bb27, unwind unreachable]; _80 = opaque::<i32>(move _81) -> [return: bb27, unwind unreachable];
} }
@ -457,11 +487,12 @@
StorageDead(_80); StorageDead(_80);
StorageLive(_83); StorageLive(_83);
StorageLive(_84); StorageLive(_84);
- StorageLive(_85); StorageLive(_85);
- _85 = _3; - _85 = _3;
- _84 = move _85 as i64 (FloatToInt); - _84 = move _85 as i64 (FloatToInt);
- StorageDead(_85); + _85 = const 1f64;
+ _84 = const 1f64 as i64 (FloatToInt); + _84 = const 1f64 as i64 (FloatToInt);
StorageDead(_85);
_83 = opaque::<i64>(move _84) -> [return: bb28, unwind unreachable]; _83 = opaque::<i64>(move _84) -> [return: bb28, unwind unreachable];
} }
@ -470,11 +501,12 @@
StorageDead(_83); StorageDead(_83);
StorageLive(_86); StorageLive(_86);
StorageLive(_87); StorageLive(_87);
- StorageLive(_88); StorageLive(_88);
- _88 = _3; - _88 = _3;
- _87 = move _88 as f32 (FloatToFloat); - _87 = move _88 as f32 (FloatToFloat);
- StorageDead(_88); + _88 = const 1f64;
+ _87 = const 1f64 as f32 (FloatToFloat); + _87 = const 1f64 as f32 (FloatToFloat);
StorageDead(_88);
_86 = opaque::<f32>(move _87) -> [return: bb29, unwind unreachable]; _86 = opaque::<f32>(move _87) -> [return: bb29, unwind unreachable];
} }
@ -482,19 +514,23 @@
StorageDead(_87); StorageDead(_87);
StorageDead(_86); StorageDead(_86);
StorageLive(_89); StorageLive(_89);
- StorageLive(_90); StorageLive(_90);
- _90 = _3; - _90 = _3;
- _89 = opaque::<f64>(move _90) -> [return: bb30, unwind unreachable]; - _89 = opaque::<f64>(move _90) -> [return: bb30, unwind unreachable];
+ _90 = const 1f64;
+ _89 = opaque::<f64>(const 1f64) -> [return: bb30, unwind unreachable]; + _89 = opaque::<f64>(const 1f64) -> [return: bb30, unwind unreachable];
} }
bb30: { bb30: {
- StorageDead(_90); StorageDead(_90);
StorageDead(_89); StorageDead(_89);
_0 = const (); _0 = const ();
- StorageDead(_3); - StorageDead(_3);
- StorageDead(_2); - StorageDead(_2);
- StorageDead(_1); - StorageDead(_1);
+ nop;
+ nop;
+ nop;
return; return;
} }
} }

View file

@ -105,18 +105,22 @@
bb0: { bb0: {
- StorageLive(_1); - StorageLive(_1);
+ nop;
_1 = const 1_i64; _1 = const 1_i64;
- StorageLive(_2); - StorageLive(_2);
+ nop;
_2 = const 1_u64; _2 = const 1_u64;
- StorageLive(_3); - StorageLive(_3);
+ nop;
_3 = const 1f64; _3 = const 1f64;
StorageLive(_4); StorageLive(_4);
StorageLive(_5); StorageLive(_5);
- StorageLive(_6); StorageLive(_6);
- _6 = _1; - _6 = _1;
- _5 = move _6 as u8 (IntToInt); - _5 = move _6 as u8 (IntToInt);
- StorageDead(_6); + _6 = const 1_i64;
+ _5 = const 1_i64 as u8 (IntToInt); + _5 = const 1_i64 as u8 (IntToInt);
StorageDead(_6);
_4 = opaque::<u8>(move _5) -> [return: bb1, unwind continue]; _4 = opaque::<u8>(move _5) -> [return: bb1, unwind continue];
} }
@ -125,11 +129,12 @@
StorageDead(_4); StorageDead(_4);
StorageLive(_7); StorageLive(_7);
StorageLive(_8); StorageLive(_8);
- StorageLive(_9); StorageLive(_9);
- _9 = _1; - _9 = _1;
- _8 = move _9 as u16 (IntToInt); - _8 = move _9 as u16 (IntToInt);
- StorageDead(_9); + _9 = const 1_i64;
+ _8 = const 1_i64 as u16 (IntToInt); + _8 = const 1_i64 as u16 (IntToInt);
StorageDead(_9);
_7 = opaque::<u16>(move _8) -> [return: bb2, unwind continue]; _7 = opaque::<u16>(move _8) -> [return: bb2, unwind continue];
} }
@ -138,11 +143,12 @@
StorageDead(_7); StorageDead(_7);
StorageLive(_10); StorageLive(_10);
StorageLive(_11); StorageLive(_11);
- StorageLive(_12); StorageLive(_12);
- _12 = _1; - _12 = _1;
- _11 = move _12 as u32 (IntToInt); - _11 = move _12 as u32 (IntToInt);
- StorageDead(_12); + _12 = const 1_i64;
+ _11 = const 1_i64 as u32 (IntToInt); + _11 = const 1_i64 as u32 (IntToInt);
StorageDead(_12);
_10 = opaque::<u32>(move _11) -> [return: bb3, unwind continue]; _10 = opaque::<u32>(move _11) -> [return: bb3, unwind continue];
} }
@ -151,11 +157,12 @@
StorageDead(_10); StorageDead(_10);
StorageLive(_13); StorageLive(_13);
StorageLive(_14); StorageLive(_14);
- StorageLive(_15); StorageLive(_15);
- _15 = _1; - _15 = _1;
- _14 = move _15 as u64 (IntToInt); - _14 = move _15 as u64 (IntToInt);
- StorageDead(_15); + _15 = const 1_i64;
+ _14 = const 1_i64 as u64 (IntToInt); + _14 = const 1_i64 as u64 (IntToInt);
StorageDead(_15);
_13 = opaque::<u64>(move _14) -> [return: bb4, unwind continue]; _13 = opaque::<u64>(move _14) -> [return: bb4, unwind continue];
} }
@ -164,11 +171,12 @@
StorageDead(_13); StorageDead(_13);
StorageLive(_16); StorageLive(_16);
StorageLive(_17); StorageLive(_17);
- StorageLive(_18); StorageLive(_18);
- _18 = _1; - _18 = _1;
- _17 = move _18 as i8 (IntToInt); - _17 = move _18 as i8 (IntToInt);
- StorageDead(_18); + _18 = const 1_i64;
+ _17 = const 1_i64 as i8 (IntToInt); + _17 = const 1_i64 as i8 (IntToInt);
StorageDead(_18);
_16 = opaque::<i8>(move _17) -> [return: bb5, unwind continue]; _16 = opaque::<i8>(move _17) -> [return: bb5, unwind continue];
} }
@ -177,11 +185,12 @@
StorageDead(_16); StorageDead(_16);
StorageLive(_19); StorageLive(_19);
StorageLive(_20); StorageLive(_20);
- StorageLive(_21); StorageLive(_21);
- _21 = _1; - _21 = _1;
- _20 = move _21 as i16 (IntToInt); - _20 = move _21 as i16 (IntToInt);
- StorageDead(_21); + _21 = const 1_i64;
+ _20 = const 1_i64 as i16 (IntToInt); + _20 = const 1_i64 as i16 (IntToInt);
StorageDead(_21);
_19 = opaque::<i16>(move _20) -> [return: bb6, unwind continue]; _19 = opaque::<i16>(move _20) -> [return: bb6, unwind continue];
} }
@ -190,11 +199,12 @@
StorageDead(_19); StorageDead(_19);
StorageLive(_22); StorageLive(_22);
StorageLive(_23); StorageLive(_23);
- StorageLive(_24); StorageLive(_24);
- _24 = _1; - _24 = _1;
- _23 = move _24 as i32 (IntToInt); - _23 = move _24 as i32 (IntToInt);
- StorageDead(_24); + _24 = const 1_i64;
+ _23 = const 1_i64 as i32 (IntToInt); + _23 = const 1_i64 as i32 (IntToInt);
StorageDead(_24);
_22 = opaque::<i32>(move _23) -> [return: bb7, unwind continue]; _22 = opaque::<i32>(move _23) -> [return: bb7, unwind continue];
} }
@ -202,22 +212,24 @@
StorageDead(_23); StorageDead(_23);
StorageDead(_22); StorageDead(_22);
StorageLive(_25); StorageLive(_25);
- StorageLive(_26); StorageLive(_26);
- _26 = _1; - _26 = _1;
- _25 = opaque::<i64>(move _26) -> [return: bb8, unwind continue]; - _25 = opaque::<i64>(move _26) -> [return: bb8, unwind continue];
+ _26 = const 1_i64;
+ _25 = opaque::<i64>(const 1_i64) -> [return: bb8, unwind continue]; + _25 = opaque::<i64>(const 1_i64) -> [return: bb8, unwind continue];
} }
bb8: { bb8: {
- StorageDead(_26); StorageDead(_26);
StorageDead(_25); StorageDead(_25);
StorageLive(_27); StorageLive(_27);
StorageLive(_28); StorageLive(_28);
- StorageLive(_29); StorageLive(_29);
- _29 = _1; - _29 = _1;
- _28 = move _29 as f32 (IntToFloat); - _28 = move _29 as f32 (IntToFloat);
- StorageDead(_29); + _29 = const 1_i64;
+ _28 = const 1_i64 as f32 (IntToFloat); + _28 = const 1_i64 as f32 (IntToFloat);
StorageDead(_29);
_27 = opaque::<f32>(move _28) -> [return: bb9, unwind continue]; _27 = opaque::<f32>(move _28) -> [return: bb9, unwind continue];
} }
@ -226,11 +238,12 @@
StorageDead(_27); StorageDead(_27);
StorageLive(_30); StorageLive(_30);
StorageLive(_31); StorageLive(_31);
- StorageLive(_32); StorageLive(_32);
- _32 = _1; - _32 = _1;
- _31 = move _32 as f64 (IntToFloat); - _31 = move _32 as f64 (IntToFloat);
- StorageDead(_32); + _32 = const 1_i64;
+ _31 = const 1_i64 as f64 (IntToFloat); + _31 = const 1_i64 as f64 (IntToFloat);
StorageDead(_32);
_30 = opaque::<f64>(move _31) -> [return: bb10, unwind continue]; _30 = opaque::<f64>(move _31) -> [return: bb10, unwind continue];
} }
@ -239,11 +252,12 @@
StorageDead(_30); StorageDead(_30);
StorageLive(_33); StorageLive(_33);
StorageLive(_34); StorageLive(_34);
- StorageLive(_35); StorageLive(_35);
- _35 = _2; - _35 = _2;
- _34 = move _35 as u8 (IntToInt); - _34 = move _35 as u8 (IntToInt);
- StorageDead(_35); + _35 = const 1_u64;
+ _34 = const 1_u64 as u8 (IntToInt); + _34 = const 1_u64 as u8 (IntToInt);
StorageDead(_35);
_33 = opaque::<u8>(move _34) -> [return: bb11, unwind continue]; _33 = opaque::<u8>(move _34) -> [return: bb11, unwind continue];
} }
@ -252,11 +266,12 @@
StorageDead(_33); StorageDead(_33);
StorageLive(_36); StorageLive(_36);
StorageLive(_37); StorageLive(_37);
- StorageLive(_38); StorageLive(_38);
- _38 = _2; - _38 = _2;
- _37 = move _38 as u16 (IntToInt); - _37 = move _38 as u16 (IntToInt);
- StorageDead(_38); + _38 = const 1_u64;
+ _37 = const 1_u64 as u16 (IntToInt); + _37 = const 1_u64 as u16 (IntToInt);
StorageDead(_38);
_36 = opaque::<u16>(move _37) -> [return: bb12, unwind continue]; _36 = opaque::<u16>(move _37) -> [return: bb12, unwind continue];
} }
@ -265,11 +280,12 @@
StorageDead(_36); StorageDead(_36);
StorageLive(_39); StorageLive(_39);
StorageLive(_40); StorageLive(_40);
- StorageLive(_41); StorageLive(_41);
- _41 = _2; - _41 = _2;
- _40 = move _41 as u32 (IntToInt); - _40 = move _41 as u32 (IntToInt);
- StorageDead(_41); + _41 = const 1_u64;
+ _40 = const 1_u64 as u32 (IntToInt); + _40 = const 1_u64 as u32 (IntToInt);
StorageDead(_41);
_39 = opaque::<u32>(move _40) -> [return: bb13, unwind continue]; _39 = opaque::<u32>(move _40) -> [return: bb13, unwind continue];
} }
@ -277,22 +293,24 @@
StorageDead(_40); StorageDead(_40);
StorageDead(_39); StorageDead(_39);
StorageLive(_42); StorageLive(_42);
- StorageLive(_43); StorageLive(_43);
- _43 = _2; - _43 = _2;
- _42 = opaque::<u64>(move _43) -> [return: bb14, unwind continue]; - _42 = opaque::<u64>(move _43) -> [return: bb14, unwind continue];
+ _43 = const 1_u64;
+ _42 = opaque::<u64>(const 1_u64) -> [return: bb14, unwind continue]; + _42 = opaque::<u64>(const 1_u64) -> [return: bb14, unwind continue];
} }
bb14: { bb14: {
- StorageDead(_43); StorageDead(_43);
StorageDead(_42); StorageDead(_42);
StorageLive(_44); StorageLive(_44);
StorageLive(_45); StorageLive(_45);
- StorageLive(_46); StorageLive(_46);
- _46 = _2; - _46 = _2;
- _45 = move _46 as i8 (IntToInt); - _45 = move _46 as i8 (IntToInt);
- StorageDead(_46); + _46 = const 1_u64;
+ _45 = const 1_u64 as i8 (IntToInt); + _45 = const 1_u64 as i8 (IntToInt);
StorageDead(_46);
_44 = opaque::<i8>(move _45) -> [return: bb15, unwind continue]; _44 = opaque::<i8>(move _45) -> [return: bb15, unwind continue];
} }
@ -301,11 +319,12 @@
StorageDead(_44); StorageDead(_44);
StorageLive(_47); StorageLive(_47);
StorageLive(_48); StorageLive(_48);
- StorageLive(_49); StorageLive(_49);
- _49 = _2; - _49 = _2;
- _48 = move _49 as i16 (IntToInt); - _48 = move _49 as i16 (IntToInt);
- StorageDead(_49); + _49 = const 1_u64;
+ _48 = const 1_u64 as i16 (IntToInt); + _48 = const 1_u64 as i16 (IntToInt);
StorageDead(_49);
_47 = opaque::<i16>(move _48) -> [return: bb16, unwind continue]; _47 = opaque::<i16>(move _48) -> [return: bb16, unwind continue];
} }
@ -314,11 +333,12 @@
StorageDead(_47); StorageDead(_47);
StorageLive(_50); StorageLive(_50);
StorageLive(_51); StorageLive(_51);
- StorageLive(_52); StorageLive(_52);
- _52 = _2; - _52 = _2;
- _51 = move _52 as i32 (IntToInt); - _51 = move _52 as i32 (IntToInt);
- StorageDead(_52); + _52 = const 1_u64;
+ _51 = const 1_u64 as i32 (IntToInt); + _51 = const 1_u64 as i32 (IntToInt);
StorageDead(_52);
_50 = opaque::<i32>(move _51) -> [return: bb17, unwind continue]; _50 = opaque::<i32>(move _51) -> [return: bb17, unwind continue];
} }
@ -327,11 +347,12 @@
StorageDead(_50); StorageDead(_50);
StorageLive(_53); StorageLive(_53);
StorageLive(_54); StorageLive(_54);
- StorageLive(_55); StorageLive(_55);
- _55 = _2; - _55 = _2;
- _54 = move _55 as i64 (IntToInt); - _54 = move _55 as i64 (IntToInt);
- StorageDead(_55); + _55 = const 1_u64;
+ _54 = const 1_u64 as i64 (IntToInt); + _54 = const 1_u64 as i64 (IntToInt);
StorageDead(_55);
_53 = opaque::<i64>(move _54) -> [return: bb18, unwind continue]; _53 = opaque::<i64>(move _54) -> [return: bb18, unwind continue];
} }
@ -340,11 +361,12 @@
StorageDead(_53); StorageDead(_53);
StorageLive(_56); StorageLive(_56);
StorageLive(_57); StorageLive(_57);
- StorageLive(_58); StorageLive(_58);
- _58 = _2; - _58 = _2;
- _57 = move _58 as f32 (IntToFloat); - _57 = move _58 as f32 (IntToFloat);
- StorageDead(_58); + _58 = const 1_u64;
+ _57 = const 1_u64 as f32 (IntToFloat); + _57 = const 1_u64 as f32 (IntToFloat);
StorageDead(_58);
_56 = opaque::<f32>(move _57) -> [return: bb19, unwind continue]; _56 = opaque::<f32>(move _57) -> [return: bb19, unwind continue];
} }
@ -353,11 +375,12 @@
StorageDead(_56); StorageDead(_56);
StorageLive(_59); StorageLive(_59);
StorageLive(_60); StorageLive(_60);
- StorageLive(_61); StorageLive(_61);
- _61 = _2; - _61 = _2;
- _60 = move _61 as f64 (IntToFloat); - _60 = move _61 as f64 (IntToFloat);
- StorageDead(_61); + _61 = const 1_u64;
+ _60 = const 1_u64 as f64 (IntToFloat); + _60 = const 1_u64 as f64 (IntToFloat);
StorageDead(_61);
_59 = opaque::<f64>(move _60) -> [return: bb20, unwind continue]; _59 = opaque::<f64>(move _60) -> [return: bb20, unwind continue];
} }
@ -366,11 +389,12 @@
StorageDead(_59); StorageDead(_59);
StorageLive(_62); StorageLive(_62);
StorageLive(_63); StorageLive(_63);
- StorageLive(_64); StorageLive(_64);
- _64 = _3; - _64 = _3;
- _63 = move _64 as u8 (FloatToInt); - _63 = move _64 as u8 (FloatToInt);
- StorageDead(_64); + _64 = const 1f64;
+ _63 = const 1f64 as u8 (FloatToInt); + _63 = const 1f64 as u8 (FloatToInt);
StorageDead(_64);
_62 = opaque::<u8>(move _63) -> [return: bb21, unwind continue]; _62 = opaque::<u8>(move _63) -> [return: bb21, unwind continue];
} }
@ -379,11 +403,12 @@
StorageDead(_62); StorageDead(_62);
StorageLive(_65); StorageLive(_65);
StorageLive(_66); StorageLive(_66);
- StorageLive(_67); StorageLive(_67);
- _67 = _3; - _67 = _3;
- _66 = move _67 as u16 (FloatToInt); - _66 = move _67 as u16 (FloatToInt);
- StorageDead(_67); + _67 = const 1f64;
+ _66 = const 1f64 as u16 (FloatToInt); + _66 = const 1f64 as u16 (FloatToInt);
StorageDead(_67);
_65 = opaque::<u16>(move _66) -> [return: bb22, unwind continue]; _65 = opaque::<u16>(move _66) -> [return: bb22, unwind continue];
} }
@ -392,11 +417,12 @@
StorageDead(_65); StorageDead(_65);
StorageLive(_68); StorageLive(_68);
StorageLive(_69); StorageLive(_69);
- StorageLive(_70); StorageLive(_70);
- _70 = _3; - _70 = _3;
- _69 = move _70 as u32 (FloatToInt); - _69 = move _70 as u32 (FloatToInt);
- StorageDead(_70); + _70 = const 1f64;
+ _69 = const 1f64 as u32 (FloatToInt); + _69 = const 1f64 as u32 (FloatToInt);
StorageDead(_70);
_68 = opaque::<u32>(move _69) -> [return: bb23, unwind continue]; _68 = opaque::<u32>(move _69) -> [return: bb23, unwind continue];
} }
@ -405,11 +431,12 @@
StorageDead(_68); StorageDead(_68);
StorageLive(_71); StorageLive(_71);
StorageLive(_72); StorageLive(_72);
- StorageLive(_73); StorageLive(_73);
- _73 = _3; - _73 = _3;
- _72 = move _73 as u64 (FloatToInt); - _72 = move _73 as u64 (FloatToInt);
- StorageDead(_73); + _73 = const 1f64;
+ _72 = const 1f64 as u64 (FloatToInt); + _72 = const 1f64 as u64 (FloatToInt);
StorageDead(_73);
_71 = opaque::<u64>(move _72) -> [return: bb24, unwind continue]; _71 = opaque::<u64>(move _72) -> [return: bb24, unwind continue];
} }
@ -418,11 +445,12 @@
StorageDead(_71); StorageDead(_71);
StorageLive(_74); StorageLive(_74);
StorageLive(_75); StorageLive(_75);
- StorageLive(_76); StorageLive(_76);
- _76 = _3; - _76 = _3;
- _75 = move _76 as i8 (FloatToInt); - _75 = move _76 as i8 (FloatToInt);
- StorageDead(_76); + _76 = const 1f64;
+ _75 = const 1f64 as i8 (FloatToInt); + _75 = const 1f64 as i8 (FloatToInt);
StorageDead(_76);
_74 = opaque::<i8>(move _75) -> [return: bb25, unwind continue]; _74 = opaque::<i8>(move _75) -> [return: bb25, unwind continue];
} }
@ -431,11 +459,12 @@
StorageDead(_74); StorageDead(_74);
StorageLive(_77); StorageLive(_77);
StorageLive(_78); StorageLive(_78);
- StorageLive(_79); StorageLive(_79);
- _79 = _3; - _79 = _3;
- _78 = move _79 as i16 (FloatToInt); - _78 = move _79 as i16 (FloatToInt);
- StorageDead(_79); + _79 = const 1f64;
+ _78 = const 1f64 as i16 (FloatToInt); + _78 = const 1f64 as i16 (FloatToInt);
StorageDead(_79);
_77 = opaque::<i16>(move _78) -> [return: bb26, unwind continue]; _77 = opaque::<i16>(move _78) -> [return: bb26, unwind continue];
} }
@ -444,11 +473,12 @@
StorageDead(_77); StorageDead(_77);
StorageLive(_80); StorageLive(_80);
StorageLive(_81); StorageLive(_81);
- StorageLive(_82); StorageLive(_82);
- _82 = _3; - _82 = _3;
- _81 = move _82 as i32 (FloatToInt); - _81 = move _82 as i32 (FloatToInt);
- StorageDead(_82); + _82 = const 1f64;
+ _81 = const 1f64 as i32 (FloatToInt); + _81 = const 1f64 as i32 (FloatToInt);
StorageDead(_82);
_80 = opaque::<i32>(move _81) -> [return: bb27, unwind continue]; _80 = opaque::<i32>(move _81) -> [return: bb27, unwind continue];
} }
@ -457,11 +487,12 @@
StorageDead(_80); StorageDead(_80);
StorageLive(_83); StorageLive(_83);
StorageLive(_84); StorageLive(_84);
- StorageLive(_85); StorageLive(_85);
- _85 = _3; - _85 = _3;
- _84 = move _85 as i64 (FloatToInt); - _84 = move _85 as i64 (FloatToInt);
- StorageDead(_85); + _85 = const 1f64;
+ _84 = const 1f64 as i64 (FloatToInt); + _84 = const 1f64 as i64 (FloatToInt);
StorageDead(_85);
_83 = opaque::<i64>(move _84) -> [return: bb28, unwind continue]; _83 = opaque::<i64>(move _84) -> [return: bb28, unwind continue];
} }
@ -470,11 +501,12 @@
StorageDead(_83); StorageDead(_83);
StorageLive(_86); StorageLive(_86);
StorageLive(_87); StorageLive(_87);
- StorageLive(_88); StorageLive(_88);
- _88 = _3; - _88 = _3;
- _87 = move _88 as f32 (FloatToFloat); - _87 = move _88 as f32 (FloatToFloat);
- StorageDead(_88); + _88 = const 1f64;
+ _87 = const 1f64 as f32 (FloatToFloat); + _87 = const 1f64 as f32 (FloatToFloat);
StorageDead(_88);
_86 = opaque::<f32>(move _87) -> [return: bb29, unwind continue]; _86 = opaque::<f32>(move _87) -> [return: bb29, unwind continue];
} }
@ -482,19 +514,23 @@
StorageDead(_87); StorageDead(_87);
StorageDead(_86); StorageDead(_86);
StorageLive(_89); StorageLive(_89);
- StorageLive(_90); StorageLive(_90);
- _90 = _3; - _90 = _3;
- _89 = opaque::<f64>(move _90) -> [return: bb30, unwind continue]; - _89 = opaque::<f64>(move _90) -> [return: bb30, unwind continue];
+ _90 = const 1f64;
+ _89 = opaque::<f64>(const 1f64) -> [return: bb30, unwind continue]; + _89 = opaque::<f64>(const 1f64) -> [return: bb30, unwind continue];
} }
bb30: { bb30: {
- StorageDead(_90); StorageDead(_90);
StorageDead(_89); StorageDead(_89);
_0 = const (); _0 = const ();
- StorageDead(_3); - StorageDead(_3);
- StorageDead(_2); - StorageDead(_2);
- StorageDead(_1); - StorageDead(_1);
+ nop;
+ nop;
+ nop;
return; return;
} }
} }

View file

@ -116,6 +116,7 @@
_18 = &(*_1); _18 = &(*_1);
StorageLive(_19); StorageLive(_19);
- StorageLive(_20); - StorageLive(_20);
+ nop;
_20 = (*_18); _20 = (*_18);
- _19 = opaque::<u32>(move _20) -> [return: bb7, unwind unreachable]; - _19 = opaque::<u32>(move _20) -> [return: bb7, unwind unreachable];
+ _19 = opaque::<u32>(_20) -> [return: bb7, unwind unreachable]; + _19 = opaque::<u32>(_20) -> [return: bb7, unwind unreachable];
@ -123,16 +124,18 @@
bb7: { bb7: {
- StorageDead(_20); - StorageDead(_20);
+ nop;
StorageDead(_19); StorageDead(_19);
StorageLive(_21); StorageLive(_21);
- StorageLive(_22); StorageLive(_22);
- _22 = (*_18); - _22 = (*_18);
- _21 = opaque::<u32>(move _22) -> [return: bb8, unwind unreachable]; - _21 = opaque::<u32>(move _22) -> [return: bb8, unwind unreachable];
+ _22 = _20;
+ _21 = opaque::<u32>(_20) -> [return: bb8, unwind unreachable]; + _21 = opaque::<u32>(_20) -> [return: bb8, unwind unreachable];
} }
bb8: { bb8: {
- StorageDead(_22); StorageDead(_22);
StorageDead(_21); StorageDead(_21);
StorageLive(_23); StorageLive(_23);
StorageLive(_24); StorageLive(_24);
@ -163,6 +166,7 @@
StorageDead(_27); StorageDead(_27);
StorageLive(_29); StorageLive(_29);
- StorageLive(_30); - StorageLive(_30);
+ nop;
_30 = ((*_3).0: u32); _30 = ((*_3).0: u32);
- _29 = opaque::<u32>(move _30) -> [return: bb12, unwind unreachable]; - _29 = opaque::<u32>(move _30) -> [return: bb12, unwind unreachable];
+ _29 = opaque::<u32>(_30) -> [return: bb12, unwind unreachable]; + _29 = opaque::<u32>(_30) -> [return: bb12, unwind unreachable];
@ -170,16 +174,18 @@
bb12: { bb12: {
- StorageDead(_30); - StorageDead(_30);
+ nop;
StorageDead(_29); StorageDead(_29);
StorageLive(_31); StorageLive(_31);
- StorageLive(_32); StorageLive(_32);
- _32 = ((*_3).0: u32); - _32 = ((*_3).0: u32);
- _31 = opaque::<u32>(move _32) -> [return: bb13, unwind unreachable]; - _31 = opaque::<u32>(move _32) -> [return: bb13, unwind unreachable];
+ _32 = _30;
+ _31 = opaque::<u32>(_30) -> [return: bb13, unwind unreachable]; + _31 = opaque::<u32>(_30) -> [return: bb13, unwind unreachable];
} }
bb13: { bb13: {
- StorageDead(_32); StorageDead(_32);
StorageDead(_31); StorageDead(_31);
_0 = const (); _0 = const ();
StorageDead(_18); StorageDead(_18);

View file

@ -116,6 +116,7 @@
_18 = &(*_1); _18 = &(*_1);
StorageLive(_19); StorageLive(_19);
- StorageLive(_20); - StorageLive(_20);
+ nop;
_20 = (*_18); _20 = (*_18);
- _19 = opaque::<u32>(move _20) -> [return: bb7, unwind continue]; - _19 = opaque::<u32>(move _20) -> [return: bb7, unwind continue];
+ _19 = opaque::<u32>(_20) -> [return: bb7, unwind continue]; + _19 = opaque::<u32>(_20) -> [return: bb7, unwind continue];
@ -123,16 +124,18 @@
bb7: { bb7: {
- StorageDead(_20); - StorageDead(_20);
+ nop;
StorageDead(_19); StorageDead(_19);
StorageLive(_21); StorageLive(_21);
- StorageLive(_22); StorageLive(_22);
- _22 = (*_18); - _22 = (*_18);
- _21 = opaque::<u32>(move _22) -> [return: bb8, unwind continue]; - _21 = opaque::<u32>(move _22) -> [return: bb8, unwind continue];
+ _22 = _20;
+ _21 = opaque::<u32>(_20) -> [return: bb8, unwind continue]; + _21 = opaque::<u32>(_20) -> [return: bb8, unwind continue];
} }
bb8: { bb8: {
- StorageDead(_22); StorageDead(_22);
StorageDead(_21); StorageDead(_21);
StorageLive(_23); StorageLive(_23);
StorageLive(_24); StorageLive(_24);
@ -163,6 +166,7 @@
StorageDead(_27); StorageDead(_27);
StorageLive(_29); StorageLive(_29);
- StorageLive(_30); - StorageLive(_30);
+ nop;
_30 = ((*_3).0: u32); _30 = ((*_3).0: u32);
- _29 = opaque::<u32>(move _30) -> [return: bb12, unwind continue]; - _29 = opaque::<u32>(move _30) -> [return: bb12, unwind continue];
+ _29 = opaque::<u32>(_30) -> [return: bb12, unwind continue]; + _29 = opaque::<u32>(_30) -> [return: bb12, unwind continue];
@ -170,16 +174,18 @@
bb12: { bb12: {
- StorageDead(_30); - StorageDead(_30);
+ nop;
StorageDead(_29); StorageDead(_29);
StorageLive(_31); StorageLive(_31);
- StorageLive(_32); StorageLive(_32);
- _32 = ((*_3).0: u32); - _32 = ((*_3).0: u32);
- _31 = opaque::<u32>(move _32) -> [return: bb13, unwind continue]; - _31 = opaque::<u32>(move _32) -> [return: bb13, unwind continue];
+ _32 = _30;
+ _31 = opaque::<u32>(_30) -> [return: bb13, unwind continue]; + _31 = opaque::<u32>(_30) -> [return: bb13, unwind continue];
} }
bb13: { bb13: {
- StorageDead(_32); StorageDead(_32);
StorageDead(_31); StorageDead(_31);
_0 = const (); _0 = const ();
StorageDead(_18); StorageDead(_18);

View file

@ -39,9 +39,9 @@
let mut _34: u8; let mut _34: u8;
bb0: { bb0: {
- StorageLive(_4); StorageLive(_4);
- StorageLive(_5); StorageLive(_5);
- _5 = _1; _5 = _1;
- switchInt(move _5) -> [0: bb4, otherwise: bb1]; - switchInt(move _5) -> [0: bb4, otherwise: bb1];
+ switchInt(_1) -> [0: bb4, otherwise: bb1]; + switchInt(_1) -> [0: bb4, otherwise: bb1];
} }
@ -49,121 +49,130 @@
bb1: { bb1: {
StorageLive(_6); StorageLive(_6);
- StorageLive(_7); - StorageLive(_7);
- StorageLive(_8); + nop;
- _8 = _2; StorageLive(_8);
- StorageLive(_9); _8 = _2;
- _9 = _3; StorageLive(_9);
_9 = _3;
- _7 = Add(move _8, move _9); - _7 = Add(move _8, move _9);
- StorageDead(_9);
- StorageDead(_8);
- _6 = opaque::<u8>(move _7) -> [return: bb2, unwind unreachable];
+ _7 = Add(_2, _3); + _7 = Add(_2, _3);
StorageDead(_9);
StorageDead(_8);
- _6 = opaque::<u8>(move _7) -> [return: bb2, unwind unreachable];
+ _6 = opaque::<u8>(_7) -> [return: bb2, unwind unreachable]; + _6 = opaque::<u8>(_7) -> [return: bb2, unwind unreachable];
} }
bb2: { bb2: {
- StorageDead(_7); - StorageDead(_7);
+ nop;
StorageDead(_6); StorageDead(_6);
StorageLive(_10); StorageLive(_10);
- StorageLive(_11); StorageLive(_11);
- StorageLive(_12); StorageLive(_12);
- _12 = _2; _12 = _2;
- StorageLive(_13); StorageLive(_13);
- _13 = _3; _13 = _3;
- _11 = Add(move _12, move _13); - _11 = Add(move _12, move _13);
- StorageDead(_13); + _11 = _7;
- StorageDead(_12); StorageDead(_13);
StorageDead(_12);
- _10 = opaque::<u8>(move _11) -> [return: bb3, unwind unreachable]; - _10 = opaque::<u8>(move _11) -> [return: bb3, unwind unreachable];
+ _10 = opaque::<u8>(_7) -> [return: bb3, unwind unreachable]; + _10 = opaque::<u8>(_7) -> [return: bb3, unwind unreachable];
} }
bb3: { bb3: {
- StorageDead(_11); StorageDead(_11);
StorageDead(_10); StorageDead(_10);
- _4 = const (); _4 = const ();
goto -> bb7; goto -> bb7;
} }
bb4: { bb4: {
StorageLive(_14); StorageLive(_14);
- StorageLive(_15); - StorageLive(_15);
- StorageLive(_16); + nop;
- _16 = _2; StorageLive(_16);
- StorageLive(_17); _16 = _2;
- _17 = _3; StorageLive(_17);
_17 = _3;
- _15 = Add(move _16, move _17); - _15 = Add(move _16, move _17);
- StorageDead(_17);
- StorageDead(_16);
- _14 = opaque::<u8>(move _15) -> [return: bb5, unwind unreachable];
+ _15 = Add(_2, _3); + _15 = Add(_2, _3);
StorageDead(_17);
StorageDead(_16);
- _14 = opaque::<u8>(move _15) -> [return: bb5, unwind unreachable];
+ _14 = opaque::<u8>(_15) -> [return: bb5, unwind unreachable]; + _14 = opaque::<u8>(_15) -> [return: bb5, unwind unreachable];
} }
bb5: { bb5: {
- StorageDead(_15); - StorageDead(_15);
+ nop;
StorageDead(_14); StorageDead(_14);
StorageLive(_18); StorageLive(_18);
- StorageLive(_19); StorageLive(_19);
- StorageLive(_20); StorageLive(_20);
- _20 = _2; _20 = _2;
- StorageLive(_21); StorageLive(_21);
- _21 = _3; _21 = _3;
- _19 = Add(move _20, move _21); - _19 = Add(move _20, move _21);
- StorageDead(_21); + _19 = _15;
- StorageDead(_20); StorageDead(_21);
StorageDead(_20);
- _18 = opaque::<u8>(move _19) -> [return: bb6, unwind unreachable]; - _18 = opaque::<u8>(move _19) -> [return: bb6, unwind unreachable];
+ _18 = opaque::<u8>(_15) -> [return: bb6, unwind unreachable]; + _18 = opaque::<u8>(_15) -> [return: bb6, unwind unreachable];
} }
bb6: { bb6: {
- StorageDead(_19); StorageDead(_19);
StorageDead(_18); StorageDead(_18);
- _4 = const (); _4 = const ();
goto -> bb7; goto -> bb7;
} }
bb7: { bb7: {
- StorageDead(_5); StorageDead(_5);
- StorageDead(_4); StorageDead(_4);
StorageLive(_22); StorageLive(_22);
- StorageLive(_23); - StorageLive(_23);
- StorageLive(_24); + nop;
- _24 = _2; StorageLive(_24);
- StorageLive(_25); _24 = _2;
- _25 = _3; StorageLive(_25);
_25 = _3;
- _23 = Add(move _24, move _25); - _23 = Add(move _24, move _25);
- StorageDead(_25);
- StorageDead(_24);
- _22 = opaque::<u8>(move _23) -> [return: bb8, unwind unreachable];
+ _23 = Add(_2, _3); + _23 = Add(_2, _3);
StorageDead(_25);
StorageDead(_24);
- _22 = opaque::<u8>(move _23) -> [return: bb8, unwind unreachable];
+ _22 = opaque::<u8>(_23) -> [return: bb8, unwind unreachable]; + _22 = opaque::<u8>(_23) -> [return: bb8, unwind unreachable];
} }
bb8: { bb8: {
- StorageDead(_23); - StorageDead(_23);
+ nop;
StorageDead(_22); StorageDead(_22);
- StorageLive(_26); StorageLive(_26);
- _26 = _1; _26 = _1;
- switchInt(move _26) -> [0: bb11, otherwise: bb9]; - switchInt(move _26) -> [0: bb11, otherwise: bb9];
+ switchInt(_1) -> [0: bb11, otherwise: bb9]; + switchInt(_1) -> [0: bb11, otherwise: bb9];
} }
bb9: { bb9: {
StorageLive(_27); StorageLive(_27);
- StorageLive(_28); StorageLive(_28);
- StorageLive(_29); StorageLive(_29);
- _29 = _2; _29 = _2;
- StorageLive(_30); StorageLive(_30);
- _30 = _3; _30 = _3;
- _28 = Add(move _29, move _30); - _28 = Add(move _29, move _30);
- StorageDead(_30); + _28 = _23;
- StorageDead(_29); StorageDead(_30);
StorageDead(_29);
- _27 = opaque::<u8>(move _28) -> [return: bb10, unwind unreachable]; - _27 = opaque::<u8>(move _28) -> [return: bb10, unwind unreachable];
+ _27 = opaque::<u8>(_23) -> [return: bb10, unwind unreachable]; + _27 = opaque::<u8>(_23) -> [return: bb10, unwind unreachable];
} }
bb10: { bb10: {
- StorageDead(_28); StorageDead(_28);
StorageDead(_27); StorageDead(_27);
_0 = const (); _0 = const ();
goto -> bb13; goto -> bb13;
@ -171,27 +180,28 @@
bb11: { bb11: {
StorageLive(_31); StorageLive(_31);
- StorageLive(_32); StorageLive(_32);
- StorageLive(_33); StorageLive(_33);
- _33 = _2; _33 = _2;
- StorageLive(_34); StorageLive(_34);
- _34 = _3; _34 = _3;
- _32 = Add(move _33, move _34); - _32 = Add(move _33, move _34);
- StorageDead(_34); + _32 = _23;
- StorageDead(_33); StorageDead(_34);
StorageDead(_33);
- _31 = opaque::<u8>(move _32) -> [return: bb12, unwind unreachable]; - _31 = opaque::<u8>(move _32) -> [return: bb12, unwind unreachable];
+ _31 = opaque::<u8>(_23) -> [return: bb12, unwind unreachable]; + _31 = opaque::<u8>(_23) -> [return: bb12, unwind unreachable];
} }
bb12: { bb12: {
- StorageDead(_32); StorageDead(_32);
StorageDead(_31); StorageDead(_31);
_0 = const (); _0 = const ();
goto -> bb13; goto -> bb13;
} }
bb13: { bb13: {
- StorageDead(_26); StorageDead(_26);
return; return;
} }
} }

View file

@ -39,9 +39,9 @@
let mut _34: u8; let mut _34: u8;
bb0: { bb0: {
- StorageLive(_4); StorageLive(_4);
- StorageLive(_5); StorageLive(_5);
- _5 = _1; _5 = _1;
- switchInt(move _5) -> [0: bb4, otherwise: bb1]; - switchInt(move _5) -> [0: bb4, otherwise: bb1];
+ switchInt(_1) -> [0: bb4, otherwise: bb1]; + switchInt(_1) -> [0: bb4, otherwise: bb1];
} }
@ -49,121 +49,130 @@
bb1: { bb1: {
StorageLive(_6); StorageLive(_6);
- StorageLive(_7); - StorageLive(_7);
- StorageLive(_8); + nop;
- _8 = _2; StorageLive(_8);
- StorageLive(_9); _8 = _2;
- _9 = _3; StorageLive(_9);
_9 = _3;
- _7 = Add(move _8, move _9); - _7 = Add(move _8, move _9);
- StorageDead(_9);
- StorageDead(_8);
- _6 = opaque::<u8>(move _7) -> [return: bb2, unwind continue];
+ _7 = Add(_2, _3); + _7 = Add(_2, _3);
StorageDead(_9);
StorageDead(_8);
- _6 = opaque::<u8>(move _7) -> [return: bb2, unwind continue];
+ _6 = opaque::<u8>(_7) -> [return: bb2, unwind continue]; + _6 = opaque::<u8>(_7) -> [return: bb2, unwind continue];
} }
bb2: { bb2: {
- StorageDead(_7); - StorageDead(_7);
+ nop;
StorageDead(_6); StorageDead(_6);
StorageLive(_10); StorageLive(_10);
- StorageLive(_11); StorageLive(_11);
- StorageLive(_12); StorageLive(_12);
- _12 = _2; _12 = _2;
- StorageLive(_13); StorageLive(_13);
- _13 = _3; _13 = _3;
- _11 = Add(move _12, move _13); - _11 = Add(move _12, move _13);
- StorageDead(_13); + _11 = _7;
- StorageDead(_12); StorageDead(_13);
StorageDead(_12);
- _10 = opaque::<u8>(move _11) -> [return: bb3, unwind continue]; - _10 = opaque::<u8>(move _11) -> [return: bb3, unwind continue];
+ _10 = opaque::<u8>(_7) -> [return: bb3, unwind continue]; + _10 = opaque::<u8>(_7) -> [return: bb3, unwind continue];
} }
bb3: { bb3: {
- StorageDead(_11); StorageDead(_11);
StorageDead(_10); StorageDead(_10);
- _4 = const (); _4 = const ();
goto -> bb7; goto -> bb7;
} }
bb4: { bb4: {
StorageLive(_14); StorageLive(_14);
- StorageLive(_15); - StorageLive(_15);
- StorageLive(_16); + nop;
- _16 = _2; StorageLive(_16);
- StorageLive(_17); _16 = _2;
- _17 = _3; StorageLive(_17);
_17 = _3;
- _15 = Add(move _16, move _17); - _15 = Add(move _16, move _17);
- StorageDead(_17);
- StorageDead(_16);
- _14 = opaque::<u8>(move _15) -> [return: bb5, unwind continue];
+ _15 = Add(_2, _3); + _15 = Add(_2, _3);
StorageDead(_17);
StorageDead(_16);
- _14 = opaque::<u8>(move _15) -> [return: bb5, unwind continue];
+ _14 = opaque::<u8>(_15) -> [return: bb5, unwind continue]; + _14 = opaque::<u8>(_15) -> [return: bb5, unwind continue];
} }
bb5: { bb5: {
- StorageDead(_15); - StorageDead(_15);
+ nop;
StorageDead(_14); StorageDead(_14);
StorageLive(_18); StorageLive(_18);
- StorageLive(_19); StorageLive(_19);
- StorageLive(_20); StorageLive(_20);
- _20 = _2; _20 = _2;
- StorageLive(_21); StorageLive(_21);
- _21 = _3; _21 = _3;
- _19 = Add(move _20, move _21); - _19 = Add(move _20, move _21);
- StorageDead(_21); + _19 = _15;
- StorageDead(_20); StorageDead(_21);
StorageDead(_20);
- _18 = opaque::<u8>(move _19) -> [return: bb6, unwind continue]; - _18 = opaque::<u8>(move _19) -> [return: bb6, unwind continue];
+ _18 = opaque::<u8>(_15) -> [return: bb6, unwind continue]; + _18 = opaque::<u8>(_15) -> [return: bb6, unwind continue];
} }
bb6: { bb6: {
- StorageDead(_19); StorageDead(_19);
StorageDead(_18); StorageDead(_18);
- _4 = const (); _4 = const ();
goto -> bb7; goto -> bb7;
} }
bb7: { bb7: {
- StorageDead(_5); StorageDead(_5);
- StorageDead(_4); StorageDead(_4);
StorageLive(_22); StorageLive(_22);
- StorageLive(_23); - StorageLive(_23);
- StorageLive(_24); + nop;
- _24 = _2; StorageLive(_24);
- StorageLive(_25); _24 = _2;
- _25 = _3; StorageLive(_25);
_25 = _3;
- _23 = Add(move _24, move _25); - _23 = Add(move _24, move _25);
- StorageDead(_25);
- StorageDead(_24);
- _22 = opaque::<u8>(move _23) -> [return: bb8, unwind continue];
+ _23 = Add(_2, _3); + _23 = Add(_2, _3);
StorageDead(_25);
StorageDead(_24);
- _22 = opaque::<u8>(move _23) -> [return: bb8, unwind continue];
+ _22 = opaque::<u8>(_23) -> [return: bb8, unwind continue]; + _22 = opaque::<u8>(_23) -> [return: bb8, unwind continue];
} }
bb8: { bb8: {
- StorageDead(_23); - StorageDead(_23);
+ nop;
StorageDead(_22); StorageDead(_22);
- StorageLive(_26); StorageLive(_26);
- _26 = _1; _26 = _1;
- switchInt(move _26) -> [0: bb11, otherwise: bb9]; - switchInt(move _26) -> [0: bb11, otherwise: bb9];
+ switchInt(_1) -> [0: bb11, otherwise: bb9]; + switchInt(_1) -> [0: bb11, otherwise: bb9];
} }
bb9: { bb9: {
StorageLive(_27); StorageLive(_27);
- StorageLive(_28); StorageLive(_28);
- StorageLive(_29); StorageLive(_29);
- _29 = _2; _29 = _2;
- StorageLive(_30); StorageLive(_30);
- _30 = _3; _30 = _3;
- _28 = Add(move _29, move _30); - _28 = Add(move _29, move _30);
- StorageDead(_30); + _28 = _23;
- StorageDead(_29); StorageDead(_30);
StorageDead(_29);
- _27 = opaque::<u8>(move _28) -> [return: bb10, unwind continue]; - _27 = opaque::<u8>(move _28) -> [return: bb10, unwind continue];
+ _27 = opaque::<u8>(_23) -> [return: bb10, unwind continue]; + _27 = opaque::<u8>(_23) -> [return: bb10, unwind continue];
} }
bb10: { bb10: {
- StorageDead(_28); StorageDead(_28);
StorageDead(_27); StorageDead(_27);
_0 = const (); _0 = const ();
goto -> bb13; goto -> bb13;
@ -171,27 +180,28 @@
bb11: { bb11: {
StorageLive(_31); StorageLive(_31);
- StorageLive(_32); StorageLive(_32);
- StorageLive(_33); StorageLive(_33);
- _33 = _2; _33 = _2;
- StorageLive(_34); StorageLive(_34);
- _34 = _3; _34 = _3;
- _32 = Add(move _33, move _34); - _32 = Add(move _33, move _34);
- StorageDead(_34); + _32 = _23;
- StorageDead(_33); StorageDead(_34);
StorageDead(_33);
- _31 = opaque::<u8>(move _32) -> [return: bb12, unwind continue]; - _31 = opaque::<u8>(move _32) -> [return: bb12, unwind continue];
+ _31 = opaque::<u8>(_23) -> [return: bb12, unwind continue]; + _31 = opaque::<u8>(_23) -> [return: bb12, unwind continue];
} }
bb12: { bb12: {
- StorageDead(_32); StorageDead(_32);
StorageDead(_31); StorageDead(_31);
_0 = const (); _0 = const ();
goto -> bb13; goto -> bb13;
} }
bb13: { bb13: {
- StorageDead(_26); StorageDead(_26);
return; return;
} }
} }

View file

@ -23,11 +23,11 @@
bb0: { bb0: {
StorageLive(_3); StorageLive(_3);
- StorageLive(_4); StorageLive(_4);
- _4 = _1; _4 = _1;
- _3 = [move _4; N]; - _3 = [move _4; N];
- StorageDead(_4);
+ _3 = [_1; N]; + _3 = [_1; N];
StorageDead(_4);
StorageLive(_5); StorageLive(_5);
StorageLive(_6); StorageLive(_6);
StorageLive(_7); StorageLive(_7);
@ -55,6 +55,7 @@
- _13 = Len(_3); - _13 = Len(_3);
- _14 = Lt(_12, _13); - _14 = Lt(_12, _13);
- assert(move _14, "index out of bounds: the length is {} but the index is {}", move _13, _12) -> [success: bb3, unwind unreachable]; - assert(move _14, "index out of bounds: the length is {} but the index is {}", move _13, _12) -> [success: bb3, unwind unreachable];
+ _13 = _8;
+ _14 = Lt(_2, _8); + _14 = Lt(_2, _8);
+ assert(move _14, "index out of bounds: the length is {} but the index is {}", _8, _2) -> [success: bb3, unwind unreachable]; + assert(move _14, "index out of bounds: the length is {} but the index is {}", _8, _2) -> [success: bb3, unwind unreachable];
} }

View file

@ -23,11 +23,11 @@
bb0: { bb0: {
StorageLive(_3); StorageLive(_3);
- StorageLive(_4); StorageLive(_4);
- _4 = _1; _4 = _1;
- _3 = [move _4; N]; - _3 = [move _4; N];
- StorageDead(_4);
+ _3 = [_1; N]; + _3 = [_1; N];
StorageDead(_4);
StorageLive(_5); StorageLive(_5);
StorageLive(_6); StorageLive(_6);
StorageLive(_7); StorageLive(_7);
@ -55,6 +55,7 @@
- _13 = Len(_3); - _13 = Len(_3);
- _14 = Lt(_12, _13); - _14 = Lt(_12, _13);
- assert(move _14, "index out of bounds: the length is {} but the index is {}", move _13, _12) -> [success: bb3, unwind continue]; - assert(move _14, "index out of bounds: the length is {} but the index is {}", move _13, _12) -> [success: bb3, unwind continue];
+ _13 = _8;
+ _14 = Lt(_2, _8); + _14 = Lt(_2, _8);
+ assert(move _14, "index out of bounds: the length is {} but the index is {}", _8, _2) -> [success: bb3, unwind continue]; + assert(move _14, "index out of bounds: the length is {} but the index is {}", _8, _2) -> [success: bb3, unwind continue];
} }

View file

@ -85,30 +85,32 @@
bb0: { bb0: {
- StorageLive(_1); - StorageLive(_1);
+ nop;
_1 = const "my favourite slice"; _1 = const "my favourite slice";
StorageLive(_2); StorageLive(_2);
- StorageLive(_3); StorageLive(_3);
- _3 = _1; _3 = _1;
- _2 = opaque::<&str>(move _3) -> [return: bb1, unwind unreachable]; - _2 = opaque::<&str>(move _3) -> [return: bb1, unwind unreachable];
+ _2 = opaque::<&str>(_1) -> [return: bb1, unwind unreachable]; + _2 = opaque::<&str>(_1) -> [return: bb1, unwind unreachable];
} }
bb1: { bb1: {
- StorageDead(_3); StorageDead(_3);
StorageDead(_2); StorageDead(_2);
StorageLive(_4); StorageLive(_4);
_4 = _1; _4 = _1;
StorageLive(_5); StorageLive(_5);
- StorageLive(_6); StorageLive(_6);
- _6 = _4; - _6 = _4;
- _5 = opaque::<&str>(move _6) -> [return: bb2, unwind unreachable]; - _5 = opaque::<&str>(move _6) -> [return: bb2, unwind unreachable];
+ _6 = _1;
+ _5 = opaque::<&str>(_1) -> [return: bb2, unwind unreachable]; + _5 = opaque::<&str>(_1) -> [return: bb2, unwind unreachable];
} }
bb2: { bb2: {
- StorageDead(_6); StorageDead(_6);
StorageDead(_5); StorageDead(_5);
- StorageLive(_7); StorageLive(_7);
StorageLive(_8); StorageLive(_8);
StorageLive(_9); StorageLive(_9);
StorageLive(_10); StorageLive(_10);
@ -149,22 +151,23 @@
bb5: { bb5: {
StorageDead(_19); StorageDead(_19);
StorageDead(_18); StorageDead(_18);
- _7 = const (); _7 = const ();
StorageDead(_17); StorageDead(_17);
StorageDead(_16); StorageDead(_16);
StorageDead(_15); StorageDead(_15);
StorageDead(_13); StorageDead(_13);
StorageDead(_10); StorageDead(_10);
StorageDead(_8); StorageDead(_8);
- StorageDead(_7); StorageDead(_7);
- StorageLive(_29); - StorageLive(_29);
+ nop;
StorageLive(_30); StorageLive(_30);
_30 = &(*_1); _30 = &(*_1);
_29 = move _30 as &[u8] (Transmute); _29 = move _30 as &[u8] (Transmute);
StorageDead(_30); StorageDead(_30);
StorageLive(_31); StorageLive(_31);
- StorageLive(_32); StorageLive(_32);
- _32 = _29; _32 = _29;
- _31 = opaque::<&[u8]>(move _32) -> [return: bb7, unwind unreachable]; - _31 = opaque::<&[u8]>(move _32) -> [return: bb7, unwind unreachable];
+ _31 = opaque::<&[u8]>(_29) -> [return: bb7, unwind unreachable]; + _31 = opaque::<&[u8]>(_29) -> [return: bb7, unwind unreachable];
} }
@ -173,10 +176,12 @@
StorageDead(_19); StorageDead(_19);
StorageDead(_18); StorageDead(_18);
- StorageLive(_21); - StorageLive(_21);
+ nop;
_21 = core::panicking::AssertKind::Eq; _21 = core::panicking::AssertKind::Eq;
StorageLive(_22); StorageLive(_22);
- StorageLive(_23); StorageLive(_23);
- _23 = move _21; - _23 = move _21;
+ _23 = _21;
StorageLive(_24); StorageLive(_24);
StorageLive(_25); StorageLive(_25);
_25 = &(*_15); _25 = &(*_15);
@ -192,9 +197,9 @@
} }
bb7: { bb7: {
- StorageDead(_32); StorageDead(_32);
StorageDead(_31); StorageDead(_31);
- StorageLive(_33); StorageLive(_33);
StorageLive(_34); StorageLive(_34);
StorageLive(_35); StorageLive(_35);
StorageLive(_36); StorageLive(_36);
@ -235,18 +240,20 @@
bb10: { bb10: {
StorageDead(_45); StorageDead(_45);
StorageDead(_44); StorageDead(_44);
- _33 = const (); _33 = const ();
StorageDead(_43); StorageDead(_43);
StorageDead(_42); StorageDead(_42);
StorageDead(_41); StorageDead(_41);
StorageDead(_39); StorageDead(_39);
StorageDead(_36); StorageDead(_36);
StorageDead(_34); StorageDead(_34);
- StorageDead(_33); StorageDead(_33);
_0 = const (); _0 = const ();
- StorageDead(_29); - StorageDead(_29);
+ nop;
StorageDead(_4); StorageDead(_4);
- StorageDead(_1); - StorageDead(_1);
+ nop;
return; return;
} }
@ -254,10 +261,12 @@
StorageDead(_45); StorageDead(_45);
StorageDead(_44); StorageDead(_44);
- StorageLive(_47); - StorageLive(_47);
+ nop;
_47 = core::panicking::AssertKind::Eq; _47 = core::panicking::AssertKind::Eq;
StorageLive(_48); StorageLive(_48);
- StorageLive(_49); StorageLive(_49);
- _49 = move _47; - _49 = move _47;
+ _49 = _47;
StorageLive(_50); StorageLive(_50);
StorageLive(_51); StorageLive(_51);
_51 = &(*_41); _51 = &(*_41);

View file

@ -85,30 +85,32 @@
bb0: { bb0: {
- StorageLive(_1); - StorageLive(_1);
+ nop;
_1 = const "my favourite slice"; _1 = const "my favourite slice";
StorageLive(_2); StorageLive(_2);
- StorageLive(_3); StorageLive(_3);
- _3 = _1; _3 = _1;
- _2 = opaque::<&str>(move _3) -> [return: bb1, unwind continue]; - _2 = opaque::<&str>(move _3) -> [return: bb1, unwind continue];
+ _2 = opaque::<&str>(_1) -> [return: bb1, unwind continue]; + _2 = opaque::<&str>(_1) -> [return: bb1, unwind continue];
} }
bb1: { bb1: {
- StorageDead(_3); StorageDead(_3);
StorageDead(_2); StorageDead(_2);
StorageLive(_4); StorageLive(_4);
_4 = _1; _4 = _1;
StorageLive(_5); StorageLive(_5);
- StorageLive(_6); StorageLive(_6);
- _6 = _4; - _6 = _4;
- _5 = opaque::<&str>(move _6) -> [return: bb2, unwind continue]; - _5 = opaque::<&str>(move _6) -> [return: bb2, unwind continue];
+ _6 = _1;
+ _5 = opaque::<&str>(_1) -> [return: bb2, unwind continue]; + _5 = opaque::<&str>(_1) -> [return: bb2, unwind continue];
} }
bb2: { bb2: {
- StorageDead(_6); StorageDead(_6);
StorageDead(_5); StorageDead(_5);
- StorageLive(_7); StorageLive(_7);
StorageLive(_8); StorageLive(_8);
StorageLive(_9); StorageLive(_9);
StorageLive(_10); StorageLive(_10);
@ -149,22 +151,23 @@
bb5: { bb5: {
StorageDead(_19); StorageDead(_19);
StorageDead(_18); StorageDead(_18);
- _7 = const (); _7 = const ();
StorageDead(_17); StorageDead(_17);
StorageDead(_16); StorageDead(_16);
StorageDead(_15); StorageDead(_15);
StorageDead(_13); StorageDead(_13);
StorageDead(_10); StorageDead(_10);
StorageDead(_8); StorageDead(_8);
- StorageDead(_7); StorageDead(_7);
- StorageLive(_29); - StorageLive(_29);
+ nop;
StorageLive(_30); StorageLive(_30);
_30 = &(*_1); _30 = &(*_1);
_29 = move _30 as &[u8] (Transmute); _29 = move _30 as &[u8] (Transmute);
StorageDead(_30); StorageDead(_30);
StorageLive(_31); StorageLive(_31);
- StorageLive(_32); StorageLive(_32);
- _32 = _29; _32 = _29;
- _31 = opaque::<&[u8]>(move _32) -> [return: bb7, unwind continue]; - _31 = opaque::<&[u8]>(move _32) -> [return: bb7, unwind continue];
+ _31 = opaque::<&[u8]>(_29) -> [return: bb7, unwind continue]; + _31 = opaque::<&[u8]>(_29) -> [return: bb7, unwind continue];
} }
@ -173,10 +176,12 @@
StorageDead(_19); StorageDead(_19);
StorageDead(_18); StorageDead(_18);
- StorageLive(_21); - StorageLive(_21);
+ nop;
_21 = core::panicking::AssertKind::Eq; _21 = core::panicking::AssertKind::Eq;
StorageLive(_22); StorageLive(_22);
- StorageLive(_23); StorageLive(_23);
- _23 = move _21; - _23 = move _21;
+ _23 = _21;
StorageLive(_24); StorageLive(_24);
StorageLive(_25); StorageLive(_25);
_25 = &(*_15); _25 = &(*_15);
@ -192,9 +197,9 @@
} }
bb7: { bb7: {
- StorageDead(_32); StorageDead(_32);
StorageDead(_31); StorageDead(_31);
- StorageLive(_33); StorageLive(_33);
StorageLive(_34); StorageLive(_34);
StorageLive(_35); StorageLive(_35);
StorageLive(_36); StorageLive(_36);
@ -235,18 +240,20 @@
bb10: { bb10: {
StorageDead(_45); StorageDead(_45);
StorageDead(_44); StorageDead(_44);
- _33 = const (); _33 = const ();
StorageDead(_43); StorageDead(_43);
StorageDead(_42); StorageDead(_42);
StorageDead(_41); StorageDead(_41);
StorageDead(_39); StorageDead(_39);
StorageDead(_36); StorageDead(_36);
StorageDead(_34); StorageDead(_34);
- StorageDead(_33); StorageDead(_33);
_0 = const (); _0 = const ();
- StorageDead(_29); - StorageDead(_29);
+ nop;
StorageDead(_4); StorageDead(_4);
- StorageDead(_1); - StorageDead(_1);
+ nop;
return; return;
} }
@ -254,10 +261,12 @@
StorageDead(_45); StorageDead(_45);
StorageDead(_44); StorageDead(_44);
- StorageLive(_47); - StorageLive(_47);
+ nop;
_47 = core::panicking::AssertKind::Eq; _47 = core::panicking::AssertKind::Eq;
StorageLive(_48); StorageLive(_48);
- StorageLive(_49); StorageLive(_49);
- _49 = move _47; - _49 = move _47;
+ _49 = _47;
StorageLive(_50); StorageLive(_50);
StorageLive(_51); StorageLive(_51);
_51 = &(*_41); _51 = &(*_41);

View file

@ -197,61 +197,68 @@
bb0: { bb0: {
StorageLive(_4); StorageLive(_4);
- StorageLive(_5); - StorageLive(_5);
- StorageLive(_6); + nop;
- _6 = _1; StorageLive(_6);
- StorageLive(_7); _6 = _1;
- _7 = _2; StorageLive(_7);
_7 = _2;
- _5 = Add(move _6, move _7); - _5 = Add(move _6, move _7);
- StorageDead(_7);
- StorageDead(_6);
- _4 = opaque::<u64>(move _5) -> [return: bb1, unwind unreachable];
+ _5 = Add(_1, _2); + _5 = Add(_1, _2);
StorageDead(_7);
StorageDead(_6);
- _4 = opaque::<u64>(move _5) -> [return: bb1, unwind unreachable];
+ _4 = opaque::<u64>(_5) -> [return: bb1, unwind unreachable]; + _4 = opaque::<u64>(_5) -> [return: bb1, unwind unreachable];
} }
bb1: { bb1: {
- StorageDead(_5); - StorageDead(_5);
+ nop;
StorageDead(_4); StorageDead(_4);
StorageLive(_8); StorageLive(_8);
- StorageLive(_9); - StorageLive(_9);
- StorageLive(_10); + nop;
- _10 = _1; StorageLive(_10);
- StorageLive(_11); _10 = _1;
- _11 = _2; StorageLive(_11);
_11 = _2;
- _9 = Mul(move _10, move _11); - _9 = Mul(move _10, move _11);
- StorageDead(_11);
- StorageDead(_10);
- _8 = opaque::<u64>(move _9) -> [return: bb2, unwind unreachable];
+ _9 = Mul(_1, _2); + _9 = Mul(_1, _2);
StorageDead(_11);
StorageDead(_10);
- _8 = opaque::<u64>(move _9) -> [return: bb2, unwind unreachable];
+ _8 = opaque::<u64>(_9) -> [return: bb2, unwind unreachable]; + _8 = opaque::<u64>(_9) -> [return: bb2, unwind unreachable];
} }
bb2: { bb2: {
- StorageDead(_9); - StorageDead(_9);
+ nop;
StorageDead(_8); StorageDead(_8);
StorageLive(_12); StorageLive(_12);
- StorageLive(_13); - StorageLive(_13);
- StorageLive(_14); + nop;
- _14 = _1; StorageLive(_14);
- StorageLive(_15); _14 = _1;
- _15 = _2; StorageLive(_15);
_15 = _2;
- _13 = Sub(move _14, move _15); - _13 = Sub(move _14, move _15);
- StorageDead(_15);
- StorageDead(_14);
- _12 = opaque::<u64>(move _13) -> [return: bb3, unwind unreachable];
+ _13 = Sub(_1, _2); + _13 = Sub(_1, _2);
StorageDead(_15);
StorageDead(_14);
- _12 = opaque::<u64>(move _13) -> [return: bb3, unwind unreachable];
+ _12 = opaque::<u64>(_13) -> [return: bb3, unwind unreachable]; + _12 = opaque::<u64>(_13) -> [return: bb3, unwind unreachable];
} }
bb3: { bb3: {
- StorageDead(_13); - StorageDead(_13);
+ nop;
StorageDead(_12); StorageDead(_12);
StorageLive(_16); StorageLive(_16);
- StorageLive(_17); - StorageLive(_17);
- StorageLive(_18); + nop;
- _18 = _1; StorageLive(_18);
- StorageLive(_19); _18 = _1;
- _19 = _2; StorageLive(_19);
_19 = _2;
- _20 = Eq(_19, const 0_u64); - _20 = Eq(_19, const 0_u64);
- assert(!move _20, "attempt to divide `{}` by zero", _18) -> [success: bb4, unwind unreachable]; - assert(!move _20, "attempt to divide `{}` by zero", _18) -> [success: bb4, unwind unreachable];
+ _20 = Eq(_2, const 0_u64); + _20 = Eq(_2, const 0_u64);
@ -260,131 +267,145 @@
bb4: { bb4: {
- _17 = Div(move _18, move _19); - _17 = Div(move _18, move _19);
- StorageDead(_19);
- StorageDead(_18);
- _16 = opaque::<u64>(move _17) -> [return: bb5, unwind unreachable];
+ _17 = Div(_1, _2); + _17 = Div(_1, _2);
StorageDead(_19);
StorageDead(_18);
- _16 = opaque::<u64>(move _17) -> [return: bb5, unwind unreachable];
+ _16 = opaque::<u64>(_17) -> [return: bb5, unwind unreachable]; + _16 = opaque::<u64>(_17) -> [return: bb5, unwind unreachable];
} }
bb5: { bb5: {
- StorageDead(_17); - StorageDead(_17);
+ nop;
StorageDead(_16); StorageDead(_16);
StorageLive(_21); StorageLive(_21);
- StorageLive(_22); - StorageLive(_22);
- StorageLive(_23); + nop;
- _23 = _1; StorageLive(_23);
- StorageLive(_24); _23 = _1;
- _24 = _2; StorageLive(_24);
_24 = _2;
- _25 = Eq(_24, const 0_u64); - _25 = Eq(_24, const 0_u64);
- assert(!move _25, "attempt to calculate the remainder of `{}` with a divisor of zero", _23) -> [success: bb6, unwind unreachable]; - assert(!move _25, "attempt to calculate the remainder of `{}` with a divisor of zero", _23) -> [success: bb6, unwind unreachable];
+ _25 = _20;
+ assert(!_20, "attempt to calculate the remainder of `{}` with a divisor of zero", _1) -> [success: bb6, unwind unreachable]; + assert(!_20, "attempt to calculate the remainder of `{}` with a divisor of zero", _1) -> [success: bb6, unwind unreachable];
} }
bb6: { bb6: {
- _22 = Rem(move _23, move _24); - _22 = Rem(move _23, move _24);
- StorageDead(_24);
- StorageDead(_23);
- _21 = opaque::<u64>(move _22) -> [return: bb7, unwind unreachable];
+ _22 = Rem(_1, _2); + _22 = Rem(_1, _2);
StorageDead(_24);
StorageDead(_23);
- _21 = opaque::<u64>(move _22) -> [return: bb7, unwind unreachable];
+ _21 = opaque::<u64>(_22) -> [return: bb7, unwind unreachable]; + _21 = opaque::<u64>(_22) -> [return: bb7, unwind unreachable];
} }
bb7: { bb7: {
- StorageDead(_22); - StorageDead(_22);
+ nop;
StorageDead(_21); StorageDead(_21);
StorageLive(_26); StorageLive(_26);
- StorageLive(_27); - StorageLive(_27);
- StorageLive(_28); + nop;
- _28 = _1; StorageLive(_28);
- StorageLive(_29); _28 = _1;
- _29 = _2; StorageLive(_29);
_29 = _2;
- _27 = BitAnd(move _28, move _29); - _27 = BitAnd(move _28, move _29);
- StorageDead(_29);
- StorageDead(_28);
- _26 = opaque::<u64>(move _27) -> [return: bb8, unwind unreachable];
+ _27 = BitAnd(_1, _2); + _27 = BitAnd(_1, _2);
StorageDead(_29);
StorageDead(_28);
- _26 = opaque::<u64>(move _27) -> [return: bb8, unwind unreachable];
+ _26 = opaque::<u64>(_27) -> [return: bb8, unwind unreachable]; + _26 = opaque::<u64>(_27) -> [return: bb8, unwind unreachable];
} }
bb8: { bb8: {
- StorageDead(_27); - StorageDead(_27);
+ nop;
StorageDead(_26); StorageDead(_26);
StorageLive(_30); StorageLive(_30);
- StorageLive(_31); - StorageLive(_31);
- StorageLive(_32); + nop;
- _32 = _1; StorageLive(_32);
- StorageLive(_33); _32 = _1;
- _33 = _2; StorageLive(_33);
_33 = _2;
- _31 = BitOr(move _32, move _33); - _31 = BitOr(move _32, move _33);
- StorageDead(_33);
- StorageDead(_32);
- _30 = opaque::<u64>(move _31) -> [return: bb9, unwind unreachable];
+ _31 = BitOr(_1, _2); + _31 = BitOr(_1, _2);
StorageDead(_33);
StorageDead(_32);
- _30 = opaque::<u64>(move _31) -> [return: bb9, unwind unreachable];
+ _30 = opaque::<u64>(_31) -> [return: bb9, unwind unreachable]; + _30 = opaque::<u64>(_31) -> [return: bb9, unwind unreachable];
} }
bb9: { bb9: {
- StorageDead(_31); - StorageDead(_31);
+ nop;
StorageDead(_30); StorageDead(_30);
StorageLive(_34); StorageLive(_34);
- StorageLive(_35); - StorageLive(_35);
- StorageLive(_36); + nop;
- _36 = _1; StorageLive(_36);
- StorageLive(_37); _36 = _1;
- _37 = _2; StorageLive(_37);
_37 = _2;
- _35 = BitXor(move _36, move _37); - _35 = BitXor(move _36, move _37);
- StorageDead(_37);
- StorageDead(_36);
- _34 = opaque::<u64>(move _35) -> [return: bb10, unwind unreachable];
+ _35 = BitXor(_1, _2); + _35 = BitXor(_1, _2);
StorageDead(_37);
StorageDead(_36);
- _34 = opaque::<u64>(move _35) -> [return: bb10, unwind unreachable];
+ _34 = opaque::<u64>(_35) -> [return: bb10, unwind unreachable]; + _34 = opaque::<u64>(_35) -> [return: bb10, unwind unreachable];
} }
bb10: { bb10: {
- StorageDead(_35); - StorageDead(_35);
+ nop;
StorageDead(_34); StorageDead(_34);
StorageLive(_38); StorageLive(_38);
- StorageLive(_39); - StorageLive(_39);
- StorageLive(_40); + nop;
- _40 = _1; StorageLive(_40);
- StorageLive(_41); _40 = _1;
- _41 = _2; StorageLive(_41);
_41 = _2;
- _39 = Shl(move _40, move _41); - _39 = Shl(move _40, move _41);
- StorageDead(_41);
- StorageDead(_40);
- _38 = opaque::<u64>(move _39) -> [return: bb11, unwind unreachable];
+ _39 = Shl(_1, _2); + _39 = Shl(_1, _2);
StorageDead(_41);
StorageDead(_40);
- _38 = opaque::<u64>(move _39) -> [return: bb11, unwind unreachable];
+ _38 = opaque::<u64>(_39) -> [return: bb11, unwind unreachable]; + _38 = opaque::<u64>(_39) -> [return: bb11, unwind unreachable];
} }
bb11: { bb11: {
- StorageDead(_39); - StorageDead(_39);
+ nop;
StorageDead(_38); StorageDead(_38);
StorageLive(_42); StorageLive(_42);
- StorageLive(_43); - StorageLive(_43);
- StorageLive(_44); + nop;
- _44 = _1; StorageLive(_44);
- StorageLive(_45); _44 = _1;
- _45 = _2; StorageLive(_45);
_45 = _2;
- _43 = Shr(move _44, move _45); - _43 = Shr(move _44, move _45);
- StorageDead(_45);
- StorageDead(_44);
- _42 = opaque::<u64>(move _43) -> [return: bb12, unwind unreachable];
+ _43 = Shr(_1, _2); + _43 = Shr(_1, _2);
StorageDead(_45);
StorageDead(_44);
- _42 = opaque::<u64>(move _43) -> [return: bb12, unwind unreachable];
+ _42 = opaque::<u64>(_43) -> [return: bb12, unwind unreachable]; + _42 = opaque::<u64>(_43) -> [return: bb12, unwind unreachable];
} }
bb12: { bb12: {
- StorageDead(_43); - StorageDead(_43);
+ nop;
StorageDead(_42); StorageDead(_42);
StorageLive(_46); StorageLive(_46);
StorageLive(_47); StorageLive(_47);
- StorageLive(_48); StorageLive(_48);
- _48 = _1; _48 = _1;
- _47 = move _48 as u32 (IntToInt); - _47 = move _48 as u32 (IntToInt);
- StorageDead(_48);
+ _47 = _1 as u32 (IntToInt); + _47 = _1 as u32 (IntToInt);
StorageDead(_48);
_46 = opaque::<u32>(move _47) -> [return: bb13, unwind unreachable]; _46 = opaque::<u32>(move _47) -> [return: bb13, unwind unreachable];
} }
@ -393,11 +414,11 @@
StorageDead(_46); StorageDead(_46);
StorageLive(_49); StorageLive(_49);
StorageLive(_50); StorageLive(_50);
- StorageLive(_51); StorageLive(_51);
- _51 = _1; _51 = _1;
- _50 = move _51 as f32 (IntToFloat); - _50 = move _51 as f32 (IntToFloat);
- StorageDead(_51);
+ _50 = _1 as f32 (IntToFloat); + _50 = _1 as f32 (IntToFloat);
StorageDead(_51);
_49 = opaque::<f32>(move _50) -> [return: bb14, unwind unreachable]; _49 = opaque::<f32>(move _50) -> [return: bb14, unwind unreachable];
} }
@ -406,25 +427,29 @@
StorageDead(_49); StorageDead(_49);
StorageLive(_52); StorageLive(_52);
- StorageLive(_53); - StorageLive(_53);
- StorageLive(_54); + nop;
- _54 = _1; StorageLive(_54);
_54 = _1;
- _53 = S::<u64>(move _54); - _53 = S::<u64>(move _54);
- StorageDead(_54);
- _52 = opaque::<S<u64>>(move _53) -> [return: bb15, unwind unreachable];
+ _53 = S::<u64>(_1); + _53 = S::<u64>(_1);
StorageDead(_54);
- _52 = opaque::<S<u64>>(move _53) -> [return: bb15, unwind unreachable];
+ _52 = opaque::<S<u64>>(_53) -> [return: bb15, unwind unreachable]; + _52 = opaque::<S<u64>>(_53) -> [return: bb15, unwind unreachable];
} }
bb15: { bb15: {
- StorageDead(_53); - StorageDead(_53);
+ nop;
StorageDead(_52); StorageDead(_52);
StorageLive(_55); StorageLive(_55);
- StorageLive(_56); - StorageLive(_56);
- StorageLive(_57); + nop;
- StorageLive(_58); StorageLive(_57);
- _58 = _1; StorageLive(_58);
_58 = _1;
- _57 = S::<u64>(move _58); - _57 = S::<u64>(move _58);
- StorageDead(_58); + _57 = _53;
StorageDead(_58);
- _56 = (_57.0: u64); - _56 = (_57.0: u64);
- _55 = opaque::<u64>(move _56) -> [return: bb16, unwind unreachable]; - _55 = opaque::<u64>(move _56) -> [return: bb16, unwind unreachable];
+ _56 = (_53.0: u64); + _56 = (_53.0: u64);
@ -433,24 +458,26 @@
bb16: { bb16: {
- StorageDead(_56); - StorageDead(_56);
- StorageDead(_57); + nop;
StorageDead(_57);
StorageDead(_55); StorageDead(_55);
StorageLive(_59); StorageLive(_59);
StorageLive(_60); StorageLive(_60);
- StorageLive(_61); StorageLive(_61);
- StorageLive(_62); StorageLive(_62);
- _62 = _1; _62 = _1;
- StorageLive(_63); StorageLive(_63);
- _63 = _2; _63 = _2;
- _61 = Add(move _62, move _63); - _61 = Add(move _62, move _63);
- StorageDead(_63); + _61 = _5;
- StorageDead(_62); StorageDead(_63);
StorageDead(_62);
StorageLive(_64); StorageLive(_64);
_64 = _3; _64 = _3;
- _60 = Add(move _61, move _64); - _60 = Add(move _61, move _64);
+ _60 = Add(_5, move _64); + _60 = Add(_5, move _64);
StorageDead(_64); StorageDead(_64);
- StorageDead(_61); StorageDead(_61);
_59 = opaque::<u64>(move _60) -> [return: bb17, unwind unreachable]; _59 = opaque::<u64>(move _60) -> [return: bb17, unwind unreachable];
} }
@ -459,20 +486,21 @@
StorageDead(_59); StorageDead(_59);
StorageLive(_65); StorageLive(_65);
StorageLive(_66); StorageLive(_66);
- StorageLive(_67); StorageLive(_67);
- StorageLive(_68); StorageLive(_68);
- _68 = _1; _68 = _1;
- StorageLive(_69); StorageLive(_69);
- _69 = _2; _69 = _2;
- _67 = Mul(move _68, move _69); - _67 = Mul(move _68, move _69);
- StorageDead(_69); + _67 = _9;
- StorageDead(_68); StorageDead(_69);
StorageDead(_68);
StorageLive(_70); StorageLive(_70);
_70 = _3; _70 = _3;
- _66 = Add(move _67, move _70); - _66 = Add(move _67, move _70);
+ _66 = Add(_9, move _70); + _66 = Add(_9, move _70);
StorageDead(_70); StorageDead(_70);
- StorageDead(_67); StorageDead(_67);
_65 = opaque::<u64>(move _66) -> [return: bb18, unwind unreachable]; _65 = opaque::<u64>(move _66) -> [return: bb18, unwind unreachable];
} }
@ -481,20 +509,21 @@
StorageDead(_65); StorageDead(_65);
StorageLive(_71); StorageLive(_71);
StorageLive(_72); StorageLive(_72);
- StorageLive(_73); StorageLive(_73);
- StorageLive(_74); StorageLive(_74);
- _74 = _1; _74 = _1;
- StorageLive(_75); StorageLive(_75);
- _75 = _2; _75 = _2;
- _73 = Sub(move _74, move _75); - _73 = Sub(move _74, move _75);
- StorageDead(_75); + _73 = _13;
- StorageDead(_74); StorageDead(_75);
StorageDead(_74);
StorageLive(_76); StorageLive(_76);
_76 = _3; _76 = _3;
- _72 = Add(move _73, move _76); - _72 = Add(move _73, move _76);
+ _72 = Add(_13, move _76); + _72 = Add(_13, move _76);
StorageDead(_76); StorageDead(_76);
- StorageDead(_73); StorageDead(_73);
_71 = opaque::<u64>(move _72) -> [return: bb19, unwind unreachable]; _71 = opaque::<u64>(move _72) -> [return: bb19, unwind unreachable];
} }
@ -503,26 +532,28 @@
StorageDead(_71); StorageDead(_71);
StorageLive(_77); StorageLive(_77);
StorageLive(_78); StorageLive(_78);
- StorageLive(_79); StorageLive(_79);
- StorageLive(_80); StorageLive(_80);
- _80 = _1; _80 = _1;
- StorageLive(_81); StorageLive(_81);
- _81 = _2; _81 = _2;
- _82 = Eq(_81, const 0_u64); - _82 = Eq(_81, const 0_u64);
- assert(!move _82, "attempt to divide `{}` by zero", _80) -> [success: bb20, unwind unreachable]; - assert(!move _82, "attempt to divide `{}` by zero", _80) -> [success: bb20, unwind unreachable];
+ _82 = _20;
+ assert(!_20, "attempt to divide `{}` by zero", _1) -> [success: bb20, unwind unreachable]; + assert(!_20, "attempt to divide `{}` by zero", _1) -> [success: bb20, unwind unreachable];
} }
bb20: { bb20: {
- _79 = Div(move _80, move _81); - _79 = Div(move _80, move _81);
- StorageDead(_81); + _79 = _17;
- StorageDead(_80); StorageDead(_81);
StorageDead(_80);
StorageLive(_83); StorageLive(_83);
_83 = _3; _83 = _3;
- _78 = Add(move _79, move _83); - _78 = Add(move _79, move _83);
+ _78 = Add(_17, move _83); + _78 = Add(_17, move _83);
StorageDead(_83); StorageDead(_83);
- StorageDead(_79); StorageDead(_79);
_77 = opaque::<u64>(move _78) -> [return: bb21, unwind unreachable]; _77 = opaque::<u64>(move _78) -> [return: bb21, unwind unreachable];
} }
@ -531,26 +562,28 @@
StorageDead(_77); StorageDead(_77);
StorageLive(_84); StorageLive(_84);
StorageLive(_85); StorageLive(_85);
- StorageLive(_86); StorageLive(_86);
- StorageLive(_87); StorageLive(_87);
- _87 = _1; _87 = _1;
- StorageLive(_88); StorageLive(_88);
- _88 = _2; _88 = _2;
- _89 = Eq(_88, const 0_u64); - _89 = Eq(_88, const 0_u64);
- assert(!move _89, "attempt to calculate the remainder of `{}` with a divisor of zero", _87) -> [success: bb22, unwind unreachable]; - assert(!move _89, "attempt to calculate the remainder of `{}` with a divisor of zero", _87) -> [success: bb22, unwind unreachable];
+ _89 = _20;
+ assert(!_20, "attempt to calculate the remainder of `{}` with a divisor of zero", _1) -> [success: bb22, unwind unreachable]; + assert(!_20, "attempt to calculate the remainder of `{}` with a divisor of zero", _1) -> [success: bb22, unwind unreachable];
} }
bb22: { bb22: {
- _86 = Rem(move _87, move _88); - _86 = Rem(move _87, move _88);
- StorageDead(_88); + _86 = _22;
- StorageDead(_87); StorageDead(_88);
StorageDead(_87);
StorageLive(_90); StorageLive(_90);
_90 = _3; _90 = _3;
- _85 = Add(move _86, move _90); - _85 = Add(move _86, move _90);
+ _85 = Add(_22, move _90); + _85 = Add(_22, move _90);
StorageDead(_90); StorageDead(_90);
- StorageDead(_86); StorageDead(_86);
_84 = opaque::<u64>(move _85) -> [return: bb23, unwind unreachable]; _84 = opaque::<u64>(move _85) -> [return: bb23, unwind unreachable];
} }
@ -559,20 +592,21 @@
StorageDead(_84); StorageDead(_84);
StorageLive(_91); StorageLive(_91);
StorageLive(_92); StorageLive(_92);
- StorageLive(_93); StorageLive(_93);
- StorageLive(_94); StorageLive(_94);
- _94 = _1; _94 = _1;
- StorageLive(_95); StorageLive(_95);
- _95 = _2; _95 = _2;
- _93 = BitAnd(move _94, move _95); - _93 = BitAnd(move _94, move _95);
- StorageDead(_95); + _93 = _27;
- StorageDead(_94); StorageDead(_95);
StorageDead(_94);
StorageLive(_96); StorageLive(_96);
_96 = _3; _96 = _3;
- _92 = Add(move _93, move _96); - _92 = Add(move _93, move _96);
+ _92 = Add(_27, move _96); + _92 = Add(_27, move _96);
StorageDead(_96); StorageDead(_96);
- StorageDead(_93); StorageDead(_93);
_91 = opaque::<u64>(move _92) -> [return: bb24, unwind unreachable]; _91 = opaque::<u64>(move _92) -> [return: bb24, unwind unreachable];
} }
@ -581,20 +615,21 @@
StorageDead(_91); StorageDead(_91);
StorageLive(_97); StorageLive(_97);
StorageLive(_98); StorageLive(_98);
- StorageLive(_99); StorageLive(_99);
- StorageLive(_100); StorageLive(_100);
- _100 = _1; _100 = _1;
- StorageLive(_101); StorageLive(_101);
- _101 = _2; _101 = _2;
- _99 = BitOr(move _100, move _101); - _99 = BitOr(move _100, move _101);
- StorageDead(_101); + _99 = _31;
- StorageDead(_100); StorageDead(_101);
StorageDead(_100);
StorageLive(_102); StorageLive(_102);
_102 = _3; _102 = _3;
- _98 = Add(move _99, move _102); - _98 = Add(move _99, move _102);
+ _98 = Add(_31, move _102); + _98 = Add(_31, move _102);
StorageDead(_102); StorageDead(_102);
- StorageDead(_99); StorageDead(_99);
_97 = opaque::<u64>(move _98) -> [return: bb25, unwind unreachable]; _97 = opaque::<u64>(move _98) -> [return: bb25, unwind unreachable];
} }
@ -603,20 +638,21 @@
StorageDead(_97); StorageDead(_97);
StorageLive(_103); StorageLive(_103);
StorageLive(_104); StorageLive(_104);
- StorageLive(_105); StorageLive(_105);
- StorageLive(_106); StorageLive(_106);
- _106 = _1; _106 = _1;
- StorageLive(_107); StorageLive(_107);
- _107 = _2; _107 = _2;
- _105 = BitXor(move _106, move _107); - _105 = BitXor(move _106, move _107);
- StorageDead(_107); + _105 = _35;
- StorageDead(_106); StorageDead(_107);
StorageDead(_106);
StorageLive(_108); StorageLive(_108);
_108 = _3; _108 = _3;
- _104 = Add(move _105, move _108); - _104 = Add(move _105, move _108);
+ _104 = Add(_35, move _108); + _104 = Add(_35, move _108);
StorageDead(_108); StorageDead(_108);
- StorageDead(_105); StorageDead(_105);
_103 = opaque::<u64>(move _104) -> [return: bb26, unwind unreachable]; _103 = opaque::<u64>(move _104) -> [return: bb26, unwind unreachable];
} }
@ -625,20 +661,21 @@
StorageDead(_103); StorageDead(_103);
StorageLive(_109); StorageLive(_109);
StorageLive(_110); StorageLive(_110);
- StorageLive(_111); StorageLive(_111);
- StorageLive(_112); StorageLive(_112);
- _112 = _1; _112 = _1;
- StorageLive(_113); StorageLive(_113);
- _113 = _2; _113 = _2;
- _111 = Shl(move _112, move _113); - _111 = Shl(move _112, move _113);
- StorageDead(_113); + _111 = _39;
- StorageDead(_112); StorageDead(_113);
StorageDead(_112);
StorageLive(_114); StorageLive(_114);
_114 = _3; _114 = _3;
- _110 = Add(move _111, move _114); - _110 = Add(move _111, move _114);
+ _110 = Add(_39, move _114); + _110 = Add(_39, move _114);
StorageDead(_114); StorageDead(_114);
- StorageDead(_111); StorageDead(_111);
_109 = opaque::<u64>(move _110) -> [return: bb27, unwind unreachable]; _109 = opaque::<u64>(move _110) -> [return: bb27, unwind unreachable];
} }
@ -647,20 +684,21 @@
StorageDead(_109); StorageDead(_109);
StorageLive(_115); StorageLive(_115);
StorageLive(_116); StorageLive(_116);
- StorageLive(_117); StorageLive(_117);
- StorageLive(_118); StorageLive(_118);
- _118 = _1; _118 = _1;
- StorageLive(_119); StorageLive(_119);
- _119 = _2; _119 = _2;
- _117 = Shr(move _118, move _119); - _117 = Shr(move _118, move _119);
- StorageDead(_119); + _117 = _43;
- StorageDead(_118); StorageDead(_119);
StorageDead(_118);
StorageLive(_120); StorageLive(_120);
_120 = _3; _120 = _3;
- _116 = Add(move _117, move _120); - _116 = Add(move _117, move _120);
+ _116 = Add(_43, move _120); + _116 = Add(_43, move _120);
StorageDead(_120); StorageDead(_120);
- StorageDead(_117); StorageDead(_117);
_115 = opaque::<u64>(move _116) -> [return: bb28, unwind unreachable]; _115 = opaque::<u64>(move _116) -> [return: bb28, unwind unreachable];
} }
@ -668,68 +706,77 @@
StorageDead(_116); StorageDead(_116);
StorageDead(_115); StorageDead(_115);
StorageLive(_121); StorageLive(_121);
- StorageLive(_122); StorageLive(_122);
- StorageLive(_123); StorageLive(_123);
- _123 = _1; _123 = _1;
- _122 = S::<u64>(move _123); - _122 = S::<u64>(move _123);
- StorageDead(_123); + _122 = _53;
StorageDead(_123);
- _121 = opaque::<S<u64>>(move _122) -> [return: bb29, unwind unreachable]; - _121 = opaque::<S<u64>>(move _122) -> [return: bb29, unwind unreachable];
+ _121 = opaque::<S<u64>>(_53) -> [return: bb29, unwind unreachable]; + _121 = opaque::<S<u64>>(_53) -> [return: bb29, unwind unreachable];
} }
bb29: { bb29: {
- StorageDead(_122); StorageDead(_122);
StorageDead(_121); StorageDead(_121);
StorageLive(_124); StorageLive(_124);
- StorageLive(_125); StorageLive(_125);
- StorageLive(_126); StorageLive(_126);
- StorageLive(_127); StorageLive(_127);
- _127 = _1; _127 = _1;
- _126 = S::<u64>(move _127); - _126 = S::<u64>(move _127);
- StorageDead(_127); + _126 = _53;
StorageDead(_127);
- _125 = (_126.0: u64); - _125 = (_126.0: u64);
- _124 = opaque::<u64>(move _125) -> [return: bb30, unwind unreachable]; - _124 = opaque::<u64>(move _125) -> [return: bb30, unwind unreachable];
+ _125 = _56;
+ _124 = opaque::<u64>(_56) -> [return: bb30, unwind unreachable]; + _124 = opaque::<u64>(_56) -> [return: bb30, unwind unreachable];
} }
bb30: { bb30: {
- StorageDead(_125); StorageDead(_125);
- StorageDead(_126); StorageDead(_126);
StorageDead(_124); StorageDead(_124);
StorageLive(_128); StorageLive(_128);
_128 = &_3; _128 = &_3;
StorageLive(_129); StorageLive(_129);
- StorageLive(_130); - StorageLive(_130);
- StorageLive(_131); - StorageLive(_131);
+ nop;
+ nop;
_131 = (*_128); _131 = (*_128);
- StorageLive(_132); StorageLive(_132);
- _132 = _1; _132 = _1;
- _130 = Add(move _131, move _132); - _130 = Add(move _131, move _132);
- StorageDead(_132); + _130 = Add(_131, _1);
StorageDead(_132);
- StorageDead(_131); - StorageDead(_131);
- _129 = opaque::<u64>(move _130) -> [return: bb31, unwind unreachable]; - _129 = opaque::<u64>(move _130) -> [return: bb31, unwind unreachable];
+ _130 = Add(_131, _1); + nop;
+ _129 = opaque::<u64>(_130) -> [return: bb31, unwind unreachable]; + _129 = opaque::<u64>(_130) -> [return: bb31, unwind unreachable];
} }
bb31: { bb31: {
- StorageDead(_130); - StorageDead(_130);
+ nop;
StorageDead(_129); StorageDead(_129);
StorageLive(_133); StorageLive(_133);
- StorageLive(_134); StorageLive(_134);
- StorageLive(_135); StorageLive(_135);
- _135 = (*_128); - _135 = (*_128);
- StorageLive(_136); + _135 = _131;
- _136 = _1; StorageLive(_136);
_136 = _1;
- _134 = Add(move _135, move _136); - _134 = Add(move _135, move _136);
- StorageDead(_136); + _134 = _130;
- StorageDead(_135); StorageDead(_136);
StorageDead(_135);
- _133 = opaque::<u64>(move _134) -> [return: bb32, unwind unreachable]; - _133 = opaque::<u64>(move _134) -> [return: bb32, unwind unreachable];
+ _133 = opaque::<u64>(_130) -> [return: bb32, unwind unreachable]; + _133 = opaque::<u64>(_130) -> [return: bb32, unwind unreachable];
} }
bb32: { bb32: {
- StorageDead(_134); StorageDead(_134);
StorageDead(_133); StorageDead(_133);
StorageLive(_137); StorageLive(_137);
_137 = &mut _3; _137 = &mut _3;
@ -737,11 +784,11 @@
StorageLive(_139); StorageLive(_139);
StorageLive(_140); StorageLive(_140);
_140 = (*_137); _140 = (*_137);
- StorageLive(_141); StorageLive(_141);
- _141 = _1; _141 = _1;
- _139 = Add(move _140, move _141); - _139 = Add(move _140, move _141);
- StorageDead(_141);
+ _139 = Add(move _140, _1); + _139 = Add(move _140, _1);
StorageDead(_141);
StorageDead(_140); StorageDead(_140);
_138 = opaque::<u64>(move _139) -> [return: bb33, unwind unreachable]; _138 = opaque::<u64>(move _139) -> [return: bb33, unwind unreachable];
} }
@ -753,11 +800,11 @@
StorageLive(_143); StorageLive(_143);
StorageLive(_144); StorageLive(_144);
_144 = (*_137); _144 = (*_137);
- StorageLive(_145); StorageLive(_145);
- _145 = _1; _145 = _1;
- _143 = Add(move _144, move _145); - _143 = Add(move _144, move _145);
- StorageDead(_145);
+ _143 = Add(move _144, _1); + _143 = Add(move _144, _1);
StorageDead(_145);
StorageDead(_144); StorageDead(_144);
_142 = opaque::<u64>(move _143) -> [return: bb34, unwind unreachable]; _142 = opaque::<u64>(move _143) -> [return: bb34, unwind unreachable];
} }
@ -765,18 +812,18 @@
bb34: { bb34: {
StorageDead(_143); StorageDead(_143);
StorageDead(_142); StorageDead(_142);
- StorageLive(_146); StorageLive(_146);
StorageLive(_147); StorageLive(_147);
_147 = &raw const _3; _147 = &raw const _3;
StorageLive(_148); StorageLive(_148);
StorageLive(_149); StorageLive(_149);
StorageLive(_150); StorageLive(_150);
_150 = (*_147); _150 = (*_147);
- StorageLive(_151); StorageLive(_151);
- _151 = _1; _151 = _1;
- _149 = Add(move _150, move _151); - _149 = Add(move _150, move _151);
- StorageDead(_151);
+ _149 = Add(move _150, _1); + _149 = Add(move _150, _1);
StorageDead(_151);
StorageDead(_150); StorageDead(_150);
_148 = opaque::<u64>(move _149) -> [return: bb35, unwind unreachable]; _148 = opaque::<u64>(move _149) -> [return: bb35, unwind unreachable];
} }
@ -788,11 +835,11 @@
StorageLive(_153); StorageLive(_153);
StorageLive(_154); StorageLive(_154);
_154 = (*_147); _154 = (*_147);
- StorageLive(_155); StorageLive(_155);
- _155 = _1; _155 = _1;
- _153 = Add(move _154, move _155); - _153 = Add(move _154, move _155);
- StorageDead(_155);
+ _153 = Add(move _154, _1); + _153 = Add(move _154, _1);
StorageDead(_155);
StorageDead(_154); StorageDead(_154);
_152 = opaque::<u64>(move _153) -> [return: bb36, unwind unreachable]; _152 = opaque::<u64>(move _153) -> [return: bb36, unwind unreachable];
} }
@ -806,11 +853,11 @@
StorageLive(_158); StorageLive(_158);
StorageLive(_159); StorageLive(_159);
_159 = (*_156); _159 = (*_156);
- StorageLive(_160); StorageLive(_160);
- _160 = _1; _160 = _1;
- _158 = Add(move _159, move _160); - _158 = Add(move _159, move _160);
- StorageDead(_160);
+ _158 = Add(move _159, _1); + _158 = Add(move _159, _1);
StorageDead(_160);
StorageDead(_159); StorageDead(_159);
_157 = opaque::<u64>(move _158) -> [return: bb37, unwind unreachable]; _157 = opaque::<u64>(move _158) -> [return: bb37, unwind unreachable];
} }
@ -822,11 +869,11 @@
StorageLive(_162); StorageLive(_162);
StorageLive(_163); StorageLive(_163);
_163 = (*_156); _163 = (*_156);
- StorageLive(_164); StorageLive(_164);
- _164 = _1; _164 = _1;
- _162 = Add(move _163, move _164); - _162 = Add(move _163, move _164);
- StorageDead(_164);
+ _162 = Add(move _163, _1); + _162 = Add(move _163, _1);
StorageDead(_164);
StorageDead(_163); StorageDead(_163);
_161 = opaque::<u64>(move _162) -> [return: bb38, unwind unreachable]; _161 = opaque::<u64>(move _162) -> [return: bb38, unwind unreachable];
} }
@ -834,44 +881,50 @@
bb38: { bb38: {
StorageDead(_162); StorageDead(_162);
StorageDead(_161); StorageDead(_161);
- _146 = const (); _146 = const ();
StorageDead(_156); StorageDead(_156);
StorageDead(_147); StorageDead(_147);
- StorageDead(_146); StorageDead(_146);
StorageLive(_165); StorageLive(_165);
_165 = &_3; _165 = &_3;
StorageLive(_166); StorageLive(_166);
- StorageLive(_167); - StorageLive(_167);
- StorageLive(_168); - StorageLive(_168);
+ nop;
+ nop;
_168 = (*_165); _168 = (*_165);
- StorageLive(_169); StorageLive(_169);
- _169 = _1; _169 = _1;
- _167 = Add(move _168, move _169); - _167 = Add(move _168, move _169);
- StorageDead(_169); + _167 = Add(_168, _1);
StorageDead(_169);
- StorageDead(_168); - StorageDead(_168);
- _166 = opaque::<u64>(move _167) -> [return: bb39, unwind unreachable]; - _166 = opaque::<u64>(move _167) -> [return: bb39, unwind unreachable];
+ _167 = Add(_168, _1); + nop;
+ _166 = opaque::<u64>(_167) -> [return: bb39, unwind unreachable]; + _166 = opaque::<u64>(_167) -> [return: bb39, unwind unreachable];
} }
bb39: { bb39: {
- StorageDead(_167); - StorageDead(_167);
+ nop;
StorageDead(_166); StorageDead(_166);
StorageLive(_170); StorageLive(_170);
- StorageLive(_171); StorageLive(_171);
- StorageLive(_172); StorageLive(_172);
- _172 = (*_165); - _172 = (*_165);
- StorageLive(_173); + _172 = _168;
- _173 = _1; StorageLive(_173);
_173 = _1;
- _171 = Add(move _172, move _173); - _171 = Add(move _172, move _173);
- StorageDead(_173); + _171 = _167;
- StorageDead(_172); StorageDead(_173);
StorageDead(_172);
- _170 = opaque::<u64>(move _171) -> [return: bb40, unwind unreachable]; - _170 = opaque::<u64>(move _171) -> [return: bb40, unwind unreachable];
+ _170 = opaque::<u64>(_167) -> [return: bb40, unwind unreachable]; + _170 = opaque::<u64>(_167) -> [return: bb40, unwind unreachable];
} }
bb40: { bb40: {
- StorageDead(_171); StorageDead(_171);
StorageDead(_170); StorageDead(_170);
_0 = const (); _0 = const ();
StorageDead(_165); StorageDead(_165);

View file

@ -197,61 +197,68 @@
bb0: { bb0: {
StorageLive(_4); StorageLive(_4);
- StorageLive(_5); - StorageLive(_5);
- StorageLive(_6); + nop;
- _6 = _1; StorageLive(_6);
- StorageLive(_7); _6 = _1;
- _7 = _2; StorageLive(_7);
_7 = _2;
- _5 = Add(move _6, move _7); - _5 = Add(move _6, move _7);
- StorageDead(_7);
- StorageDead(_6);
- _4 = opaque::<u64>(move _5) -> [return: bb1, unwind continue];
+ _5 = Add(_1, _2); + _5 = Add(_1, _2);
StorageDead(_7);
StorageDead(_6);
- _4 = opaque::<u64>(move _5) -> [return: bb1, unwind continue];
+ _4 = opaque::<u64>(_5) -> [return: bb1, unwind continue]; + _4 = opaque::<u64>(_5) -> [return: bb1, unwind continue];
} }
bb1: { bb1: {
- StorageDead(_5); - StorageDead(_5);
+ nop;
StorageDead(_4); StorageDead(_4);
StorageLive(_8); StorageLive(_8);
- StorageLive(_9); - StorageLive(_9);
- StorageLive(_10); + nop;
- _10 = _1; StorageLive(_10);
- StorageLive(_11); _10 = _1;
- _11 = _2; StorageLive(_11);
_11 = _2;
- _9 = Mul(move _10, move _11); - _9 = Mul(move _10, move _11);
- StorageDead(_11);
- StorageDead(_10);
- _8 = opaque::<u64>(move _9) -> [return: bb2, unwind continue];
+ _9 = Mul(_1, _2); + _9 = Mul(_1, _2);
StorageDead(_11);
StorageDead(_10);
- _8 = opaque::<u64>(move _9) -> [return: bb2, unwind continue];
+ _8 = opaque::<u64>(_9) -> [return: bb2, unwind continue]; + _8 = opaque::<u64>(_9) -> [return: bb2, unwind continue];
} }
bb2: { bb2: {
- StorageDead(_9); - StorageDead(_9);
+ nop;
StorageDead(_8); StorageDead(_8);
StorageLive(_12); StorageLive(_12);
- StorageLive(_13); - StorageLive(_13);
- StorageLive(_14); + nop;
- _14 = _1; StorageLive(_14);
- StorageLive(_15); _14 = _1;
- _15 = _2; StorageLive(_15);
_15 = _2;
- _13 = Sub(move _14, move _15); - _13 = Sub(move _14, move _15);
- StorageDead(_15);
- StorageDead(_14);
- _12 = opaque::<u64>(move _13) -> [return: bb3, unwind continue];
+ _13 = Sub(_1, _2); + _13 = Sub(_1, _2);
StorageDead(_15);
StorageDead(_14);
- _12 = opaque::<u64>(move _13) -> [return: bb3, unwind continue];
+ _12 = opaque::<u64>(_13) -> [return: bb3, unwind continue]; + _12 = opaque::<u64>(_13) -> [return: bb3, unwind continue];
} }
bb3: { bb3: {
- StorageDead(_13); - StorageDead(_13);
+ nop;
StorageDead(_12); StorageDead(_12);
StorageLive(_16); StorageLive(_16);
- StorageLive(_17); - StorageLive(_17);
- StorageLive(_18); + nop;
- _18 = _1; StorageLive(_18);
- StorageLive(_19); _18 = _1;
- _19 = _2; StorageLive(_19);
_19 = _2;
- _20 = Eq(_19, const 0_u64); - _20 = Eq(_19, const 0_u64);
- assert(!move _20, "attempt to divide `{}` by zero", _18) -> [success: bb4, unwind continue]; - assert(!move _20, "attempt to divide `{}` by zero", _18) -> [success: bb4, unwind continue];
+ _20 = Eq(_2, const 0_u64); + _20 = Eq(_2, const 0_u64);
@ -260,131 +267,145 @@
bb4: { bb4: {
- _17 = Div(move _18, move _19); - _17 = Div(move _18, move _19);
- StorageDead(_19);
- StorageDead(_18);
- _16 = opaque::<u64>(move _17) -> [return: bb5, unwind continue];
+ _17 = Div(_1, _2); + _17 = Div(_1, _2);
StorageDead(_19);
StorageDead(_18);
- _16 = opaque::<u64>(move _17) -> [return: bb5, unwind continue];
+ _16 = opaque::<u64>(_17) -> [return: bb5, unwind continue]; + _16 = opaque::<u64>(_17) -> [return: bb5, unwind continue];
} }
bb5: { bb5: {
- StorageDead(_17); - StorageDead(_17);
+ nop;
StorageDead(_16); StorageDead(_16);
StorageLive(_21); StorageLive(_21);
- StorageLive(_22); - StorageLive(_22);
- StorageLive(_23); + nop;
- _23 = _1; StorageLive(_23);
- StorageLive(_24); _23 = _1;
- _24 = _2; StorageLive(_24);
_24 = _2;
- _25 = Eq(_24, const 0_u64); - _25 = Eq(_24, const 0_u64);
- assert(!move _25, "attempt to calculate the remainder of `{}` with a divisor of zero", _23) -> [success: bb6, unwind continue]; - assert(!move _25, "attempt to calculate the remainder of `{}` with a divisor of zero", _23) -> [success: bb6, unwind continue];
+ _25 = _20;
+ assert(!_20, "attempt to calculate the remainder of `{}` with a divisor of zero", _1) -> [success: bb6, unwind continue]; + assert(!_20, "attempt to calculate the remainder of `{}` with a divisor of zero", _1) -> [success: bb6, unwind continue];
} }
bb6: { bb6: {
- _22 = Rem(move _23, move _24); - _22 = Rem(move _23, move _24);
- StorageDead(_24);
- StorageDead(_23);
- _21 = opaque::<u64>(move _22) -> [return: bb7, unwind continue];
+ _22 = Rem(_1, _2); + _22 = Rem(_1, _2);
StorageDead(_24);
StorageDead(_23);
- _21 = opaque::<u64>(move _22) -> [return: bb7, unwind continue];
+ _21 = opaque::<u64>(_22) -> [return: bb7, unwind continue]; + _21 = opaque::<u64>(_22) -> [return: bb7, unwind continue];
} }
bb7: { bb7: {
- StorageDead(_22); - StorageDead(_22);
+ nop;
StorageDead(_21); StorageDead(_21);
StorageLive(_26); StorageLive(_26);
- StorageLive(_27); - StorageLive(_27);
- StorageLive(_28); + nop;
- _28 = _1; StorageLive(_28);
- StorageLive(_29); _28 = _1;
- _29 = _2; StorageLive(_29);
_29 = _2;
- _27 = BitAnd(move _28, move _29); - _27 = BitAnd(move _28, move _29);
- StorageDead(_29);
- StorageDead(_28);
- _26 = opaque::<u64>(move _27) -> [return: bb8, unwind continue];
+ _27 = BitAnd(_1, _2); + _27 = BitAnd(_1, _2);
StorageDead(_29);
StorageDead(_28);
- _26 = opaque::<u64>(move _27) -> [return: bb8, unwind continue];
+ _26 = opaque::<u64>(_27) -> [return: bb8, unwind continue]; + _26 = opaque::<u64>(_27) -> [return: bb8, unwind continue];
} }
bb8: { bb8: {
- StorageDead(_27); - StorageDead(_27);
+ nop;
StorageDead(_26); StorageDead(_26);
StorageLive(_30); StorageLive(_30);
- StorageLive(_31); - StorageLive(_31);
- StorageLive(_32); + nop;
- _32 = _1; StorageLive(_32);
- StorageLive(_33); _32 = _1;
- _33 = _2; StorageLive(_33);
_33 = _2;
- _31 = BitOr(move _32, move _33); - _31 = BitOr(move _32, move _33);
- StorageDead(_33);
- StorageDead(_32);
- _30 = opaque::<u64>(move _31) -> [return: bb9, unwind continue];
+ _31 = BitOr(_1, _2); + _31 = BitOr(_1, _2);
StorageDead(_33);
StorageDead(_32);
- _30 = opaque::<u64>(move _31) -> [return: bb9, unwind continue];
+ _30 = opaque::<u64>(_31) -> [return: bb9, unwind continue]; + _30 = opaque::<u64>(_31) -> [return: bb9, unwind continue];
} }
bb9: { bb9: {
- StorageDead(_31); - StorageDead(_31);
+ nop;
StorageDead(_30); StorageDead(_30);
StorageLive(_34); StorageLive(_34);
- StorageLive(_35); - StorageLive(_35);
- StorageLive(_36); + nop;
- _36 = _1; StorageLive(_36);
- StorageLive(_37); _36 = _1;
- _37 = _2; StorageLive(_37);
_37 = _2;
- _35 = BitXor(move _36, move _37); - _35 = BitXor(move _36, move _37);
- StorageDead(_37);
- StorageDead(_36);
- _34 = opaque::<u64>(move _35) -> [return: bb10, unwind continue];
+ _35 = BitXor(_1, _2); + _35 = BitXor(_1, _2);
StorageDead(_37);
StorageDead(_36);
- _34 = opaque::<u64>(move _35) -> [return: bb10, unwind continue];
+ _34 = opaque::<u64>(_35) -> [return: bb10, unwind continue]; + _34 = opaque::<u64>(_35) -> [return: bb10, unwind continue];
} }
bb10: { bb10: {
- StorageDead(_35); - StorageDead(_35);
+ nop;
StorageDead(_34); StorageDead(_34);
StorageLive(_38); StorageLive(_38);
- StorageLive(_39); - StorageLive(_39);
- StorageLive(_40); + nop;
- _40 = _1; StorageLive(_40);
- StorageLive(_41); _40 = _1;
- _41 = _2; StorageLive(_41);
_41 = _2;
- _39 = Shl(move _40, move _41); - _39 = Shl(move _40, move _41);
- StorageDead(_41);
- StorageDead(_40);
- _38 = opaque::<u64>(move _39) -> [return: bb11, unwind continue];
+ _39 = Shl(_1, _2); + _39 = Shl(_1, _2);
StorageDead(_41);
StorageDead(_40);
- _38 = opaque::<u64>(move _39) -> [return: bb11, unwind continue];
+ _38 = opaque::<u64>(_39) -> [return: bb11, unwind continue]; + _38 = opaque::<u64>(_39) -> [return: bb11, unwind continue];
} }
bb11: { bb11: {
- StorageDead(_39); - StorageDead(_39);
+ nop;
StorageDead(_38); StorageDead(_38);
StorageLive(_42); StorageLive(_42);
- StorageLive(_43); - StorageLive(_43);
- StorageLive(_44); + nop;
- _44 = _1; StorageLive(_44);
- StorageLive(_45); _44 = _1;
- _45 = _2; StorageLive(_45);
_45 = _2;
- _43 = Shr(move _44, move _45); - _43 = Shr(move _44, move _45);
- StorageDead(_45);
- StorageDead(_44);
- _42 = opaque::<u64>(move _43) -> [return: bb12, unwind continue];
+ _43 = Shr(_1, _2); + _43 = Shr(_1, _2);
StorageDead(_45);
StorageDead(_44);
- _42 = opaque::<u64>(move _43) -> [return: bb12, unwind continue];
+ _42 = opaque::<u64>(_43) -> [return: bb12, unwind continue]; + _42 = opaque::<u64>(_43) -> [return: bb12, unwind continue];
} }
bb12: { bb12: {
- StorageDead(_43); - StorageDead(_43);
+ nop;
StorageDead(_42); StorageDead(_42);
StorageLive(_46); StorageLive(_46);
StorageLive(_47); StorageLive(_47);
- StorageLive(_48); StorageLive(_48);
- _48 = _1; _48 = _1;
- _47 = move _48 as u32 (IntToInt); - _47 = move _48 as u32 (IntToInt);
- StorageDead(_48);
+ _47 = _1 as u32 (IntToInt); + _47 = _1 as u32 (IntToInt);
StorageDead(_48);
_46 = opaque::<u32>(move _47) -> [return: bb13, unwind continue]; _46 = opaque::<u32>(move _47) -> [return: bb13, unwind continue];
} }
@ -393,11 +414,11 @@
StorageDead(_46); StorageDead(_46);
StorageLive(_49); StorageLive(_49);
StorageLive(_50); StorageLive(_50);
- StorageLive(_51); StorageLive(_51);
- _51 = _1; _51 = _1;
- _50 = move _51 as f32 (IntToFloat); - _50 = move _51 as f32 (IntToFloat);
- StorageDead(_51);
+ _50 = _1 as f32 (IntToFloat); + _50 = _1 as f32 (IntToFloat);
StorageDead(_51);
_49 = opaque::<f32>(move _50) -> [return: bb14, unwind continue]; _49 = opaque::<f32>(move _50) -> [return: bb14, unwind continue];
} }
@ -406,25 +427,29 @@
StorageDead(_49); StorageDead(_49);
StorageLive(_52); StorageLive(_52);
- StorageLive(_53); - StorageLive(_53);
- StorageLive(_54); + nop;
- _54 = _1; StorageLive(_54);
_54 = _1;
- _53 = S::<u64>(move _54); - _53 = S::<u64>(move _54);
- StorageDead(_54);
- _52 = opaque::<S<u64>>(move _53) -> [return: bb15, unwind continue];
+ _53 = S::<u64>(_1); + _53 = S::<u64>(_1);
StorageDead(_54);
- _52 = opaque::<S<u64>>(move _53) -> [return: bb15, unwind continue];
+ _52 = opaque::<S<u64>>(_53) -> [return: bb15, unwind continue]; + _52 = opaque::<S<u64>>(_53) -> [return: bb15, unwind continue];
} }
bb15: { bb15: {
- StorageDead(_53); - StorageDead(_53);
+ nop;
StorageDead(_52); StorageDead(_52);
StorageLive(_55); StorageLive(_55);
- StorageLive(_56); - StorageLive(_56);
- StorageLive(_57); + nop;
- StorageLive(_58); StorageLive(_57);
- _58 = _1; StorageLive(_58);
_58 = _1;
- _57 = S::<u64>(move _58); - _57 = S::<u64>(move _58);
- StorageDead(_58); + _57 = _53;
StorageDead(_58);
- _56 = (_57.0: u64); - _56 = (_57.0: u64);
- _55 = opaque::<u64>(move _56) -> [return: bb16, unwind continue]; - _55 = opaque::<u64>(move _56) -> [return: bb16, unwind continue];
+ _56 = (_53.0: u64); + _56 = (_53.0: u64);
@ -433,24 +458,26 @@
bb16: { bb16: {
- StorageDead(_56); - StorageDead(_56);
- StorageDead(_57); + nop;
StorageDead(_57);
StorageDead(_55); StorageDead(_55);
StorageLive(_59); StorageLive(_59);
StorageLive(_60); StorageLive(_60);
- StorageLive(_61); StorageLive(_61);
- StorageLive(_62); StorageLive(_62);
- _62 = _1; _62 = _1;
- StorageLive(_63); StorageLive(_63);
- _63 = _2; _63 = _2;
- _61 = Add(move _62, move _63); - _61 = Add(move _62, move _63);
- StorageDead(_63); + _61 = _5;
- StorageDead(_62); StorageDead(_63);
StorageDead(_62);
StorageLive(_64); StorageLive(_64);
_64 = _3; _64 = _3;
- _60 = Add(move _61, move _64); - _60 = Add(move _61, move _64);
+ _60 = Add(_5, move _64); + _60 = Add(_5, move _64);
StorageDead(_64); StorageDead(_64);
- StorageDead(_61); StorageDead(_61);
_59 = opaque::<u64>(move _60) -> [return: bb17, unwind continue]; _59 = opaque::<u64>(move _60) -> [return: bb17, unwind continue];
} }
@ -459,20 +486,21 @@
StorageDead(_59); StorageDead(_59);
StorageLive(_65); StorageLive(_65);
StorageLive(_66); StorageLive(_66);
- StorageLive(_67); StorageLive(_67);
- StorageLive(_68); StorageLive(_68);
- _68 = _1; _68 = _1;
- StorageLive(_69); StorageLive(_69);
- _69 = _2; _69 = _2;
- _67 = Mul(move _68, move _69); - _67 = Mul(move _68, move _69);
- StorageDead(_69); + _67 = _9;
- StorageDead(_68); StorageDead(_69);
StorageDead(_68);
StorageLive(_70); StorageLive(_70);
_70 = _3; _70 = _3;
- _66 = Add(move _67, move _70); - _66 = Add(move _67, move _70);
+ _66 = Add(_9, move _70); + _66 = Add(_9, move _70);
StorageDead(_70); StorageDead(_70);
- StorageDead(_67); StorageDead(_67);
_65 = opaque::<u64>(move _66) -> [return: bb18, unwind continue]; _65 = opaque::<u64>(move _66) -> [return: bb18, unwind continue];
} }
@ -481,20 +509,21 @@
StorageDead(_65); StorageDead(_65);
StorageLive(_71); StorageLive(_71);
StorageLive(_72); StorageLive(_72);
- StorageLive(_73); StorageLive(_73);
- StorageLive(_74); StorageLive(_74);
- _74 = _1; _74 = _1;
- StorageLive(_75); StorageLive(_75);
- _75 = _2; _75 = _2;
- _73 = Sub(move _74, move _75); - _73 = Sub(move _74, move _75);
- StorageDead(_75); + _73 = _13;
- StorageDead(_74); StorageDead(_75);
StorageDead(_74);
StorageLive(_76); StorageLive(_76);
_76 = _3; _76 = _3;
- _72 = Add(move _73, move _76); - _72 = Add(move _73, move _76);
+ _72 = Add(_13, move _76); + _72 = Add(_13, move _76);
StorageDead(_76); StorageDead(_76);
- StorageDead(_73); StorageDead(_73);
_71 = opaque::<u64>(move _72) -> [return: bb19, unwind continue]; _71 = opaque::<u64>(move _72) -> [return: bb19, unwind continue];
} }
@ -503,26 +532,28 @@
StorageDead(_71); StorageDead(_71);
StorageLive(_77); StorageLive(_77);
StorageLive(_78); StorageLive(_78);
- StorageLive(_79); StorageLive(_79);
- StorageLive(_80); StorageLive(_80);
- _80 = _1; _80 = _1;
- StorageLive(_81); StorageLive(_81);
- _81 = _2; _81 = _2;
- _82 = Eq(_81, const 0_u64); - _82 = Eq(_81, const 0_u64);
- assert(!move _82, "attempt to divide `{}` by zero", _80) -> [success: bb20, unwind continue]; - assert(!move _82, "attempt to divide `{}` by zero", _80) -> [success: bb20, unwind continue];
+ _82 = _20;
+ assert(!_20, "attempt to divide `{}` by zero", _1) -> [success: bb20, unwind continue]; + assert(!_20, "attempt to divide `{}` by zero", _1) -> [success: bb20, unwind continue];
} }
bb20: { bb20: {
- _79 = Div(move _80, move _81); - _79 = Div(move _80, move _81);
- StorageDead(_81); + _79 = _17;
- StorageDead(_80); StorageDead(_81);
StorageDead(_80);
StorageLive(_83); StorageLive(_83);
_83 = _3; _83 = _3;
- _78 = Add(move _79, move _83); - _78 = Add(move _79, move _83);
+ _78 = Add(_17, move _83); + _78 = Add(_17, move _83);
StorageDead(_83); StorageDead(_83);
- StorageDead(_79); StorageDead(_79);
_77 = opaque::<u64>(move _78) -> [return: bb21, unwind continue]; _77 = opaque::<u64>(move _78) -> [return: bb21, unwind continue];
} }
@ -531,26 +562,28 @@
StorageDead(_77); StorageDead(_77);
StorageLive(_84); StorageLive(_84);
StorageLive(_85); StorageLive(_85);
- StorageLive(_86); StorageLive(_86);
- StorageLive(_87); StorageLive(_87);
- _87 = _1; _87 = _1;
- StorageLive(_88); StorageLive(_88);
- _88 = _2; _88 = _2;
- _89 = Eq(_88, const 0_u64); - _89 = Eq(_88, const 0_u64);
- assert(!move _89, "attempt to calculate the remainder of `{}` with a divisor of zero", _87) -> [success: bb22, unwind continue]; - assert(!move _89, "attempt to calculate the remainder of `{}` with a divisor of zero", _87) -> [success: bb22, unwind continue];
+ _89 = _20;
+ assert(!_20, "attempt to calculate the remainder of `{}` with a divisor of zero", _1) -> [success: bb22, unwind continue]; + assert(!_20, "attempt to calculate the remainder of `{}` with a divisor of zero", _1) -> [success: bb22, unwind continue];
} }
bb22: { bb22: {
- _86 = Rem(move _87, move _88); - _86 = Rem(move _87, move _88);
- StorageDead(_88); + _86 = _22;
- StorageDead(_87); StorageDead(_88);
StorageDead(_87);
StorageLive(_90); StorageLive(_90);
_90 = _3; _90 = _3;
- _85 = Add(move _86, move _90); - _85 = Add(move _86, move _90);
+ _85 = Add(_22, move _90); + _85 = Add(_22, move _90);
StorageDead(_90); StorageDead(_90);
- StorageDead(_86); StorageDead(_86);
_84 = opaque::<u64>(move _85) -> [return: bb23, unwind continue]; _84 = opaque::<u64>(move _85) -> [return: bb23, unwind continue];
} }
@ -559,20 +592,21 @@
StorageDead(_84); StorageDead(_84);
StorageLive(_91); StorageLive(_91);
StorageLive(_92); StorageLive(_92);
- StorageLive(_93); StorageLive(_93);
- StorageLive(_94); StorageLive(_94);
- _94 = _1; _94 = _1;
- StorageLive(_95); StorageLive(_95);
- _95 = _2; _95 = _2;
- _93 = BitAnd(move _94, move _95); - _93 = BitAnd(move _94, move _95);
- StorageDead(_95); + _93 = _27;
- StorageDead(_94); StorageDead(_95);
StorageDead(_94);
StorageLive(_96); StorageLive(_96);
_96 = _3; _96 = _3;
- _92 = Add(move _93, move _96); - _92 = Add(move _93, move _96);
+ _92 = Add(_27, move _96); + _92 = Add(_27, move _96);
StorageDead(_96); StorageDead(_96);
- StorageDead(_93); StorageDead(_93);
_91 = opaque::<u64>(move _92) -> [return: bb24, unwind continue]; _91 = opaque::<u64>(move _92) -> [return: bb24, unwind continue];
} }
@ -581,20 +615,21 @@
StorageDead(_91); StorageDead(_91);
StorageLive(_97); StorageLive(_97);
StorageLive(_98); StorageLive(_98);
- StorageLive(_99); StorageLive(_99);
- StorageLive(_100); StorageLive(_100);
- _100 = _1; _100 = _1;
- StorageLive(_101); StorageLive(_101);
- _101 = _2; _101 = _2;
- _99 = BitOr(move _100, move _101); - _99 = BitOr(move _100, move _101);
- StorageDead(_101); + _99 = _31;
- StorageDead(_100); StorageDead(_101);
StorageDead(_100);
StorageLive(_102); StorageLive(_102);
_102 = _3; _102 = _3;
- _98 = Add(move _99, move _102); - _98 = Add(move _99, move _102);
+ _98 = Add(_31, move _102); + _98 = Add(_31, move _102);
StorageDead(_102); StorageDead(_102);
- StorageDead(_99); StorageDead(_99);
_97 = opaque::<u64>(move _98) -> [return: bb25, unwind continue]; _97 = opaque::<u64>(move _98) -> [return: bb25, unwind continue];
} }
@ -603,20 +638,21 @@
StorageDead(_97); StorageDead(_97);
StorageLive(_103); StorageLive(_103);
StorageLive(_104); StorageLive(_104);
- StorageLive(_105); StorageLive(_105);
- StorageLive(_106); StorageLive(_106);
- _106 = _1; _106 = _1;
- StorageLive(_107); StorageLive(_107);
- _107 = _2; _107 = _2;
- _105 = BitXor(move _106, move _107); - _105 = BitXor(move _106, move _107);
- StorageDead(_107); + _105 = _35;
- StorageDead(_106); StorageDead(_107);
StorageDead(_106);
StorageLive(_108); StorageLive(_108);
_108 = _3; _108 = _3;
- _104 = Add(move _105, move _108); - _104 = Add(move _105, move _108);
+ _104 = Add(_35, move _108); + _104 = Add(_35, move _108);
StorageDead(_108); StorageDead(_108);
- StorageDead(_105); StorageDead(_105);
_103 = opaque::<u64>(move _104) -> [return: bb26, unwind continue]; _103 = opaque::<u64>(move _104) -> [return: bb26, unwind continue];
} }
@ -625,20 +661,21 @@
StorageDead(_103); StorageDead(_103);
StorageLive(_109); StorageLive(_109);
StorageLive(_110); StorageLive(_110);
- StorageLive(_111); StorageLive(_111);
- StorageLive(_112); StorageLive(_112);
- _112 = _1; _112 = _1;
- StorageLive(_113); StorageLive(_113);
- _113 = _2; _113 = _2;
- _111 = Shl(move _112, move _113); - _111 = Shl(move _112, move _113);
- StorageDead(_113); + _111 = _39;
- StorageDead(_112); StorageDead(_113);
StorageDead(_112);
StorageLive(_114); StorageLive(_114);
_114 = _3; _114 = _3;
- _110 = Add(move _111, move _114); - _110 = Add(move _111, move _114);
+ _110 = Add(_39, move _114); + _110 = Add(_39, move _114);
StorageDead(_114); StorageDead(_114);
- StorageDead(_111); StorageDead(_111);
_109 = opaque::<u64>(move _110) -> [return: bb27, unwind continue]; _109 = opaque::<u64>(move _110) -> [return: bb27, unwind continue];
} }
@ -647,20 +684,21 @@
StorageDead(_109); StorageDead(_109);
StorageLive(_115); StorageLive(_115);
StorageLive(_116); StorageLive(_116);
- StorageLive(_117); StorageLive(_117);
- StorageLive(_118); StorageLive(_118);
- _118 = _1; _118 = _1;
- StorageLive(_119); StorageLive(_119);
- _119 = _2; _119 = _2;
- _117 = Shr(move _118, move _119); - _117 = Shr(move _118, move _119);
- StorageDead(_119); + _117 = _43;
- StorageDead(_118); StorageDead(_119);
StorageDead(_118);
StorageLive(_120); StorageLive(_120);
_120 = _3; _120 = _3;
- _116 = Add(move _117, move _120); - _116 = Add(move _117, move _120);
+ _116 = Add(_43, move _120); + _116 = Add(_43, move _120);
StorageDead(_120); StorageDead(_120);
- StorageDead(_117); StorageDead(_117);
_115 = opaque::<u64>(move _116) -> [return: bb28, unwind continue]; _115 = opaque::<u64>(move _116) -> [return: bb28, unwind continue];
} }
@ -668,68 +706,77 @@
StorageDead(_116); StorageDead(_116);
StorageDead(_115); StorageDead(_115);
StorageLive(_121); StorageLive(_121);
- StorageLive(_122); StorageLive(_122);
- StorageLive(_123); StorageLive(_123);
- _123 = _1; _123 = _1;
- _122 = S::<u64>(move _123); - _122 = S::<u64>(move _123);
- StorageDead(_123); + _122 = _53;
StorageDead(_123);
- _121 = opaque::<S<u64>>(move _122) -> [return: bb29, unwind continue]; - _121 = opaque::<S<u64>>(move _122) -> [return: bb29, unwind continue];
+ _121 = opaque::<S<u64>>(_53) -> [return: bb29, unwind continue]; + _121 = opaque::<S<u64>>(_53) -> [return: bb29, unwind continue];
} }
bb29: { bb29: {
- StorageDead(_122); StorageDead(_122);
StorageDead(_121); StorageDead(_121);
StorageLive(_124); StorageLive(_124);
- StorageLive(_125); StorageLive(_125);
- StorageLive(_126); StorageLive(_126);
- StorageLive(_127); StorageLive(_127);
- _127 = _1; _127 = _1;
- _126 = S::<u64>(move _127); - _126 = S::<u64>(move _127);
- StorageDead(_127); + _126 = _53;
StorageDead(_127);
- _125 = (_126.0: u64); - _125 = (_126.0: u64);
- _124 = opaque::<u64>(move _125) -> [return: bb30, unwind continue]; - _124 = opaque::<u64>(move _125) -> [return: bb30, unwind continue];
+ _125 = _56;
+ _124 = opaque::<u64>(_56) -> [return: bb30, unwind continue]; + _124 = opaque::<u64>(_56) -> [return: bb30, unwind continue];
} }
bb30: { bb30: {
- StorageDead(_125); StorageDead(_125);
- StorageDead(_126); StorageDead(_126);
StorageDead(_124); StorageDead(_124);
StorageLive(_128); StorageLive(_128);
_128 = &_3; _128 = &_3;
StorageLive(_129); StorageLive(_129);
- StorageLive(_130); - StorageLive(_130);
- StorageLive(_131); - StorageLive(_131);
+ nop;
+ nop;
_131 = (*_128); _131 = (*_128);
- StorageLive(_132); StorageLive(_132);
- _132 = _1; _132 = _1;
- _130 = Add(move _131, move _132); - _130 = Add(move _131, move _132);
- StorageDead(_132); + _130 = Add(_131, _1);
StorageDead(_132);
- StorageDead(_131); - StorageDead(_131);
- _129 = opaque::<u64>(move _130) -> [return: bb31, unwind continue]; - _129 = opaque::<u64>(move _130) -> [return: bb31, unwind continue];
+ _130 = Add(_131, _1); + nop;
+ _129 = opaque::<u64>(_130) -> [return: bb31, unwind continue]; + _129 = opaque::<u64>(_130) -> [return: bb31, unwind continue];
} }
bb31: { bb31: {
- StorageDead(_130); - StorageDead(_130);
+ nop;
StorageDead(_129); StorageDead(_129);
StorageLive(_133); StorageLive(_133);
- StorageLive(_134); StorageLive(_134);
- StorageLive(_135); StorageLive(_135);
- _135 = (*_128); - _135 = (*_128);
- StorageLive(_136); + _135 = _131;
- _136 = _1; StorageLive(_136);
_136 = _1;
- _134 = Add(move _135, move _136); - _134 = Add(move _135, move _136);
- StorageDead(_136); + _134 = _130;
- StorageDead(_135); StorageDead(_136);
StorageDead(_135);
- _133 = opaque::<u64>(move _134) -> [return: bb32, unwind continue]; - _133 = opaque::<u64>(move _134) -> [return: bb32, unwind continue];
+ _133 = opaque::<u64>(_130) -> [return: bb32, unwind continue]; + _133 = opaque::<u64>(_130) -> [return: bb32, unwind continue];
} }
bb32: { bb32: {
- StorageDead(_134); StorageDead(_134);
StorageDead(_133); StorageDead(_133);
StorageLive(_137); StorageLive(_137);
_137 = &mut _3; _137 = &mut _3;
@ -737,11 +784,11 @@
StorageLive(_139); StorageLive(_139);
StorageLive(_140); StorageLive(_140);
_140 = (*_137); _140 = (*_137);
- StorageLive(_141); StorageLive(_141);
- _141 = _1; _141 = _1;
- _139 = Add(move _140, move _141); - _139 = Add(move _140, move _141);
- StorageDead(_141);
+ _139 = Add(move _140, _1); + _139 = Add(move _140, _1);
StorageDead(_141);
StorageDead(_140); StorageDead(_140);
_138 = opaque::<u64>(move _139) -> [return: bb33, unwind continue]; _138 = opaque::<u64>(move _139) -> [return: bb33, unwind continue];
} }
@ -753,11 +800,11 @@
StorageLive(_143); StorageLive(_143);
StorageLive(_144); StorageLive(_144);
_144 = (*_137); _144 = (*_137);
- StorageLive(_145); StorageLive(_145);
- _145 = _1; _145 = _1;
- _143 = Add(move _144, move _145); - _143 = Add(move _144, move _145);
- StorageDead(_145);
+ _143 = Add(move _144, _1); + _143 = Add(move _144, _1);
StorageDead(_145);
StorageDead(_144); StorageDead(_144);
_142 = opaque::<u64>(move _143) -> [return: bb34, unwind continue]; _142 = opaque::<u64>(move _143) -> [return: bb34, unwind continue];
} }
@ -765,18 +812,18 @@
bb34: { bb34: {
StorageDead(_143); StorageDead(_143);
StorageDead(_142); StorageDead(_142);
- StorageLive(_146); StorageLive(_146);
StorageLive(_147); StorageLive(_147);
_147 = &raw const _3; _147 = &raw const _3;
StorageLive(_148); StorageLive(_148);
StorageLive(_149); StorageLive(_149);
StorageLive(_150); StorageLive(_150);
_150 = (*_147); _150 = (*_147);
- StorageLive(_151); StorageLive(_151);
- _151 = _1; _151 = _1;
- _149 = Add(move _150, move _151); - _149 = Add(move _150, move _151);
- StorageDead(_151);
+ _149 = Add(move _150, _1); + _149 = Add(move _150, _1);
StorageDead(_151);
StorageDead(_150); StorageDead(_150);
_148 = opaque::<u64>(move _149) -> [return: bb35, unwind continue]; _148 = opaque::<u64>(move _149) -> [return: bb35, unwind continue];
} }
@ -788,11 +835,11 @@
StorageLive(_153); StorageLive(_153);
StorageLive(_154); StorageLive(_154);
_154 = (*_147); _154 = (*_147);
- StorageLive(_155); StorageLive(_155);
- _155 = _1; _155 = _1;
- _153 = Add(move _154, move _155); - _153 = Add(move _154, move _155);
- StorageDead(_155);
+ _153 = Add(move _154, _1); + _153 = Add(move _154, _1);
StorageDead(_155);
StorageDead(_154); StorageDead(_154);
_152 = opaque::<u64>(move _153) -> [return: bb36, unwind continue]; _152 = opaque::<u64>(move _153) -> [return: bb36, unwind continue];
} }
@ -806,11 +853,11 @@
StorageLive(_158); StorageLive(_158);
StorageLive(_159); StorageLive(_159);
_159 = (*_156); _159 = (*_156);
- StorageLive(_160); StorageLive(_160);
- _160 = _1; _160 = _1;
- _158 = Add(move _159, move _160); - _158 = Add(move _159, move _160);
- StorageDead(_160);
+ _158 = Add(move _159, _1); + _158 = Add(move _159, _1);
StorageDead(_160);
StorageDead(_159); StorageDead(_159);
_157 = opaque::<u64>(move _158) -> [return: bb37, unwind continue]; _157 = opaque::<u64>(move _158) -> [return: bb37, unwind continue];
} }
@ -822,11 +869,11 @@
StorageLive(_162); StorageLive(_162);
StorageLive(_163); StorageLive(_163);
_163 = (*_156); _163 = (*_156);
- StorageLive(_164); StorageLive(_164);
- _164 = _1; _164 = _1;
- _162 = Add(move _163, move _164); - _162 = Add(move _163, move _164);
- StorageDead(_164);
+ _162 = Add(move _163, _1); + _162 = Add(move _163, _1);
StorageDead(_164);
StorageDead(_163); StorageDead(_163);
_161 = opaque::<u64>(move _162) -> [return: bb38, unwind continue]; _161 = opaque::<u64>(move _162) -> [return: bb38, unwind continue];
} }
@ -834,44 +881,50 @@
bb38: { bb38: {
StorageDead(_162); StorageDead(_162);
StorageDead(_161); StorageDead(_161);
- _146 = const (); _146 = const ();
StorageDead(_156); StorageDead(_156);
StorageDead(_147); StorageDead(_147);
- StorageDead(_146); StorageDead(_146);
StorageLive(_165); StorageLive(_165);
_165 = &_3; _165 = &_3;
StorageLive(_166); StorageLive(_166);
- StorageLive(_167); - StorageLive(_167);
- StorageLive(_168); - StorageLive(_168);
+ nop;
+ nop;
_168 = (*_165); _168 = (*_165);
- StorageLive(_169); StorageLive(_169);
- _169 = _1; _169 = _1;
- _167 = Add(move _168, move _169); - _167 = Add(move _168, move _169);
- StorageDead(_169); + _167 = Add(_168, _1);
StorageDead(_169);
- StorageDead(_168); - StorageDead(_168);
- _166 = opaque::<u64>(move _167) -> [return: bb39, unwind continue]; - _166 = opaque::<u64>(move _167) -> [return: bb39, unwind continue];
+ _167 = Add(_168, _1); + nop;
+ _166 = opaque::<u64>(_167) -> [return: bb39, unwind continue]; + _166 = opaque::<u64>(_167) -> [return: bb39, unwind continue];
} }
bb39: { bb39: {
- StorageDead(_167); - StorageDead(_167);
+ nop;
StorageDead(_166); StorageDead(_166);
StorageLive(_170); StorageLive(_170);
- StorageLive(_171); StorageLive(_171);
- StorageLive(_172); StorageLive(_172);
- _172 = (*_165); - _172 = (*_165);
- StorageLive(_173); + _172 = _168;
- _173 = _1; StorageLive(_173);
_173 = _1;
- _171 = Add(move _172, move _173); - _171 = Add(move _172, move _173);
- StorageDead(_173); + _171 = _167;
- StorageDead(_172); StorageDead(_173);
StorageDead(_172);
- _170 = opaque::<u64>(move _171) -> [return: bb40, unwind continue]; - _170 = opaque::<u64>(move _171) -> [return: bb40, unwind continue];
+ _170 = opaque::<u64>(_167) -> [return: bb40, unwind continue]; + _170 = opaque::<u64>(_167) -> [return: bb40, unwind continue];
} }
bb40: { bb40: {
- StorageDead(_171); StorageDead(_171);
StorageDead(_170); StorageDead(_170);
_0 = const (); _0 = const ();
StorageDead(_165); StorageDead(_165);

View file

@ -15,11 +15,11 @@
bb0: { bb0: {
StorageLive(_2); StorageLive(_2);
- StorageLive(_3); StorageLive(_3);
- _3 = _1; _3 = _1;
- _2 = Option::<T>::Some(move _3); - _2 = Option::<T>::Some(move _3);
- StorageDead(_3);
+ _2 = Option::<T>::Some(_1); + _2 = Option::<T>::Some(_1);
StorageDead(_3);
_4 = discriminant(_2); _4 = discriminant(_2);
switchInt(move _4) -> [0: bb1, 1: bb3, otherwise: bb2]; switchInt(move _4) -> [0: bb1, 1: bb3, otherwise: bb2];
} }
@ -35,9 +35,11 @@
bb3: { bb3: {
- StorageLive(_5); - StorageLive(_5);
+ nop;
_5 = ((_2 as Some).0: T); _5 = ((_2 as Some).0: T);
_0 = _5; _0 = _5;
- StorageDead(_5); - StorageDead(_5);
+ nop;
StorageDead(_2); StorageDead(_2);
return; return;
} }

View file

@ -15,11 +15,11 @@
bb0: { bb0: {
StorageLive(_2); StorageLive(_2);
- StorageLive(_3); StorageLive(_3);
- _3 = _1; _3 = _1;
- _2 = Option::<T>::Some(move _3); - _2 = Option::<T>::Some(move _3);
- StorageDead(_3);
+ _2 = Option::<T>::Some(_1); + _2 = Option::<T>::Some(_1);
StorageDead(_3);
_4 = discriminant(_2); _4 = discriminant(_2);
switchInt(move _4) -> [0: bb1, 1: bb3, otherwise: bb2]; switchInt(move _4) -> [0: bb1, 1: bb3, otherwise: bb2];
} }
@ -35,9 +35,11 @@
bb3: { bb3: {
- StorageLive(_5); - StorageLive(_5);
+ nop;
_5 = ((_2 as Some).0: T); _5 = ((_2 as Some).0: T);
_0 = _5; _0 = _5;
- StorageDead(_5); - StorageDead(_5);
+ nop;
StorageDead(_2); StorageDead(_2);
return; return;
} }

View file

@ -7,22 +7,18 @@
let _2: &[T]; let _2: &[T];
let mut _3: &[T; 3]; let mut _3: &[T; 3];
let _4: [T; 3]; let _4: [T; 3];
let mut _5: T; let mut _5: usize;
let mut _6: T; let mut _6: bool;
let mut _7: T; let mut _10: !;
let mut _8: usize;
let mut _9: usize;
let mut _10: bool;
let mut _14: !;
scope 1 { scope 1 {
debug v => _2; debug v => _2;
let _11: &T; let _7: &T;
let _12: &T; let _8: &T;
let _13: &T; let _9: &T;
scope 2 { scope 2 {
debug v1 => _11; debug v1 => _7;
debug v2 => _12; debug v2 => _8;
debug v3 => _13; debug v3 => _9;
} }
} }
@ -33,26 +29,25 @@
_3 = &_4; _3 = &_4;
_2 = move _3 as &[T] (PointerCoercion(Unsize)); _2 = move _3 as &[T] (PointerCoercion(Unsize));
StorageDead(_3); StorageDead(_3);
_8 = const 3_usize; _5 = const 3_usize;
_9 = const 3_usize; _6 = const true;
_10 = const true;
goto -> bb2; goto -> bb2;
} }
bb1: { bb1: {
_14 = core::panicking::panic(const "internal error: entered unreachable code") -> unwind unreachable; _10 = core::panicking::panic(const "internal error: entered unreachable code") -> unwind unreachable;
} }
bb2: { bb2: {
StorageLive(_11); StorageLive(_7);
_11 = &(*_2)[0 of 3]; _7 = &(*_2)[0 of 3];
StorageLive(_12); StorageLive(_8);
_12 = &(*_2)[1 of 3]; _8 = &(*_2)[1 of 3];
StorageLive(_13); StorageLive(_9);
_13 = &(*_2)[2 of 3]; _9 = &(*_2)[2 of 3];
StorageDead(_13); StorageDead(_9);
StorageDead(_12); StorageDead(_8);
StorageDead(_11); StorageDead(_7);
StorageDead(_4); StorageDead(_4);
return; return;
} }

View file

@ -7,22 +7,18 @@
let _2: &[T]; let _2: &[T];
let mut _3: &[T; 3]; let mut _3: &[T; 3];
let _4: [T; 3]; let _4: [T; 3];
let mut _5: T; let mut _5: usize;
let mut _6: T; let mut _6: bool;
let mut _7: T; let mut _10: !;
let mut _8: usize;
let mut _9: usize;
let mut _10: bool;
let mut _14: !;
scope 1 { scope 1 {
debug v => _2; debug v => _2;
let _11: &T; let _7: &T;
let _12: &T; let _8: &T;
let _13: &T; let _9: &T;
scope 2 { scope 2 {
debug v1 => _11; debug v1 => _7;
debug v2 => _12; debug v2 => _8;
debug v3 => _13; debug v3 => _9;
} }
} }
@ -33,26 +29,25 @@
_3 = &_4; _3 = &_4;
_2 = move _3 as &[T] (PointerCoercion(Unsize)); _2 = move _3 as &[T] (PointerCoercion(Unsize));
StorageDead(_3); StorageDead(_3);
_8 = const 3_usize; _5 = const 3_usize;
_9 = const 3_usize; _6 = const true;
_10 = const true;
goto -> bb2; goto -> bb2;
} }
bb1: { bb1: {
_14 = core::panicking::panic(const "internal error: entered unreachable code") -> unwind continue; _10 = core::panicking::panic(const "internal error: entered unreachable code") -> unwind continue;
} }
bb2: { bb2: {
StorageLive(_11); StorageLive(_7);
_11 = &(*_2)[0 of 3]; _7 = &(*_2)[0 of 3];
StorageLive(_12); StorageLive(_8);
_12 = &(*_2)[1 of 3]; _8 = &(*_2)[1 of 3];
StorageLive(_13); StorageLive(_9);
_13 = &(*_2)[2 of 3]; _9 = &(*_2)[2 of 3];
StorageDead(_13); StorageDead(_9);
StorageDead(_12); StorageDead(_8);
StorageDead(_11); StorageDead(_7);
StorageDead(_4); StorageDead(_4);
return; return;
} }

View file

@ -3,18 +3,15 @@
fn main() -> () { fn main() -> () {
let mut _0: (); let mut _0: ();
let mut _1: bool; let _1: ();
let _2: ();
bb0: { bb0: {
StorageLive(_1);
_1 = const false;
- switchInt(const false) -> [0: bb3, otherwise: bb1]; - switchInt(const false) -> [0: bb3, otherwise: bb1];
+ goto -> bb3; + goto -> bb3;
} }
bb1: { bb1: {
_2 = noop() -> [return: bb2, unwind unreachable]; _1 = noop() -> [return: bb2, unwind unreachable];
} }
bb2: { bb2: {
@ -26,7 +23,6 @@
} }
bb4: { bb4: {
StorageDead(_1);
return; return;
} }
} }

View file

@ -3,18 +3,15 @@
fn main() -> () { fn main() -> () {
let mut _0: (); let mut _0: ();
let mut _1: bool; let _1: ();
let _2: ();
bb0: { bb0: {
StorageLive(_1);
_1 = const false;
- switchInt(const false) -> [0: bb3, otherwise: bb1]; - switchInt(const false) -> [0: bb3, otherwise: bb1];
+ goto -> bb3; + goto -> bb3;
} }
bb1: { bb1: {
_2 = noop() -> [return: bb2, unwind continue]; _1 = noop() -> [return: bb2, unwind continue];
} }
bb2: { bb2: {
@ -26,7 +23,6 @@
} }
bb4: { bb4: {
StorageDead(_1);
return; return;
} }
} }