@@ -7,86 +7,87 @@ define void @test(ptr %p, i40 %a) {
77; CHECK-NEXT: entry:
88; CHECK-NEXT: br i1 false, label [[SCALAR_PH:%.*]], label [[VECTOR_PH:%.*]]
99; CHECK: vector.ph:
10+ ; CHECK-NEXT: [[TMP0:%.*]] = icmp sgt i1 true, false
1011; CHECK-NEXT: br label [[VECTOR_BODY:%.*]]
1112; CHECK: vector.body:
1213; CHECK-NEXT: br i1 true, label [[PRED_STORE_IF:%.*]], label [[PRED_STORE_CONTINUE:%.*]]
1314; CHECK: pred.store.if:
14- ; CHECK-NEXT: store i1 false , ptr [[P]], align 1
15+ ; CHECK-NEXT: store i1 [[TMP0]] , ptr [[P]], align 1
1516; CHECK-NEXT: br label [[PRED_STORE_CONTINUE]]
1617; CHECK: pred.store.continue:
1718; CHECK-NEXT: br i1 true, label [[PRED_STORE_IF1:%.*]], label [[PRED_STORE_CONTINUE2:%.*]]
1819; CHECK: pred.store.if1:
19- ; CHECK-NEXT: store i1 false , ptr [[P]], align 1
20+ ; CHECK-NEXT: store i1 [[TMP0]] , ptr [[P]], align 1
2021; CHECK-NEXT: br label [[PRED_STORE_CONTINUE2]]
2122; CHECK: pred.store.continue2:
2223; CHECK-NEXT: br i1 true, label [[PRED_STORE_IF3:%.*]], label [[PRED_STORE_CONTINUE4:%.*]]
2324; CHECK: pred.store.if3:
24- ; CHECK-NEXT: store i1 false , ptr [[P]], align 1
25+ ; CHECK-NEXT: store i1 [[TMP0]] , ptr [[P]], align 1
2526; CHECK-NEXT: br label [[PRED_STORE_CONTINUE4]]
2627; CHECK: pred.store.continue4:
2728; CHECK-NEXT: br i1 true, label [[PRED_STORE_IF5:%.*]], label [[PRED_STORE_CONTINUE6:%.*]]
2829; CHECK: pred.store.if5:
29- ; CHECK-NEXT: store i1 false , ptr [[P]], align 1
30+ ; CHECK-NEXT: store i1 [[TMP0]] , ptr [[P]], align 1
3031; CHECK-NEXT: br label [[PRED_STORE_CONTINUE6]]
3132; CHECK: pred.store.continue6:
3233; CHECK-NEXT: br i1 true, label [[PRED_STORE_IF7:%.*]], label [[PRED_STORE_CONTINUE8:%.*]]
3334; CHECK: pred.store.if7:
34- ; CHECK-NEXT: store i1 false , ptr [[P]], align 1
35+ ; CHECK-NEXT: store i1 [[TMP0]] , ptr [[P]], align 1
3536; CHECK-NEXT: br label [[PRED_STORE_CONTINUE8]]
3637; CHECK: pred.store.continue8:
3738; CHECK-NEXT: br i1 true, label [[PRED_STORE_IF9:%.*]], label [[PRED_STORE_CONTINUE10:%.*]]
3839; CHECK: pred.store.if9:
39- ; CHECK-NEXT: store i1 false , ptr [[P]], align 1
40+ ; CHECK-NEXT: store i1 [[TMP0]] , ptr [[P]], align 1
4041; CHECK-NEXT: br label [[PRED_STORE_CONTINUE10]]
4142; CHECK: pred.store.continue10:
4243; CHECK-NEXT: br i1 true, label [[PRED_STORE_IF11:%.*]], label [[PRED_STORE_CONTINUE12:%.*]]
4344; CHECK: pred.store.if11:
44- ; CHECK-NEXT: store i1 false , ptr [[P]], align 1
45+ ; CHECK-NEXT: store i1 [[TMP0]] , ptr [[P]], align 1
4546; CHECK-NEXT: br label [[PRED_STORE_CONTINUE12]]
4647; CHECK: pred.store.continue12:
4748; CHECK-NEXT: br i1 true, label [[PRED_STORE_IF13:%.*]], label [[PRED_STORE_CONTINUE14:%.*]]
4849; CHECK: pred.store.if13:
49- ; CHECK-NEXT: store i1 false , ptr [[P]], align 1
50+ ; CHECK-NEXT: store i1 [[TMP0]] , ptr [[P]], align 1
5051; CHECK-NEXT: br label [[PRED_STORE_CONTINUE14]]
5152; CHECK: pred.store.continue14:
5253; CHECK-NEXT: br i1 true, label [[PRED_STORE_IF15:%.*]], label [[PRED_STORE_CONTINUE16:%.*]]
5354; CHECK: pred.store.if15:
54- ; CHECK-NEXT: store i1 false , ptr [[P]], align 1
55+ ; CHECK-NEXT: store i1 [[TMP0]] , ptr [[P]], align 1
5556; CHECK-NEXT: br label [[PRED_STORE_CONTINUE16]]
5657; CHECK: pred.store.continue16:
5758; CHECK-NEXT: br i1 true, label [[PRED_STORE_IF17:%.*]], label [[PRED_STORE_CONTINUE18:%.*]]
5859; CHECK: pred.store.if17:
59- ; CHECK-NEXT: store i1 false , ptr [[P]], align 1
60+ ; CHECK-NEXT: store i1 [[TMP0]] , ptr [[P]], align 1
6061; CHECK-NEXT: br label [[PRED_STORE_CONTINUE18]]
6162; CHECK: pred.store.continue18:
6263; CHECK-NEXT: br i1 false, label [[PRED_STORE_IF19:%.*]], label [[PRED_STORE_CONTINUE20:%.*]]
6364; CHECK: pred.store.if19:
64- ; CHECK-NEXT: store i1 false , ptr [[P]], align 1
65+ ; CHECK-NEXT: store i1 [[TMP0]] , ptr [[P]], align 1
6566; CHECK-NEXT: br label [[PRED_STORE_CONTINUE20]]
6667; CHECK: pred.store.continue20:
6768; CHECK-NEXT: br i1 false, label [[PRED_STORE_IF21:%.*]], label [[PRED_STORE_CONTINUE22:%.*]]
6869; CHECK: pred.store.if21:
69- ; CHECK-NEXT: store i1 false , ptr [[P]], align 1
70+ ; CHECK-NEXT: store i1 [[TMP0]] , ptr [[P]], align 1
7071; CHECK-NEXT: br label [[PRED_STORE_CONTINUE22]]
7172; CHECK: pred.store.continue22:
7273; CHECK-NEXT: br i1 false, label [[PRED_STORE_IF23:%.*]], label [[PRED_STORE_CONTINUE24:%.*]]
7374; CHECK: pred.store.if23:
74- ; CHECK-NEXT: store i1 false , ptr [[P]], align 1
75+ ; CHECK-NEXT: store i1 [[TMP0]] , ptr [[P]], align 1
7576; CHECK-NEXT: br label [[PRED_STORE_CONTINUE24]]
7677; CHECK: pred.store.continue24:
7778; CHECK-NEXT: br i1 false, label [[PRED_STORE_IF25:%.*]], label [[PRED_STORE_CONTINUE26:%.*]]
7879; CHECK: pred.store.if25:
79- ; CHECK-NEXT: store i1 false , ptr [[P]], align 1
80+ ; CHECK-NEXT: store i1 [[TMP0]] , ptr [[P]], align 1
8081; CHECK-NEXT: br label [[PRED_STORE_CONTINUE26]]
8182; CHECK: pred.store.continue26:
8283; CHECK-NEXT: br i1 false, label [[PRED_STORE_IF27:%.*]], label [[PRED_STORE_CONTINUE28:%.*]]
8384; CHECK: pred.store.if27:
84- ; CHECK-NEXT: store i1 false , ptr [[P]], align 1
85+ ; CHECK-NEXT: store i1 [[TMP0]] , ptr [[P]], align 1
8586; CHECK-NEXT: br label [[PRED_STORE_CONTINUE28]]
8687; CHECK: pred.store.continue28:
8788; CHECK-NEXT: br i1 false, label [[PRED_STORE_IF29:%.*]], label [[PRED_STORE_CONTINUE30:%.*]]
8889; CHECK: pred.store.if29:
89- ; CHECK-NEXT: store i1 false , ptr [[P]], align 1
90+ ; CHECK-NEXT: store i1 [[TMP0]] , ptr [[P]], align 1
9091; CHECK-NEXT: br label [[PRED_STORE_CONTINUE30]]
9192; CHECK: pred.store.continue30:
9293; CHECK-NEXT: br label [[MIDDLE_BLOCK:%.*]]
0 commit comments