============ initial translation from Move ================ [variant baseline] fun TestBranching::branching($t0|cond: bool): u64 { var $t1|tmp#$1: u64 var $t2|x: u64 var $t3: bool var $t4: u64 var $t5: u64 var $t6: u64 var $t7: u64 0: $t3 := move($t0) 1: if ($t3) goto 2 else goto 6 2: label L0 3: $t4 := 3 4: $t1 := $t4 5: goto 10 6: label L2 7: $t5 := 4 8: $t1 := $t5 9: goto 10 10: label L3 11: $t6 := move($t1) 12: $t2 := $t6 13: $t7 := move($t2) 14: return $t7 } ============ after pipeline `reaching_def` ================ [variant baseline] fun TestBranching::branching($t0|cond: bool): u64 { var $t1|tmp#$1: u64 var $t2|x: u64 var $t3: bool var $t4: u64 var $t5: u64 var $t6: u64 var $t7: u64 0: $t3 := move($t0) 1: if ($t0) goto 2 else goto 6 2: label L0 3: $t4 := 3 4: $t1 := $t4 5: goto 9 6: label L2 7: $t5 := 4 8: $t1 := $t5 9: label L3 10: $t6 := move($t1) 11: $t2 := $t1 12: $t7 := move($t1) 13: return $t1 }