============ initial translation from Move ================ [variant baseline] fun ReturnRefsSafe::return_freeze($t0|x: &mut u64): &u64 { var $t1: &mut u64 var $t2: &u64 0: $t1 := move($t0) 1: $t2 := freeze_ref($t1) 2: return $t2 } [variant baseline] fun ReturnRefsSafe::return_immut($t0|x: &u64): &u64 { var $t1: &u64 0: $t1 := move($t0) 1: return $t1 } [variant baseline] fun ReturnRefsSafe::return_mut($t0|x: &mut u64): &mut u64 { var $t1: &mut u64 0: $t1 := move($t0) 1: return $t1 } [variant baseline] fun ReturnRefsSafe::return_vec_immut($t0|v: &vector): &vector { var $t1: &vector 0: $t1 := move($t0) 1: return $t1 } [variant baseline] fun ReturnRefsSafe::return_vec_mut($t0|v: &mut vector): &mut vector { var $t1: &mut vector 0: $t1 := move($t0) 1: return $t1 } ============ after pipeline `escape_analysis` ================ [variant baseline] fun ReturnRefsSafe::return_freeze($t0|x: &mut u64): &u64 { var $t1: &mut u64 var $t2: &u64 0: $t1 := move($t0) 1: $t2 := freeze_ref($t1) 2: return $t2 } [variant baseline] fun ReturnRefsSafe::return_immut($t0|x: &u64): &u64 { var $t1: &u64 0: $t1 := move($t0) 1: return $t1 } [variant baseline] fun ReturnRefsSafe::return_mut($t0|x: &mut u64): &mut u64 { var $t1: &mut u64 0: $t1 := move($t0) 1: return $t1 } [variant baseline] fun ReturnRefsSafe::return_vec_immut($t0|v: &vector): &vector { var $t1: &vector 0: $t1 := move($t0) 1: return $t1 } [variant baseline] fun ReturnRefsSafe::return_vec_mut($t0|v: &mut vector): &mut vector { var $t1: &mut vector 0: $t1 := move($t0) 1: return $t1 }