141ee3977SEli Friedman; RUN: opt < %s -jump-threading -S -jump-threading-across-loop-headers | FileCheck %s 241ee3977SEli Friedman 341ee3977SEli Friedman; Make sure we correctly distinguish between %tmp15 and %tmp16 when we clone 441ee3977SEli Friedman; body2. 541ee3977SEli Friedman 641ee3977SEli Friedman; CHECK: body2.thread: 741ee3977SEli Friedman; CHECK-NEXT: %tmp163 = add i32 %tmp165, 1 841ee3977SEli Friedman; CHECK-NEXT: br label %latch1 941ee3977SEli Friedman 1041ee3977SEli Friedman; CHECK: latch1: 1141ee3977SEli Friedman; CHECK-NEXT: %tmp165 = phi i32 [ %tmp163, %body2.thread ], [ %tmp16, %body2 ] 12*ed90f15eSOwen Anderson; CHECK-NEXT: %tmp154 = phi i32 [ %tmp165, %body2.thread ], [ %tmp15, %body2 ] 1341ee3977SEli Friedman 1441ee3977SEli Friedmandefine i32 @test(i1 %ARG1, i1 %ARG2, i32 %n) { 1541ee3977SEli Friedmanentry: 1641ee3977SEli Friedman br label %head1 1741ee3977SEli Friedman 1841ee3977SEli Friedmanhead1: ; preds = %entry, %body1 1941ee3977SEli Friedman %tmp = phi i32 [ 0, %entry ], [ %tmp16, %body1 ] 2041ee3977SEli Friedman %tmp3 = phi i32 [ 0, %entry ], [ %tmp16, %body1 ] 2141ee3977SEli Friedman %tmp4 = phi i32 [ 0, %entry ], [ %tmp16, %body1 ] 2241ee3977SEli Friedman br i1 %ARG1, label %exit, label %body2 2341ee3977SEli Friedman 2441ee3977SEli Friedmanbody1: ; preds = %latch1 2541ee3977SEli Friedman %tmp12 = icmp sgt i32 %tmp16, 1 2641ee3977SEli Friedman br i1 %tmp12, label %body2, label %head1 2741ee3977SEli Friedman 2841ee3977SEli Friedmanbody2: ; preds = %head1, %body1 2941ee3977SEli Friedman %tmp14 = phi i32 [ %tmp16, %body1 ], [ %tmp, %head1 ] 3041ee3977SEli Friedman %tmp15 = phi i32 [ %tmp16, %body1 ], [ %tmp3, %head1 ] 3141ee3977SEli Friedman %tmp16 = add i32 %tmp14, 1 3241ee3977SEli Friedman br i1 %ARG2, label %exit, label %latch1 3341ee3977SEli Friedman 3441ee3977SEli Friedmanlatch1: ; preds = %body2 3541ee3977SEli Friedman %tmp18 = icmp sgt i32 %tmp16, %n 3641ee3977SEli Friedman br i1 %tmp18, label %exit, label %body1 3741ee3977SEli Friedman 3841ee3977SEli Friedmanexit: ; preds = %latch1, %body2, %head1 3941ee3977SEli Friedman %rc = phi i32 [ %tmp15, %body2 ], [ %tmp15, %latch1 ], [ -1, %head1 ] 4041ee3977SEli Friedman ret i32 %rc 4141ee3977SEli Friedman} 42