4
4
; FADD
5
5
;
6
6
7
- define <vscale x 8 x half > @fadd_h (<vscale x 8 x i1 > %pg , <vscale x 8 x half > %a , <vscale x 8 x half > %b ) {
8
- ; CHECK-LABEL: fadd_h :
7
+ define <vscale x 8 x half > @fadd_h_zero (<vscale x 8 x i1 > %pg , <vscale x 8 x half > %a , <vscale x 8 x half > %b ) {
8
+ ; CHECK-LABEL: fadd_h_zero :
9
9
; CHECK: movprfx z0.h, p0/z, z0.h
10
10
; CHECK-NEXT: fadd z0.h, p0/m, z0.h, z1.h
11
11
; CHECK-NEXT: ret
@@ -16,8 +16,8 @@ define <vscale x 8 x half> @fadd_h(<vscale x 8 x i1> %pg, <vscale x 8 x half> %a
16
16
ret <vscale x 8 x half > %out
17
17
}
18
18
19
- define <vscale x 4 x float > @fadd_s (<vscale x 4 x i1 > %pg , <vscale x 4 x float > %a , <vscale x 4 x float > %b ) {
20
- ; CHECK-LABEL: fadd_s :
19
+ define <vscale x 4 x float > @fadd_s_zero (<vscale x 4 x i1 > %pg , <vscale x 4 x float > %a , <vscale x 4 x float > %b ) {
20
+ ; CHECK-LABEL: fadd_s_zero :
21
21
; CHECK: movprfx z0.s, p0/z, z0.s
22
22
; CHECK-NEXT: fadd z0.s, p0/m, z0.s, z1.s
23
23
; CHECK-NEXT: ret
@@ -28,8 +28,8 @@ define <vscale x 4 x float> @fadd_s(<vscale x 4 x i1> %pg, <vscale x 4 x float>
28
28
ret <vscale x 4 x float > %out
29
29
}
30
30
31
- define <vscale x 2 x double > @fadd_d (<vscale x 2 x i1 > %pg , <vscale x 2 x double > %a , <vscale x 2 x double > %b ) {
32
- ; CHECK-LABEL: fadd_d :
31
+ define <vscale x 2 x double > @fadd_d_zero (<vscale x 2 x i1 > %pg , <vscale x 2 x double > %a , <vscale x 2 x double > %b ) {
32
+ ; CHECK-LABEL: fadd_d_zero :
33
33
; CHECK: movprfx z0.d, p0/z, z0.d
34
34
; CHECK-NEXT: fadd z0.d, p0/m, z0.d, z1.d
35
35
; CHECK-NEXT: ret
@@ -44,8 +44,8 @@ define <vscale x 2 x double> @fadd_d(<vscale x 2 x i1> %pg, <vscale x 2 x double
44
44
; FMAX
45
45
;
46
46
47
- define <vscale x 8 x half > @fmax_h (<vscale x 8 x i1 > %pg , <vscale x 8 x half > %a , <vscale x 8 x half > %b ) {
48
- ; CHECK-LABEL: fmax_h :
47
+ define <vscale x 8 x half > @fmax_h_zero (<vscale x 8 x i1 > %pg , <vscale x 8 x half > %a , <vscale x 8 x half > %b ) {
48
+ ; CHECK-LABEL: fmax_h_zero :
49
49
; CHECK: movprfx z0.h, p0/z, z0.h
50
50
; CHECK-NEXT: fmax z0.h, p0/m, z0.h, z1.h
51
51
; CHECK-NEXT: ret
@@ -56,8 +56,8 @@ define <vscale x 8 x half> @fmax_h(<vscale x 8 x i1> %pg, <vscale x 8 x half> %a
56
56
ret <vscale x 8 x half > %out
57
57
}
58
58
59
- define <vscale x 4 x float > @fmax_s (<vscale x 4 x i1 > %pg , <vscale x 4 x float > %a , <vscale x 4 x float > %b ) {
60
- ; CHECK-LABEL: fmax_s :
59
+ define <vscale x 4 x float > @fmax_s_zero (<vscale x 4 x i1 > %pg , <vscale x 4 x float > %a , <vscale x 4 x float > %b ) {
60
+ ; CHECK-LABEL: fmax_s_zero :
61
61
; CHECK: movprfx z0.s, p0/z, z0.s
62
62
; CHECK-NEXT: fmax z0.s, p0/m, z0.s, z1.s
63
63
; CHECK-NEXT: ret
@@ -68,8 +68,8 @@ define <vscale x 4 x float> @fmax_s(<vscale x 4 x i1> %pg, <vscale x 4 x float>
68
68
ret <vscale x 4 x float > %out
69
69
}
70
70
71
- define <vscale x 2 x double > @fmax_d (<vscale x 2 x i1 > %pg , <vscale x 2 x double > %a , <vscale x 2 x double > %b ) {
72
- ; CHECK-LABEL: fmax_d :
71
+ define <vscale x 2 x double > @fmax_d_zero (<vscale x 2 x i1 > %pg , <vscale x 2 x double > %a , <vscale x 2 x double > %b ) {
72
+ ; CHECK-LABEL: fmax_d_zero :
73
73
; CHECK: movprfx z0.d, p0/z, z0.d
74
74
; CHECK-NEXT: fmax z0.d, p0/m, z0.d, z1.d
75
75
; CHECK-NEXT: ret
@@ -84,8 +84,8 @@ define <vscale x 2 x double> @fmax_d(<vscale x 2 x i1> %pg, <vscale x 2 x double
84
84
; FMAXNM
85
85
;
86
86
87
- define <vscale x 8 x half > @fmaxnm_h (<vscale x 8 x i1 > %pg , <vscale x 8 x half > %a , <vscale x 8 x half > %b ) {
88
- ; CHECK-LABEL: fmaxnm_h :
87
+ define <vscale x 8 x half > @fmaxnm_h_zero (<vscale x 8 x i1 > %pg , <vscale x 8 x half > %a , <vscale x 8 x half > %b ) {
88
+ ; CHECK-LABEL: fmaxnm_h_zero :
89
89
; CHECK: movprfx z0.h, p0/z, z0.h
90
90
; CHECK-NEXT: fmaxnm z0.h, p0/m, z0.h, z1.h
91
91
; CHECK-NEXT: ret
@@ -96,8 +96,8 @@ define <vscale x 8 x half> @fmaxnm_h(<vscale x 8 x i1> %pg, <vscale x 8 x half>
96
96
ret <vscale x 8 x half > %out
97
97
}
98
98
99
- define <vscale x 4 x float > @fmaxnm_s (<vscale x 4 x i1 > %pg , <vscale x 4 x float > %a , <vscale x 4 x float > %b ) {
100
- ; CHECK-LABEL: fmaxnm_s :
99
+ define <vscale x 4 x float > @fmaxnm_s_zero (<vscale x 4 x i1 > %pg , <vscale x 4 x float > %a , <vscale x 4 x float > %b ) {
100
+ ; CHECK-LABEL: fmaxnm_s_zero :
101
101
; CHECK: movprfx z0.s, p0/z, z0.s
102
102
; CHECK-NEXT: fmaxnm z0.s, p0/m, z0.s, z1.s
103
103
; CHECK-NEXT: ret
@@ -108,8 +108,8 @@ define <vscale x 4 x float> @fmaxnm_s(<vscale x 4 x i1> %pg, <vscale x 4 x float
108
108
ret <vscale x 4 x float > %out
109
109
}
110
110
111
- define <vscale x 2 x double > @fmaxnm_d (<vscale x 2 x i1 > %pg , <vscale x 2 x double > %a , <vscale x 2 x double > %b ) {
112
- ; CHECK-LABEL: fmaxnm_d :
111
+ define <vscale x 2 x double > @fmaxnm_d_zero (<vscale x 2 x i1 > %pg , <vscale x 2 x double > %a , <vscale x 2 x double > %b ) {
112
+ ; CHECK-LABEL: fmaxnm_d_zero :
113
113
; CHECK: movprfx z0.d, p0/z, z0.d
114
114
; CHECK-NEXT: fmaxnm z0.d, p0/m, z0.d, z1.d
115
115
; CHECK-NEXT: ret
@@ -124,8 +124,8 @@ define <vscale x 2 x double> @fmaxnm_d(<vscale x 2 x i1> %pg, <vscale x 2 x doub
124
124
; FMIN
125
125
;
126
126
127
- define <vscale x 8 x half > @fmin_h (<vscale x 8 x i1 > %pg , <vscale x 8 x half > %a , <vscale x 8 x half > %b ) {
128
- ; CHECK-LABEL: fmin_h :
127
+ define <vscale x 8 x half > @fmin_h_zero (<vscale x 8 x i1 > %pg , <vscale x 8 x half > %a , <vscale x 8 x half > %b ) {
128
+ ; CHECK-LABEL: fmin_h_zero :
129
129
; CHECK: movprfx z0.h, p0/z, z0.h
130
130
; CHECK-NEXT: fmin z0.h, p0/m, z0.h, z1.h
131
131
; CHECK-NEXT: ret
@@ -136,8 +136,8 @@ define <vscale x 8 x half> @fmin_h(<vscale x 8 x i1> %pg, <vscale x 8 x half> %a
136
136
ret <vscale x 8 x half > %out
137
137
}
138
138
139
- define <vscale x 4 x float > @fmin_s (<vscale x 4 x i1 > %pg , <vscale x 4 x float > %a , <vscale x 4 x float > %b ) {
140
- ; CHECK-LABEL: fmin_s :
139
+ define <vscale x 4 x float > @fmin_s_zero (<vscale x 4 x i1 > %pg , <vscale x 4 x float > %a , <vscale x 4 x float > %b ) {
140
+ ; CHECK-LABEL: fmin_s_zero :
141
141
; CHECK: movprfx z0.s, p0/z, z0.s
142
142
; CHECK-NEXT: fmin z0.s, p0/m, z0.s, z1.s
143
143
; CHECK-NEXT: ret
@@ -148,8 +148,8 @@ define <vscale x 4 x float> @fmin_s(<vscale x 4 x i1> %pg, <vscale x 4 x float>
148
148
ret <vscale x 4 x float > %out
149
149
}
150
150
151
- define <vscale x 2 x double > @fmin_d (<vscale x 2 x i1 > %pg , <vscale x 2 x double > %a , <vscale x 2 x double > %b ) {
152
- ; CHECK-LABEL: fmin_d :
151
+ define <vscale x 2 x double > @fmin_d_zero (<vscale x 2 x i1 > %pg , <vscale x 2 x double > %a , <vscale x 2 x double > %b ) {
152
+ ; CHECK-LABEL: fmin_d_zero :
153
153
; CHECK: movprfx z0.d, p0/z, z0.d
154
154
; CHECK-NEXT: fmin z0.d, p0/m, z0.d, z1.d
155
155
; CHECK-NEXT: ret
@@ -164,8 +164,8 @@ define <vscale x 2 x double> @fmin_d(<vscale x 2 x i1> %pg, <vscale x 2 x double
164
164
; FMINNM
165
165
;
166
166
167
- define <vscale x 8 x half > @fminnm_h (<vscale x 8 x i1 > %pg , <vscale x 8 x half > %a , <vscale x 8 x half > %b ) {
168
- ; CHECK-LABEL: fminnm_h :
167
+ define <vscale x 8 x half > @fminnm_h_zero (<vscale x 8 x i1 > %pg , <vscale x 8 x half > %a , <vscale x 8 x half > %b ) {
168
+ ; CHECK-LABEL: fminnm_h_zero :
169
169
; CHECK: movprfx z0.h, p0/z, z0.h
170
170
; CHECK-NEXT: fminnm z0.h, p0/m, z0.h, z1.h
171
171
; CHECK-NEXT: ret
@@ -176,8 +176,8 @@ define <vscale x 8 x half> @fminnm_h(<vscale x 8 x i1> %pg, <vscale x 8 x half>
176
176
ret <vscale x 8 x half > %out
177
177
}
178
178
179
- define <vscale x 4 x float > @fminnm_s (<vscale x 4 x i1 > %pg , <vscale x 4 x float > %a , <vscale x 4 x float > %b ) {
180
- ; CHECK-LABEL: fminnm_s :
179
+ define <vscale x 4 x float > @fminnm_s_zero (<vscale x 4 x i1 > %pg , <vscale x 4 x float > %a , <vscale x 4 x float > %b ) {
180
+ ; CHECK-LABEL: fminnm_s_zero :
181
181
; CHECK: movprfx z0.s, p0/z, z0.s
182
182
; CHECK-NEXT: fminnm z0.s, p0/m, z0.s, z1.s
183
183
; CHECK-NEXT: ret
@@ -188,8 +188,8 @@ define <vscale x 4 x float> @fminnm_s(<vscale x 4 x i1> %pg, <vscale x 4 x float
188
188
ret <vscale x 4 x float > %out
189
189
}
190
190
191
- define <vscale x 2 x double > @fminnm_d (<vscale x 2 x i1 > %pg , <vscale x 2 x double > %a , <vscale x 2 x double > %b ) {
192
- ; CHECK-LABEL: fminnm_d :
191
+ define <vscale x 2 x double > @fminnm_d_zero (<vscale x 2 x i1 > %pg , <vscale x 2 x double > %a , <vscale x 2 x double > %b ) {
192
+ ; CHECK-LABEL: fminnm_d_zero :
193
193
; CHECK: movprfx z0.d, p0/z, z0.d
194
194
; CHECK-NEXT: fminnm z0.d, p0/m, z0.d, z1.d
195
195
; CHECK-NEXT: ret
@@ -204,8 +204,8 @@ define <vscale x 2 x double> @fminnm_d(<vscale x 2 x i1> %pg, <vscale x 2 x doub
204
204
; FMUL
205
205
;
206
206
207
- define <vscale x 8 x half > @fmul_h (<vscale x 8 x i1 > %pg , <vscale x 8 x half > %a , <vscale x 8 x half > %b ) {
208
- ; CHECK-LABEL: fmul_h :
207
+ define <vscale x 8 x half > @fmul_h_zero (<vscale x 8 x i1 > %pg , <vscale x 8 x half > %a , <vscale x 8 x half > %b ) {
208
+ ; CHECK-LABEL: fmul_h_zero :
209
209
; CHECK: movprfx z0.h, p0/z, z0.h
210
210
; CHECK-NEXT: fmul z0.h, p0/m, z0.h, z1.h
211
211
; CHECK-NEXT: ret
@@ -216,8 +216,8 @@ define <vscale x 8 x half> @fmul_h(<vscale x 8 x i1> %pg, <vscale x 8 x half> %a
216
216
ret <vscale x 8 x half > %out
217
217
}
218
218
219
- define <vscale x 4 x float > @fmul_s (<vscale x 4 x i1 > %pg , <vscale x 4 x float > %a , <vscale x 4 x float > %b ) {
220
- ; CHECK-LABEL: fmul_s :
219
+ define <vscale x 4 x float > @fmul_s_zero (<vscale x 4 x i1 > %pg , <vscale x 4 x float > %a , <vscale x 4 x float > %b ) {
220
+ ; CHECK-LABEL: fmul_s_zero :
221
221
; CHECK: movprfx z0.s, p0/z, z0.s
222
222
; CHECK-NEXT: fmul z0.s, p0/m, z0.s, z1.s
223
223
; CHECK-NEXT: ret
@@ -228,8 +228,8 @@ define <vscale x 4 x float> @fmul_s(<vscale x 4 x i1> %pg, <vscale x 4 x float>
228
228
ret <vscale x 4 x float > %out
229
229
}
230
230
231
- define <vscale x 2 x double > @fmul_d (<vscale x 2 x i1 > %pg , <vscale x 2 x double > %a , <vscale x 2 x double > %b ) {
232
- ; CHECK-LABEL: fmul_d :
231
+ define <vscale x 2 x double > @fmul_d_zero (<vscale x 2 x i1 > %pg , <vscale x 2 x double > %a , <vscale x 2 x double > %b ) {
232
+ ; CHECK-LABEL: fmul_d_zero :
233
233
; CHECK: movprfx z0.d, p0/z, z0.d
234
234
; CHECK-NEXT: fmul z0.d, p0/m, z0.d, z1.d
235
235
; CHECK-NEXT: ret
@@ -244,8 +244,8 @@ define <vscale x 2 x double> @fmul_d(<vscale x 2 x i1> %pg, <vscale x 2 x double
244
244
; FSUB
245
245
;
246
246
247
- define <vscale x 8 x half > @fsub_h (<vscale x 8 x i1 > %pg , <vscale x 8 x half > %a , <vscale x 8 x half > %b ) {
248
- ; CHECK-LABEL: fsub_h :
247
+ define <vscale x 8 x half > @fsub_h_zero (<vscale x 8 x i1 > %pg , <vscale x 8 x half > %a , <vscale x 8 x half > %b ) {
248
+ ; CHECK-LABEL: fsub_h_zero :
249
249
; CHECK: movprfx z0.h, p0/z, z0.h
250
250
; CHECK-NEXT: fsub z0.h, p0/m, z0.h, z1.h
251
251
; CHECK-NEXT: ret
@@ -256,8 +256,8 @@ define <vscale x 8 x half> @fsub_h(<vscale x 8 x i1> %pg, <vscale x 8 x half> %a
256
256
ret <vscale x 8 x half > %out
257
257
}
258
258
259
- define <vscale x 4 x float > @fsub_s (<vscale x 4 x i1 > %pg , <vscale x 4 x float > %a , <vscale x 4 x float > %b ) {
260
- ; CHECK-LABEL: fsub_s :
259
+ define <vscale x 4 x float > @fsub_s_zero (<vscale x 4 x i1 > %pg , <vscale x 4 x float > %a , <vscale x 4 x float > %b ) {
260
+ ; CHECK-LABEL: fsub_s_zero :
261
261
; CHECK: movprfx z0.s, p0/z, z0.s
262
262
; CHECK-NEXT: fsub z0.s, p0/m, z0.s, z1.s
263
263
; CHECK-NEXT: ret
@@ -268,8 +268,8 @@ define <vscale x 4 x float> @fsub_s(<vscale x 4 x i1> %pg, <vscale x 4 x float>
268
268
ret <vscale x 4 x float > %out
269
269
}
270
270
271
- define <vscale x 2 x double > @fsub_d (<vscale x 2 x i1 > %pg , <vscale x 2 x double > %a , <vscale x 2 x double > %b ) {
272
- ; CHECK-LABEL: fsub_d :
271
+ define <vscale x 2 x double > @fsub_d_zero (<vscale x 2 x i1 > %pg , <vscale x 2 x double > %a , <vscale x 2 x double > %b ) {
272
+ ; CHECK-LABEL: fsub_d_zero :
273
273
; CHECK: movprfx z0.d, p0/z, z0.d
274
274
; CHECK-NEXT: fsub z0.d, p0/m, z0.d, z1.d
275
275
; CHECK-NEXT: ret
@@ -284,8 +284,8 @@ define <vscale x 2 x double> @fsub_d(<vscale x 2 x i1> %pg, <vscale x 2 x double
284
284
; FSUBR
285
285
;
286
286
287
- define <vscale x 8 x half > @fsubr_h (<vscale x 8 x i1 > %pg , <vscale x 8 x half > %a , <vscale x 8 x half > %b ) {
288
- ; CHECK-LABEL: fsubr_h :
287
+ define <vscale x 8 x half > @fsubr_h_zero (<vscale x 8 x i1 > %pg , <vscale x 8 x half > %a , <vscale x 8 x half > %b ) {
288
+ ; CHECK-LABEL: fsubr_h_zero :
289
289
; CHECK: movprfx z0.h, p0/z, z0.h
290
290
; CHECK-NEXT: fsubr z0.h, p0/m, z0.h, z1.h
291
291
; CHECK-NEXT: ret
@@ -296,8 +296,8 @@ define <vscale x 8 x half> @fsubr_h(<vscale x 8 x i1> %pg, <vscale x 8 x half> %
296
296
ret <vscale x 8 x half > %out
297
297
}
298
298
299
- define <vscale x 4 x float > @fsubr_s (<vscale x 4 x i1 > %pg , <vscale x 4 x float > %a , <vscale x 4 x float > %b ) {
300
- ; CHECK-LABEL: fsubr_s :
299
+ define <vscale x 4 x float > @fsubr_s_zero (<vscale x 4 x i1 > %pg , <vscale x 4 x float > %a , <vscale x 4 x float > %b ) {
300
+ ; CHECK-LABEL: fsubr_s_zero :
301
301
; CHECK: movprfx z0.s, p0/z, z0.s
302
302
; CHECK-NEXT: fsubr z0.s, p0/m, z0.s, z1.s
303
303
; CHECK-NEXT: ret
@@ -308,8 +308,8 @@ define <vscale x 4 x float> @fsubr_s(<vscale x 4 x i1> %pg, <vscale x 4 x float>
308
308
ret <vscale x 4 x float > %out
309
309
}
310
310
311
- define <vscale x 2 x double > @fsubr_d (<vscale x 2 x i1 > %pg , <vscale x 2 x double > %a , <vscale x 2 x double > %b ) {
312
- ; CHECK-LABEL: fsubr_d :
311
+ define <vscale x 2 x double > @fsubr_d_zero (<vscale x 2 x i1 > %pg , <vscale x 2 x double > %a , <vscale x 2 x double > %b ) {
312
+ ; CHECK-LABEL: fsubr_d_zero :
313
313
; CHECK: movprfx z0.d, p0/z, z0.d
314
314
; CHECK-NEXT: fsubr z0.d, p0/m, z0.d, z1.d
315
315
; CHECK-NEXT: ret
0 commit comments