@@ -219,34 +219,6 @@ define void @deref_assumption_in_preheader_too_small_non_constant_trip_count_acc
219
219
; CHECK-NEXT: [[N_VEC:%.*]] = sub i64 [[N]], [[N_MOD_VF]]
220
220
; CHECK-NEXT: br label %[[VECTOR_BODY:.*]]
221
221
; CHECK: [[VECTOR_BODY]]:
222
- ; CHECK-NEXT: [[TMP0:%.*]] = phi i64 [ 0, %[[VECTOR_PH]] ], [ [[INDEX_NEXT:%.*]], %[[PRED_LOAD_CONTINUE2:.*]] ]
223
- ; CHECK-NEXT: [[TMP2:%.*]] = getelementptr inbounds i32, ptr [[B]], i64 [[TMP0]]
224
- ; CHECK-NEXT: [[TMP3:%.*]] = getelementptr inbounds i32, ptr [[TMP2]], i32 0
225
- ; CHECK-NEXT: [[WIDE_LOAD:%.*]] = load <2 x i32>, ptr [[TMP3]], align 1
226
- ; CHECK-NEXT: [[TMP4:%.*]] = icmp sge <2 x i32> [[WIDE_LOAD]], zeroinitializer
227
- ; CHECK-NEXT: [[TMP15:%.*]] = xor <2 x i1> [[TMP4]], splat (i1 true)
228
- ; CHECK-NEXT: [[TMP5:%.*]] = extractelement <2 x i1> [[TMP15]], i32 0
229
- ; CHECK-NEXT: br i1 [[TMP5]], label %[[PRED_LOAD_IF:.*]], label %[[PRED_LOAD_CONTINUE:.*]]
230
- ; CHECK: [[PRED_LOAD_IF]]:
231
- ; CHECK-NEXT: [[TMP19:%.*]] = add i64 [[TMP0]], 0
232
- ; CHECK-NEXT: [[TMP16:%.*]] = getelementptr inbounds i32, ptr [[A]], i64 [[TMP19]]
233
- ; CHECK-NEXT: [[TMP17:%.*]] = load i32, ptr [[TMP16]], align 1
234
- ; CHECK-NEXT: [[TMP18:%.*]] = insertelement <2 x i32> poison, i32 [[TMP17]], i32 0
235
- ; CHECK-NEXT: br label %[[PRED_LOAD_CONTINUE]]
236
- ; CHECK: [[PRED_LOAD_CONTINUE]]:
237
- ; CHECK-NEXT: [[TMP9:%.*]] = phi <2 x i32> [ poison, %[[VECTOR_BODY]] ], [ [[TMP18]], %[[PRED_LOAD_IF]] ]
238
- ; CHECK-NEXT: [[TMP10:%.*]] = extractelement <2 x i1> [[TMP15]], i32 1
239
- ; CHECK-NEXT: br i1 [[TMP10]], label %[[PRED_LOAD_IF1:.*]], label %[[PRED_LOAD_CONTINUE2]]
240
- ; CHECK: [[PRED_LOAD_IF1]]:
241
- ; CHECK-NEXT: [[TMP11:%.*]] = add i64 [[TMP0]], 1
242
- ; CHECK-NEXT: [[TMP12:%.*]] = getelementptr inbounds i32, ptr [[A]], i64 [[TMP11]]
243
- ; CHECK-NEXT: [[TMP13:%.*]] = load i32, ptr [[TMP12]], align 1
244
- ; CHECK-NEXT: [[TMP14:%.*]] = insertelement <2 x i32> [[TMP9]], i32 [[TMP13]], i32 1
245
- ; CHECK-NEXT: br label %[[PRED_LOAD_CONTINUE2]]
246
- ; CHECK: [[PRED_LOAD_CONTINUE2]]:
247
- ; CHECK-NEXT: [[WIDE_LOAD1:%.*]] = phi <2 x i32> [ [[TMP9]], %[[PRED_LOAD_CONTINUE]] ], [ [[TMP14]], %[[PRED_LOAD_IF1]] ]
248
- ; CHECK-NEXT: [[PREDPHI:%.*]] = select <2 x i1> [[TMP4]], <2 x i32> [[WIDE_LOAD]], <2 x i32> [[WIDE_LOAD1]]
249
- ; CHECK-NEXT: [[TMP6:%.*]] = getelementptr inbounds i32, ptr [[C]], i64 [[TMP0]]
250
222
; CHECK-NEXT: [[TMP7:%.*]] = getelementptr inbounds i32, ptr [[TMP6]], i32 0
251
223
; CHECK-NEXT: store <2 x i32> [[PREDPHI]], ptr [[TMP7]], align 1
252
224
; CHECK-NEXT: [[INDEX_NEXT]] = add nuw i64 [[TMP0]], 2
@@ -319,29 +291,8 @@ define void @deref_assumption_in_preheader_too_small2_non_constant_trip_count_ac
319
291
; CHECK-NEXT: [[N_VEC:%.*]] = sub i64 [[N]], [[N_MOD_VF]]
320
292
; CHECK-NEXT: br label %[[VECTOR_BODY:.*]]
321
293
; CHECK: [[VECTOR_BODY]]:
322
- ; CHECK-NEXT: [[TMP0:%.*]] = phi i64 [ 0, %[[VECTOR_PH]] ], [ [[INDEX_NEXT:%.*]], %[[PRED_LOAD_CONTINUE2:.*]] ]
323
- ; CHECK-NEXT: [[TMP2:%.*]] = getelementptr inbounds i32, ptr [[B]], i64 [[TMP0]]
324
- ; CHECK-NEXT: [[TMP3:%.*]] = getelementptr inbounds i32, ptr [[TMP2]], i32 0
325
- ; CHECK-NEXT: [[WIDE_LOAD:%.*]] = load <2 x i32>, ptr [[TMP3]], align 1
326
- ; CHECK-NEXT: [[TMP4:%.*]] = icmp sge <2 x i32> [[WIDE_LOAD]], zeroinitializer
327
- ; CHECK-NEXT: [[TMP15:%.*]] = xor <2 x i1> [[TMP4]], splat (i1 true)
328
- ; CHECK-NEXT: [[TMP5:%.*]] = extractelement <2 x i1> [[TMP15]], i32 0
329
294
; CHECK-NEXT: br i1 [[TMP5]], label %[[PRED_LOAD_IF:.*]], label %[[PRED_LOAD_CONTINUE:.*]]
330
295
; CHECK: [[PRED_LOAD_IF]]:
331
- ; CHECK-NEXT: [[TMP19:%.*]] = add i64 [[TMP0]], 0
332
- ; CHECK-NEXT: [[TMP16:%.*]] = getelementptr inbounds i32, ptr [[A]], i64 [[TMP19]]
333
- ; CHECK-NEXT: [[TMP17:%.*]] = load i32, ptr [[TMP16]], align 1
334
- ; CHECK-NEXT: [[TMP18:%.*]] = insertelement <2 x i32> poison, i32 [[TMP17]], i32 0
335
- ; CHECK-NEXT: br label %[[PRED_LOAD_CONTINUE]]
336
- ; CHECK: [[PRED_LOAD_CONTINUE]]:
337
- ; CHECK-NEXT: [[TMP9:%.*]] = phi <2 x i32> [ poison, %[[VECTOR_BODY]] ], [ [[TMP18]], %[[PRED_LOAD_IF]] ]
338
- ; CHECK-NEXT: [[TMP10:%.*]] = extractelement <2 x i1> [[TMP15]], i32 1
339
- ; CHECK-NEXT: br i1 [[TMP10]], label %[[PRED_LOAD_IF1:.*]], label %[[PRED_LOAD_CONTINUE2]]
340
- ; CHECK: [[PRED_LOAD_IF1]]:
341
- ; CHECK-NEXT: [[TMP11:%.*]] = add i64 [[TMP0]], 1
342
- ; CHECK-NEXT: [[TMP12:%.*]] = getelementptr inbounds i32, ptr [[A]], i64 [[TMP11]]
343
- ; CHECK-NEXT: [[TMP13:%.*]] = load i32, ptr [[TMP12]], align 1
344
- ; CHECK-NEXT: [[TMP14:%.*]] = insertelement <2 x i32> [[TMP9]], i32 [[TMP13]], i32 1
345
296
; CHECK-NEXT: br label %[[PRED_LOAD_CONTINUE2]]
346
297
; CHECK: [[PRED_LOAD_CONTINUE2]]:
347
298
; CHECK-NEXT: [[WIDE_LOAD1:%.*]] = phi <2 x i32> [ [[TMP9]], %[[PRED_LOAD_CONTINUE]] ], [ [[TMP14]], %[[PRED_LOAD_IF1]] ]
0 commit comments