1
- ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 5
1
+ ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --check-globals none -- version 5
2
2
; RUN: opt -p loop-unroll -mcpu=apple-m1 -S %s | FileCheck --check-prefix=APPLE %s
3
3
; RUN: opt -p loop-unroll -mcpu=apple-m2 -S %s | FileCheck --check-prefix=APPLE %s
4
4
; RUN: opt -p loop-unroll -mcpu=apple-m3 -S %s | FileCheck --check-prefix=APPLE %s
@@ -26,20 +26,20 @@ define i1 @multi_2_exit_find_i8_loop(ptr %vec, i8 %tgt) {
26
26
; APPLE: [[LOOP_HEADER_PROL_PREHEADER]]:
27
27
; APPLE-NEXT: br label %[[LOOP_HEADER_PROL:.*]]
28
28
; APPLE: [[LOOP_HEADER_PROL]]:
29
- ; APPLE-NEXT: [[PTR_IV :%.*]] = phi ptr [ [[PTR_IV_NEXT :%.*]], %[[LOOP_LATCH_PROL:.*]] ], [ [[START]], %[[LOOP_HEADER_PROL_PREHEADER]] ]
29
+ ; APPLE-NEXT: [[PTR_IV_PROL :%.*]] = phi ptr [ [[PTR_IV_NEXT_PROL :%.*]], %[[LOOP_LATCH_PROL:.*]] ], [ [[START]], %[[LOOP_HEADER_PROL_PREHEADER]] ]
30
30
; APPLE-NEXT: [[PROL_ITER:%.*]] = phi i64 [ 0, %[[LOOP_HEADER_PROL_PREHEADER]] ], [ [[PROL_ITER_NEXT:%.*]], %[[LOOP_LATCH_PROL]] ]
31
- ; APPLE-NEXT: [[L :%.*]] = load i8, ptr [[PTR_IV ]], align 8
32
- ; APPLE-NEXT: [[C_1 :%.*]] = icmp eq i8 [[L ]], [[TGT]]
33
- ; APPLE-NEXT: br i1 [[C_1 ]], label %[[EXIT_UNR_LCSSA_LOOPEXIT3:.*]], label %[[LOOP_LATCH_PROL]]
31
+ ; APPLE-NEXT: [[L_PROL :%.*]] = load i8, ptr [[PTR_IV_PROL ]], align 8
32
+ ; APPLE-NEXT: [[C_1_PROL :%.*]] = icmp eq i8 [[L_PROL ]], [[TGT]]
33
+ ; APPLE-NEXT: br i1 [[C_1_PROL ]], label %[[EXIT_UNR_LCSSA_LOOPEXIT3:.*]], label %[[LOOP_LATCH_PROL]]
34
34
; APPLE: [[LOOP_LATCH_PROL]]:
35
- ; APPLE-NEXT: [[PTR_IV_NEXT ]] = getelementptr inbounds nuw i8, ptr [[PTR_IV ]], i64 1
36
- ; APPLE-NEXT: [[C_2 :%.*]] = icmp eq ptr [[PTR_IV_NEXT ]], [[END]]
35
+ ; APPLE-NEXT: [[PTR_IV_NEXT_PROL ]] = getelementptr inbounds nuw i8, ptr [[PTR_IV_PROL ]], i64 1
36
+ ; APPLE-NEXT: [[C_2_PROL :%.*]] = icmp eq ptr [[PTR_IV_NEXT_PROL ]], [[END]]
37
37
; APPLE-NEXT: [[PROL_ITER_NEXT]] = add i64 [[PROL_ITER]], 1
38
38
; APPLE-NEXT: [[PROL_ITER_CMP:%.*]] = icmp ne i64 [[PROL_ITER_NEXT]], [[XTRAITER]]
39
39
; APPLE-NEXT: br i1 [[PROL_ITER_CMP]], label %[[LOOP_HEADER_PROL]], label %[[LOOP_HEADER_PROL_LOOPEXIT_UNR_LCSSA:.*]], !llvm.loop [[LOOP0:![0-9]+]]
40
40
; APPLE: [[LOOP_HEADER_PROL_LOOPEXIT_UNR_LCSSA]]:
41
41
; APPLE-NEXT: [[RES_UNR_PH:%.*]] = phi ptr [ [[END]], %[[LOOP_LATCH_PROL]] ]
42
- ; APPLE-NEXT: [[PTR_IV_UNR_PH:%.*]] = phi ptr [ [[PTR_IV_NEXT ]], %[[LOOP_LATCH_PROL]] ]
42
+ ; APPLE-NEXT: [[PTR_IV_UNR_PH:%.*]] = phi ptr [ [[PTR_IV_NEXT_PROL ]], %[[LOOP_LATCH_PROL]] ]
43
43
; APPLE-NEXT: br label %[[LOOP_HEADER_PROL_LOOPEXIT]]
44
44
; APPLE: [[LOOP_HEADER_PROL_LOOPEXIT]]:
45
45
; APPLE-NEXT: [[RES_UNR:%.*]] = phi ptr [ poison, %[[ENTRY]] ], [ [[RES_UNR_PH]], %[[LOOP_HEADER_PROL_LOOPEXIT_UNR_LCSSA]] ]
@@ -49,17 +49,17 @@ define i1 @multi_2_exit_find_i8_loop(ptr %vec, i8 %tgt) {
49
49
; APPLE: [[ENTRY_NEW]]:
50
50
; APPLE-NEXT: br label %[[LOOP_HEADER:.*]]
51
51
; APPLE: [[LOOP_HEADER]]:
52
- ; APPLE-NEXT: [[PTR_IV1 :%.*]] = phi ptr [ [[PTR_IV_UNR]], %[[ENTRY_NEW]] ], [ [[RES :%.*]], %[[LOOP_LATCH_3:.*]] ]
53
- ; APPLE-NEXT: [[L1 :%.*]] = load i8, ptr [[PTR_IV1 ]], align 8
54
- ; APPLE-NEXT: [[C_4 :%.*]] = icmp eq i8 [[L1 ]], [[TGT]]
55
- ; APPLE-NEXT: br i1 [[C_4 ]], label %[[EXIT_UNR_LCSSA_LOOPEXIT:.*]], label %[[LOOP_LATCH:.*]]
52
+ ; APPLE-NEXT: [[PTR_IV :%.*]] = phi ptr [ [[PTR_IV_UNR]], %[[ENTRY_NEW]] ], [ [[PTR_IV_NEXT_3 :%.*]], %[[LOOP_LATCH_3:.*]] ]
53
+ ; APPLE-NEXT: [[L :%.*]] = load i8, ptr [[PTR_IV ]], align 8
54
+ ; APPLE-NEXT: [[C_1 :%.*]] = icmp eq i8 [[L ]], [[TGT]]
55
+ ; APPLE-NEXT: br i1 [[C_1 ]], label %[[EXIT_UNR_LCSSA_LOOPEXIT:.*]], label %[[LOOP_LATCH:.*]]
56
56
; APPLE: [[LOOP_LATCH]]:
57
- ; APPLE-NEXT: [[PTR_IV_NEXT1 :%.*]] = getelementptr inbounds nuw i8, ptr [[PTR_IV1 ]], i64 1
58
- ; APPLE-NEXT: [[L_1:%.*]] = load i8, ptr [[PTR_IV_NEXT1 ]], align 8
57
+ ; APPLE-NEXT: [[PTR_IV_NEXT :%.*]] = getelementptr inbounds nuw i8, ptr [[PTR_IV ]], i64 1
58
+ ; APPLE-NEXT: [[L_1:%.*]] = load i8, ptr [[PTR_IV_NEXT ]], align 8
59
59
; APPLE-NEXT: [[C_1_1:%.*]] = icmp eq i8 [[L_1]], [[TGT]]
60
60
; APPLE-NEXT: br i1 [[C_1_1]], label %[[EXIT_UNR_LCSSA_LOOPEXIT]], label %[[LOOP_LATCH_1:.*]]
61
61
; APPLE: [[LOOP_LATCH_1]]:
62
- ; APPLE-NEXT: [[PTR_IV_NEXT_1:%.*]] = getelementptr inbounds nuw i8, ptr [[PTR_IV_NEXT1 ]], i64 1
62
+ ; APPLE-NEXT: [[PTR_IV_NEXT_1:%.*]] = getelementptr inbounds nuw i8, ptr [[PTR_IV_NEXT ]], i64 1
63
63
; APPLE-NEXT: [[L_2:%.*]] = load i8, ptr [[PTR_IV_NEXT_1]], align 8
64
64
; APPLE-NEXT: [[C_1_2:%.*]] = icmp eq i8 [[L_2]], [[TGT]]
65
65
; APPLE-NEXT: br i1 [[C_1_2]], label %[[EXIT_UNR_LCSSA_LOOPEXIT]], label %[[LOOP_LATCH_2:.*]]
@@ -69,22 +69,22 @@ define i1 @multi_2_exit_find_i8_loop(ptr %vec, i8 %tgt) {
69
69
; APPLE-NEXT: [[C_1_3:%.*]] = icmp eq i8 [[L_3]], [[TGT]]
70
70
; APPLE-NEXT: br i1 [[C_1_3]], label %[[EXIT_UNR_LCSSA_LOOPEXIT]], label %[[LOOP_LATCH_3]]
71
71
; APPLE: [[LOOP_LATCH_3]]:
72
- ; APPLE-NEXT: [[RES ]] = getelementptr inbounds nuw i8, ptr [[PTR_IV_NEXT_2]], i64 1
73
- ; APPLE-NEXT: [[C_3 :%.*]] = icmp eq ptr [[RES ]], [[END]]
74
- ; APPLE-NEXT: br i1 [[C_3 ]], label %[[EXIT_UNR_LCSSA_LOOPEXIT]], label %[[LOOP_HEADER]]
72
+ ; APPLE-NEXT: [[PTR_IV_NEXT_3 ]] = getelementptr inbounds nuw i8, ptr [[PTR_IV_NEXT_2]], i64 1
73
+ ; APPLE-NEXT: [[C_2_3 :%.*]] = icmp eq ptr [[PTR_IV_NEXT_3 ]], [[END]]
74
+ ; APPLE-NEXT: br i1 [[C_2_3 ]], label %[[EXIT_UNR_LCSSA_LOOPEXIT]], label %[[LOOP_HEADER]]
75
75
; APPLE: [[EXIT_UNR_LCSSA_LOOPEXIT]]:
76
- ; APPLE-NEXT: [[RES_PH_PH:%.*]] = phi ptr [ [[PTR_IV1 ]], %[[LOOP_HEADER]] ], [ [[PTR_IV_NEXT1 ]], %[[LOOP_LATCH]] ], [ [[PTR_IV_NEXT_1]], %[[LOOP_LATCH_1]] ], [ [[PTR_IV_NEXT_2]], %[[LOOP_LATCH_2]] ], [ [[END]], %[[LOOP_LATCH_3]] ]
76
+ ; APPLE-NEXT: [[RES_PH_PH:%.*]] = phi ptr [ [[PTR_IV ]], %[[LOOP_HEADER]] ], [ [[PTR_IV_NEXT ]], %[[LOOP_LATCH]] ], [ [[PTR_IV_NEXT_1]], %[[LOOP_LATCH_1]] ], [ [[PTR_IV_NEXT_2]], %[[LOOP_LATCH_2]] ], [ [[END]], %[[LOOP_LATCH_3]] ]
77
77
; APPLE-NEXT: br label %[[EXIT_UNR_LCSSA:.*]]
78
78
; APPLE: [[EXIT_UNR_LCSSA_LOOPEXIT3]]:
79
- ; APPLE-NEXT: [[RES_PH_PH4:%.*]] = phi ptr [ [[PTR_IV ]], %[[LOOP_HEADER_PROL]] ]
79
+ ; APPLE-NEXT: [[RES_PH_PH4:%.*]] = phi ptr [ [[PTR_IV_PROL ]], %[[LOOP_HEADER_PROL]] ]
80
80
; APPLE-NEXT: br label %[[EXIT_UNR_LCSSA]]
81
81
; APPLE: [[EXIT_UNR_LCSSA]]:
82
82
; APPLE-NEXT: [[RES_PH:%.*]] = phi ptr [ [[RES_PH_PH]], %[[EXIT_UNR_LCSSA_LOOPEXIT]] ], [ [[RES_PH_PH4]], %[[EXIT_UNR_LCSSA_LOOPEXIT3]] ]
83
83
; APPLE-NEXT: br label %[[EXIT]]
84
84
; APPLE: [[EXIT]]:
85
- ; APPLE-NEXT: [[RES1 :%.*]] = phi ptr [ [[RES_UNR]], %[[LOOP_HEADER_PROL_LOOPEXIT]] ], [ [[RES_PH]], %[[EXIT_UNR_LCSSA]] ]
86
- ; APPLE-NEXT: [[C_5 :%.*]] = icmp eq ptr [[RES1 ]], [[END]]
87
- ; APPLE-NEXT: ret i1 [[C_5 ]]
85
+ ; APPLE-NEXT: [[RES :%.*]] = phi ptr [ [[RES_UNR]], %[[LOOP_HEADER_PROL_LOOPEXIT]] ], [ [[RES_PH]], %[[EXIT_UNR_LCSSA]] ]
86
+ ; APPLE-NEXT: [[C_3 :%.*]] = icmp eq ptr [[RES ]], [[END]]
87
+ ; APPLE-NEXT: ret i1 [[C_3 ]]
88
88
;
89
89
; OTHER-LABEL: define i1 @multi_2_exit_find_i8_loop(
90
90
; OTHER-SAME: ptr [[VEC:%.*]], i8 [[TGT:%.*]]) #[[ATTR0:[0-9]+]] {
@@ -154,20 +154,20 @@ define i1 @multi_2_exit_find_ptr_loop(ptr %vec, ptr %tgt) {
154
154
; APPLE: [[LOOP_HEADER_PROL_PREHEADER]]:
155
155
; APPLE-NEXT: br label %[[LOOP_HEADER_PROL:.*]]
156
156
; APPLE: [[LOOP_HEADER_PROL]]:
157
- ; APPLE-NEXT: [[PTR_IV :%.*]] = phi ptr [ [[PTR_IV_NEXT :%.*]], %[[LOOP_LATCH_PROL:.*]] ], [ [[START]], %[[LOOP_HEADER_PROL_PREHEADER]] ]
157
+ ; APPLE-NEXT: [[PTR_IV_PROL :%.*]] = phi ptr [ [[PTR_IV_NEXT_PROL :%.*]], %[[LOOP_LATCH_PROL:.*]] ], [ [[START]], %[[LOOP_HEADER_PROL_PREHEADER]] ]
158
158
; APPLE-NEXT: [[PROL_ITER:%.*]] = phi i64 [ 0, %[[LOOP_HEADER_PROL_PREHEADER]] ], [ [[PROL_ITER_NEXT:%.*]], %[[LOOP_LATCH_PROL]] ]
159
- ; APPLE-NEXT: [[L :%.*]] = load ptr, ptr [[PTR_IV ]], align 8
160
- ; APPLE-NEXT: [[C_1 :%.*]] = icmp eq ptr [[L ]], [[TGT]]
161
- ; APPLE-NEXT: br i1 [[C_1 ]], label %[[EXIT_UNR_LCSSA_LOOPEXIT3:.*]], label %[[LOOP_LATCH_PROL]]
159
+ ; APPLE-NEXT: [[L_PROL :%.*]] = load ptr, ptr [[PTR_IV_PROL ]], align 8
160
+ ; APPLE-NEXT: [[C_1_PROL :%.*]] = icmp eq ptr [[L_PROL ]], [[TGT]]
161
+ ; APPLE-NEXT: br i1 [[C_1_PROL ]], label %[[EXIT_UNR_LCSSA_LOOPEXIT3:.*]], label %[[LOOP_LATCH_PROL]]
162
162
; APPLE: [[LOOP_LATCH_PROL]]:
163
- ; APPLE-NEXT: [[PTR_IV_NEXT ]] = getelementptr inbounds nuw i8, ptr [[PTR_IV ]], i64 8
164
- ; APPLE-NEXT: [[C_2 :%.*]] = icmp eq ptr [[PTR_IV_NEXT ]], [[END]]
163
+ ; APPLE-NEXT: [[PTR_IV_NEXT_PROL ]] = getelementptr inbounds nuw i8, ptr [[PTR_IV_PROL ]], i64 8
164
+ ; APPLE-NEXT: [[C_2_PROL :%.*]] = icmp eq ptr [[PTR_IV_NEXT_PROL ]], [[END]]
165
165
; APPLE-NEXT: [[PROL_ITER_NEXT]] = add i64 [[PROL_ITER]], 1
166
166
; APPLE-NEXT: [[PROL_ITER_CMP:%.*]] = icmp ne i64 [[PROL_ITER_NEXT]], [[XTRAITER]]
167
167
; APPLE-NEXT: br i1 [[PROL_ITER_CMP]], label %[[LOOP_HEADER_PROL]], label %[[LOOP_HEADER_PROL_LOOPEXIT_UNR_LCSSA:.*]], !llvm.loop [[LOOP2:![0-9]+]]
168
168
; APPLE: [[LOOP_HEADER_PROL_LOOPEXIT_UNR_LCSSA]]:
169
169
; APPLE-NEXT: [[RES_UNR_PH:%.*]] = phi ptr [ [[END]], %[[LOOP_LATCH_PROL]] ]
170
- ; APPLE-NEXT: [[PTR_IV_UNR_PH:%.*]] = phi ptr [ [[PTR_IV_NEXT ]], %[[LOOP_LATCH_PROL]] ]
170
+ ; APPLE-NEXT: [[PTR_IV_UNR_PH:%.*]] = phi ptr [ [[PTR_IV_NEXT_PROL ]], %[[LOOP_LATCH_PROL]] ]
171
171
; APPLE-NEXT: br label %[[LOOP_HEADER_PROL_LOOPEXIT]]
172
172
; APPLE: [[LOOP_HEADER_PROL_LOOPEXIT]]:
173
173
; APPLE-NEXT: [[RES_UNR:%.*]] = phi ptr [ poison, %[[ENTRY]] ], [ [[RES_UNR_PH]], %[[LOOP_HEADER_PROL_LOOPEXIT_UNR_LCSSA]] ]
@@ -177,17 +177,17 @@ define i1 @multi_2_exit_find_ptr_loop(ptr %vec, ptr %tgt) {
177
177
; APPLE: [[ENTRY_NEW]]:
178
178
; APPLE-NEXT: br label %[[LOOP_HEADER:.*]]
179
179
; APPLE: [[LOOP_HEADER]]:
180
- ; APPLE-NEXT: [[PTR_IV1 :%.*]] = phi ptr [ [[PTR_IV_UNR]], %[[ENTRY_NEW]] ], [ [[PTR_IV_NEXT_3:%.*]], %[[LOOP_LATCH_3:.*]] ]
181
- ; APPLE-NEXT: [[L1 :%.*]] = load ptr, ptr [[PTR_IV1 ]], align 8
182
- ; APPLE-NEXT: [[C_4 :%.*]] = icmp eq ptr [[L1 ]], [[TGT]]
183
- ; APPLE-NEXT: br i1 [[C_4 ]], label %[[EXIT_UNR_LCSSA_LOOPEXIT:.*]], label %[[LOOP_LATCH:.*]]
180
+ ; APPLE-NEXT: [[PTR_IV :%.*]] = phi ptr [ [[PTR_IV_UNR]], %[[ENTRY_NEW]] ], [ [[PTR_IV_NEXT_3:%.*]], %[[LOOP_LATCH_3:.*]] ]
181
+ ; APPLE-NEXT: [[L :%.*]] = load ptr, ptr [[PTR_IV ]], align 8
182
+ ; APPLE-NEXT: [[C_1 :%.*]] = icmp eq ptr [[L ]], [[TGT]]
183
+ ; APPLE-NEXT: br i1 [[C_1 ]], label %[[EXIT_UNR_LCSSA_LOOPEXIT:.*]], label %[[LOOP_LATCH:.*]]
184
184
; APPLE: [[LOOP_LATCH]]:
185
- ; APPLE-NEXT: [[PTR_IV_NEXT1 :%.*]] = getelementptr inbounds nuw i8, ptr [[PTR_IV1 ]], i64 8
186
- ; APPLE-NEXT: [[L_1:%.*]] = load ptr, ptr [[PTR_IV_NEXT1 ]], align 8
185
+ ; APPLE-NEXT: [[PTR_IV_NEXT :%.*]] = getelementptr inbounds nuw i8, ptr [[PTR_IV ]], i64 8
186
+ ; APPLE-NEXT: [[L_1:%.*]] = load ptr, ptr [[PTR_IV_NEXT ]], align 8
187
187
; APPLE-NEXT: [[C_1_1:%.*]] = icmp eq ptr [[L_1]], [[TGT]]
188
188
; APPLE-NEXT: br i1 [[C_1_1]], label %[[EXIT_UNR_LCSSA_LOOPEXIT]], label %[[LOOP_LATCH_1:.*]]
189
189
; APPLE: [[LOOP_LATCH_1]]:
190
- ; APPLE-NEXT: [[PTR_IV_NEXT_1:%.*]] = getelementptr inbounds nuw i8, ptr [[PTR_IV_NEXT1 ]], i64 8
190
+ ; APPLE-NEXT: [[PTR_IV_NEXT_1:%.*]] = getelementptr inbounds nuw i8, ptr [[PTR_IV_NEXT ]], i64 8
191
191
; APPLE-NEXT: [[L_2:%.*]] = load ptr, ptr [[PTR_IV_NEXT_1]], align 8
192
192
; APPLE-NEXT: [[C_1_2:%.*]] = icmp eq ptr [[L_2]], [[TGT]]
193
193
; APPLE-NEXT: br i1 [[C_1_2]], label %[[EXIT_UNR_LCSSA_LOOPEXIT]], label %[[LOOP_LATCH_2:.*]]
@@ -201,10 +201,10 @@ define i1 @multi_2_exit_find_ptr_loop(ptr %vec, ptr %tgt) {
201
201
; APPLE-NEXT: [[C_2_3:%.*]] = icmp eq ptr [[PTR_IV_NEXT_3]], [[END]]
202
202
; APPLE-NEXT: br i1 [[C_2_3]], label %[[EXIT_UNR_LCSSA_LOOPEXIT]], label %[[LOOP_HEADER]]
203
203
; APPLE: [[EXIT_UNR_LCSSA_LOOPEXIT]]:
204
- ; APPLE-NEXT: [[RES_PH_PH:%.*]] = phi ptr [ [[PTR_IV1 ]], %[[LOOP_HEADER]] ], [ [[PTR_IV_NEXT1 ]], %[[LOOP_LATCH]] ], [ [[PTR_IV_NEXT_1]], %[[LOOP_LATCH_1]] ], [ [[PTR_IV_NEXT_2]], %[[LOOP_LATCH_2]] ], [ [[END]], %[[LOOP_LATCH_3]] ]
204
+ ; APPLE-NEXT: [[RES_PH_PH:%.*]] = phi ptr [ [[PTR_IV ]], %[[LOOP_HEADER]] ], [ [[PTR_IV_NEXT ]], %[[LOOP_LATCH]] ], [ [[PTR_IV_NEXT_1]], %[[LOOP_LATCH_1]] ], [ [[PTR_IV_NEXT_2]], %[[LOOP_LATCH_2]] ], [ [[END]], %[[LOOP_LATCH_3]] ]
205
205
; APPLE-NEXT: br label %[[EXIT_UNR_LCSSA:.*]]
206
206
; APPLE: [[EXIT_UNR_LCSSA_LOOPEXIT3]]:
207
- ; APPLE-NEXT: [[RES_PH_PH4:%.*]] = phi ptr [ [[PTR_IV ]], %[[LOOP_HEADER_PROL]] ]
207
+ ; APPLE-NEXT: [[RES_PH_PH4:%.*]] = phi ptr [ [[PTR_IV_PROL ]], %[[LOOP_HEADER_PROL]] ]
208
208
; APPLE-NEXT: br label %[[EXIT_UNR_LCSSA]]
209
209
; APPLE: [[EXIT_UNR_LCSSA]]:
210
210
; APPLE-NEXT: [[RES_PH:%.*]] = phi ptr [ [[RES_PH_PH]], %[[EXIT_UNR_LCSSA_LOOPEXIT]] ], [ [[RES_PH_PH4]], %[[EXIT_UNR_LCSSA_LOOPEXIT3]] ]
@@ -336,6 +336,7 @@ exit:
336
336
%c.3 = icmp eq ptr %res , %end
337
337
ret i1 %c.3
338
338
}
339
+
339
340
define i1 @multi_3_exit_find_ptr_loop (ptr %vec , ptr %tgt , ptr %tgt2 ) {
340
341
; APPLE-LABEL: define i1 @multi_3_exit_find_ptr_loop(
341
342
; APPLE-SAME: ptr [[VEC:%.*]], ptr [[TGT:%.*]], ptr [[TGT2:%.*]]) #[[ATTR0]] {
@@ -508,8 +509,3 @@ exit.2:
508
509
}
509
510
510
511
declare void @llvm.assume (i1 noundef)
511
- ;.
512
- ; APPLE: [[LOOP0]] = distinct !{[[LOOP0]], [[META1:![0-9]+]]}
513
- ; APPLE: [[META1]] = !{!"llvm.loop.unroll.disable"}
514
- ; APPLE: [[LOOP2]] = distinct !{[[LOOP2]], [[META1]]}
515
- ;.
0 commit comments