@@ -115,25 +115,10 @@ entry:
115
115
}
116
116
117
117
define <3 x float > @fabs_v3f32 (<3 x float > %a ) {
118
- ; CHECK-SD-LABEL: fabs_v3f32:
119
- ; CHECK-SD: // %bb.0: // %entry
120
- ; CHECK-SD-NEXT: fabs v0.4s, v0.4s
121
- ; CHECK-SD-NEXT: ret
122
- ;
123
- ; CHECK-GI-LABEL: fabs_v3f32:
124
- ; CHECK-GI: // %bb.0: // %entry
125
- ; CHECK-GI-NEXT: mov s1, v0.s[1]
126
- ; CHECK-GI-NEXT: mov s2, v0.s[2]
127
- ; CHECK-GI-NEXT: mov v0.s[1], v1.s[0]
128
- ; CHECK-GI-NEXT: mov v0.s[2], v2.s[0]
129
- ; CHECK-GI-NEXT: mov v0.s[3], v0.s[0]
130
- ; CHECK-GI-NEXT: fabs v0.4s, v0.4s
131
- ; CHECK-GI-NEXT: mov s1, v0.s[1]
132
- ; CHECK-GI-NEXT: mov s2, v0.s[2]
133
- ; CHECK-GI-NEXT: mov v0.s[1], v1.s[0]
134
- ; CHECK-GI-NEXT: mov v0.s[2], v2.s[0]
135
- ; CHECK-GI-NEXT: mov v0.s[3], v0.s[0]
136
- ; CHECK-GI-NEXT: ret
118
+ ; CHECK-LABEL: fabs_v3f32:
119
+ ; CHECK: // %bb.0: // %entry
120
+ ; CHECK-NEXT: fabs v0.4s, v0.4s
121
+ ; CHECK-NEXT: ret
137
122
entry:
138
123
%c = call <3 x float > @llvm.fabs.v3f32 (<3 x float > %a )
139
124
ret <3 x float > %c
@@ -213,29 +198,19 @@ define <7 x half> @fabs_v7f16(<7 x half> %a) {
213
198
; CHECK-GI-NOFP16: // %bb.0: // %entry
214
199
; CHECK-GI-NOFP16-NEXT: mov h1, v0.h[4]
215
200
; CHECK-GI-NOFP16-NEXT: mov h2, v0.h[5]
216
- ; CHECK-GI-NOFP16-NEXT: mov h3, v0.h[6]
201
+ ; CHECK-GI-NOFP16-NEXT: fcvtl v3.4s, v0.4h
202
+ ; CHECK-GI-NOFP16-NEXT: mov h0, v0.h[6]
217
203
; CHECK-GI-NOFP16-NEXT: mov v1.h[1], v2.h[0]
218
- ; CHECK-GI-NOFP16-NEXT: mov v1.h[2], v3.h[0]
204
+ ; CHECK-GI-NOFP16-NEXT: fabs v2.4s, v3.4s
205
+ ; CHECK-GI-NOFP16-NEXT: mov v1.h[2], v0.h[0]
206
+ ; CHECK-GI-NOFP16-NEXT: fcvtn v0.4h, v2.4s
219
207
; CHECK-GI-NOFP16-NEXT: mov v1.h[3], v0.h[0]
220
- ; CHECK-GI-NOFP16-NEXT: fcvtl v1.4s, v1.4h
221
- ; CHECK-GI-NOFP16-NEXT: mov s2, v1.s[1]
222
- ; CHECK-GI-NOFP16-NEXT: mov s3, v1.s[2]
223
- ; CHECK-GI-NOFP16-NEXT: mov v1.s[1], v2.s[0]
224
- ; CHECK-GI-NOFP16-NEXT: mov v1.s[2], v3.s[0]
225
- ; CHECK-GI-NOFP16-NEXT: mov v1.s[3], v0.s[0]
226
- ; CHECK-GI-NOFP16-NEXT: fcvtl v0.4s, v0.4h
227
- ; CHECK-GI-NOFP16-NEXT: fabs v1.4s, v1.4s
228
- ; CHECK-GI-NOFP16-NEXT: fabs v0.4s, v0.4s
229
- ; CHECK-GI-NOFP16-NEXT: mov s2, v1.s[1]
230
- ; CHECK-GI-NOFP16-NEXT: fcvtn v0.4h, v0.4s
231
- ; CHECK-GI-NOFP16-NEXT: mov s3, v1.s[2]
232
- ; CHECK-GI-NOFP16-NEXT: mov v1.s[1], v2.s[0]
233
208
; CHECK-GI-NOFP16-NEXT: mov h2, v0.h[1]
234
- ; CHECK-GI-NOFP16-NEXT: mov h4, v0.h[3]
235
- ; CHECK-GI-NOFP16-NEXT: mov v1.s[2], v3.s[0]
236
209
; CHECK-GI-NOFP16-NEXT: mov h3, v0.h[2]
210
+ ; CHECK-GI-NOFP16-NEXT: mov h4, v0.h[3]
211
+ ; CHECK-GI-NOFP16-NEXT: fcvtl v1.4s, v1.4h
237
212
; CHECK-GI-NOFP16-NEXT: mov v0.h[1], v2.h[0]
238
- ; CHECK-GI-NOFP16-NEXT: mov v1.s[3], v0.s[0]
213
+ ; CHECK-GI-NOFP16-NEXT: fabs v1.4s, v1.4s
239
214
; CHECK-GI-NOFP16-NEXT: mov v0.h[2], v3.h[0]
240
215
; CHECK-GI-NOFP16-NEXT: fcvtn v1.4h, v1.4s
241
216
; CHECK-GI-NOFP16-NEXT: mov v0.h[3], v4.h[0]
@@ -249,33 +224,7 @@ define <7 x half> @fabs_v7f16(<7 x half> %a) {
249
224
;
250
225
; CHECK-GI-FP16-LABEL: fabs_v7f16:
251
226
; CHECK-GI-FP16: // %bb.0: // %entry
252
- ; CHECK-GI-FP16-NEXT: mov h1, v0.h[1]
253
- ; CHECK-GI-FP16-NEXT: mov h2, v0.h[2]
254
- ; CHECK-GI-FP16-NEXT: mov h3, v0.h[3]
255
- ; CHECK-GI-FP16-NEXT: mov h4, v0.h[4]
256
- ; CHECK-GI-FP16-NEXT: mov h5, v0.h[5]
257
- ; CHECK-GI-FP16-NEXT: mov h6, v0.h[6]
258
- ; CHECK-GI-FP16-NEXT: mov v0.h[1], v1.h[0]
259
- ; CHECK-GI-FP16-NEXT: mov v0.h[2], v2.h[0]
260
- ; CHECK-GI-FP16-NEXT: mov v0.h[3], v3.h[0]
261
- ; CHECK-GI-FP16-NEXT: mov v0.h[4], v4.h[0]
262
- ; CHECK-GI-FP16-NEXT: mov v0.h[5], v5.h[0]
263
- ; CHECK-GI-FP16-NEXT: mov v0.h[6], v6.h[0]
264
- ; CHECK-GI-FP16-NEXT: mov v0.h[7], v0.h[0]
265
227
; CHECK-GI-FP16-NEXT: fabs v0.8h, v0.8h
266
- ; CHECK-GI-FP16-NEXT: mov h1, v0.h[1]
267
- ; CHECK-GI-FP16-NEXT: mov h2, v0.h[2]
268
- ; CHECK-GI-FP16-NEXT: mov h3, v0.h[3]
269
- ; CHECK-GI-FP16-NEXT: mov h4, v0.h[4]
270
- ; CHECK-GI-FP16-NEXT: mov h5, v0.h[5]
271
- ; CHECK-GI-FP16-NEXT: mov h6, v0.h[6]
272
- ; CHECK-GI-FP16-NEXT: mov v0.h[1], v1.h[0]
273
- ; CHECK-GI-FP16-NEXT: mov v0.h[2], v2.h[0]
274
- ; CHECK-GI-FP16-NEXT: mov v0.h[3], v3.h[0]
275
- ; CHECK-GI-FP16-NEXT: mov v0.h[4], v4.h[0]
276
- ; CHECK-GI-FP16-NEXT: mov v0.h[5], v5.h[0]
277
- ; CHECK-GI-FP16-NEXT: mov v0.h[6], v6.h[0]
278
- ; CHECK-GI-FP16-NEXT: mov v0.h[7], v0.h[0]
279
228
; CHECK-GI-FP16-NEXT: ret
280
229
entry:
281
230
%c = call <7 x half > @llvm.fabs.v7f16 (<7 x half > %a )
0 commit comments