@@ -152,34 +152,18 @@ define void @uniform_gep_for_replicating_gep(ptr %dst) {
152
152
; CHECK-NEXT: [[INDEX:%.*]] = phi i32 [ 0, %[[VECTOR_PH]] ], [ [[INDEX_NEXT:%.*]], %[[VECTOR_BODY]] ]
153
153
; CHECK-NEXT: [[VEC_IND:%.*]] = phi <2 x i32> [ <i32 0, i32 1>, %[[VECTOR_PH]] ], [ [[VEC_IND_NEXT:%.*]], %[[VECTOR_BODY]] ]
154
154
; CHECK-NEXT: [[STEP_ADD:%.*]] = add <2 x i32> [[VEC_IND]], splat (i32 2)
155
- ; CHECK-NEXT: [[TMP0:%.*]] = add i32 [[INDEX]], 0
156
- ; CHECK-NEXT: [[TMP1:%.*]] = add i32 [[INDEX]], 1
157
155
; CHECK-NEXT: [[TMP2:%.*]] = add i32 [[INDEX]], 2
158
- ; CHECK-NEXT: [[TMP3:%.*]] = add i32 [[INDEX]], 3
159
- ; CHECK-NEXT: [[TMP4:%.*]] = icmp eq <2 x i32> [[VEC_IND]], zeroinitializer
160
156
; CHECK-NEXT: [[TMP5:%.*]] = icmp eq <2 x i32> [[STEP_ADD]], zeroinitializer
161
- ; CHECK-NEXT: [[TMP6:%.*]] = lshr i32 [[TMP0]], 1
162
- ; CHECK-NEXT: [[TMP7:%.*]] = lshr i32 [[TMP1]], 1
163
- ; CHECK-NEXT: [[TMP8:%.*]] = lshr i32 [[TMP2]], 1
164
- ; CHECK-NEXT: [[TMP9:%.*]] = lshr i32 [[TMP3]], 1
165
- ; CHECK-NEXT: [[TMP10:%.*]] = zext <2 x i1> [[TMP4]] to <2 x i8>
157
+ ; CHECK-NEXT: [[TMP8:%.*]] = lshr i32 [[INDEX]], 1
158
+ ; CHECK-NEXT: [[TMP9:%.*]] = lshr i32 [[TMP2]], 1
166
159
; CHECK-NEXT: [[TMP11:%.*]] = zext <2 x i1> [[TMP5]] to <2 x i8>
167
- ; CHECK-NEXT: [[TMP12:%.*]] = zext i32 [[TMP6]] to i64
168
- ; CHECK-NEXT: [[TMP13:%.*]] = zext i32 [[TMP7]] to i64
169
160
; CHECK-NEXT: [[TMP14:%.*]] = zext i32 [[TMP8]] to i64
170
161
; CHECK-NEXT: [[TMP15:%.*]] = zext i32 [[TMP9]] to i64
171
- ; CHECK-NEXT: [[TMP16:%.*]] = getelementptr i64, ptr [[DST]], i64 [[TMP12]]
172
- ; CHECK-NEXT: [[TMP17:%.*]] = getelementptr i64, ptr [[DST]], i64 [[TMP13]]
173
162
; CHECK-NEXT: [[TMP18:%.*]] = getelementptr i64, ptr [[DST]], i64 [[TMP14]]
174
163
; CHECK-NEXT: [[TMP19:%.*]] = getelementptr i64, ptr [[DST]], i64 [[TMP15]]
175
- ; CHECK-NEXT: [[TMP20:%.*]] = extractelement <2 x i8> [[TMP10]], i32 0
176
- ; CHECK-NEXT: store i8 [[TMP20]], ptr [[TMP16]], align 1
177
- ; CHECK-NEXT: [[TMP21:%.*]] = extractelement <2 x i8> [[TMP10]], i32 1
178
- ; CHECK-NEXT: store i8 [[TMP21]], ptr [[TMP17]], align 1
179
- ; CHECK-NEXT: [[TMP22:%.*]] = extractelement <2 x i8> [[TMP11]], i32 0
164
+ ; CHECK-NEXT: [[TMP22:%.*]] = extractelement <2 x i8> [[TMP11]], i32 1
180
165
; CHECK-NEXT: store i8 [[TMP22]], ptr [[TMP18]], align 1
181
- ; CHECK-NEXT: [[TMP23:%.*]] = extractelement <2 x i8> [[TMP11]], i32 1
182
- ; CHECK-NEXT: store i8 [[TMP23]], ptr [[TMP19]], align 1
166
+ ; CHECK-NEXT: store i8 [[TMP22]], ptr [[TMP19]], align 1
183
167
; CHECK-NEXT: [[INDEX_NEXT]] = add nuw i32 [[INDEX]], 4
184
168
; CHECK-NEXT: [[VEC_IND_NEXT]] = add <2 x i32> [[STEP_ADD]], splat (i32 2)
185
169
; CHECK-NEXT: [[TMP24:%.*]] = icmp eq i32 [[INDEX_NEXT]], 128
0 commit comments