Line data Source code
1 : /* Generated automatically by the program `genemit'
2 : from the machine description file `md'. */
3 :
4 : #define IN_TARGET_CODE 1
5 : #include "config.h"
6 : #include "system.h"
7 : #include "coretypes.h"
8 : #include "backend.h"
9 : #include "predict.h"
10 : #include "tree.h"
11 : #include "rtl.h"
12 : #include "alias.h"
13 : #include "varasm.h"
14 : #include "stor-layout.h"
15 : #include "calls.h"
16 : #include "memmodel.h"
17 : #include "tm_p.h"
18 : #include "flags.h"
19 : #include "insn-config.h"
20 : #include "expmed.h"
21 : #include "dojump.h"
22 : #include "explow.h"
23 : #include "emit-rtl.h"
24 : #include "stmt.h"
25 : #include "expr.h"
26 : #include "insn-codes.h"
27 : #include "optabs.h"
28 : #include "dfp.h"
29 : #include "output.h"
30 : #include "recog.h"
31 : #include "df.h"
32 : #include "resource.h"
33 : #include "reload.h"
34 : #include "diagnostic-core.h"
35 : #include "regs.h"
36 : #include "tm-constrs.h"
37 : #include "ggc.h"
38 : #include "target.h"
39 :
40 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1997 */
41 : rtx
42 37 : gen_x86_sahf_1 (const rtx operand0)
43 : {
44 37 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
45 37 : static const uint8_t expand_encoding[] = {
46 : 0x1f, 0x30, 0x02, 0x11, 0x1a, 0x02, 0x01, 0x01,
47 : 0x00, 0x1a
48 : };
49 37 : return expand_rtx (expand_encoding, operands);
50 : }
51 :
52 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3379 */
53 : rtx
54 6929 : gen_swapdi (const rtx operand0, const rtx operand1)
55 : {
56 6929 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
57 6929 : static const uint8_t expand_encoding[] = {
58 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01,
59 : 0x1f, 0x01, 0x01, 0x01, 0x00
60 : };
61 6929 : return expand_rtx (expand_encoding, operands);
62 : }
63 :
64 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:4701 */
65 : rtx
66 47327 : gen_zero_extendditi2 (const rtx operand0, const rtx operand1)
67 : {
68 47327 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
69 47327 : static const uint8_t expand_encoding[] = {
70 : 0x1f, 0x01, 0x00, 0x6f, 0x13, 0x01, 0x01
71 : };
72 47327 : return expand_rtx (expand_encoding, operands);
73 : }
74 :
75 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5174 */
76 : rtx
77 6432 : gen_extendhidi2 (const rtx operand0, const rtx operand1)
78 : {
79 6432 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
80 6432 : static const uint8_t expand_encoding[] = {
81 : 0x1f, 0x01, 0x00, 0x6e, 0x12, 0x01, 0x01
82 : };
83 6432 : return expand_rtx (expand_encoding, operands);
84 : }
85 :
86 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5815 */
87 : rtx
88 5 : gen_fix_trunchfsi2 (const rtx operand0, const rtx operand1)
89 : {
90 5 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
91 5 : static const uint8_t expand_encoding[] = {
92 : 0x1f, 0x01, 0x00, 0x74, 0x11, 0x01, 0x01
93 : };
94 5 : return expand_rtx (expand_encoding, operands);
95 : }
96 :
97 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5992 */
98 : rtx
99 6594 : gen_fix_truncdfsi_sse (const rtx operand0, const rtx operand1)
100 : {
101 6594 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
102 6594 : static const uint8_t expand_encoding[] = {
103 : 0x1f, 0x01, 0x00, 0x74, 0x11, 0x01, 0x01
104 : };
105 6594 : return expand_rtx (expand_encoding, operands);
106 : }
107 :
108 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6109 */
109 : rtx
110 18 : gen_floathidf2 (const rtx operand0, const rtx operand1)
111 : {
112 18 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
113 18 : static const uint8_t expand_encoding[] = {
114 : 0x1f, 0x01, 0x00, 0x73, 0x2e, 0x01, 0x01
115 : };
116 18 : return expand_rtx (expand_encoding, operands);
117 : }
118 :
119 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6253 */
120 : rtx
121 245 : gen_floatdidf2_i387_with_xmm (const rtx operand0, const rtx operand1, const rtx operand2)
122 : {
123 245 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
124 245 : static const uint8_t expand_encoding[] = {
125 : 0x17, 0x00, 0x04, 0x1f, 0x01, 0x00, 0x73, 0x2e,
126 : 0x01, 0x01, 0x21, 0x00, 0x01, 0x02, 0x21, 0x00,
127 : 0x31, 0x51, 0x21, 0x00, 0x31, 0x51
128 : };
129 245 : return expand_rtx (expand_encoding, operands);
130 : }
131 :
132 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8509 */
133 : rtx
134 0 : gen_subvqi4_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
135 : {
136 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
137 0 : static const uint8_t expand_encoding[] = {
138 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x09, 0x11, 0x5d,
139 : 0x09, 0x3c, 0x10, 0x6e, 0x10, 0x01, 0x01, 0x01,
140 : 0x03, 0x6e, 0x10, 0x3c, 0x0f, 0x01, 0x01, 0x01,
141 : 0x02, 0x1f, 0x01, 0x00, 0x3c, 0x0f, 0x01, 0x01,
142 : 0x01, 0x02
143 : };
144 0 : return expand_rtx (expand_encoding, operands);
145 : }
146 :
147 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:9541 */
148 : rtx
149 59 : gen_subqi3_carry (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
150 : {
151 59 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
152 59 : static const uint8_t expand_encoding[] = {
153 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3c, 0x0f,
154 : 0x3c, 0x0f, 0x01, 0x01, 0x03, 0x0f, 0x04, 0x01,
155 : 0x03, 0x27, 0x00, 0x01, 0x02, 0x05, 0x02, 0x11
156 : };
157 59 : return expand_rtx (expand_encoding, operands);
158 : }
159 :
160 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:9916 */
161 : rtx
162 94 : gen_subborrowsi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
163 : {
164 94 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
165 94 : static const uint8_t expand_encoding[] = {
166 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a,
167 : 0x08, 0x6f, 0x12, 0x01, 0x01, 0x3b, 0x12, 0x03,
168 : 0x12, 0x04, 0x01, 0x03, 0x27, 0x00, 0x6f, 0x12,
169 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x3c, 0x11, 0x3c,
170 : 0x11, 0x01, 0x01, 0x03, 0x11, 0x05, 0x01, 0x03,
171 : 0x27, 0x00, 0x01, 0x02
172 : };
173 94 : return expand_rtx (expand_encoding, operands);
174 : }
175 :
176 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11923 */
177 : rtx
178 1 : gen_divmodsi4_zext_2 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
179 : {
180 1 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
181 1 : static const uint8_t expand_encoding[] = {
182 : 0x17, 0x00, 0x04, 0x1f, 0x01, 0x01, 0x6f, 0x12,
183 : 0x46, 0x11, 0x01, 0x02, 0x01, 0x03, 0x1f, 0x01,
184 : 0x00, 0x43, 0x11, 0x01, 0x02, 0x01, 0x03, 0x1a,
185 : 0x00, 0x01, 0x27, 0x00, 0x21, 0x05, 0x02, 0x11
186 : };
187 1 : return expand_rtx (expand_encoding, operands);
188 : }
189 :
190 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15798 */
191 : rtx
192 0 : gen_x86_64_shld_ndd_nf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
193 : {
194 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
195 0 : static const uint8_t expand_encoding[] = {
196 : 0x1f, 0x01, 0x00, 0x4a, 0x12, 0x4d, 0x12, 0x01,
197 : 0x01, 0x49, 0x0f, 0x01, 0x03, 0x27, 0x3f, 0x32,
198 : 0x12, 0x50, 0x13, 0x6f, 0x13, 0x01, 0x02, 0x3c,
199 : 0x0f, 0x27, 0x40, 0x49, 0x0f, 0x01, 0x03, 0x27,
200 : 0x3f, 0x00
201 : };
202 0 : return expand_rtx (expand_encoding, operands);
203 : }
204 :
205 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16069 */
206 : rtx
207 0 : gen_x86_shld_ndd_1_nf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
208 : {
209 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
210 0 : static const uint8_t expand_encoding[] = {
211 : 0x1f, 0x01, 0x00, 0x4a, 0x11, 0x4d, 0x11, 0x01,
212 : 0x01, 0x01, 0x03, 0x32, 0x11, 0x50, 0x12, 0x6f,
213 : 0x12, 0x01, 0x02, 0x01, 0x04, 0x00
214 : };
215 0 : return expand_rtx (expand_encoding, operands);
216 : }
217 :
218 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17116 */
219 : rtx
220 0 : gen_ashrti3_doubleword_lowpart_nf (const rtx operand0, const rtx operand1, const rtx operand2)
221 : {
222 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
223 0 : static const uint8_t expand_encoding[] = {
224 : 0x1f, 0x01, 0x00, 0x32, 0x12, 0x4f, 0x13, 0x01,
225 : 0x01, 0x01, 0x02, 0x00
226 : };
227 0 : return expand_rtx (expand_encoding, operands);
228 : }
229 :
230 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17198 */
231 : rtx
232 249 : gen_x86_64_shrd_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
233 : {
234 249 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
235 249 : static const uint8_t expand_encoding[] = {
236 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a, 0x12,
237 : 0x50, 0x12, 0x01, 0x00, 0x01, 0x02, 0x32, 0x12,
238 : 0x4d, 0x13, 0x6f, 0x13, 0x01, 0x01, 0x01, 0x03,
239 : 0x00, 0x05, 0x02, 0x11
240 : };
241 249 : return expand_rtx (expand_encoding, operands);
242 : }
243 :
244 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17451 */
245 : rtx
246 0 : gen_x86_shrd_ndd_1_nf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
247 : {
248 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
249 0 : static const uint8_t expand_encoding[] = {
250 : 0x1f, 0x01, 0x00, 0x4a, 0x11, 0x50, 0x11, 0x01,
251 : 0x01, 0x01, 0x03, 0x32, 0x11, 0x4d, 0x12, 0x6f,
252 : 0x12, 0x01, 0x02, 0x01, 0x04, 0x00
253 : };
254 0 : return expand_rtx (expand_encoding, operands);
255 : }
256 :
257 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18832 */
258 : rtx
259 0 : gen_rotr32di2_doubleword (const rtx operand0, const rtx operand1)
260 : {
261 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
262 0 : static const uint8_t expand_encoding[] = {
263 : 0x1f, 0x01, 0x00, 0x51, 0x12, 0x01, 0x01, 0x27,
264 : 0x20
265 : };
266 0 : return expand_rtx (expand_encoding, operands);
267 : }
268 :
269 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19173 */
270 : rtx
271 1 : gen_ashrdi3_carry (const rtx operand0, const rtx operand1)
272 : {
273 1 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
274 1 : static const uint8_t expand_encoding[] = {
275 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a,
276 : 0x08, 0x02, 0x49, 0x12, 0x01, 0x01, 0x27, 0x01,
277 : 0x27, 0x00, 0x29, 0x1f, 0x01, 0x00, 0x4f, 0x12,
278 : 0x01, 0x01, 0x27, 0x01
279 : };
280 1 : return expand_rtx (expand_encoding, operands);
281 : }
282 :
283 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21214 */
284 : rtx
285 59 : gen_set_rip_rex64 (const rtx operand0, const rtx operand1)
286 : {
287 59 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
288 59 : static const uint8_t expand_encoding[] = {
289 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x37, 0x00,
290 : 0x01, 0x01, 0x10
291 : };
292 59 : return expand_rtx (expand_encoding, operands);
293 : }
294 :
295 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21706 */
296 : rtx
297 47 : gen_bsr_1 (const rtx operand0, const rtx operand1)
298 : {
299 47 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
300 47 : static const uint8_t expand_encoding[] = {
301 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3c, 0x11,
302 : 0x27, 0x1f, 0x81, 0x00, 0x11, 0x01, 0x01, 0x05,
303 : 0x02, 0x11
304 : };
305 47 : return expand_rtx (expand_encoding, operands);
306 : }
307 :
308 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22081 */
309 : rtx
310 0 : gen_lzcnt_di_nf (const rtx operand0, const rtx operand1)
311 : {
312 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
313 0 : static const uint8_t expand_encoding[] = {
314 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x01, 0x01,
315 : 0x61
316 : };
317 0 : return expand_rtx (expand_encoding, operands);
318 : }
319 :
320 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22168 */
321 : rtx
322 44 : gen_bmi_bextr_di (const rtx operand0, const rtx operand1, const rtx operand2)
323 : {
324 44 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
325 44 : static const uint8_t expand_encoding[] = {
326 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x12,
327 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x63, 0x05, 0x02,
328 : 0x11
329 : };
330 44 : return expand_rtx (expand_encoding, operands);
331 : }
332 :
333 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22747 */
334 : rtx
335 65 : gen_popcountdi2 (const rtx operand0, const rtx operand1)
336 : {
337 65 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
338 65 : static const uint8_t expand_encoding[] = {
339 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x81, 0x02,
340 : 0x12, 0x01, 0x01, 0x05, 0x02, 0x11
341 : };
342 65 : return expand_rtx (expand_encoding, operands);
343 : }
344 :
345 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24221 */
346 : rtx
347 12 : gen_sqrthf2 (const rtx operand0, const rtx operand1)
348 : {
349 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
350 12 : static const uint8_t expand_encoding[] = {
351 : 0x1f, 0x01, 0x00, 0x7c, 0x2b, 0x01, 0x01
352 : };
353 12 : return expand_rtx (expand_encoding, operands);
354 : }
355 :
356 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24888 */
357 : rtx
358 5 : gen_fyl2xxf3_i387 (const rtx operand0, const rtx operand1, const rtx operand2)
359 : {
360 5 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
361 5 : static const uint8_t expand_encoding[] = {
362 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x2f,
363 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x44, 0x21, 0x00,
364 : 0x31, 0x2f
365 : };
366 5 : return expand_rtx (expand_encoding, operands);
367 : }
368 :
369 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25578 */
370 : rtx
371 38 : gen_lrintxfdi2 (const rtx operand0, const rtx operand1)
372 : {
373 38 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
374 38 : static const uint8_t expand_encoding[] = {
375 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x12,
376 : 0x01, 0x01, 0x01, 0x47, 0x21, 0x00, 0x31, 0x2f
377 : };
378 38 : return expand_rtx (expand_encoding, operands);
379 : }
380 :
381 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25819 */
382 : rtx
383 60 : gen_fistdi2_floor (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
384 : {
385 60 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
386 60 : static const uint8_t expand_encoding[] = {
387 : 0x17, 0x00, 0x04, 0x1f, 0x01, 0x00, 0x1a, 0x12,
388 : 0x01, 0x01, 0x01, 0x4f, 0x20, 0x00, 0x01, 0x02,
389 : 0x20, 0x00, 0x01, 0x03, 0x21, 0x00, 0x31, 0x2f
390 : };
391 60 : return expand_rtx (expand_encoding, operands);
392 : }
393 :
394 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25998 */
395 : rtx
396 265 : gen_cld (void)
397 : {
398 265 : static const uint8_t expand_encoding[] = {
399 : 0x1b, 0x00, 0x01, 0x27, 0x00, 0x07
400 : };
401 265 : return expand_rtx (expand_encoding, nullptr);
402 : }
403 :
404 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27262 */
405 : rtx
406 227 : gen_sminsf3 (const rtx operand0, const rtx operand1, const rtx operand2)
407 : {
408 227 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
409 227 : static const uint8_t expand_encoding[] = {
410 : 0x1f, 0x01, 0x00, 0x52, 0x2d, 0x01, 0x01, 0x01,
411 : 0x02
412 : };
413 227 : return expand_rtx (expand_encoding, operands);
414 : }
415 :
416 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27832 */
417 : rtx
418 45 : gen_pro_epilogue_adjust_stack_sub_di (const rtx operand0, const rtx operand1, const rtx operand2)
419 : {
420 45 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
421 45 : static const uint8_t expand_encoding[] = {
422 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x3c, 0x12,
423 : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11, 0x21,
424 : 0x00, 0x36, 0x01, 0x31, 0x00
425 : };
426 45 : return expand_rtx (expand_encoding, operands);
427 : }
428 :
429 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28281 */
430 : rtx
431 318 : gen_stack_protect_test_1_di (const rtx operand0, const rtx operand1, const rtx operand2)
432 : {
433 318 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
434 318 : static const uint8_t expand_encoding[] = {
435 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x0c,
436 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x5e, 0x21, 0x00,
437 : 0x31, 0x12
438 : };
439 318 : return expand_rtx (expand_encoding, operands);
440 : }
441 :
442 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29895 */
443 : rtx
444 34 : gen_rdtsc_rex64 (const rtx operand0, const rtx operand1)
445 : {
446 34 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
447 34 : static const uint8_t expand_encoding[] = {
448 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1b, 0x12,
449 : 0x01, 0x27, 0x00, 0x09, 0x1f, 0x01, 0x01, 0x1b,
450 : 0x12, 0x01, 0x27, 0x00, 0x09
451 : };
452 34 : return expand_rtx (expand_encoding, operands);
453 : }
454 :
455 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30011 */
456 : rtx
457 0 : gen_xsaves (const rtx operand0, const rtx operand1)
458 : {
459 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
460 0 : static const uint8_t expand_encoding[] = {
461 : 0x1f, 0x01, 0x00, 0x1b, 0x01, 0x01, 0x01, 0x01,
462 : 0x1e
463 : };
464 0 : return expand_rtx (expand_encoding, operands);
465 : }
466 :
467 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30051 */
468 : rtx
469 0 : gen_xrstors (const rtx operand0, const rtx operand1)
470 : {
471 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
472 0 : static const uint8_t expand_encoding[] = {
473 : 0x1b, 0x01, 0x02, 0x01, 0x00, 0x01, 0x01, 0x1f
474 : };
475 0 : return expand_rtx (expand_encoding, operands);
476 : }
477 :
478 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30154 */
479 : rtx
480 7435 : gen_fldenv (const rtx operand0)
481 : {
482 7435 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
483 7435 : static const uint8_t expand_encoding[] = {
484 : 0x17, 0x00, 0x09, 0x1b, 0x00, 0x01, 0x01, 0x00,
485 : 0x29, 0x05, 0x2f, 0x08, 0x05, 0x2f, 0x09, 0x05,
486 : 0x2f, 0x0a, 0x05, 0x2f, 0x0b, 0x05, 0x2f, 0x0c,
487 : 0x05, 0x2f, 0x0d, 0x05, 0x2f, 0x0e, 0x05, 0x2f,
488 : 0x0f
489 : };
490 7435 : return expand_rtx (expand_encoding, operands);
491 : }
492 :
493 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30253 */
494 : rtx
495 19 : gen_rdgsbasesi (const rtx operand0)
496 : {
497 19 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
498 19 : static const uint8_t expand_encoding[] = {
499 : 0x1f, 0x01, 0x00, 0x1b, 0x11, 0x01, 0x27, 0x00,
500 : 0x11
501 : };
502 19 : return expand_rtx (expand_encoding, operands);
503 : }
504 :
505 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30271 */
506 : rtx
507 21 : gen_ptwritesi (const rtx operand0)
508 : {
509 21 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
510 21 : static const uint8_t expand_encoding[] = {
511 : 0x1b, 0x00, 0x01, 0x01, 0x00, 0x4e
512 : };
513 21 : return expand_rtx (expand_encoding, operands);
514 : }
515 :
516 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30329 */
517 : rtx
518 16 : gen_incsspsi (const rtx operand0)
519 : {
520 16 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
521 16 : static const uint8_t expand_encoding[] = {
522 : 0x1b, 0x00, 0x01, 0x01, 0x00, 0x3c
523 : };
524 16 : return expand_rtx (expand_encoding, operands);
525 : }
526 :
527 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30377 */
528 : rtx
529 19 : gen_clrssbsy (const rtx operand0)
530 : {
531 19 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
532 19 : static const uint8_t expand_encoding[] = {
533 : 0x1b, 0x00, 0x01, 0x01, 0x00, 0x42
534 : };
535 19 : return expand_rtx (expand_encoding, operands);
536 : }
537 :
538 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30511 */
539 : rtx
540 0 : gen_clzero_si (const rtx operand0)
541 : {
542 0 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
543 0 : static const uint8_t expand_encoding[] = {
544 : 0x1b, 0x00, 0x01, 0x01, 0x00, 0x37
545 : };
546 0 : return expand_rtx (expand_encoding, operands);
547 : }
548 :
549 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30599 */
550 : rtx
551 1 : gen_movdir64b_si (const rtx operand0, const rtx operand1)
552 : {
553 1 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
554 1 : static const uint8_t expand_encoding[] = {
555 : 0x1f, 0x36, 0x15, 0x01, 0x00, 0x1a, 0x15, 0x01,
556 : 0x01, 0x01, 0x68
557 : };
558 1 : return expand_rtx (expand_encoding, operands);
559 : }
560 :
561 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30662 */
562 : rtx
563 0 : gen_umwait (const rtx operand0, const rtx operand1)
564 : {
565 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
566 0 : static const uint8_t expand_encoding[] = {
567 : 0x1f, 0x30, 0x08, 0x11, 0x1b, 0x08, 0x02, 0x01,
568 : 0x00, 0x01, 0x01, 0x45
569 : };
570 0 : return expand_rtx (expand_encoding, operands);
571 : }
572 :
573 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30744 */
574 : rtx
575 20 : gen_hreset (const rtx operand0)
576 : {
577 20 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
578 20 : static const uint8_t expand_encoding[] = {
579 : 0x1b, 0x00, 0x01, 0x01, 0x00, 0x53
580 : };
581 20 : return expand_rtx (expand_encoding, operands);
582 : }
583 :
584 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:907 */
585 : rtx
586 14 : gen_mmx_ieee_maxv2sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
587 : {
588 14 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
589 14 : static const uint8_t expand_encoding[] = {
590 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x67,
591 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x40, 0x1a, 0x00,
592 : 0x01, 0x27, 0x00, 0x6f
593 : };
594 14 : return expand_rtx (expand_encoding, operands);
595 : }
596 :
597 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1278 */
598 : rtx
599 0 : gen_sse4_1_insertps_v2si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
600 : {
601 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
602 0 : static const uint8_t expand_encoding[] = {
603 : 0x1f, 0x01, 0x00, 0x1a, 0x4a, 0x03, 0x01, 0x02,
604 : 0x01, 0x01, 0x01, 0x03, 0x33
605 : };
606 0 : return expand_rtx (expand_encoding, operands);
607 : }
608 :
609 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2604 */
610 : rtx
611 0 : gen_andv4bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
612 : {
613 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
614 0 : static const uint8_t expand_encoding[] = {
615 : 0x1f, 0x01, 0x00, 0x49, 0x65, 0x01, 0x01, 0x01,
616 : 0x02
617 : };
618 0 : return expand_rtx (expand_encoding, operands);
619 : }
620 :
621 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3253 */
622 : rtx
623 865 : gen_addv4qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
624 : {
625 865 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
626 865 : static const uint8_t expand_encoding[] = {
627 : 0x1f, 0x01, 0x00, 0x3b, 0x45, 0x01, 0x01, 0x01,
628 : 0x02
629 : };
630 865 : return expand_rtx (expand_encoding, operands);
631 : }
632 :
633 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3365 */
634 : rtx
635 0 : gen_ssaddv2qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
636 : {
637 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
638 0 : static const uint8_t expand_encoding[] = {
639 : 0x1f, 0x01, 0x00, 0x81, 0x0e, 0x44, 0x01, 0x01,
640 : 0x01, 0x02
641 : };
642 0 : return expand_rtx (expand_encoding, operands);
643 : }
644 :
645 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3537 */
646 : rtx
647 1 : gen_smulv2hi3_highpart (const rtx operand0, const rtx operand1, const rtx operand2)
648 : {
649 1 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
650 1 : static const uint8_t expand_encoding[] = {
651 : 0x1f, 0x01, 0x00, 0x70, 0x46, 0x50, 0x4a, 0x3e,
652 : 0x4a, 0x6e, 0x4a, 0x01, 0x01, 0x6e, 0x4a, 0x01,
653 : 0x02, 0x27, 0x10
654 : };
655 1 : return expand_rtx (expand_encoding, operands);
656 : }
657 :
658 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3751 */
659 : rtx
660 14 : gen_sminv2hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
661 : {
662 14 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
663 14 : static const uint8_t expand_encoding[] = {
664 : 0x1f, 0x01, 0x00, 0x52, 0x46, 0x01, 0x01, 0x01,
665 : 0x02
666 : };
667 14 : return expand_rtx (expand_encoding, operands);
668 : }
669 :
670 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3826 */
671 : rtx
672 1 : gen_uminv2hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
673 : {
674 1 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
675 1 : static const uint8_t expand_encoding[] = {
676 : 0x1f, 0x01, 0x00, 0x54, 0x46, 0x01, 0x01, 0x01,
677 : 0x02
678 : };
679 1 : return expand_rtx (expand_encoding, operands);
680 : }
681 :
682 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3918 */
683 : rtx
684 112 : gen_mmx_ashlv2si3 (const rtx operand0, const rtx operand1, const rtx operand2)
685 : {
686 112 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
687 112 : static const uint8_t expand_encoding[] = {
688 : 0x1f, 0x01, 0x00, 0x4d, 0x4a, 0x01, 0x01, 0x01,
689 : 0x02
690 : };
691 112 : return expand_rtx (expand_encoding, operands);
692 : }
693 :
694 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4033 */
695 : rtx
696 39 : gen_lshrv2qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
697 : {
698 39 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
699 39 : static const uint8_t expand_encoding[] = {
700 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x50, 0x44,
701 : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
702 : };
703 39 : return expand_rtx (expand_encoding, operands);
704 : }
705 :
706 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4551 */
707 : rtx
708 0 : gen_mmx_ppermv32 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
709 : {
710 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
711 0 : static const uint8_t expand_encoding[] = {
712 : 0x1f, 0x01, 0x00, 0x1a, 0x45, 0x03, 0x01, 0x01,
713 : 0x01, 0x02, 0x01, 0x03, 0x36
714 : };
715 0 : return expand_rtx (expand_encoding, operands);
716 : }
717 :
718 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4897 */
719 : rtx
720 230 : gen_mmx_punpckhbw_low (const rtx operand0, const rtx operand1, const rtx operand2)
721 : {
722 230 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
723 230 : static const uint8_t expand_encoding[] = {
724 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x45, 0x81, 0x0b,
725 : 0x48, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x04,
726 : 0x27, 0x02, 0x27, 0x06, 0x27, 0x03, 0x27, 0x07
727 : };
728 230 : return expand_rtx (expand_encoding, operands);
729 : }
730 :
731 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5072 */
732 : rtx
733 226 : gen_sse4_1_sign_extendv2hiv2si2 (const rtx operand0, const rtx operand1)
734 : {
735 226 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
736 226 : static const uint8_t expand_encoding[] = {
737 : 0x1f, 0x01, 0x00, 0x6e, 0x4a, 0x81, 0x0a, 0x46,
738 : 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x00, 0x27,
739 : 0x01
740 : };
741 226 : return expand_rtx (expand_encoding, operands);
742 : }
743 :
744 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5529 */
745 : rtx
746 92 : gen_mmx_pshufbv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
747 : {
748 92 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
749 92 : static const uint8_t expand_encoding[] = {
750 : 0x1f, 0x01, 0x00, 0x1a, 0x48, 0x02, 0x01, 0x01,
751 : 0x01, 0x02, 0x35
752 : };
753 92 : return expand_rtx (expand_encoding, operands);
754 : }
755 :
756 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6986 */
757 : rtx
758 1 : gen_popcountv8qi2 (const rtx operand0, const rtx operand1)
759 : {
760 1 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
761 1 : static const uint8_t expand_encoding[] = {
762 : 0x1f, 0x01, 0x00, 0x81, 0x02, 0x48, 0x01, 0x01
763 : };
764 1 : return expand_rtx (expand_encoding, operands);
765 : }
766 :
767 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1486 */
768 : rtx
769 0 : gen_movv64qi_internal (const rtx operand0, const rtx operand1)
770 : {
771 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
772 0 : static const uint8_t expand_encoding[] = {
773 : 0x1f, 0x01, 0x00, 0x01, 0x01
774 : };
775 0 : return expand_rtx (expand_encoding, operands);
776 : }
777 :
778 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1486 */
779 : rtx
780 0 : gen_movv4di_internal (const rtx operand0, const rtx operand1)
781 : {
782 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
783 0 : static const uint8_t expand_encoding[] = {
784 : 0x1f, 0x01, 0x00, 0x01, 0x01
785 : };
786 0 : return expand_rtx (expand_encoding, operands);
787 : }
788 :
789 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1486 */
790 : rtx
791 0 : gen_movv8bf_internal (const rtx operand0, const rtx operand1)
792 : {
793 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
794 0 : static const uint8_t expand_encoding[] = {
795 : 0x1f, 0x01, 0x00, 0x01, 0x01
796 : };
797 0 : return expand_rtx (expand_encoding, operands);
798 : }
799 :
800 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1753 */
801 : rtx
802 12 : gen_avx512f_storehf_mask (const rtx operand0, const rtx operand1, const rtx operand2)
803 : {
804 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
805 12 : static const uint8_t expand_encoding[] = {
806 : 0x1f, 0x01, 0x00, 0x39, 0x2b, 0x49, 0x0f, 0x01,
807 : 0x02, 0x27, 0x01, 0x81, 0x0a, 0x2b, 0x01, 0x01,
808 : 0x17, 0x00, 0x01, 0x27, 0x00, 0x01, 0x00
809 : };
810 12 : return expand_rtx (expand_encoding, operands);
811 : }
812 :
813 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1769 */
814 : rtx
815 12 : gen_avx512vl_blendmv4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
816 : {
817 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
818 12 : static const uint8_t expand_encoding[] = {
819 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x01, 0x02,
820 : 0x01, 0x01, 0x01, 0x03
821 : };
822 12 : return expand_rtx (expand_encoding, operands);
823 : }
824 :
825 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1805 */
826 : rtx
827 12 : gen_avx512bw_blendmv32hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
828 : {
829 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
830 12 : static const uint8_t expand_encoding[] = {
831 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x01, 0x02,
832 : 0x01, 0x01, 0x01, 0x03
833 : };
834 12 : return expand_rtx (expand_encoding, operands);
835 : }
836 :
837 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2036 */
838 : rtx
839 10 : gen_sse2_movntidi (const rtx operand0, const rtx operand1)
840 : {
841 10 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
842 10 : static const uint8_t expand_encoding[] = {
843 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x01, 0x01,
844 : 0x76
845 : };
846 10 : return expand_rtx (expand_encoding, operands);
847 : }
848 :
849 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2120 */
850 : rtx
851 715 : gen_kandqi (const rtx operand0, const rtx operand1, const rtx operand2)
852 : {
853 715 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
854 715 : static const uint8_t expand_encoding[] = {
855 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49, 0x0f,
856 : 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01, 0x27,
857 : 0x00, 0x81, 0x2f
858 : };
859 715 : return expand_rtx (expand_encoding, operands);
860 : }
861 :
862 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2120 */
863 : rtx
864 11 : gen_kiordi (const rtx operand0, const rtx operand1, const rtx operand2)
865 : {
866 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
867 11 : static const uint8_t expand_encoding[] = {
868 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a, 0x12,
869 : 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01, 0x27,
870 : 0x00, 0x81, 0x2f
871 : };
872 11 : return expand_rtx (expand_encoding, operands);
873 : }
874 :
875 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2226 */
876 : rtx
877 11 : gen_knotqi (const rtx operand0, const rtx operand1)
878 : {
879 11 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
880 11 : static const uint8_t expand_encoding[] = {
881 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4c, 0x0f,
882 : 0x01, 0x01, 0x1a, 0x00, 0x01, 0x27, 0x00, 0x81,
883 : 0x2f
884 : };
885 11 : return expand_rtx (expand_encoding, operands);
886 : }
887 :
888 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2294 */
889 : rtx
890 568 : gen_kashifthi (const rtx operand0, const rtx operand1, const rtx operand2)
891 : {
892 568 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
893 568 : static const uint8_t expand_encoding[] = {
894 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4d, 0x10,
895 : 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01, 0x27,
896 : 0x00, 0x81, 0x2f
897 : };
898 568 : return expand_rtx (expand_encoding, operands);
899 : }
900 :
901 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2387 */
902 : rtx
903 9 : gen_kortestqi_ccc (const rtx operand0, const rtx operand1)
904 : {
905 9 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
906 9 : static const uint8_t expand_encoding[] = {
907 : 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02, 0x01,
908 : 0x00, 0x01, 0x01, 0x81, 0x30
909 : };
910 9 : return expand_rtx (expand_encoding, operands);
911 : }
912 :
913 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2589 */
914 : rtx
915 23 : gen_kunpckdi (const rtx operand0, const rtx operand1, const rtx operand2)
916 : {
917 23 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
918 23 : static const uint8_t expand_encoding[] = {
919 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a, 0x12,
920 : 0x4d, 0x12, 0x6f, 0x12, 0x01, 0x01, 0x27, 0x20,
921 : 0x6f, 0x12, 0x01, 0x02, 0x1a, 0x00, 0x01, 0x27,
922 : 0x00, 0x81, 0x2f
923 : };
924 23 : return expand_rtx (expand_encoding, operands);
925 : }
926 :
927 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2736 */
928 : rtx
929 0 : gen_sse_vmaddv4sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
930 : {
931 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
932 0 : static const uint8_t expand_encoding[] = {
933 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x09,
934 : 0x6b, 0x3b, 0x6b, 0x01, 0x01, 0x01, 0x02, 0x01,
935 : 0x03, 0x01, 0x04, 0x01, 0x01, 0x27, 0x01
936 : };
937 0 : return expand_rtx (expand_encoding, operands);
938 : }
939 :
940 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2736 */
941 : rtx
942 12 : gen_sse2_vmsubv2df3 (const rtx operand0, const rtx operand1, const rtx operand2)
943 : {
944 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
945 12 : static const uint8_t expand_encoding[] = {
946 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x3c, 0x6c,
947 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x01, 0x27, 0x01
948 : };
949 12 : return expand_rtx (expand_encoding, operands);
950 : }
951 :
952 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2827 */
953 : rtx
954 0 : gen_avx512fp16_vmdivv8hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
955 : {
956 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
957 0 : static const uint8_t expand_encoding[] = {
958 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x43, 0x6a,
959 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x01, 0x27, 0x01
960 : };
961 0 : return expand_rtx (expand_encoding, operands);
962 : }
963 :
964 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2827 */
965 : rtx
966 12 : gen_sse_vmdivv4sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
967 : {
968 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
969 12 : static const uint8_t expand_encoding[] = {
970 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x43, 0x6b,
971 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x01, 0x27, 0x01
972 : };
973 12 : return expand_rtx (expand_encoding, operands);
974 : }
975 :
976 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2827 */
977 : rtx
978 12 : gen_sse2_vmdivv2df3 (const rtx operand0, const rtx operand1, const rtx operand2)
979 : {
980 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
981 12 : static const uint8_t expand_encoding[] = {
982 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x43, 0x6c,
983 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x01, 0x27, 0x01
984 : };
985 12 : return expand_rtx (expand_encoding, operands);
986 : }
987 :
988 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2928 */
989 : rtx
990 27 : gen_avx512fp16_divv16hf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
991 : {
992 27 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
993 27 : static const uint8_t expand_encoding[] = {
994 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x43, 0x6e,
995 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
996 : };
997 27 : return expand_rtx (expand_encoding, operands);
998 : }
999 :
1000 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2928 */
1001 : rtx
1002 25 : gen_sse_divv4sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1003 : {
1004 25 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1005 25 : static const uint8_t expand_encoding[] = {
1006 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x43, 0x6b,
1007 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
1008 : };
1009 25 : return expand_rtx (expand_encoding, operands);
1010 : }
1011 :
1012 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2957 */
1013 : rtx
1014 13 : gen_sse_vmrcpv4sf2 (const rtx operand0, const rtx operand1, const rtx operand2)
1015 : {
1016 13 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1017 13 : static const uint8_t expand_encoding[] = {
1018 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
1019 : 0x01, 0x01, 0x01, 0x37, 0x01, 0x02, 0x27, 0x01
1020 : };
1021 13 : return expand_rtx (expand_encoding, operands);
1022 : }
1023 :
1024 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3036 */
1025 : rtx
1026 36 : gen_rcp14v4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1027 : {
1028 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1029 36 : static const uint8_t expand_encoding[] = {
1030 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
1031 : 0x01, 0x01, 0x01, 0x81, 0x22, 0x01, 0x02, 0x01,
1032 : 0x03
1033 : };
1034 36 : return expand_rtx (expand_encoding, operands);
1035 : }
1036 :
1037 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3102 */
1038 : rtx
1039 0 : gen_avx512fp16_sqrtv32hf2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1040 : {
1041 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1042 0 : static const uint8_t expand_encoding[] = {
1043 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x7c, 0x73,
1044 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
1045 : };
1046 0 : return expand_rtx (expand_encoding, operands);
1047 : }
1048 :
1049 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3102 */
1050 : rtx
1051 12 : gen_avx_sqrtv8sf2 (const rtx operand0, const rtx operand1)
1052 : {
1053 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
1054 12 : static const uint8_t expand_encoding[] = {
1055 : 0x1f, 0x01, 0x00, 0x7c, 0x6f, 0x01, 0x01
1056 : };
1057 12 : return expand_rtx (expand_encoding, operands);
1058 : }
1059 :
1060 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3102 */
1061 : rtx
1062 66 : gen_avx512f_sqrtv8df2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1063 : {
1064 66 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1065 66 : static const uint8_t expand_encoding[] = {
1066 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81, 0x09,
1067 : 0x75, 0x7c, 0x75, 0x01, 0x01, 0x01, 0x02, 0x01,
1068 : 0x03, 0x01, 0x04, 0x81, 0x33
1069 : };
1070 66 : return expand_rtx (expand_encoding, operands);
1071 : }
1072 :
1073 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3117 */
1074 : rtx
1075 14 : gen_sse2_vmsqrtv2df2 (const rtx operand0, const rtx operand1, const rtx operand2)
1076 : {
1077 14 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1078 14 : static const uint8_t expand_encoding[] = {
1079 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x7c, 0x6c,
1080 : 0x01, 0x01, 0x01, 0x02, 0x27, 0x01
1081 : };
1082 14 : return expand_rtx (expand_encoding, operands);
1083 : }
1084 :
1085 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3186 */
1086 : rtx
1087 0 : gen_avx512fp16_rsqrtv16hf2 (const rtx operand0, const rtx operand1)
1088 : {
1089 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
1090 0 : static const uint8_t expand_encoding[] = {
1091 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x01, 0x01, 0x01,
1092 : 0x38
1093 : };
1094 0 : return expand_rtx (expand_encoding, operands);
1095 : }
1096 :
1097 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3196 */
1098 : rtx
1099 36 : gen_rsqrt14v2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1100 : {
1101 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1102 36 : static const uint8_t expand_encoding[] = {
1103 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
1104 : 0x01, 0x01, 0x01, 0x81, 0x23, 0x01, 0x02, 0x01,
1105 : 0x03
1106 : };
1107 36 : return expand_rtx (expand_encoding, operands);
1108 : }
1109 :
1110 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3481 */
1111 : rtx
1112 33 : gen_ieee_maxv32hf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1113 : {
1114 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1115 33 : static const uint8_t expand_encoding[] = {
1116 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x1a, 0x73,
1117 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x40, 0x01, 0x03,
1118 : 0x01, 0x04
1119 : };
1120 33 : return expand_rtx (expand_encoding, operands);
1121 : }
1122 :
1123 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3481 */
1124 : rtx
1125 0 : gen_ieee_maxv8hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1126 : {
1127 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1128 0 : static const uint8_t expand_encoding[] = {
1129 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x01, 0x01,
1130 : 0x01, 0x02, 0x40
1131 : };
1132 0 : return expand_rtx (expand_encoding, operands);
1133 : }
1134 :
1135 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3481 */
1136 : rtx
1137 0 : gen_ieee_minv16sf3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1138 : {
1139 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1140 0 : static const uint8_t expand_encoding[] = {
1141 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x1a, 0x74,
1142 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3f, 0x01, 0x03,
1143 : 0x81, 0x33
1144 : };
1145 0 : return expand_rtx (expand_encoding, operands);
1146 : }
1147 :
1148 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3481 */
1149 : rtx
1150 153 : gen_ieee_minv4sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1151 : {
1152 153 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1153 153 : static const uint8_t expand_encoding[] = {
1154 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x01, 0x01,
1155 : 0x01, 0x02, 0x3f
1156 : };
1157 153 : return expand_rtx (expand_encoding, operands);
1158 : }
1159 :
1160 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3481 */
1161 : rtx
1162 62 : gen_ieee_minv8df3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1163 : {
1164 62 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1165 62 : static const uint8_t expand_encoding[] = {
1166 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81, 0x09,
1167 : 0x75, 0x1a, 0x75, 0x02, 0x01, 0x01, 0x01, 0x02,
1168 : 0x3f, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x81,
1169 : 0x33
1170 : };
1171 62 : return expand_rtx (expand_encoding, operands);
1172 : }
1173 :
1174 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3573 */
1175 : rtx
1176 0 : gen_avx512fp16_ieee_vmminv8hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1177 : {
1178 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1179 0 : static const uint8_t expand_encoding[] = {
1180 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
1181 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3f, 0x01, 0x01,
1182 : 0x27, 0x01
1183 : };
1184 0 : return expand_rtx (expand_encoding, operands);
1185 : }
1186 :
1187 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3573 */
1188 : rtx
1189 11 : gen_sse_ieee_vmminv4sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1190 : {
1191 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1192 11 : static const uint8_t expand_encoding[] = {
1193 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
1194 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3f, 0x01, 0x01,
1195 : 0x27, 0x01
1196 : };
1197 11 : return expand_rtx (expand_encoding, operands);
1198 : }
1199 :
1200 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3573 */
1201 : rtx
1202 0 : gen_sse2_ieee_vmminv2df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1203 : {
1204 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1205 0 : static const uint8_t expand_encoding[] = {
1206 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x09,
1207 : 0x6c, 0x1a, 0x6c, 0x02, 0x01, 0x01, 0x01, 0x02,
1208 : 0x3f, 0x01, 0x03, 0x01, 0x04, 0x01, 0x01, 0x27,
1209 : 0x01
1210 : };
1211 0 : return expand_rtx (expand_encoding, operands);
1212 : }
1213 :
1214 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3816 */
1215 : rtx
1216 13 : gen_sse3_hsubv2df3 (const rtx operand0, const rtx operand1, const rtx operand2)
1217 : {
1218 13 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1219 13 : static const uint8_t expand_encoding[] = {
1220 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6c, 0x3c, 0x2e,
1221 : 0x81, 0x0a, 0x2e, 0x01, 0x01, 0x17, 0x00, 0x01,
1222 : 0x27, 0x00, 0x81, 0x0a, 0x2e, 0x01, 0x01, 0x17,
1223 : 0x00, 0x01, 0x27, 0x01, 0x3c, 0x2e, 0x81, 0x0a,
1224 : 0x2e, 0x01, 0x02, 0x17, 0x00, 0x01, 0x27, 0x00,
1225 : 0x81, 0x0a, 0x2e, 0x01, 0x02, 0x17, 0x00, 0x01,
1226 : 0x27, 0x01
1227 : };
1228 13 : return expand_rtx (expand_encoding, operands);
1229 : }
1230 :
1231 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4281 */
1232 : rtx
1233 0 : gen_reducepv16hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1234 : {
1235 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1236 0 : static const uint8_t expand_encoding[] = {
1237 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x02, 0x81, 0x09,
1238 : 0x6e, 0x1a, 0x6e, 0x02, 0x01, 0x01, 0x01, 0x02,
1239 : 0x81, 0x41, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05,
1240 : 0x81, 0x33
1241 : };
1242 0 : return expand_rtx (expand_encoding, operands);
1243 : }
1244 :
1245 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4281 */
1246 : rtx
1247 0 : gen_reducepv4sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1248 : {
1249 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1250 0 : static const uint8_t expand_encoding[] = {
1251 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
1252 : 0x6b, 0x1a, 0x6b, 0x02, 0x01, 0x01, 0x01, 0x02,
1253 : 0x81, 0x41, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05,
1254 : 0x81, 0x33
1255 : };
1256 0 : return expand_rtx (expand_encoding, operands);
1257 : }
1258 :
1259 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4294 */
1260 : rtx
1261 0 : gen_reducesv4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1262 : {
1263 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1264 0 : static const uint8_t expand_encoding[] = {
1265 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
1266 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1267 : 0x41, 0x01, 0x01, 0x27, 0x01
1268 : };
1269 0 : return expand_rtx (expand_encoding, operands);
1270 : }
1271 :
1272 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4352 */
1273 : rtx
1274 53 : gen_avx_cmpv4sf3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1275 : {
1276 53 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1277 53 : static const uint8_t expand_encoding[] = {
1278 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x03, 0x01, 0x01,
1279 : 0x01, 0x02, 0x01, 0x03, 0x3c
1280 : };
1281 53 : return expand_rtx (expand_encoding, operands);
1282 : }
1283 :
1284 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4604 */
1285 : rtx
1286 416 : gen_sse2_maskcmpv2df3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1287 : {
1288 416 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1289 416 : static const uint8_t expand_encoding[] = {
1290 : 0x1f, 0x01, 0x00, 0x03, 0x6c, 0x03, 0x01, 0x01,
1291 : 0x01, 0x02
1292 : };
1293 416 : return expand_rtx (expand_encoding, operands);
1294 : }
1295 :
1296 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4651 */
1297 : rtx
1298 22 : gen_avx512fp16_cmpv8hf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1299 : {
1300 22 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1301 22 : static const uint8_t expand_encoding[] = {
1302 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x03,
1303 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c, 0x01,
1304 : 0x04
1305 : };
1306 22 : return expand_rtx (expand_encoding, operands);
1307 : }
1308 :
1309 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4651 */
1310 : rtx
1311 0 : gen_avx512f_cmpv8df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1312 : {
1313 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1314 0 : static const uint8_t expand_encoding[] = {
1315 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x03,
1316 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c, 0x01,
1317 : 0x04
1318 : };
1319 0 : return expand_rtx (expand_encoding, operands);
1320 : }
1321 :
1322 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4846 */
1323 : rtx
1324 129 : gen_avx512vl_cmpv32qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1325 : {
1326 129 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1327 129 : static const uint8_t expand_encoding[] = {
1328 : 0x1f, 0x01, 0x00, 0x49, 0x11, 0x1a, 0x11, 0x03,
1329 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c, 0x01,
1330 : 0x04
1331 : };
1332 129 : return expand_rtx (expand_encoding, operands);
1333 : }
1334 :
1335 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4846 */
1336 : rtx
1337 0 : gen_avx512vl_cmpv8si3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1338 : {
1339 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1340 0 : static const uint8_t expand_encoding[] = {
1341 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01, 0x01,
1342 : 0x01, 0x02, 0x01, 0x03, 0x3c
1343 : };
1344 0 : return expand_rtx (expand_encoding, operands);
1345 : }
1346 :
1347 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4846 */
1348 : rtx
1349 140 : gen_avx512vl_cmpv2di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1350 : {
1351 140 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1352 140 : static const uint8_t expand_encoding[] = {
1353 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x03,
1354 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c, 0x01,
1355 : 0x04
1356 : };
1357 140 : return expand_rtx (expand_encoding, operands);
1358 : }
1359 :
1360 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5059 */
1361 : rtx
1362 6 : gen_avx512vl_ucmpv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1363 : {
1364 6 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1365 6 : static const uint8_t expand_encoding[] = {
1366 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01, 0x01,
1367 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1e
1368 : };
1369 6 : return expand_rtx (expand_encoding, operands);
1370 : }
1371 :
1372 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5059 */
1373 : rtx
1374 192 : gen_avx512f_ucmpv8di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1375 : {
1376 192 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1377 192 : static const uint8_t expand_encoding[] = {
1378 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x03,
1379 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x1e,
1380 : 0x01, 0x04
1381 : };
1382 192 : return expand_rtx (expand_encoding, operands);
1383 : }
1384 :
1385 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5207 */
1386 : rtx
1387 0 : gen_avx512f_vmcmpv8hf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1388 : {
1389 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1390 0 : static const uint8_t expand_encoding[] = {
1391 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x03,
1392 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c, 0x49,
1393 : 0x0f, 0x01, 0x04, 0x27, 0x01
1394 : };
1395 0 : return expand_rtx (expand_encoding, operands);
1396 : }
1397 :
1398 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5225 */
1399 : rtx
1400 14 : gen_avx10_2_comxsf (const rtx operand0, const rtx operand1)
1401 : {
1402 14 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
1403 14 : static const uint8_t expand_encoding[] = {
1404 : 0x1f, 0x30, 0x0d, 0x11, 0x1a, 0x0d, 0x02, 0x81,
1405 : 0x0a, 0x2d, 0x01, 0x00, 0x17, 0x00, 0x01, 0x27,
1406 : 0x00, 0x81, 0x0a, 0x2d, 0x01, 0x01, 0x17, 0x00,
1407 : 0x01, 0x27, 0x00, 0x3e
1408 : };
1409 14 : return expand_rtx (expand_encoding, operands);
1410 : }
1411 :
1412 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5241 */
1413 : rtx
1414 0 : gen_avx512fp16_comi_round (const rtx operand0, const rtx operand1, const rtx operand2)
1415 : {
1416 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1417 0 : static const uint8_t expand_encoding[] = {
1418 : 0x1f, 0x30, 0x0d, 0x11, 0x1a, 0x0d, 0x02, 0x3a,
1419 : 0x0d, 0x81, 0x0a, 0x2b, 0x01, 0x00, 0x17, 0x00,
1420 : 0x01, 0x27, 0x00, 0x81, 0x0a, 0x2b, 0x01, 0x01,
1421 : 0x17, 0x00, 0x01, 0x27, 0x00, 0x01, 0x02, 0x81,
1422 : 0x33
1423 : };
1424 0 : return expand_rtx (expand_encoding, operands);
1425 : }
1426 :
1427 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5241 */
1428 : rtx
1429 17 : gen_sse2_ucomi_round (const rtx operand0, const rtx operand1, const rtx operand2)
1430 : {
1431 17 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1432 17 : static const uint8_t expand_encoding[] = {
1433 : 0x1f, 0x30, 0x0d, 0x11, 0x1a, 0x0d, 0x02, 0x1a,
1434 : 0x0d, 0x01, 0x3a, 0x0d, 0x81, 0x0a, 0x2e, 0x01,
1435 : 0x00, 0x17, 0x00, 0x01, 0x27, 0x00, 0x81, 0x0a,
1436 : 0x2e, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
1437 : 0x1b, 0x01, 0x02, 0x81, 0x33
1438 : };
1439 17 : return expand_rtx (expand_encoding, operands);
1440 : }
1441 :
1442 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5611 */
1443 : rtx
1444 19 : gen_sse2_andnotv2df3 (const rtx operand0, const rtx operand1, const rtx operand2)
1445 : {
1446 19 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1447 19 : static const uint8_t expand_encoding[] = {
1448 : 0x1f, 0x01, 0x00, 0x49, 0x6c, 0x4c, 0x6c, 0x01,
1449 : 0x01, 0x01, 0x02
1450 : };
1451 19 : return expand_rtx (expand_encoding, operands);
1452 : }
1453 :
1454 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6044 */
1455 : rtx
1456 0 : gen_iorbf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1457 : {
1458 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1459 0 : static const uint8_t expand_encoding[] = {
1460 : 0x1f, 0x01, 0x00, 0x4a, 0x2c, 0x01, 0x01, 0x01,
1461 : 0x02
1462 : };
1463 0 : return expand_rtx (expand_encoding, operands);
1464 : }
1465 :
1466 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6044 */
1467 : rtx
1468 694 : gen_iordf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1469 : {
1470 694 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1471 694 : static const uint8_t expand_encoding[] = {
1472 : 0x1f, 0x01, 0x00, 0x4a, 0x2e, 0x01, 0x01, 0x01,
1473 : 0x02
1474 : };
1475 694 : return expand_rtx (expand_encoding, operands);
1476 : }
1477 :
1478 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6317 */
1479 : rtx
1480 0 : gen_fma_fmadd_v8df_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1481 : {
1482 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1483 0 : static const uint8_t expand_encoding[] = {
1484 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x81, 0x19,
1485 : 0x75, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
1486 : 0x04, 0x01, 0x05
1487 : };
1488 0 : return expand_rtx (expand_encoding, operands);
1489 : }
1490 :
1491 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6355 */
1492 : rtx
1493 58 : gen_avx512f_fmadd_v16sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1494 : {
1495 58 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1496 58 : static const uint8_t expand_encoding[] = {
1497 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x81, 0x09,
1498 : 0x74, 0x81, 0x19, 0x74, 0x01, 0x01, 0x01, 0x02,
1499 : 0x01, 0x03, 0x01, 0x01, 0x01, 0x04, 0x01, 0x05,
1500 : 0x81, 0x33
1501 : };
1502 58 : return expand_rtx (expand_encoding, operands);
1503 : }
1504 :
1505 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6372 */
1506 : rtx
1507 12 : gen_avx512fp16_fmadd_v8hf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1508 : {
1509 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1510 12 : static const uint8_t expand_encoding[] = {
1511 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x19,
1512 : 0x6a, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
1513 : 0x03, 0x01, 0x04
1514 : };
1515 12 : return expand_rtx (expand_encoding, operands);
1516 : }
1517 :
1518 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6372 */
1519 : rtx
1520 23 : gen_avx512f_fmadd_v8df_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1521 : {
1522 23 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1523 23 : static const uint8_t expand_encoding[] = {
1524 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81, 0x09,
1525 : 0x75, 0x81, 0x19, 0x75, 0x01, 0x01, 0x01, 0x02,
1526 : 0x01, 0x03, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05,
1527 : 0x81, 0x33
1528 : };
1529 23 : return expand_rtx (expand_encoding, operands);
1530 : }
1531 :
1532 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6419 */
1533 : rtx
1534 13 : gen_fma_fmsub_v8sf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1535 : {
1536 13 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1537 13 : static const uint8_t expand_encoding[] = {
1538 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x81, 0x19,
1539 : 0x6f, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6f, 0x01,
1540 : 0x03, 0x01, 0x04, 0x01, 0x05
1541 : };
1542 13 : return expand_rtx (expand_encoding, operands);
1543 : }
1544 :
1545 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6459 */
1546 : rtx
1547 0 : gen_avx512vl_fmsub_v16hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1548 : {
1549 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1550 0 : static const uint8_t expand_encoding[] = {
1551 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x02, 0x81, 0x09,
1552 : 0x6e, 0x81, 0x19, 0x6e, 0x01, 0x01, 0x01, 0x02,
1553 : 0x3d, 0x6e, 0x01, 0x03, 0x01, 0x01, 0x01, 0x04,
1554 : 0x01, 0x05, 0x81, 0x33
1555 : };
1556 0 : return expand_rtx (expand_encoding, operands);
1557 : }
1558 :
1559 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6459 */
1560 : rtx
1561 12 : gen_avx512vl_fmsub_v4df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1562 : {
1563 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1564 12 : static const uint8_t expand_encoding[] = {
1565 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x19,
1566 : 0x70, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x70, 0x01,
1567 : 0x03, 0x01, 0x01, 0x01, 0x04
1568 : };
1569 12 : return expand_rtx (expand_encoding, operands);
1570 : }
1571 :
1572 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6477 */
1573 : rtx
1574 22 : gen_avx512f_fmsub_v16sf_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1575 : {
1576 22 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1577 22 : static const uint8_t expand_encoding[] = {
1578 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x81, 0x09,
1579 : 0x74, 0x81, 0x19, 0x74, 0x01, 0x01, 0x01, 0x02,
1580 : 0x3d, 0x74, 0x01, 0x03, 0x01, 0x03, 0x01, 0x04,
1581 : 0x01, 0x05, 0x81, 0x33
1582 : };
1583 22 : return expand_rtx (expand_encoding, operands);
1584 : }
1585 :
1586 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6525 */
1587 : rtx
1588 0 : gen_fma_fnmadd_v16sf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1589 : {
1590 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1591 0 : static const uint8_t expand_encoding[] = {
1592 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x81, 0x19,
1593 : 0x74, 0x3d, 0x74, 0x01, 0x01, 0x01, 0x02, 0x01,
1594 : 0x03, 0x01, 0x04, 0x01, 0x05
1595 : };
1596 0 : return expand_rtx (expand_encoding, operands);
1597 : }
1598 :
1599 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6565 */
1600 : rtx
1601 23 : gen_avx512vl_fnmadd_v16hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1602 : {
1603 23 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1604 23 : static const uint8_t expand_encoding[] = {
1605 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x81, 0x19,
1606 : 0x6e, 0x3d, 0x6e, 0x01, 0x01, 0x01, 0x02, 0x01,
1607 : 0x03, 0x01, 0x01, 0x01, 0x04
1608 : };
1609 23 : return expand_rtx (expand_encoding, operands);
1610 : }
1611 :
1612 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6565 */
1613 : rtx
1614 12 : gen_avx512vl_fnmadd_v2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1615 : {
1616 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1617 12 : static const uint8_t expand_encoding[] = {
1618 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x19,
1619 : 0x6c, 0x3d, 0x6c, 0x01, 0x01, 0x01, 0x02, 0x01,
1620 : 0x03, 0x01, 0x01, 0x01, 0x04
1621 : };
1622 12 : return expand_rtx (expand_encoding, operands);
1623 : }
1624 :
1625 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6583 */
1626 : rtx
1627 22 : gen_avx512f_fnmadd_v8df_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1628 : {
1629 22 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1630 22 : static const uint8_t expand_encoding[] = {
1631 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81, 0x09,
1632 : 0x75, 0x81, 0x19, 0x75, 0x3d, 0x75, 0x01, 0x01,
1633 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x03, 0x01, 0x04,
1634 : 0x01, 0x05, 0x81, 0x33
1635 : };
1636 22 : return expand_rtx (expand_encoding, operands);
1637 : }
1638 :
1639 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6632 */
1640 : rtx
1641 0 : gen_fma_fnmsub_v8df_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1642 : {
1643 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1644 0 : static const uint8_t expand_encoding[] = {
1645 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x81, 0x19,
1646 : 0x75, 0x3d, 0x75, 0x01, 0x01, 0x01, 0x02, 0x3d,
1647 : 0x75, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05
1648 : };
1649 0 : return expand_rtx (expand_encoding, operands);
1650 : }
1651 :
1652 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6674 */
1653 : rtx
1654 12 : gen_avx512vl_fnmsub_v8sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1655 : {
1656 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1657 12 : static const uint8_t expand_encoding[] = {
1658 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x81, 0x19,
1659 : 0x6f, 0x3d, 0x6f, 0x01, 0x01, 0x01, 0x02, 0x3d,
1660 : 0x6f, 0x01, 0x03, 0x01, 0x01, 0x01, 0x04
1661 : };
1662 12 : return expand_rtx (expand_encoding, operands);
1663 : }
1664 :
1665 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6693 */
1666 : rtx
1667 0 : gen_avx512vl_fnmsub_v16hf_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1668 : {
1669 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1670 0 : static const uint8_t expand_encoding[] = {
1671 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x02, 0x81, 0x09,
1672 : 0x6e, 0x81, 0x19, 0x6e, 0x3d, 0x6e, 0x01, 0x01,
1673 : 0x01, 0x02, 0x3d, 0x6e, 0x01, 0x03, 0x01, 0x03,
1674 : 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
1675 : };
1676 0 : return expand_rtx (expand_encoding, operands);
1677 : }
1678 :
1679 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6693 */
1680 : rtx
1681 12 : gen_avx512vl_fnmsub_v4df_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1682 : {
1683 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1684 12 : static const uint8_t expand_encoding[] = {
1685 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x19,
1686 : 0x70, 0x3d, 0x70, 0x01, 0x01, 0x01, 0x02, 0x3d,
1687 : 0x70, 0x01, 0x03, 0x01, 0x03, 0x01, 0x04
1688 : };
1689 12 : return expand_rtx (expand_encoding, operands);
1690 : }
1691 :
1692 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6795 */
1693 : rtx
1694 44 : gen_fma_fmaddsub_v16sf_maskz_1_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
1695 : {
1696 44 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
1697 44 : static const uint8_t expand_encoding[] = {
1698 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x81, 0x09,
1699 : 0x74, 0x1a, 0x74, 0x03, 0x01, 0x01, 0x01, 0x02,
1700 : 0x01, 0x03, 0x81, 0x06, 0x01, 0x04, 0x01, 0x05,
1701 : 0x01, 0x06, 0x81, 0x33
1702 : };
1703 44 : return expand_rtx (expand_encoding, operands);
1704 : }
1705 :
1706 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6811 */
1707 : rtx
1708 23 : gen_avx512fp16_fmaddsub_v8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1709 : {
1710 23 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1711 23 : static const uint8_t expand_encoding[] = {
1712 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
1713 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1714 : 0x06, 0x01, 0x01, 0x01, 0x04
1715 : };
1716 23 : return expand_rtx (expand_encoding, operands);
1717 : }
1718 :
1719 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6811 */
1720 : rtx
1721 88 : gen_avx512f_fmaddsub_v8df_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1722 : {
1723 88 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1724 88 : static const uint8_t expand_encoding[] = {
1725 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81, 0x09,
1726 : 0x75, 0x1a, 0x75, 0x03, 0x01, 0x01, 0x01, 0x02,
1727 : 0x01, 0x03, 0x81, 0x06, 0x01, 0x01, 0x01, 0x04,
1728 : 0x01, 0x05, 0x81, 0x33
1729 : };
1730 88 : return expand_rtx (expand_encoding, operands);
1731 : }
1732 :
1733 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6829 */
1734 : rtx
1735 0 : gen_avx512f_fmaddsub_v16sf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1736 : {
1737 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1738 0 : static const uint8_t expand_encoding[] = {
1739 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x1a, 0x74,
1740 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1741 : 0x06, 0x01, 0x03, 0x01, 0x04
1742 : };
1743 0 : return expand_rtx (expand_encoding, operands);
1744 : }
1745 :
1746 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6829 */
1747 : rtx
1748 0 : gen_avx512vl_fmaddsub_v4df_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1749 : {
1750 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1751 0 : static const uint8_t expand_encoding[] = {
1752 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x81, 0x09,
1753 : 0x70, 0x1a, 0x70, 0x03, 0x01, 0x01, 0x01, 0x02,
1754 : 0x01, 0x03, 0x81, 0x06, 0x01, 0x03, 0x01, 0x04,
1755 : 0x01, 0x05, 0x81, 0x33
1756 : };
1757 0 : return expand_rtx (expand_encoding, operands);
1758 : }
1759 :
1760 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6864 */
1761 : rtx
1762 0 : gen_fma_fmsubadd_v8df_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1763 : {
1764 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1765 0 : static const uint8_t expand_encoding[] = {
1766 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x1a, 0x75,
1767 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x75, 0x01,
1768 : 0x03, 0x81, 0x06, 0x01, 0x04, 0x01, 0x05
1769 : };
1770 0 : return expand_rtx (expand_encoding, operands);
1771 : }
1772 :
1773 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6881 */
1774 : rtx
1775 0 : gen_avx512f_fmsubadd_v16sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1776 : {
1777 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1778 0 : static const uint8_t expand_encoding[] = {
1779 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x1a, 0x74,
1780 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x74, 0x01,
1781 : 0x03, 0x81, 0x06, 0x01, 0x01, 0x01, 0x04
1782 : };
1783 0 : return expand_rtx (expand_encoding, operands);
1784 : }
1785 :
1786 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6881 */
1787 : rtx
1788 0 : gen_avx512vl_fmsubadd_v4df_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1789 : {
1790 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1791 0 : static const uint8_t expand_encoding[] = {
1792 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x81, 0x09,
1793 : 0x70, 0x1a, 0x70, 0x03, 0x01, 0x01, 0x01, 0x02,
1794 : 0x3d, 0x70, 0x01, 0x03, 0x81, 0x06, 0x01, 0x01,
1795 : 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
1796 : };
1797 0 : return expand_rtx (expand_encoding, operands);
1798 : }
1799 :
1800 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6900 */
1801 : rtx
1802 12 : gen_avx512vl_fmsubadd_v8sf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1803 : {
1804 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1805 12 : static const uint8_t expand_encoding[] = {
1806 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x1a, 0x6f,
1807 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6f, 0x01,
1808 : 0x03, 0x81, 0x06, 0x01, 0x03, 0x01, 0x04
1809 : };
1810 12 : return expand_rtx (expand_encoding, operands);
1811 : }
1812 :
1813 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6900 */
1814 : rtx
1815 0 : gen_avx512vl_fmsubadd_v2df_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1816 : {
1817 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1818 0 : static const uint8_t expand_encoding[] = {
1819 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
1820 : 0x6c, 0x1a, 0x6c, 0x03, 0x01, 0x01, 0x01, 0x02,
1821 : 0x3d, 0x6c, 0x01, 0x03, 0x81, 0x06, 0x01, 0x03,
1822 : 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
1823 : };
1824 0 : return expand_rtx (expand_encoding, operands);
1825 : }
1826 :
1827 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7060 */
1828 : rtx
1829 0 : gen_avx512f_vmfmadd_v2df_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1830 : {
1831 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1832 0 : static const uint8_t expand_encoding[] = {
1833 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x09,
1834 : 0x6c, 0x81, 0x19, 0x6c, 0x01, 0x01, 0x01, 0x02,
1835 : 0x01, 0x03, 0x01, 0x03, 0x01, 0x04, 0x01, 0x03,
1836 : 0x27, 0x01
1837 : };
1838 0 : return expand_rtx (expand_encoding, operands);
1839 : }
1840 :
1841 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7133 */
1842 : rtx
1843 46 : gen_avx512f_vmfmsub_v8hf_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1844 : {
1845 46 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1846 46 : static const uint8_t expand_encoding[] = {
1847 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
1848 : 0x6a, 0x81, 0x09, 0x6a, 0x81, 0x19, 0x6a, 0x01,
1849 : 0x01, 0x01, 0x02, 0x3d, 0x6a, 0x01, 0x03, 0x01,
1850 : 0x03, 0x01, 0x04, 0x01, 0x03, 0x27, 0x01, 0x01,
1851 : 0x05, 0x81, 0x33
1852 : };
1853 46 : return expand_rtx (expand_encoding, operands);
1854 : }
1855 :
1856 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7194 */
1857 : rtx
1858 0 : gen_avx512f_vmfnmadd_v8hf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1859 : {
1860 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1861 0 : static const uint8_t expand_encoding[] = {
1862 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x09,
1863 : 0x6a, 0x81, 0x19, 0x6a, 0x3d, 0x6a, 0x01, 0x02,
1864 : 0x01, 0x01, 0x01, 0x03, 0x01, 0x03, 0x01, 0x04,
1865 : 0x01, 0x03, 0x27, 0x01
1866 : };
1867 0 : return expand_rtx (expand_encoding, operands);
1868 : }
1869 :
1870 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7227 */
1871 : rtx
1872 0 : gen_avx512f_vmfnmadd_v4sf_maskz_1_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
1873 : {
1874 0 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
1875 0 : static const uint8_t expand_encoding[] = {
1876 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
1877 : 0x6b, 0x81, 0x09, 0x6b, 0x81, 0x19, 0x6b, 0x3d,
1878 : 0x6b, 0x01, 0x02, 0x01, 0x01, 0x01, 0x03, 0x01,
1879 : 0x04, 0x01, 0x05, 0x01, 0x01, 0x27, 0x01, 0x01,
1880 : 0x06, 0x81, 0x33
1881 : };
1882 0 : return expand_rtx (expand_encoding, operands);
1883 : }
1884 :
1885 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7534 */
1886 : rtx
1887 12 : gen_fma_fmaddc_v16hf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1888 : {
1889 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1890 12 : static const uint8_t expand_encoding[] = {
1891 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x1a, 0x6e,
1892 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1893 : 0x5a, 0x01, 0x04, 0x1a, 0x10, 0x01, 0x01, 0x05,
1894 : 0x81, 0x60
1895 : };
1896 12 : return expand_rtx (expand_encoding, operands);
1897 : }
1898 :
1899 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7564 */
1900 : rtx
1901 0 : gen_fma_v32hf_fadd_fcmul (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1902 : {
1903 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1904 0 : static const uint8_t expand_encoding[] = {
1905 : 0x1f, 0x01, 0x00, 0x3b, 0x73, 0x1a, 0x73, 0x02,
1906 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x5f, 0x01, 0x03
1907 : };
1908 0 : return expand_rtx (expand_encoding, operands);
1909 : }
1910 :
1911 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7599 */
1912 : rtx
1913 1 : gen_fma_fcmaddc_v16sf_pair (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1914 : {
1915 1 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1916 1 : static const uint8_t expand_encoding[] = {
1917 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x03, 0x01, 0x01,
1918 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x5d
1919 : };
1920 1 : return expand_rtx (expand_encoding, operands);
1921 : }
1922 :
1923 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7667 */
1924 : rtx
1925 6 : gen_avx512bw_fmaddc_v32hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1926 : {
1927 6 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1928 6 : static const uint8_t expand_encoding[] = {
1929 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x1a, 0x73,
1930 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1931 : 0x5a, 0x01, 0x01, 0x1a, 0x11, 0x01, 0x01, 0x04,
1932 : 0x81, 0x60
1933 : };
1934 6 : return expand_rtx (expand_encoding, operands);
1935 : }
1936 :
1937 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7693 */
1938 : rtx
1939 29 : gen_avx512bw_fmulc_v32hf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1940 : {
1941 29 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1942 29 : static const uint8_t expand_encoding[] = {
1943 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x1a, 0x73,
1944 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x5e, 0x01,
1945 : 0x03, 0x81, 0x33
1946 : };
1947 29 : return expand_rtx (expand_encoding, operands);
1948 : }
1949 :
1950 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7693 */
1951 : rtx
1952 14 : gen_avx512fp16_fmulc_v8hf (const rtx operand0, const rtx operand1, const rtx operand2)
1953 : {
1954 14 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1955 14 : static const uint8_t expand_encoding[] = {
1956 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x01, 0x01,
1957 : 0x01, 0x02, 0x81, 0x5e
1958 : };
1959 14 : return expand_rtx (expand_encoding, operands);
1960 : }
1961 :
1962 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7858 */
1963 : rtx
1964 22 : gen_avx512fp16_fma_fmaddcsh_v8hf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
1965 : {
1966 22 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
1967 22 : static const uint8_t expand_encoding[] = {
1968 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
1969 : 0x6a, 0x81, 0x09, 0x6a, 0x1a, 0x6a, 0x03, 0x01,
1970 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x5a, 0x01,
1971 : 0x04, 0x1a, 0x0f, 0x01, 0x01, 0x05, 0x81, 0x60,
1972 : 0x01, 0x02, 0x27, 0x03, 0x01, 0x06, 0x81, 0x33
1973 : };
1974 22 : return expand_rtx (expand_encoding, operands);
1975 : }
1976 :
1977 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7894 */
1978 : rtx
1979 0 : gen_avx512fp16_fcmulcsh_v8hf (const rtx operand0, const rtx operand1, const rtx operand2)
1980 : {
1981 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1982 0 : static const uint8_t expand_encoding[] = {
1983 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
1984 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x5f, 0x01,
1985 : 0x01, 0x27, 0x03
1986 : };
1987 0 : return expand_rtx (expand_encoding, operands);
1988 : }
1989 :
1990 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
1991 : rtx
1992 69 : gen_avx512fp16_vcvtph2uw_v32hi_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1993 : {
1994 69 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1995 69 : static const uint8_t expand_encoding[] = {
1996 : 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x02, 0x81, 0x09,
1997 : 0x5a, 0x1a, 0x5a, 0x01, 0x01, 0x01, 0x81, 0x1d,
1998 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
1999 : };
2000 69 : return expand_rtx (expand_encoding, operands);
2001 : }
2002 :
2003 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2004 : rtx
2005 69 : gen_avx512fp16_vcvtph2dq_v16si_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2006 : {
2007 69 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2008 69 : static const uint8_t expand_encoding[] = {
2009 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x02, 0x81, 0x09,
2010 : 0x5b, 0x1a, 0x5b, 0x01, 0x01, 0x01, 0x2f, 0x01,
2011 : 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2012 : };
2013 69 : return expand_rtx (expand_encoding, operands);
2014 : }
2015 :
2016 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2017 : rtx
2018 36 : gen_avx512fp16_vcvtph2uw_v16hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2019 : {
2020 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2021 36 : static const uint8_t expand_encoding[] = {
2022 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x1a, 0x55,
2023 : 0x01, 0x01, 0x01, 0x81, 0x1d, 0x01, 0x02, 0x01,
2024 : 0x03
2025 : };
2026 36 : return expand_rtx (expand_encoding, operands);
2027 : }
2028 :
2029 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2030 : rtx
2031 0 : gen_avx512fp16_vcvtph2dq_v8si_round (const rtx operand0, const rtx operand1, const rtx operand2)
2032 : {
2033 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2034 0 : static const uint8_t expand_encoding[] = {
2035 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x02, 0x1a, 0x56,
2036 : 0x01, 0x01, 0x01, 0x2f, 0x01, 0x02, 0x81, 0x33
2037 : };
2038 0 : return expand_rtx (expand_encoding, operands);
2039 : }
2040 :
2041 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2042 : rtx
2043 36 : gen_avx512fp16_vcvtph2qq_v4di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2044 : {
2045 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2046 36 : static const uint8_t expand_encoding[] = {
2047 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x1a, 0x57,
2048 : 0x01, 0x01, 0x01, 0x2f, 0x01, 0x02, 0x01, 0x03
2049 : };
2050 36 : return expand_rtx (expand_encoding, operands);
2051 : }
2052 :
2053 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2054 : rtx
2055 0 : gen_avx512fp16_vcvtph2udq_v4si_round (const rtx operand0, const rtx operand1, const rtx operand2)
2056 : {
2057 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2058 0 : static const uint8_t expand_encoding[] = {
2059 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x02, 0x1a, 0x51,
2060 : 0x01, 0x01, 0x01, 0x81, 0x1d, 0x01, 0x02, 0x81,
2061 : 0x33
2062 : };
2063 0 : return expand_rtx (expand_encoding, operands);
2064 : }
2065 :
2066 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2067 : rtx
2068 37 : gen_avx512fp16_vcvtph2uqq_v2di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2069 : {
2070 37 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2071 37 : static const uint8_t expand_encoding[] = {
2072 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x1a, 0x52,
2073 : 0x01, 0x01, 0x01, 0x81, 0x1d, 0x01, 0x02, 0x01,
2074 : 0x03
2075 : };
2076 37 : return expand_rtx (expand_encoding, operands);
2077 : }
2078 :
2079 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8023 */
2080 : rtx
2081 0 : gen_avx512fp16_vcvtuw2ph_v8hi_round (const rtx operand0, const rtx operand1, const rtx operand2)
2082 : {
2083 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2084 0 : static const uint8_t expand_encoding[] = {
2085 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x75, 0x6a,
2086 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x33
2087 : };
2088 0 : return expand_rtx (expand_encoding, operands);
2089 : }
2090 :
2091 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8023 */
2092 : rtx
2093 36 : gen_avx512fp16_vcvtuw2ph_v16hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2094 : {
2095 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2096 36 : static const uint8_t expand_encoding[] = {
2097 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x75, 0x6e,
2098 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2099 : };
2100 36 : return expand_rtx (expand_encoding, operands);
2101 : }
2102 :
2103 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8023 */
2104 : rtx
2105 0 : gen_avx512fp16_vcvtdq2ph_v8si_round (const rtx operand0, const rtx operand1, const rtx operand2)
2106 : {
2107 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2108 0 : static const uint8_t expand_encoding[] = {
2109 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x73, 0x6a,
2110 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x33
2111 : };
2112 0 : return expand_rtx (expand_encoding, operands);
2113 : }
2114 :
2115 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8023 */
2116 : rtx
2117 0 : gen_avx512fp16_vcvtdq2ph_v16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2118 : {
2119 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2120 0 : static const uint8_t expand_encoding[] = {
2121 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x73, 0x6e,
2122 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2123 : };
2124 0 : return expand_rtx (expand_encoding, operands);
2125 : }
2126 :
2127 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8023 */
2128 : rtx
2129 0 : gen_avx512fp16_vcvtuqq2ph_v8di_round (const rtx operand0, const rtx operand1, const rtx operand2)
2130 : {
2131 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2132 0 : static const uint8_t expand_encoding[] = {
2133 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x75, 0x6a,
2134 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x33
2135 : };
2136 0 : return expand_rtx (expand_encoding, operands);
2137 : }
2138 :
2139 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8185 */
2140 : rtx
2141 0 : gen_avx512fp16_vcvtsh2siq (const rtx operand0, const rtx operand1)
2142 : {
2143 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2144 0 : static const uint8_t expand_encoding[] = {
2145 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x81, 0x0a,
2146 : 0x2b, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
2147 : 0x2f
2148 : };
2149 0 : return expand_rtx (expand_encoding, operands);
2150 : }
2151 :
2152 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8211 */
2153 : rtx
2154 0 : gen_avx512fp16_vcvtsi2shq (const rtx operand0, const rtx operand1, const rtx operand2)
2155 : {
2156 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2157 0 : static const uint8_t expand_encoding[] = {
2158 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x0c,
2159 : 0x6a, 0x73, 0x2b, 0x01, 0x02, 0x01, 0x01, 0x27,
2160 : 0x01
2161 : };
2162 0 : return expand_rtx (expand_encoding, operands);
2163 : }
2164 :
2165 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8231 */
2166 : rtx
2167 0 : gen_unspec_avx512fp16_fixuns_truncv8hi2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2168 : {
2169 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2170 0 : static const uint8_t expand_encoding[] = {
2171 : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x02, 0x1a, 0x50,
2172 : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x81,
2173 : 0x33
2174 : };
2175 0 : return expand_rtx (expand_encoding, operands);
2176 : }
2177 :
2178 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8231 */
2179 : rtx
2180 36 : gen_unspec_avx512fp16_fixuns_truncv16hi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2181 : {
2182 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2183 36 : static const uint8_t expand_encoding[] = {
2184 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x1a, 0x55,
2185 : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x01,
2186 : 0x03
2187 : };
2188 36 : return expand_rtx (expand_encoding, operands);
2189 : }
2190 :
2191 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8231 */
2192 : rtx
2193 0 : gen_unspec_avx512fp16_fix_truncv8si2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2194 : {
2195 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2196 0 : static const uint8_t expand_encoding[] = {
2197 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x02, 0x1a, 0x56,
2198 : 0x01, 0x01, 0x01, 0x81, 0x2d, 0x01, 0x02, 0x81,
2199 : 0x33
2200 : };
2201 0 : return expand_rtx (expand_encoding, operands);
2202 : }
2203 :
2204 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8231 */
2205 : rtx
2206 69 : gen_unspec_avx512fp16_fix_truncv16si2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2207 : {
2208 69 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2209 69 : static const uint8_t expand_encoding[] = {
2210 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x02, 0x81, 0x09,
2211 : 0x5b, 0x1a, 0x5b, 0x01, 0x01, 0x01, 0x81, 0x2d,
2212 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2213 : };
2214 69 : return expand_rtx (expand_encoding, operands);
2215 : }
2216 :
2217 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8231 */
2218 : rtx
2219 69 : gen_unspec_avx512fp16_fixuns_truncv8di2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2220 : {
2221 69 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2222 69 : static const uint8_t expand_encoding[] = {
2223 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x02, 0x81, 0x09,
2224 : 0x5c, 0x1a, 0x5c, 0x01, 0x01, 0x01, 0x81, 0x2e,
2225 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2226 : };
2227 69 : return expand_rtx (expand_encoding, operands);
2228 : }
2229 :
2230 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8242 */
2231 : rtx
2232 0 : gen_avx512fp16_fix_truncv16hi2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2233 : {
2234 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2235 0 : static const uint8_t expand_encoding[] = {
2236 : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x02, 0x81, 0x09,
2237 : 0x55, 0x74, 0x55, 0x01, 0x01, 0x01, 0x02, 0x01,
2238 : 0x03, 0x01, 0x04, 0x81, 0x33
2239 : };
2240 0 : return expand_rtx (expand_encoding, operands);
2241 : }
2242 :
2243 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8242 */
2244 : rtx
2245 0 : gen_avx512fp16_fix_truncv8si2 (const rtx operand0, const rtx operand1)
2246 : {
2247 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2248 0 : static const uint8_t expand_encoding[] = {
2249 : 0x1f, 0x01, 0x00, 0x74, 0x56, 0x01, 0x01
2250 : };
2251 0 : return expand_rtx (expand_encoding, operands);
2252 : }
2253 :
2254 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8242 */
2255 : rtx
2256 0 : gen_avx512fp16_fixuns_truncv8si2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2257 : {
2258 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2259 0 : static const uint8_t expand_encoding[] = {
2260 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x02, 0x81, 0x09,
2261 : 0x56, 0x76, 0x56, 0x01, 0x01, 0x01, 0x02, 0x01,
2262 : 0x03, 0x01, 0x04, 0x81, 0x33
2263 : };
2264 0 : return expand_rtx (expand_encoding, operands);
2265 : }
2266 :
2267 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8242 */
2268 : rtx
2269 0 : gen_avx512fp16_fixuns_truncv8di2 (const rtx operand0, const rtx operand1)
2270 : {
2271 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2272 0 : static const uint8_t expand_encoding[] = {
2273 : 0x1f, 0x01, 0x00, 0x76, 0x5c, 0x01, 0x01
2274 : };
2275 0 : return expand_rtx (expand_encoding, operands);
2276 : }
2277 :
2278 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8269 */
2279 : rtx
2280 36 : gen_unspec_avx512fp16_fixuns_truncv4si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2281 : {
2282 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2283 36 : static const uint8_t expand_encoding[] = {
2284 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
2285 : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x01,
2286 : 0x03
2287 : };
2288 36 : return expand_rtx (expand_encoding, operands);
2289 : }
2290 :
2291 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8280 */
2292 : rtx
2293 1 : gen_avx512fp16_fixuns_truncv4di2 (const rtx operand0, const rtx operand1)
2294 : {
2295 1 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2296 1 : static const uint8_t expand_encoding[] = {
2297 : 0x1f, 0x01, 0x00, 0x76, 0x57, 0x81, 0x0a, 0x66,
2298 : 0x01, 0x01, 0x17, 0x00, 0x04, 0x27, 0x00, 0x27,
2299 : 0x01, 0x27, 0x02, 0x27, 0x03
2300 : };
2301 1 : return expand_rtx (expand_encoding, operands);
2302 : }
2303 :
2304 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8352 */
2305 : rtx
2306 0 : gen_unspec_avx512fp16_fix_truncsi2 (const rtx operand0, const rtx operand1)
2307 : {
2308 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2309 0 : static const uint8_t expand_encoding[] = {
2310 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01, 0x01,
2311 : 0x81, 0x2d
2312 : };
2313 0 : return expand_rtx (expand_encoding, operands);
2314 : }
2315 :
2316 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8352 */
2317 : rtx
2318 21 : gen_unspec_avx512fp16_fixuns_truncdi2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2319 : {
2320 21 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2321 21 : static const uint8_t expand_encoding[] = {
2322 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x02, 0x1a, 0x12,
2323 : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x81,
2324 : 0x33
2325 : };
2326 21 : return expand_rtx (expand_encoding, operands);
2327 : }
2328 :
2329 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8375 */
2330 : rtx
2331 0 : gen_avx512fp16_fix_truncdi2_mem (const rtx operand0, const rtx operand1)
2332 : {
2333 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2334 0 : static const uint8_t expand_encoding[] = {
2335 : 0x1f, 0x01, 0x00, 0x74, 0x12, 0x01, 0x01
2336 : };
2337 0 : return expand_rtx (expand_encoding, operands);
2338 : }
2339 :
2340 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8395 */
2341 : rtx
2342 0 : gen_avx512fp16_float_extend_phv8sf2 (const rtx operand0, const rtx operand1)
2343 : {
2344 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2345 0 : static const uint8_t expand_encoding[] = {
2346 : 0x1f, 0x01, 0x00, 0x71, 0x6f, 0x01, 0x01
2347 : };
2348 0 : return expand_rtx (expand_encoding, operands);
2349 : }
2350 :
2351 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8461 */
2352 : rtx
2353 3 : gen_avx512fp16_float_extend_phv2df2 (const rtx operand0, const rtx operand1)
2354 : {
2355 3 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2356 3 : static const uint8_t expand_encoding[] = {
2357 : 0x1f, 0x01, 0x00, 0x71, 0x6c, 0x81, 0x0a, 0x63,
2358 : 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x00, 0x27,
2359 : 0x01
2360 : };
2361 3 : return expand_rtx (expand_encoding, operands);
2362 : }
2363 :
2364 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8489 */
2365 : rtx
2366 0 : gen_avx512fp16_vcvtps2ph_v16sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2367 : {
2368 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2369 0 : static const uint8_t expand_encoding[] = {
2370 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x72, 0x6e,
2371 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2372 : };
2373 0 : return expand_rtx (expand_encoding, operands);
2374 : }
2375 :
2376 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8656 */
2377 : rtx
2378 0 : gen_avx512fp16_vcvtsh2ss_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2379 : {
2380 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2381 0 : static const uint8_t expand_encoding[] = {
2382 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x09,
2383 : 0x6b, 0x81, 0x0c, 0x6b, 0x71, 0x2d, 0x81, 0x0a,
2384 : 0x2b, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
2385 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x02, 0x27, 0x01
2386 : };
2387 0 : return expand_rtx (expand_encoding, operands);
2388 : }
2389 :
2390 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8686 */
2391 : rtx
2392 0 : gen_avx512fp16_vcvtsd2sh_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2393 : {
2394 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2395 0 : static const uint8_t expand_encoding[] = {
2396 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x09,
2397 : 0x6a, 0x81, 0x0c, 0x6a, 0x72, 0x2b, 0x81, 0x0a,
2398 : 0x2e, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
2399 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x02, 0x27, 0x01
2400 : };
2401 0 : return expand_rtx (expand_encoding, operands);
2402 : }
2403 :
2404 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8780 */
2405 : rtx
2406 69 : gen_sse_cvtps2pi (const rtx operand0, const rtx operand1)
2407 : {
2408 69 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2409 69 : static const uint8_t expand_encoding[] = {
2410 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x4a, 0x1a, 0x51,
2411 : 0x01, 0x01, 0x01, 0x2f, 0x17, 0x00, 0x02, 0x27,
2412 : 0x00, 0x27, 0x01
2413 : };
2414 69 : return expand_rtx (expand_encoding, operands);
2415 : }
2416 :
2417 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8913 */
2418 : rtx
2419 13 : gen_sse_cvtss2siq_round (const rtx operand0, const rtx operand1, const rtx operand2)
2420 : {
2421 13 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2422 13 : static const uint8_t expand_encoding[] = {
2423 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x02, 0x1a, 0x12,
2424 : 0x01, 0x81, 0x0a, 0x2d, 0x01, 0x01, 0x17, 0x00,
2425 : 0x01, 0x27, 0x00, 0x2f, 0x01, 0x02, 0x81, 0x33
2426 : };
2427 13 : return expand_rtx (expand_encoding, operands);
2428 : }
2429 :
2430 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8974 */
2431 : rtx
2432 24 : gen_cvtusi2ss32_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2433 : {
2434 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2435 24 : static const uint8_t expand_encoding[] = {
2436 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
2437 : 0x6b, 0x81, 0x0c, 0x6b, 0x75, 0x2d, 0x01, 0x02,
2438 : 0x01, 0x01, 0x27, 0x01, 0x01, 0x03, 0x81, 0x33
2439 : };
2440 24 : return expand_rtx (expand_encoding, operands);
2441 : }
2442 :
2443 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9002 */
2444 : rtx
2445 24 : gen_floatv8siv8sf2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2446 : {
2447 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2448 24 : static const uint8_t expand_encoding[] = {
2449 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x73, 0x6f,
2450 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2451 : };
2452 24 : return expand_rtx (expand_encoding, operands);
2453 : }
2454 :
2455 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9043 */
2456 : rtx
2457 82 : gen_sse2_fix_notruncv4sfv4si (const rtx operand0, const rtx operand1)
2458 : {
2459 82 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2460 82 : static const uint8_t expand_encoding[] = {
2461 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x01, 0x01, 0x01,
2462 : 0x2f
2463 : };
2464 82 : return expand_rtx (expand_encoding, operands);
2465 : }
2466 :
2467 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9070 */
2468 : rtx
2469 36 : gen_avx512vl_fixuns_notruncv8sfv8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2470 : {
2471 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2472 36 : static const uint8_t expand_encoding[] = {
2473 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
2474 : 0x01, 0x01, 0x01, 0x81, 0x1d, 0x01, 0x02, 0x01,
2475 : 0x03
2476 : };
2477 36 : return expand_rtx (expand_encoding, operands);
2478 : }
2479 :
2480 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9104 */
2481 : rtx
2482 57 : gen_avx512dq_cvtps2uqqv8di_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2483 : {
2484 57 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2485 57 : static const uint8_t expand_encoding[] = {
2486 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x02, 0x81, 0x09,
2487 : 0x5c, 0x1a, 0x5c, 0x01, 0x01, 0x01, 0x81, 0x1d,
2488 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2489 : };
2490 57 : return expand_rtx (expand_encoding, operands);
2491 : }
2492 :
2493 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9138 */
2494 : rtx
2495 0 : gen_fix_truncv16sfv16si2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2496 : {
2497 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2498 0 : static const uint8_t expand_encoding[] = {
2499 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x02, 0x74, 0x5b,
2500 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x33
2501 : };
2502 0 : return expand_rtx (expand_encoding, operands);
2503 : }
2504 :
2505 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9158 */
2506 : rtx
2507 21 : gen_fix_truncv8sfv8si2 (const rtx operand0, const rtx operand1)
2508 : {
2509 21 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2510 21 : static const uint8_t expand_encoding[] = {
2511 : 0x1f, 0x01, 0x00, 0x74, 0x56, 0x01, 0x01
2512 : };
2513 21 : return expand_rtx (expand_encoding, operands);
2514 : }
2515 :
2516 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9251 */
2517 : rtx
2518 1 : gen_floatunsv2siv2df2 (const rtx operand0, const rtx operand1)
2519 : {
2520 1 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2521 1 : static const uint8_t expand_encoding[] = {
2522 : 0x1f, 0x01, 0x00, 0x75, 0x6c, 0x01, 0x01
2523 : };
2524 1 : return expand_rtx (expand_encoding, operands);
2525 : }
2526 :
2527 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9385 */
2528 : rtx
2529 22 : gen_avx512f_vcvtss2usi_round (const rtx operand0, const rtx operand1, const rtx operand2)
2530 : {
2531 22 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2532 22 : static const uint8_t expand_encoding[] = {
2533 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x02, 0x1a, 0x11,
2534 : 0x01, 0x81, 0x0a, 0x2d, 0x01, 0x01, 0x17, 0x00,
2535 : 0x01, 0x27, 0x00, 0x81, 0x1d, 0x01, 0x02, 0x81,
2536 : 0x33
2537 : };
2538 22 : return expand_rtx (expand_encoding, operands);
2539 : }
2540 :
2541 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9421 */
2542 : rtx
2543 0 : gen_avx512f_vcvtsd2usi (const rtx operand0, const rtx operand1)
2544 : {
2545 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2546 0 : static const uint8_t expand_encoding[] = {
2547 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x81, 0x0a,
2548 : 0x2e, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
2549 : 0x81, 0x1d
2550 : };
2551 0 : return expand_rtx (expand_encoding, operands);
2552 : }
2553 :
2554 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9445 */
2555 : rtx
2556 0 : gen_avx512f_vcvttsd2usi_round (const rtx operand0, const rtx operand1, const rtx operand2)
2557 : {
2558 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2559 0 : static const uint8_t expand_encoding[] = {
2560 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x02, 0x76, 0x11,
2561 : 0x81, 0x0a, 0x2e, 0x01, 0x01, 0x17, 0x00, 0x01,
2562 : 0x27, 0x00, 0x01, 0x02, 0x81, 0x33
2563 : };
2564 0 : return expand_rtx (expand_encoding, operands);
2565 : }
2566 :
2567 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9488 */
2568 : rtx
2569 22 : gen_unspec_sse2_cvttsd2siq (const rtx operand0, const rtx operand1)
2570 : {
2571 22 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2572 22 : static const uint8_t expand_encoding[] = {
2573 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x01, 0x01,
2574 : 0x81, 0x2d
2575 : };
2576 22 : return expand_rtx (expand_encoding, operands);
2577 : }
2578 :
2579 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9527 */
2580 : rtx
2581 24 : gen_floatv4siv4df2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2582 : {
2583 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2584 24 : static const uint8_t expand_encoding[] = {
2585 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x73, 0x70,
2586 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2587 : };
2588 24 : return expand_rtx (expand_encoding, operands);
2589 : }
2590 :
2591 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9536 */
2592 : rtx
2593 36 : gen_floatv4div4df2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2594 : {
2595 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2596 36 : static const uint8_t expand_encoding[] = {
2597 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x73, 0x70,
2598 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2599 : };
2600 36 : return expand_rtx (expand_encoding, operands);
2601 : }
2602 :
2603 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9536 */
2604 : rtx
2605 0 : gen_floatunsv2div2df2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2606 : {
2607 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2608 0 : static const uint8_t expand_encoding[] = {
2609 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x75, 0x6c,
2610 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x33
2611 : };
2612 0 : return expand_rtx (expand_encoding, operands);
2613 : }
2614 :
2615 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9550 */
2616 : rtx
2617 0 : gen_floatunsv8div8sf2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2618 : {
2619 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2620 0 : static const uint8_t expand_encoding[] = {
2621 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x75, 0x6f,
2622 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2623 : };
2624 0 : return expand_rtx (expand_encoding, operands);
2625 : }
2626 :
2627 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9722 */
2628 : rtx
2629 2 : gen_avx512f_cvtdq2pd512_2 (const rtx operand0, const rtx operand1)
2630 : {
2631 2 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2632 2 : static const uint8_t expand_encoding[] = {
2633 : 0x1f, 0x01, 0x00, 0x73, 0x75, 0x81, 0x0a, 0x56,
2634 : 0x01, 0x01, 0x17, 0x00, 0x08, 0x27, 0x00, 0x27,
2635 : 0x01, 0x27, 0x02, 0x27, 0x03, 0x27, 0x04, 0x27,
2636 : 0x05, 0x27, 0x06, 0x27, 0x07
2637 : };
2638 2 : return expand_rtx (expand_encoding, operands);
2639 : }
2640 :
2641 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9805 */
2642 : rtx
2643 17 : gen_sse2_cvtpd2dq (const rtx operand0, const rtx operand1)
2644 : {
2645 17 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2646 17 : static const uint8_t expand_encoding[] = {
2647 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x51, 0x1a, 0x4a,
2648 : 0x01, 0x01, 0x01, 0x2f, 0x2c, 0x4a, 0x02, 0x27,
2649 : 0x00, 0x27, 0x00
2650 : };
2651 17 : return expand_rtx (expand_encoding, operands);
2652 : }
2653 :
2654 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9874 */
2655 : rtx
2656 0 : gen_fixuns_notruncv2dfv2si2 (const rtx operand0, const rtx operand1)
2657 : {
2658 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2659 0 : static const uint8_t expand_encoding[] = {
2660 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x51, 0x1a, 0x4a,
2661 : 0x01, 0x01, 0x01, 0x81, 0x1d, 0x2c, 0x4a, 0x02,
2662 : 0x27, 0x00, 0x27, 0x00
2663 : };
2664 0 : return expand_rtx (expand_encoding, operands);
2665 : }
2666 :
2667 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9932 */
2668 : rtx
2669 31 : gen_fix_truncv8dfv8si2 (const rtx operand0, const rtx operand1)
2670 : {
2671 31 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2672 31 : static const uint8_t expand_encoding[] = {
2673 : 0x1f, 0x01, 0x00, 0x74, 0x56, 0x01, 0x01
2674 : };
2675 31 : return expand_rtx (expand_encoding, operands);
2676 : }
2677 :
2678 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9965 */
2679 : rtx
2680 36 : gen_unspec_fixuns_truncv2dfv2si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2681 : {
2682 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2683 36 : static const uint8_t expand_encoding[] = {
2684 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x51, 0x81, 0x09,
2685 : 0x4a, 0x1a, 0x4a, 0x01, 0x01, 0x01, 0x81, 0x2e,
2686 : 0x81, 0x0a, 0x4a, 0x01, 0x02, 0x17, 0x00, 0x02,
2687 : 0x27, 0x00, 0x27, 0x01, 0x01, 0x03, 0x2c, 0x4a,
2688 : 0x02, 0x27, 0x00, 0x27, 0x00
2689 : };
2690 36 : return expand_rtx (expand_encoding, operands);
2691 : }
2692 :
2693 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10050 */
2694 : rtx
2695 0 : gen_unspec_fix_truncv8dfv8di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2696 : {
2697 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2698 0 : static const uint8_t expand_encoding[] = {
2699 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x1a, 0x5c,
2700 : 0x01, 0x01, 0x01, 0x81, 0x2d, 0x01, 0x02, 0x01,
2701 : 0x03
2702 : };
2703 0 : return expand_rtx (expand_encoding, operands);
2704 : }
2705 :
2706 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10050 */
2707 : rtx
2708 36 : gen_unspec_fix_truncv2dfv2di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2709 : {
2710 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2711 36 : static const uint8_t expand_encoding[] = {
2712 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x1a, 0x52,
2713 : 0x01, 0x01, 0x01, 0x81, 0x2d, 0x01, 0x02, 0x01,
2714 : 0x03
2715 : };
2716 36 : return expand_rtx (expand_encoding, operands);
2717 : }
2718 :
2719 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10061 */
2720 : rtx
2721 0 : gen_fix_truncv4dfv4di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2722 : {
2723 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2724 0 : static const uint8_t expand_encoding[] = {
2725 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x74, 0x57,
2726 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2727 : };
2728 0 : return expand_rtx (expand_encoding, operands);
2729 : }
2730 :
2731 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10071 */
2732 : rtx
2733 57 : gen_fix_notruncv8dfv8di2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2734 : {
2735 57 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2736 57 : static const uint8_t expand_encoding[] = {
2737 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x02, 0x81, 0x09,
2738 : 0x5c, 0x1a, 0x5c, 0x01, 0x01, 0x01, 0x2f, 0x01,
2739 : 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2740 : };
2741 57 : return expand_rtx (expand_encoding, operands);
2742 : }
2743 :
2744 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10093 */
2745 : rtx
2746 0 : gen_unspec_fix_truncv8sfv8di2 (const rtx operand0, const rtx operand1)
2747 : {
2748 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2749 0 : static const uint8_t expand_encoding[] = {
2750 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x01, 0x01, 0x01,
2751 : 0x81, 0x2d
2752 : };
2753 0 : return expand_rtx (expand_encoding, operands);
2754 : }
2755 :
2756 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10093 */
2757 : rtx
2758 57 : gen_unspec_fixuns_truncv8sfv8di2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2759 : {
2760 57 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2761 57 : static const uint8_t expand_encoding[] = {
2762 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x02, 0x81, 0x09,
2763 : 0x5c, 0x1a, 0x5c, 0x01, 0x01, 0x01, 0x81, 0x2e,
2764 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2765 : };
2766 57 : return expand_rtx (expand_encoding, operands);
2767 : }
2768 :
2769 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10104 */
2770 : rtx
2771 5 : gen_fix_truncv4sfv4di2 (const rtx operand0, const rtx operand1)
2772 : {
2773 5 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2774 5 : static const uint8_t expand_encoding[] = {
2775 : 0x1f, 0x01, 0x00, 0x74, 0x57, 0x01, 0x01
2776 : };
2777 5 : return expand_rtx (expand_encoding, operands);
2778 : }
2779 :
2780 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10125 */
2781 : rtx
2782 10 : gen_avx512dq_fix_truncv2sfv2di2 (const rtx operand0, const rtx operand1)
2783 : {
2784 10 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2785 10 : static const uint8_t expand_encoding[] = {
2786 : 0x1f, 0x01, 0x00, 0x74, 0x52, 0x81, 0x0a, 0x67,
2787 : 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x00, 0x27,
2788 : 0x01
2789 : };
2790 10 : return expand_rtx (expand_encoding, operands);
2791 : }
2792 :
2793 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10293 */
2794 : rtx
2795 24 : gen_unspec_sse2_cvttpd2dq_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2796 : {
2797 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2798 24 : static const uint8_t expand_encoding[] = {
2799 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
2800 : 0x01, 0x01, 0x01, 0x81, 0x2d, 0x01, 0x02, 0x01,
2801 : 0x03
2802 : };
2803 24 : return expand_rtx (expand_encoding, operands);
2804 : }
2805 :
2806 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10448 */
2807 : rtx
2808 0 : gen_avx512f_cvtpd2ps512_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2809 : {
2810 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2811 0 : static const uint8_t expand_encoding[] = {
2812 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x72, 0x6f,
2813 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2814 : };
2815 0 : return expand_rtx (expand_encoding, operands);
2816 : }
2817 :
2818 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10582 */
2819 : rtx
2820 66 : gen_avx512f_cvtps2pd512_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2821 : {
2822 66 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2823 66 : static const uint8_t expand_encoding[] = {
2824 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81, 0x09,
2825 : 0x75, 0x71, 0x75, 0x01, 0x01, 0x01, 0x02, 0x01,
2826 : 0x03, 0x01, 0x04, 0x81, 0x33
2827 : };
2828 66 : return expand_rtx (expand_encoding, operands);
2829 : }
2830 :
2831 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10630 */
2832 : rtx
2833 12 : gen_avx512f_cvtq2maskv8di (const rtx operand0, const rtx operand1)
2834 : {
2835 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2836 12 : static const uint8_t expand_encoding[] = {
2837 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x01, 0x01, 0x01,
2838 : 0x81, 0x40
2839 : };
2840 12 : return expand_rtx (expand_encoding, operands);
2841 : }
2842 :
2843 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11482 */
2844 : rtx
2845 3 : gen_sse_movlhps_v8hf (const rtx operand0, const rtx operand1, const rtx operand2)
2846 : {
2847 3 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2848 3 : static const uint8_t expand_encoding[] = {
2849 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6a, 0x81, 0x0b,
2850 : 0x6e, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x08,
2851 : 0x27, 0x00, 0x27, 0x01, 0x27, 0x02, 0x27, 0x03,
2852 : 0x27, 0x08, 0x27, 0x09, 0x27, 0x0a, 0x27, 0x0b
2853 : };
2854 3 : return expand_rtx (expand_encoding, operands);
2855 : }
2856 :
2857 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11628 */
2858 : rtx
2859 24 : gen_unpcklps128_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2860 : {
2861 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2862 24 : static const uint8_t expand_encoding[] = {
2863 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x0a,
2864 : 0x6b, 0x81, 0x0b, 0x6f, 0x01, 0x01, 0x01, 0x02,
2865 : 0x17, 0x00, 0x04, 0x27, 0x00, 0x27, 0x04, 0x27,
2866 : 0x01, 0x27, 0x05, 0x01, 0x03, 0x01, 0x04
2867 : };
2868 24 : return expand_rtx (expand_encoding, operands);
2869 : }
2870 :
2871 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11767 */
2872 : rtx
2873 24 : gen_sse3_movsldup_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2874 : {
2875 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2876 24 : static const uint8_t expand_encoding[] = {
2877 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x0a,
2878 : 0x6b, 0x81, 0x0b, 0x6f, 0x01, 0x01, 0x01, 0x01,
2879 : 0x17, 0x00, 0x04, 0x27, 0x00, 0x27, 0x00, 0x27,
2880 : 0x06, 0x27, 0x06, 0x01, 0x02, 0x01, 0x03
2881 : };
2882 24 : return expand_rtx (expand_encoding, operands);
2883 : }
2884 :
2885 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12033 */
2886 : rtx
2887 18 : gen_sse_loadlps (const rtx operand0, const rtx operand1, const rtx operand2)
2888 : {
2889 18 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2890 18 : static const uint8_t expand_encoding[] = {
2891 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6b, 0x01, 0x02,
2892 : 0x81, 0x0a, 0x67, 0x01, 0x01, 0x17, 0x00, 0x02,
2893 : 0x27, 0x02, 0x27, 0x03
2894 : };
2895 18 : return expand_rtx (expand_encoding, operands);
2896 : }
2897 :
2898 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12323 */
2899 : rtx
2900 35 : gen_vec_setv8hi_0 (const rtx operand0, const rtx operand1, const rtx operand2)
2901 : {
2902 35 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2903 35 : static const uint8_t expand_encoding[] = {
2904 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x81, 0x0c,
2905 : 0x50, 0x01, 0x02, 0x01, 0x01, 0x27, 0x01
2906 : };
2907 35 : return expand_rtx (expand_encoding, operands);
2908 : }
2909 :
2910 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12535 */
2911 : rtx
2912 22 : gen_vec_setv8sf_0 (const rtx operand0, const rtx operand1, const rtx operand2)
2913 : {
2914 22 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2915 22 : static const uint8_t expand_encoding[] = {
2916 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x81, 0x0c,
2917 : 0x6f, 0x01, 0x02, 0x01, 0x01, 0x27, 0x01
2918 : };
2919 22 : return expand_rtx (expand_encoding, operands);
2920 : }
2921 :
2922 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12986 */
2923 : rtx
2924 167 : gen_vec_extract_lo_v8df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2925 : {
2926 167 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2927 167 : static const uint8_t expand_encoding[] = {
2928 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x0a,
2929 : 0x70, 0x01, 0x01, 0x17, 0x00, 0x04, 0x27, 0x00,
2930 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x01, 0x02,
2931 : 0x01, 0x03
2932 : };
2933 167 : return expand_rtx (expand_encoding, operands);
2934 : }
2935 :
2936 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13053 */
2937 : rtx
2938 163 : gen_vec_extract_hi_v16sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2939 : {
2940 163 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2941 163 : static const uint8_t expand_encoding[] = {
2942 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x81, 0x0a,
2943 : 0x6f, 0x01, 0x01, 0x17, 0x00, 0x08, 0x27, 0x08,
2944 : 0x27, 0x09, 0x27, 0x0a, 0x27, 0x0b, 0x27, 0x0c,
2945 : 0x27, 0x0d, 0x27, 0x0e, 0x27, 0x0f, 0x01, 0x02,
2946 : 0x01, 0x03
2947 : };
2948 163 : return expand_rtx (expand_encoding, operands);
2949 : }
2950 :
2951 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13267 */
2952 : rtx
2953 24 : gen_vec_extract_hi_v4di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2954 : {
2955 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2956 24 : static const uint8_t expand_encoding[] = {
2957 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x81, 0x0a,
2958 : 0x52, 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x02,
2959 : 0x27, 0x03, 0x01, 0x02, 0x01, 0x03
2960 : };
2961 24 : return expand_rtx (expand_encoding, operands);
2962 : }
2963 :
2964 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13369 */
2965 : rtx
2966 2312 : gen_vec_extract_hi_v8si (const rtx operand0, const rtx operand1)
2967 : {
2968 2312 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2969 2312 : static const uint8_t expand_encoding[] = {
2970 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x51, 0x01, 0x01,
2971 : 0x17, 0x00, 0x04, 0x27, 0x04, 0x27, 0x05, 0x27,
2972 : 0x06, 0x27, 0x07
2973 : };
2974 2312 : return expand_rtx (expand_encoding, operands);
2975 : }
2976 :
2977 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13446 */
2978 : rtx
2979 171 : gen_vec_extract_lo_v16bf (const rtx operand0, const rtx operand1)
2980 : {
2981 171 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2982 171 : static const uint8_t expand_encoding[] = {
2983 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x69, 0x01, 0x01,
2984 : 0x17, 0x00, 0x08, 0x27, 0x00, 0x27, 0x01, 0x27,
2985 : 0x02, 0x27, 0x03, 0x27, 0x04, 0x27, 0x05, 0x27,
2986 : 0x06, 0x27, 0x07
2987 : };
2988 171 : return expand_rtx (expand_encoding, operands);
2989 : }
2990 :
2991 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13705 */
2992 : rtx
2993 24 : gen_avx_unpckhpd256_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2994 : {
2995 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2996 24 : static const uint8_t expand_encoding[] = {
2997 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x0a,
2998 : 0x70, 0x81, 0x0b, 0x75, 0x01, 0x01, 0x01, 0x02,
2999 : 0x17, 0x00, 0x04, 0x27, 0x01, 0x27, 0x05, 0x27,
3000 : 0x03, 0x27, 0x07, 0x01, 0x03, 0x01, 0x04
3001 : };
3002 24 : return expand_rtx (expand_encoding, operands);
3003 : }
3004 :
3005 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13835 */
3006 : rtx
3007 24 : gen_avx_movddup256_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3008 : {
3009 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3010 24 : static const uint8_t expand_encoding[] = {
3011 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x0a,
3012 : 0x70, 0x81, 0x0b, 0x75, 0x01, 0x01, 0x01, 0x01,
3013 : 0x17, 0x00, 0x04, 0x27, 0x00, 0x27, 0x04, 0x27,
3014 : 0x02, 0x27, 0x06, 0x01, 0x02, 0x01, 0x03
3015 : };
3016 24 : return expand_rtx (expand_encoding, operands);
3017 : }
3018 :
3019 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13977 */
3020 : rtx
3021 0 : gen_avx512f_vmscalefv2df (const rtx operand0, const rtx operand1, const rtx operand2)
3022 : {
3023 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3024 0 : static const uint8_t expand_encoding[] = {
3025 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
3026 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3b, 0x01, 0x01,
3027 : 0x27, 0x01
3028 : };
3029 0 : return expand_rtx (expand_encoding, operands);
3030 : }
3031 :
3032 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13991 */
3033 : rtx
3034 69 : gen_avx512bw_scalefv32hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3035 : {
3036 69 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3037 69 : static const uint8_t expand_encoding[] = {
3038 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x81, 0x09,
3039 : 0x73, 0x1a, 0x73, 0x02, 0x01, 0x01, 0x01, 0x02,
3040 : 0x3b, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x81,
3041 : 0x33
3042 : };
3043 69 : return expand_rtx (expand_encoding, operands);
3044 : }
3045 :
3046 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13991 */
3047 : rtx
3048 0 : gen_avx512vl_scalefv8sf (const rtx operand0, const rtx operand1, const rtx operand2)
3049 : {
3050 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3051 0 : static const uint8_t expand_encoding[] = {
3052 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x02, 0x01, 0x01,
3053 : 0x01, 0x02, 0x3b
3054 : };
3055 0 : return expand_rtx (expand_encoding, operands);
3056 : }
3057 :
3058 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13991 */
3059 : rtx
3060 0 : gen_avx512f_scalefv8df (const rtx operand0, const rtx operand1, const rtx operand2)
3061 : {
3062 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3063 0 : static const uint8_t expand_encoding[] = {
3064 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x01, 0x01,
3065 : 0x01, 0x02, 0x3b
3066 : };
3067 0 : return expand_rtx (expand_encoding, operands);
3068 : }
3069 :
3070 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13991 */
3071 : rtx
3072 0 : gen_avx512vl_scalefv2df (const rtx operand0, const rtx operand1, const rtx operand2)
3073 : {
3074 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3075 0 : static const uint8_t expand_encoding[] = {
3076 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x01, 0x01,
3077 : 0x01, 0x02, 0x3b
3078 : };
3079 0 : return expand_rtx (expand_encoding, operands);
3080 : }
3081 :
3082 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14017 */
3083 : rtx
3084 0 : gen_avx512vl_vternlogv4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3085 : {
3086 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3087 0 : static const uint8_t expand_encoding[] = {
3088 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01, 0x01,
3089 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x25
3090 : };
3091 0 : return expand_rtx (expand_encoding, operands);
3092 : }
3093 :
3094 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14401 */
3095 : rtx
3096 0 : gen_avx512bw_getexpv32hf_round (const rtx operand0, const rtx operand1, const rtx operand2)
3097 : {
3098 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3099 0 : static const uint8_t expand_encoding[] = {
3100 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x1a, 0x73,
3101 : 0x01, 0x01, 0x01, 0x81, 0x26, 0x01, 0x02, 0x81,
3102 : 0x33
3103 : };
3104 0 : return expand_rtx (expand_encoding, operands);
3105 : }
3106 :
3107 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14401 */
3108 : rtx
3109 36 : gen_avx512fp16_getexpv8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3110 : {
3111 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3112 36 : static const uint8_t expand_encoding[] = {
3113 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
3114 : 0x01, 0x01, 0x01, 0x81, 0x26, 0x01, 0x02, 0x01,
3115 : 0x03
3116 : };
3117 36 : return expand_rtx (expand_encoding, operands);
3118 : }
3119 :
3120 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14401 */
3121 : rtx
3122 0 : gen_avx512vl_getexpv4sf_round (const rtx operand0, const rtx operand1, const rtx operand2)
3123 : {
3124 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3125 0 : static const uint8_t expand_encoding[] = {
3126 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x1a, 0x6b,
3127 : 0x01, 0x01, 0x01, 0x81, 0x26, 0x01, 0x02, 0x81,
3128 : 0x33
3129 : };
3130 0 : return expand_rtx (expand_encoding, operands);
3131 : }
3132 :
3133 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14401 */
3134 : rtx
3135 36 : gen_avx512vl_getexpv4df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3136 : {
3137 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3138 36 : static const uint8_t expand_encoding[] = {
3139 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x1a, 0x70,
3140 : 0x01, 0x01, 0x01, 0x81, 0x26, 0x01, 0x02, 0x01,
3141 : 0x03
3142 : };
3143 36 : return expand_rtx (expand_encoding, operands);
3144 : }
3145 :
3146 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14410 */
3147 : rtx
3148 0 : gen_avx512f_sgetexpv4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3149 : {
3150 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3151 0 : static const uint8_t expand_encoding[] = {
3152 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x09,
3153 : 0x6b, 0x1a, 0x6b, 0x02, 0x01, 0x01, 0x01, 0x02,
3154 : 0x81, 0x26, 0x01, 0x03, 0x01, 0x04, 0x01, 0x01,
3155 : 0x27, 0x01
3156 : };
3157 0 : return expand_rtx (expand_encoding, operands);
3158 : }
3159 :
3160 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14424 */
3161 : rtx
3162 24 : gen_avx512vl_alignv4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3163 : {
3164 24 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3165 24 : static const uint8_t expand_encoding[] = {
3166 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
3167 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
3168 : 0x28, 0x01, 0x04, 0x01, 0x05
3169 : };
3170 24 : return expand_rtx (expand_encoding, operands);
3171 : }
3172 :
3173 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14513 */
3174 : rtx
3175 8 : gen_avx512vl_fixupimmv8sf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
3176 : {
3177 8 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
3178 8 : static const uint8_t expand_encoding[] = {
3179 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x1a, 0x6f,
3180 : 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
3181 : 0x04, 0x81, 0x24, 0x01, 0x05, 0x01, 0x06
3182 : };
3183 8 : return expand_rtx (expand_encoding, operands);
3184 : }
3185 :
3186 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14513 */
3187 : rtx
3188 0 : gen_avx512vl_fixupimmv4df_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3189 : {
3190 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3191 0 : static const uint8_t expand_encoding[] = {
3192 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x1a, 0x70,
3193 : 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
3194 : 0x04, 0x81, 0x24, 0x01, 0x05, 0x81, 0x33
3195 : };
3196 0 : return expand_rtx (expand_encoding, operands);
3197 : }
3198 :
3199 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14526 */
3200 : rtx
3201 16 : gen_avx512vl_fixupimmv8sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3202 : {
3203 16 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3204 16 : static const uint8_t expand_encoding[] = {
3205 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x1a, 0x6f,
3206 : 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
3207 : 0x04, 0x81, 0x24, 0x01, 0x01, 0x01, 0x05
3208 : };
3209 16 : return expand_rtx (expand_encoding, operands);
3210 : }
3211 :
3212 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14558 */
3213 : rtx
3214 0 : gen_avx512f_sfixupimmv4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3215 : {
3216 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3217 0 : static const uint8_t expand_encoding[] = {
3218 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
3219 : 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
3220 : 0x04, 0x81, 0x24, 0x01, 0x02, 0x27, 0x01
3221 : };
3222 0 : return expand_rtx (expand_encoding, operands);
3223 : }
3224 :
3225 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14574 */
3226 : rtx
3227 38 : gen_avx512f_sfixupimmv4sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
3228 : {
3229 38 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
3230 38 : static const uint8_t expand_encoding[] = {
3231 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
3232 : 0x6b, 0x81, 0x09, 0x6b, 0x1a, 0x6b, 0x04, 0x01,
3233 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81,
3234 : 0x24, 0x01, 0x02, 0x27, 0x01, 0x01, 0x01, 0x01,
3235 : 0x05, 0x01, 0x06, 0x81, 0x33
3236 : };
3237 38 : return expand_rtx (expand_encoding, operands);
3238 : }
3239 :
3240 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14593 */
3241 : rtx
3242 0 : gen_avx512fp16_rndscalev8hf (const rtx operand0, const rtx operand1, const rtx operand2)
3243 : {
3244 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3245 0 : static const uint8_t expand_encoding[] = {
3246 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x01, 0x01,
3247 : 0x01, 0x02, 0x5f
3248 : };
3249 0 : return expand_rtx (expand_encoding, operands);
3250 : }
3251 :
3252 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14593 */
3253 : rtx
3254 0 : gen_avx512vl_rndscalev8sf (const rtx operand0, const rtx operand1, const rtx operand2)
3255 : {
3256 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3257 0 : static const uint8_t expand_encoding[] = {
3258 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x02, 0x01, 0x01,
3259 : 0x01, 0x02, 0x5f
3260 : };
3261 0 : return expand_rtx (expand_encoding, operands);
3262 : }
3263 :
3264 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14593 */
3265 : rtx
3266 0 : gen_avx512f_rndscalev8df_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3267 : {
3268 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3269 0 : static const uint8_t expand_encoding[] = {
3270 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x1a, 0x75,
3271 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x5f, 0x01, 0x03,
3272 : 0x81, 0x33
3273 : };
3274 0 : return expand_rtx (expand_encoding, operands);
3275 : }
3276 :
3277 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14593 */
3278 : rtx
3279 24 : gen_avx512vl_rndscalev2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3280 : {
3281 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3282 24 : static const uint8_t expand_encoding[] = {
3283 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
3284 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x5f, 0x01, 0x03,
3285 : 0x01, 0x04
3286 : };
3287 24 : return expand_rtx (expand_encoding, operands);
3288 : }
3289 :
3290 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14605 */
3291 : rtx
3292 0 : gen_avx512f_rndscalev2df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3293 : {
3294 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3295 0 : static const uint8_t expand_encoding[] = {
3296 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
3297 : 0x02, 0x01, 0x02, 0x01, 0x03, 0x5f, 0x01, 0x01,
3298 : 0x27, 0x01
3299 : };
3300 0 : return expand_rtx (expand_encoding, operands);
3301 : }
3302 :
3303 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14763 */
3304 : rtx
3305 16 : gen_avx_shufpd256_1_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6, const rtx operand7, const rtx operand8)
3306 : {
3307 16 : rtx operands[9] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7, operand8 };
3308 16 : static const uint8_t expand_encoding[] = {
3309 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x0a,
3310 : 0x70, 0x81, 0x0b, 0x75, 0x01, 0x01, 0x01, 0x02,
3311 : 0x17, 0x00, 0x04, 0x01, 0x03, 0x01, 0x04, 0x01,
3312 : 0x05, 0x01, 0x06, 0x01, 0x07, 0x01, 0x08
3313 : };
3314 16 : return expand_rtx (expand_encoding, operands);
3315 : }
3316 :
3317 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14880 */
3318 : rtx
3319 24 : gen_avx2_interleave_lowv4di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3320 : {
3321 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3322 24 : static const uint8_t expand_encoding[] = {
3323 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x81, 0x0a,
3324 : 0x57, 0x81, 0x0b, 0x5c, 0x01, 0x01, 0x01, 0x02,
3325 : 0x17, 0x00, 0x04, 0x27, 0x00, 0x27, 0x04, 0x27,
3326 : 0x02, 0x27, 0x06, 0x01, 0x03, 0x01, 0x04
3327 : };
3328 24 : return expand_rtx (expand_encoding, operands);
3329 : }
3330 :
3331 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15215 */
3332 : rtx
3333 77 : gen_sse2_movsd_v2df (const rtx operand0, const rtx operand1, const rtx operand2)
3334 : {
3335 77 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3336 77 : static const uint8_t expand_encoding[] = {
3337 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x01, 0x02,
3338 : 0x01, 0x01, 0x27, 0x01
3339 : };
3340 77 : return expand_rtx (expand_encoding, operands);
3341 : }
3342 :
3343 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15503 */
3344 : rtx
3345 36 : gen_avx512f_us_truncatev16siv16hi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3346 : {
3347 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3348 36 : static const uint8_t expand_encoding[] = {
3349 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x81, 0x18,
3350 : 0x55, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
3351 : };
3352 36 : return expand_rtx (expand_encoding, operands);
3353 : }
3354 :
3355 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15575 */
3356 : rtx
3357 36 : gen_avx512bw_ss_truncatev32hiv32qi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3358 : {
3359 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3360 36 : static const uint8_t expand_encoding[] = {
3361 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x81, 0x17,
3362 : 0x54, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
3363 : };
3364 36 : return expand_rtx (expand_encoding, operands);
3365 : }
3366 :
3367 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15675 */
3368 : rtx
3369 36 : gen_avx512vl_truncatev16hiv16qi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3370 : {
3371 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3372 36 : static const uint8_t expand_encoding[] = {
3373 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x70, 0x4f,
3374 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
3375 : };
3376 36 : return expand_rtx (expand_encoding, operands);
3377 : }
3378 :
3379 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15736 */
3380 : rtx
3381 0 : gen_avx512vl_us_truncatev8siv8qi2 (const rtx operand0, const rtx operand1, const rtx operand2)
3382 : {
3383 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3384 0 : static const uint8_t expand_encoding[] = {
3385 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x81, 0x18,
3386 : 0x48, 0x01, 0x01, 0x01, 0x02
3387 : };
3388 0 : return expand_rtx (expand_encoding, operands);
3389 : }
3390 :
3391 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15838 */
3392 : rtx
3393 11 : gen_avx512vl_ss_truncatev2div2qi2_mask_store_1 (const rtx operand0, const rtx operand1, const rtx operand2)
3394 : {
3395 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3396 11 : static const uint8_t expand_encoding[] = {
3397 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x44, 0x81, 0x17,
3398 : 0x44, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
3399 : };
3400 11 : return expand_rtx (expand_encoding, operands);
3401 : }
3402 :
3403 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15889 */
3404 : rtx
3405 36 : gen_avx512vl_truncatev4div4qi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3406 : {
3407 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3408 36 : static const uint8_t expand_encoding[] = {
3409 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x81, 0x09,
3410 : 0x45, 0x70, 0x45, 0x01, 0x01, 0x81, 0x0a, 0x45,
3411 : 0x01, 0x02, 0x17, 0x00, 0x04, 0x27, 0x00, 0x27,
3412 : 0x01, 0x27, 0x02, 0x27, 0x03, 0x01, 0x03, 0x2c,
3413 : 0x4c, 0x0c, 0x27, 0x00, 0x27, 0x00, 0x27, 0x00,
3414 : 0x27, 0x00, 0x27, 0x00, 0x27, 0x00, 0x27, 0x00,
3415 : 0x27, 0x00, 0x27, 0x00, 0x27, 0x00, 0x27, 0x00,
3416 : 0x27, 0x00
3417 : };
3418 36 : return expand_rtx (expand_encoding, operands);
3419 : }
3420 :
3421 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16031 */
3422 : rtx
3423 12 : gen_avx512vl_ss_truncatev8hiv8qi2_mask_store_1 (const rtx operand0, const rtx operand1, const rtx operand2)
3424 : {
3425 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3426 12 : static const uint8_t expand_encoding[] = {
3427 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x48, 0x81, 0x17,
3428 : 0x48, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
3429 : };
3430 12 : return expand_rtx (expand_encoding, operands);
3431 : }
3432 :
3433 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16031 */
3434 : rtx
3435 11 : gen_avx512vl_truncatev8siv8qi2_mask_store_1 (const rtx operand0, const rtx operand1, const rtx operand2)
3436 : {
3437 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3438 11 : static const uint8_t expand_encoding[] = {
3439 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x48, 0x70, 0x48,
3440 : 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
3441 : };
3442 11 : return expand_rtx (expand_encoding, operands);
3443 : }
3444 :
3445 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16091 */
3446 : rtx
3447 0 : gen_avx512vl_us_truncatev4siv4hi2 (const rtx operand0, const rtx operand1, const rtx operand2)
3448 : {
3449 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3450 0 : static const uint8_t expand_encoding[] = {
3451 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x50, 0x81, 0x18,
3452 : 0x49, 0x01, 0x01, 0x01, 0x02
3453 : };
3454 0 : return expand_rtx (expand_encoding, operands);
3455 : }
3456 :
3457 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16185 */
3458 : rtx
3459 11 : gen_avx512vl_ss_truncatev4div4hi2_mask_store_1 (const rtx operand0, const rtx operand1, const rtx operand2)
3460 : {
3461 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3462 11 : static const uint8_t expand_encoding[] = {
3463 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x49, 0x81, 0x17,
3464 : 0x49, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
3465 : };
3466 11 : return expand_rtx (expand_encoding, operands);
3467 : }
3468 :
3469 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16332 */
3470 : rtx
3471 5 : gen_avx512vl_truncatev2div2si2 (const rtx operand0, const rtx operand1, const rtx operand2)
3472 : {
3473 5 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3474 5 : static const uint8_t expand_encoding[] = {
3475 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x51, 0x70, 0x4a,
3476 : 0x01, 0x01, 0x01, 0x02
3477 : };
3478 5 : return expand_rtx (expand_encoding, operands);
3479 : }
3480 :
3481 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16465 */
3482 : rtx
3483 0 : gen_avx512f_ss_truncatev8div16qi2 (const rtx operand0, const rtx operand1)
3484 : {
3485 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
3486 0 : static const uint8_t expand_encoding[] = {
3487 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x81, 0x17,
3488 : 0x48, 0x01, 0x01, 0x2c, 0x48, 0x08, 0x27, 0x00,
3489 : 0x27, 0x00, 0x27, 0x00, 0x27, 0x00, 0x27, 0x00,
3490 : 0x27, 0x00, 0x27, 0x00, 0x27, 0x00
3491 : };
3492 0 : return expand_rtx (expand_encoding, operands);
3493 : }
3494 :
3495 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17040 */
3496 : rtx
3497 36 : gen_avx512bw_pmaddwd512v32hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3498 : {
3499 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3500 36 : static const uint8_t expand_encoding[] = {
3501 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a, 0x5b,
3502 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x3d, 0x01,
3503 : 0x03, 0x01, 0x04
3504 : };
3505 36 : return expand_rtx (expand_encoding, operands);
3506 : }
3507 :
3508 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17467 */
3509 : rtx
3510 57 : gen_ashrv2di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3511 : {
3512 57 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3513 57 : static const uint8_t expand_encoding[] = {
3514 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x4f, 0x52,
3515 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3516 : };
3517 57 : return expand_rtx (expand_encoding, operands);
3518 : }
3519 :
3520 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17663 */
3521 : rtx
3522 55 : gen_ashlv8si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3523 : {
3524 55 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3525 55 : static const uint8_t expand_encoding[] = {
3526 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x4d, 0x56,
3527 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3528 : };
3529 55 : return expand_rtx (expand_encoding, operands);
3530 : }
3531 :
3532 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17677 */
3533 : rtx
3534 1002 : gen_ashlv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
3535 : {
3536 1002 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3537 1002 : static const uint8_t expand_encoding[] = {
3538 : 0x1f, 0x01, 0x00, 0x4d, 0x50, 0x01, 0x01, 0x01,
3539 : 0x02
3540 : };
3541 1002 : return expand_rtx (expand_encoding, operands);
3542 : }
3543 :
3544 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17677 */
3545 : rtx
3546 1590 : gen_ashlv2di3 (const rtx operand0, const rtx operand1, const rtx operand2)
3547 : {
3548 1590 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3549 1590 : static const uint8_t expand_encoding[] = {
3550 : 0x1f, 0x01, 0x00, 0x4d, 0x52, 0x01, 0x01, 0x01,
3551 : 0x02
3552 : };
3553 1590 : return expand_rtx (expand_encoding, operands);
3554 : }
3555 :
3556 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17751 */
3557 : rtx
3558 125 : gen_ashlv8di3 (const rtx operand0, const rtx operand1, const rtx operand2)
3559 : {
3560 125 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3561 125 : static const uint8_t expand_encoding[] = {
3562 : 0x1f, 0x01, 0x00, 0x4d, 0x5c, 0x01, 0x01, 0x01,
3563 : 0x02
3564 : };
3565 125 : return expand_rtx (expand_encoding, operands);
3566 : }
3567 :
3568 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17970 */
3569 : rtx
3570 0 : gen_avx512bw_lshrv2ti3 (const rtx operand0, const rtx operand1, const rtx operand2)
3571 : {
3572 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3573 0 : static const uint8_t expand_encoding[] = {
3574 : 0x1f, 0x01, 0x00, 0x50, 0x58, 0x01, 0x01, 0x01,
3575 : 0x02
3576 : };
3577 0 : return expand_rtx (expand_encoding, operands);
3578 : }
3579 :
3580 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18012 */
3581 : rtx
3582 36 : gen_avx512f_rorvv16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3583 : {
3584 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3585 36 : static const uint8_t expand_encoding[] = {
3586 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x51, 0x5b,
3587 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3588 : };
3589 36 : return expand_rtx (expand_encoding, operands);
3590 : }
3591 :
3592 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18012 */
3593 : rtx
3594 36 : gen_avx512f_rorvv8di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3595 : {
3596 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3597 36 : static const uint8_t expand_encoding[] = {
3598 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x51, 0x5c,
3599 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3600 : };
3601 36 : return expand_rtx (expand_encoding, operands);
3602 : }
3603 :
3604 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18022 */
3605 : rtx
3606 33 : gen_avx512f_rorv16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3607 : {
3608 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3609 33 : static const uint8_t expand_encoding[] = {
3610 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x51, 0x5b,
3611 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3612 : };
3613 33 : return expand_rtx (expand_encoding, operands);
3614 : }
3615 :
3616 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18022 */
3617 : rtx
3618 0 : gen_avx512f_rorv8di (const rtx operand0, const rtx operand1, const rtx operand2)
3619 : {
3620 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3621 0 : static const uint8_t expand_encoding[] = {
3622 : 0x1f, 0x01, 0x00, 0x51, 0x5c, 0x01, 0x01, 0x01,
3623 : 0x02
3624 : };
3625 0 : return expand_rtx (expand_encoding, operands);
3626 : }
3627 :
3628 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18022 */
3629 : rtx
3630 24 : gen_avx512vl_rorv2di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3631 : {
3632 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3633 24 : static const uint8_t expand_encoding[] = {
3634 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x51, 0x52,
3635 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3636 : };
3637 24 : return expand_rtx (expand_encoding, operands);
3638 : }
3639 :
3640 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18754 */
3641 : rtx
3642 0 : gen_one_cmplv2di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3643 : {
3644 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3645 0 : static const uint8_t expand_encoding[] = {
3646 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x4b, 0x52,
3647 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3648 : };
3649 0 : return expand_rtx (expand_encoding, operands);
3650 : }
3651 :
3652 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19449 */
3653 : rtx
3654 24 : gen_avx512bw_testmv32hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3655 : {
3656 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3657 24 : static const uint8_t expand_encoding[] = {
3658 : 0x1f, 0x01, 0x00, 0x49, 0x11, 0x1a, 0x11, 0x02,
3659 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x1f, 0x01, 0x03
3660 : };
3661 24 : return expand_rtx (expand_encoding, operands);
3662 : }
3663 :
3664 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19449 */
3665 : rtx
3666 0 : gen_avx512f_testmv8di3 (const rtx operand0, const rtx operand1, const rtx operand2)
3667 : {
3668 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3669 0 : static const uint8_t expand_encoding[] = {
3670 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x02, 0x01, 0x01,
3671 : 0x01, 0x02, 0x81, 0x1f
3672 : };
3673 0 : return expand_rtx (expand_encoding, operands);
3674 : }
3675 :
3676 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19460 */
3677 : rtx
3678 24 : gen_avx512vl_testnmv32qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3679 : {
3680 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3681 24 : static const uint8_t expand_encoding[] = {
3682 : 0x1f, 0x01, 0x00, 0x49, 0x11, 0x1a, 0x11, 0x02,
3683 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x20, 0x01, 0x03
3684 : };
3685 24 : return expand_rtx (expand_encoding, operands);
3686 : }
3687 :
3688 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19460 */
3689 : rtx
3690 0 : gen_avx512vl_testnmv8si3 (const rtx operand0, const rtx operand1, const rtx operand2)
3691 : {
3692 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3693 0 : static const uint8_t expand_encoding[] = {
3694 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x02, 0x01, 0x01,
3695 : 0x01, 0x02, 0x81, 0x20
3696 : };
3697 0 : return expand_rtx (expand_encoding, operands);
3698 : }
3699 :
3700 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19460 */
3701 : rtx
3702 24 : gen_avx512vl_testnmv2di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3703 : {
3704 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3705 24 : static const uint8_t expand_encoding[] = {
3706 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x02,
3707 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x20, 0x01, 0x03
3708 : };
3709 24 : return expand_rtx (expand_encoding, operands);
3710 : }
3711 :
3712 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19741 */
3713 : rtx
3714 0 : gen_avx512bw_packssdw (const rtx operand0, const rtx operand1, const rtx operand2)
3715 : {
3716 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3717 0 : static const uint8_t expand_encoding[] = {
3718 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x5a, 0x81, 0x0b,
3719 : 0x5a, 0x81, 0x17, 0x55, 0x01, 0x01, 0x81, 0x17,
3720 : 0x55, 0x01, 0x02, 0x17, 0x00, 0x20, 0x27, 0x00,
3721 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x27, 0x10,
3722 : 0x27, 0x11, 0x27, 0x12, 0x27, 0x13, 0x27, 0x04,
3723 : 0x27, 0x05, 0x27, 0x06, 0x27, 0x07, 0x27, 0x14,
3724 : 0x27, 0x15, 0x27, 0x16, 0x27, 0x17, 0x27, 0x08,
3725 : 0x27, 0x09, 0x27, 0x0a, 0x27, 0x0b, 0x27, 0x18,
3726 : 0x27, 0x19, 0x27, 0x1a, 0x27, 0x1b, 0x27, 0x0c,
3727 : 0x27, 0x0d, 0x27, 0x0e, 0x27, 0x0f, 0x27, 0x1c,
3728 : 0x27, 0x1d, 0x27, 0x1e, 0x27, 0x1f
3729 : };
3730 0 : return expand_rtx (expand_encoding, operands);
3731 : }
3732 :
3733 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19789 */
3734 : rtx
3735 36 : gen_avx512bw_interleave_highv64qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3736 : {
3737 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3738 36 : static const uint8_t expand_encoding[] = {
3739 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x59, 0x81, 0x0a,
3740 : 0x59, 0x81, 0x0b, 0x5e, 0x01, 0x01, 0x01, 0x02,
3741 : 0x17, 0x00, 0x40, 0x27, 0x08, 0x27, 0x48, 0x27,
3742 : 0x09, 0x27, 0x49, 0x27, 0x0a, 0x27, 0x4a, 0x27,
3743 : 0x0b, 0x27, 0x4b, 0x27, 0x0c, 0x27, 0x4c, 0x27,
3744 : 0x0d, 0x27, 0x4d, 0x27, 0x0e, 0x27, 0x4e, 0x27,
3745 : 0x0f, 0x27, 0x4f, 0x27, 0x18, 0x27, 0x58, 0x27,
3746 : 0x19, 0x27, 0x59, 0x27, 0x1a, 0x27, 0x5a, 0x27,
3747 : 0x1b, 0x27, 0x5b, 0x27, 0x1c, 0x27, 0x5c, 0x27,
3748 : 0x1d, 0x27, 0x5d, 0x27, 0x1e, 0x27, 0x5e, 0x27,
3749 : 0x1f, 0x27, 0x5f, 0x27, 0x28, 0x27, 0x68, 0x27,
3750 : 0x29, 0x27, 0x69, 0x27, 0x2a, 0x27, 0x6a, 0x27,
3751 : 0x2b, 0x27, 0x6b, 0x27, 0x2c, 0x27, 0x6c, 0x27,
3752 : 0x2d, 0x27, 0x6d, 0x27, 0x2e, 0x27, 0x6e, 0x27,
3753 : 0x2f, 0x27, 0x6f, 0x27, 0x38, 0x27, 0x78, 0x27,
3754 : 0x39, 0x27, 0x79, 0x27, 0x3a, 0x27, 0x7a, 0x27,
3755 : 0x3b, 0x27, 0x7b, 0x27, 0x3c, 0x27, 0x7c, 0x27,
3756 : 0x3d, 0x27, 0x7d, 0x27, 0x3e, 0x27, 0x7e, 0x27,
3757 : 0x3f, 0x27, 0x7f, 0x01, 0x03, 0x01, 0x04
3758 : };
3759 36 : return expand_rtx (expand_encoding, operands);
3760 : }
3761 :
3762 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19981 */
3763 : rtx
3764 0 : gen_avx512bw_interleave_highv32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3765 : {
3766 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3767 0 : static const uint8_t expand_encoding[] = {
3768 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x81, 0x0a,
3769 : 0x72, 0x81, 0x0b, 0x77, 0x01, 0x01, 0x01, 0x02,
3770 : 0x17, 0x00, 0x20, 0x27, 0x04, 0x27, 0x24, 0x27,
3771 : 0x05, 0x27, 0x25, 0x27, 0x06, 0x27, 0x26, 0x27,
3772 : 0x07, 0x27, 0x27, 0x27, 0x0c, 0x27, 0x2c, 0x27,
3773 : 0x0d, 0x27, 0x2d, 0x27, 0x0e, 0x27, 0x2e, 0x27,
3774 : 0x0f, 0x27, 0x2f, 0x27, 0x14, 0x27, 0x34, 0x27,
3775 : 0x15, 0x27, 0x35, 0x27, 0x16, 0x27, 0x36, 0x27,
3776 : 0x17, 0x27, 0x37, 0x27, 0x1c, 0x27, 0x3c, 0x27,
3777 : 0x1d, 0x27, 0x3d, 0x27, 0x1e, 0x27, 0x3e, 0x27,
3778 : 0x1f, 0x27, 0x3f, 0x01, 0x03, 0x01, 0x04
3779 : };
3780 0 : return expand_rtx (expand_encoding, operands);
3781 : }
3782 :
3783 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20049 */
3784 : rtx
3785 36 : gen_avx512bw_interleave_lowv32hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3786 : {
3787 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3788 36 : static const uint8_t expand_encoding[] = {
3789 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x81, 0x0a,
3790 : 0x5a, 0x81, 0x0b, 0x5f, 0x01, 0x01, 0x01, 0x02,
3791 : 0x17, 0x00, 0x20, 0x27, 0x00, 0x27, 0x20, 0x27,
3792 : 0x01, 0x27, 0x21, 0x27, 0x02, 0x27, 0x22, 0x27,
3793 : 0x03, 0x27, 0x23, 0x27, 0x08, 0x27, 0x28, 0x27,
3794 : 0x09, 0x27, 0x29, 0x27, 0x0a, 0x27, 0x2a, 0x27,
3795 : 0x0b, 0x27, 0x2b, 0x27, 0x10, 0x27, 0x30, 0x27,
3796 : 0x11, 0x27, 0x31, 0x27, 0x12, 0x27, 0x32, 0x27,
3797 : 0x13, 0x27, 0x33, 0x27, 0x18, 0x27, 0x38, 0x27,
3798 : 0x19, 0x27, 0x39, 0x27, 0x1a, 0x27, 0x3a, 0x27,
3799 : 0x1b, 0x27, 0x3b, 0x01, 0x03, 0x01, 0x04
3800 : };
3801 36 : return expand_rtx (expand_encoding, operands);
3802 : }
3803 :
3804 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20097 */
3805 : rtx
3806 8908 : gen_vec_interleave_lowv8hf (const rtx operand0, const rtx operand1, const rtx operand2)
3807 : {
3808 8908 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3809 8908 : static const uint8_t expand_encoding[] = {
3810 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6a, 0x81, 0x0b,
3811 : 0x6e, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x08,
3812 : 0x27, 0x00, 0x27, 0x08, 0x27, 0x01, 0x27, 0x09,
3813 : 0x27, 0x02, 0x27, 0x0a, 0x27, 0x03, 0x27, 0x0b
3814 : };
3815 8908 : return expand_rtx (expand_encoding, operands);
3816 : }
3817 :
3818 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20172 */
3819 : rtx
3820 13 : gen_avx2_interleave_lowv8si (const rtx operand0, const rtx operand1, const rtx operand2)
3821 : {
3822 13 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3823 13 : static const uint8_t expand_encoding[] = {
3824 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x56, 0x81, 0x0b,
3825 : 0x5b, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x08,
3826 : 0x27, 0x00, 0x27, 0x08, 0x27, 0x01, 0x27, 0x09,
3827 : 0x27, 0x04, 0x27, 0x0c, 0x27, 0x05, 0x27, 0x0d
3828 : };
3829 13 : return expand_rtx (expand_encoding, operands);
3830 : }
3831 :
3832 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20277 */
3833 : rtx
3834 0 : gen_sse4_1_pinsrq (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3835 : {
3836 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3837 0 : static const uint8_t expand_encoding[] = {
3838 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x81, 0x0c,
3839 : 0x52, 0x01, 0x02, 0x01, 0x01, 0x01, 0x03
3840 : };
3841 0 : return expand_rtx (expand_encoding, operands);
3842 : }
3843 :
3844 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20509 */
3845 : rtx
3846 163 : gen_vec_set_hi_v16sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3847 : {
3848 163 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3849 163 : static const uint8_t expand_encoding[] = {
3850 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x81, 0x0b,
3851 : 0x74, 0x81, 0x0a, 0x6f, 0x01, 0x01, 0x17, 0x00,
3852 : 0x08, 0x27, 0x00, 0x27, 0x01, 0x27, 0x02, 0x27,
3853 : 0x03, 0x27, 0x04, 0x27, 0x05, 0x27, 0x06, 0x27,
3854 : 0x07, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3855 : };
3856 163 : return expand_rtx (expand_encoding, operands);
3857 : }
3858 :
3859 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20543 */
3860 : rtx
3861 40 : gen_vec_set_hi_v8di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3862 : {
3863 40 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3864 40 : static const uint8_t expand_encoding[] = {
3865 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x81, 0x0b,
3866 : 0x5c, 0x81, 0x0a, 0x57, 0x01, 0x01, 0x17, 0x00,
3867 : 0x04, 0x27, 0x00, 0x27, 0x01, 0x27, 0x02, 0x27,
3868 : 0x03, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3869 : };
3870 40 : return expand_rtx (expand_encoding, operands);
3871 : }
3872 :
3873 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20734 */
3874 : rtx
3875 26 : gen_avx512vl_shuf_f32x4_1_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6, const rtx operand7, const rtx operand8, const rtx operand9, const rtx operand10, const rtx operand11, const rtx operand12)
3876 : {
3877 26 : rtx operands[13] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7, operand8, operand9, operand10, operand11, operand12 };
3878 26 : static const uint8_t expand_encoding[] = {
3879 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x81, 0x0a,
3880 : 0x6f, 0x81, 0x0b, 0x74, 0x01, 0x01, 0x01, 0x02,
3881 : 0x17, 0x00, 0x08, 0x01, 0x03, 0x01, 0x04, 0x01,
3882 : 0x05, 0x01, 0x06, 0x01, 0x07, 0x01, 0x08, 0x01,
3883 : 0x09, 0x01, 0x0a, 0x01, 0x0b, 0x01, 0x0c
3884 : };
3885 26 : return expand_rtx (expand_encoding, operands);
3886 : }
3887 :
3888 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21100 */
3889 : rtx
3890 16 : gen_sse2_pshufd_1_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6, const rtx operand7)
3891 : {
3892 16 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7 };
3893 16 : static const uint8_t expand_encoding[] = {
3894 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x81, 0x0a,
3895 : 0x51, 0x01, 0x01, 0x17, 0x00, 0x04, 0x01, 0x02,
3896 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x01, 0x06,
3897 : 0x01, 0x07
3898 : };
3899 16 : return expand_rtx (expand_encoding, operands);
3900 : }
3901 :
3902 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21335 */
3903 : rtx
3904 12 : gen_avx2_pshufhw_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6, const rtx operand7, const rtx operand8, const rtx operand9)
3905 : {
3906 12 : rtx operands[10] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7, operand8, operand9 };
3907 12 : static const uint8_t expand_encoding[] = {
3908 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x55, 0x01, 0x01,
3909 : 0x17, 0x00, 0x10, 0x27, 0x00, 0x27, 0x01, 0x27,
3910 : 0x02, 0x27, 0x03, 0x01, 0x02, 0x01, 0x03, 0x01,
3911 : 0x04, 0x01, 0x05, 0x27, 0x08, 0x27, 0x09, 0x27,
3912 : 0x0a, 0x27, 0x0b, 0x01, 0x06, 0x01, 0x07, 0x01,
3913 : 0x08, 0x01, 0x09
3914 : };
3915 12 : return expand_rtx (expand_encoding, operands);
3916 : }
3917 :
3918 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22530 */
3919 : rtx
3920 28 : gen_avx2_pmovmskb (const rtx operand0, const rtx operand1)
3921 : {
3922 28 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
3923 28 : static const uint8_t expand_encoding[] = {
3924 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01, 0x01,
3925 : 0x32
3926 : };
3927 28 : return expand_rtx (expand_encoding, operands);
3928 : }
3929 :
3930 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23007 */
3931 : rtx
3932 14 : gen_avx2_phsubswv16hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
3933 : {
3934 14 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3935 14 : static const uint8_t expand_encoding[] = {
3936 : 0x1f, 0x01, 0x00, 0x81, 0x10, 0x55, 0x81, 0x0a,
3937 : 0x55, 0x81, 0x0b, 0x5a, 0x01, 0x01, 0x01, 0x02,
3938 : 0x17, 0x00, 0x10, 0x27, 0x00, 0x27, 0x02, 0x27,
3939 : 0x04, 0x27, 0x06, 0x27, 0x10, 0x27, 0x12, 0x27,
3940 : 0x14, 0x27, 0x16, 0x27, 0x08, 0x27, 0x0a, 0x27,
3941 : 0x0c, 0x27, 0x0e, 0x27, 0x18, 0x27, 0x1a, 0x27,
3942 : 0x1c, 0x27, 0x1e, 0x81, 0x0a, 0x55, 0x81, 0x0b,
3943 : 0x5a, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x10,
3944 : 0x27, 0x01, 0x27, 0x03, 0x27, 0x05, 0x27, 0x07,
3945 : 0x27, 0x11, 0x27, 0x13, 0x27, 0x15, 0x27, 0x17,
3946 : 0x27, 0x09, 0x27, 0x0b, 0x27, 0x0d, 0x27, 0x0f,
3947 : 0x27, 0x19, 0x27, 0x1b, 0x27, 0x1d, 0x27, 0x1f
3948 : };
3949 14 : return expand_rtx (expand_encoding, operands);
3950 : }
3951 :
3952 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23252 */
3953 : rtx
3954 0 : gen_avx512bw_pmaddubsw512v8hi (const rtx operand0, const rtx operand1, const rtx operand2)
3955 : {
3956 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3957 0 : static const uint8_t expand_encoding[] = {
3958 : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x02, 0x01, 0x01,
3959 : 0x01, 0x02, 0x81, 0x3c
3960 : };
3961 0 : return expand_rtx (expand_encoding, operands);
3962 : }
3963 :
3964 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23252 */
3965 : rtx
3966 24 : gen_avx512bw_pmaddubsw512v8hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3967 : {
3968 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3969 24 : static const uint8_t expand_encoding[] = {
3970 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x1a, 0x50,
3971 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x3c, 0x01,
3972 : 0x03, 0x01, 0x04
3973 : };
3974 24 : return expand_rtx (expand_encoding, operands);
3975 : }
3976 :
3977 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23580 */
3978 : rtx
3979 400 : gen_avx2_pshufbv32qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
3980 : {
3981 400 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3982 400 : static const uint8_t expand_encoding[] = {
3983 : 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x02, 0x01, 0x01,
3984 : 0x01, 0x02, 0x35
3985 : };
3986 400 : return expand_rtx (expand_encoding, operands);
3987 : }
3988 :
3989 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23647 */
3990 : rtx
3991 14 : gen_avx2_psignv32qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
3992 : {
3993 14 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3994 14 : static const uint8_t expand_encoding[] = {
3995 : 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x02, 0x01, 0x01,
3996 : 0x01, 0x02, 0x79
3997 : };
3998 14 : return expand_rtx (expand_encoding, operands);
3999 : }
4000 :
4001 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23684 */
4002 : rtx
4003 16 : gen_avx512bw_palignrv64qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
4004 : {
4005 16 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
4006 16 : static const uint8_t expand_encoding[] = {
4007 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x59, 0x1a, 0x59,
4008 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x7a,
4009 : 0x01, 0x04, 0x01, 0x05
4010 : };
4011 16 : return expand_rtx (expand_encoding, operands);
4012 : }
4013 :
4014 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23832 */
4015 : rtx
4016 24 : gen_absv2di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4017 : {
4018 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4019 24 : static const uint8_t expand_encoding[] = {
4020 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x7b, 0x52,
4021 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4022 : };
4023 24 : return expand_rtx (expand_encoding, operands);
4024 : }
4025 :
4026 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23892 */
4027 : rtx
4028 10 : gen_sse4a_vmmovntv2df (const rtx operand0, const rtx operand1)
4029 : {
4030 10 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4031 10 : static const uint8_t expand_encoding[] = {
4032 : 0x1f, 0x01, 0x00, 0x1a, 0x2e, 0x01, 0x81, 0x0a,
4033 : 0x2e, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
4034 : 0x76
4035 : };
4036 10 : return expand_rtx (expand_encoding, operands);
4037 : }
4038 :
4039 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23987 */
4040 : rtx
4041 195 : gen_avx_blendvpd256 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4042 : {
4043 195 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4044 195 : static const uint8_t expand_encoding[] = {
4045 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x03, 0x01, 0x01,
4046 : 0x01, 0x02, 0x01, 0x03, 0x34
4047 : };
4048 195 : return expand_rtx (expand_encoding, operands);
4049 : }
4050 :
4051 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24248 */
4052 : rtx
4053 14 : gen_sse4_1_movntdqa (const rtx operand0, const rtx operand1)
4054 : {
4055 14 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4056 14 : static const uint8_t expand_encoding[] = {
4057 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x01, 0x01, 0x01,
4058 : 0x81, 0x00
4059 : };
4060 14 : return expand_rtx (expand_encoding, operands);
4061 : }
4062 :
4063 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24310 */
4064 : rtx
4065 24 : gen_avx2_packusdw_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4066 : {
4067 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4068 24 : static const uint8_t expand_encoding[] = {
4069 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x1a, 0x55,
4070 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3a, 0x01, 0x03,
4071 : 0x01, 0x04
4072 : };
4073 24 : return expand_rtx (expand_encoding, operands);
4074 : }
4075 :
4076 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24580 */
4077 : rtx
4078 18 : gen_sse4_1_phminposuw (const rtx operand0, const rtx operand1)
4079 : {
4080 18 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4081 18 : static const uint8_t expand_encoding[] = {
4082 : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x01, 0x01, 0x01,
4083 : 0x81, 0x02
4084 : };
4085 18 : return expand_rtx (expand_encoding, operands);
4086 : }
4087 :
4088 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24702 */
4089 : rtx
4090 35 : gen_sse4_1_sign_extendv8qiv8hi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4091 : {
4092 35 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4093 35 : static const uint8_t expand_encoding[] = {
4094 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x6e, 0x50,
4095 : 0x81, 0x0a, 0x48, 0x01, 0x01, 0x17, 0x00, 0x08,
4096 : 0x27, 0x00, 0x27, 0x01, 0x27, 0x02, 0x27, 0x03,
4097 : 0x27, 0x04, 0x27, 0x05, 0x27, 0x06, 0x27, 0x07,
4098 : 0x01, 0x02, 0x01, 0x03
4099 : };
4100 35 : return expand_rtx (expand_encoding, operands);
4101 : }
4102 :
4103 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24980 */
4104 : rtx
4105 24 : gen_sse4_1_zero_extendv4qiv4si2 (const rtx operand0, const rtx operand1)
4106 : {
4107 24 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4108 24 : static const uint8_t expand_encoding[] = {
4109 : 0x1f, 0x01, 0x00, 0x6f, 0x51, 0x81, 0x0a, 0x45,
4110 : 0x01, 0x01, 0x17, 0x00, 0x04, 0x27, 0x00, 0x27,
4111 : 0x01, 0x27, 0x02, 0x27, 0x03
4112 : };
4113 24 : return expand_rtx (expand_encoding, operands);
4114 : }
4115 :
4116 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25130 */
4117 : rtx
4118 128 : gen_avx2_zero_extendv8hiv8si2 (const rtx operand0, const rtx operand1)
4119 : {
4120 128 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4121 128 : static const uint8_t expand_encoding[] = {
4122 : 0x1f, 0x01, 0x00, 0x6f, 0x56, 0x01, 0x01
4123 : };
4124 128 : return expand_rtx (expand_encoding, operands);
4125 : }
4126 :
4127 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25344 */
4128 : rtx
4129 36 : gen_avx512f_sign_extendv8qiv8di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4130 : {
4131 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4132 36 : static const uint8_t expand_encoding[] = {
4133 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x6e, 0x5c,
4134 : 0x81, 0x0a, 0x48, 0x01, 0x01, 0x17, 0x00, 0x08,
4135 : 0x27, 0x00, 0x27, 0x01, 0x27, 0x02, 0x27, 0x03,
4136 : 0x27, 0x04, 0x27, 0x05, 0x27, 0x06, 0x27, 0x07,
4137 : 0x01, 0x02, 0x01, 0x03
4138 : };
4139 36 : return expand_rtx (expand_encoding, operands);
4140 : }
4141 :
4142 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25591 */
4143 : rtx
4144 36 : gen_avx512f_sign_extendv8hiv8di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4145 : {
4146 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4147 36 : static const uint8_t expand_encoding[] = {
4148 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x6e, 0x5c,
4149 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4150 : };
4151 36 : return expand_rtx (expand_encoding, operands);
4152 : }
4153 :
4154 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25786 */
4155 : rtx
4156 86 : gen_avx512f_sign_extendv8siv8di2 (const rtx operand0, const rtx operand1)
4157 : {
4158 86 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4159 86 : static const uint8_t expand_encoding[] = {
4160 : 0x1f, 0x01, 0x00, 0x6e, 0x5c, 0x01, 0x01
4161 : };
4162 86 : return expand_rtx (expand_encoding, operands);
4163 : }
4164 :
4165 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25838 */
4166 : rtx
4167 24 : gen_avx2_zero_extendv4siv4di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4168 : {
4169 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4170 24 : static const uint8_t expand_encoding[] = {
4171 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x6f, 0x57,
4172 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4173 : };
4174 24 : return expand_rtx (expand_encoding, operands);
4175 : }
4176 :
4177 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26246 */
4178 : rtx
4179 24 : gen_sse4_1_roundps (const rtx operand0, const rtx operand1, const rtx operand2)
4180 : {
4181 24 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4182 24 : static const uint8_t expand_encoding[] = {
4183 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x01, 0x01,
4184 : 0x01, 0x02, 0x5f
4185 : };
4186 24 : return expand_rtx (expand_encoding, operands);
4187 : }
4188 :
4189 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26741 */
4190 : rtx
4191 254 : gen_sse4_2_pcmpistr (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4192 : {
4193 254 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4194 254 : static const uint8_t expand_encoding[] = {
4195 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x1a, 0x11,
4196 : 0x03, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81,
4197 : 0x05, 0x1f, 0x01, 0x01, 0x1a, 0x4f, 0x03, 0x01,
4198 : 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x05, 0x1f,
4199 : 0x30, 0x02, 0x11, 0x1a, 0x02, 0x03, 0x01, 0x02,
4200 : 0x01, 0x03, 0x01, 0x04, 0x81, 0x05
4201 : };
4202 254 : return expand_rtx (expand_encoding, operands);
4203 : }
4204 :
4205 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26934 */
4206 : rtx
4207 8 : gen_xop_pmacsswd (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4208 : {
4209 8 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4210 8 : static const uint8_t expand_encoding[] = {
4211 : 0x1f, 0x01, 0x00, 0x81, 0x0e, 0x51, 0x3e, 0x51,
4212 : 0x6e, 0x51, 0x81, 0x0a, 0x49, 0x01, 0x01, 0x17,
4213 : 0x00, 0x04, 0x27, 0x01, 0x27, 0x03, 0x27, 0x05,
4214 : 0x27, 0x07, 0x6e, 0x51, 0x81, 0x0a, 0x49, 0x01,
4215 : 0x02, 0x17, 0x00, 0x04, 0x27, 0x01, 0x27, 0x03,
4216 : 0x27, 0x05, 0x27, 0x07, 0x01, 0x03
4217 : };
4218 8 : return expand_rtx (expand_encoding, operands);
4219 : }
4220 :
4221 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26989 */
4222 : rtx
4223 8 : gen_xop_pcmov_v2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4224 : {
4225 8 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4226 8 : static const uint8_t expand_encoding[] = {
4227 : 0x1f, 0x01, 0x00, 0x39, 0x52, 0x01, 0x03, 0x01,
4228 : 0x01, 0x01, 0x02
4229 : };
4230 8 : return expand_rtx (expand_encoding, operands);
4231 : }
4232 :
4233 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27027 */
4234 : rtx
4235 9 : gen_xop_phaddubw (const rtx operand0, const rtx operand1)
4236 : {
4237 9 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4238 9 : static const uint8_t expand_encoding[] = {
4239 : 0x1f, 0x01, 0x00, 0x3b, 0x50, 0x6f, 0x50, 0x81,
4240 : 0x0a, 0x48, 0x01, 0x01, 0x17, 0x00, 0x08, 0x27,
4241 : 0x00, 0x27, 0x02, 0x27, 0x04, 0x27, 0x06, 0x27,
4242 : 0x08, 0x27, 0x0a, 0x27, 0x0c, 0x27, 0x0e, 0x6f,
4243 : 0x50, 0x81, 0x0a, 0x48, 0x01, 0x01, 0x17, 0x00,
4244 : 0x08, 0x27, 0x01, 0x27, 0x03, 0x27, 0x05, 0x27,
4245 : 0x07, 0x27, 0x09, 0x27, 0x0b, 0x27, 0x0d, 0x27,
4246 : 0x0f
4247 : };
4248 9 : return expand_rtx (expand_encoding, operands);
4249 : }
4250 :
4251 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27184 */
4252 : rtx
4253 9 : gen_xop_phaddudq (const rtx operand0, const rtx operand1)
4254 : {
4255 9 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4256 9 : static const uint8_t expand_encoding[] = {
4257 : 0x1f, 0x01, 0x00, 0x3b, 0x52, 0x6f, 0x52, 0x81,
4258 : 0x0a, 0x4a, 0x01, 0x01, 0x17, 0x00, 0x02, 0x27,
4259 : 0x00, 0x27, 0x02, 0x6f, 0x52, 0x81, 0x0a, 0x4a,
4260 : 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x01, 0x27,
4261 : 0x03
4262 : };
4263 9 : return expand_rtx (expand_encoding, operands);
4264 : }
4265 :
4266 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27386 */
4267 : rtx
4268 12 : gen_xop_rotlv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
4269 : {
4270 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4271 12 : static const uint8_t expand_encoding[] = {
4272 : 0x1f, 0x01, 0x00, 0x4e, 0x4f, 0x01, 0x01, 0x01,
4273 : 0x02
4274 : };
4275 12 : return expand_rtx (expand_encoding, operands);
4276 : }
4277 :
4278 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27399 */
4279 : rtx
4280 0 : gen_xop_rotrv2di3 (const rtx operand0, const rtx operand1, const rtx operand2)
4281 : {
4282 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4283 0 : static const uint8_t expand_encoding[] = {
4284 : 0x1f, 0x01, 0x00, 0x51, 0x52, 0x01, 0x01, 0x01,
4285 : 0x02
4286 : };
4287 0 : return expand_rtx (expand_encoding, operands);
4288 : }
4289 :
4290 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27694 */
4291 : rtx
4292 8 : gen_xop_shlv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
4293 : {
4294 8 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4295 8 : static const uint8_t expand_encoding[] = {
4296 : 0x1f, 0x01, 0x00, 0x39, 0x50, 0x5e, 0x50, 0x01,
4297 : 0x02, 0x27, 0x00, 0x4d, 0x50, 0x01, 0x01, 0x01,
4298 : 0x02, 0x50, 0x50, 0x01, 0x01, 0x3d, 0x50, 0x01,
4299 : 0x02
4300 : };
4301 8 : return expand_rtx (expand_encoding, operands);
4302 : }
4303 :
4304 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27890 */
4305 : rtx
4306 48 : gen_xop_maskcmpv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4307 : {
4308 48 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4309 48 : static const uint8_t expand_encoding[] = {
4310 : 0x1f, 0x01, 0x00, 0x03, 0x50, 0x01, 0x01, 0x02,
4311 : 0x01, 0x03
4312 : };
4313 48 : return expand_rtx (expand_encoding, operands);
4314 : }
4315 :
4316 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27913 */
4317 : rtx
4318 16 : gen_xop_maskcmp_uns2v2di3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4319 : {
4320 16 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4321 16 : static const uint8_t expand_encoding[] = {
4322 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x01, 0x03, 0x52,
4323 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x07
4324 : };
4325 16 : return expand_rtx (expand_encoding, operands);
4326 : }
4327 :
4328 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27977 */
4329 : rtx
4330 35 : gen_aesenclast (const rtx operand0, const rtx operand1, const rtx operand2)
4331 : {
4332 35 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4333 35 : static const uint8_t expand_encoding[] = {
4334 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x02, 0x01, 0x01,
4335 : 0x01, 0x02, 0x81, 0x0b
4336 : };
4337 35 : return expand_rtx (expand_encoding, operands);
4338 : }
4339 :
4340 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28149 */
4341 : rtx
4342 64 : gen_avx2_pbroadcastv32qi (const rtx operand0, const rtx operand1)
4343 : {
4344 64 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4345 64 : static const uint8_t expand_encoding[] = {
4346 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x54, 0x81, 0x0a,
4347 : 0x0f, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4348 : };
4349 64 : return expand_rtx (expand_encoding, operands);
4350 : }
4351 :
4352 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28149 */
4353 : rtx
4354 0 : gen_avx2_pbroadcastv16hf (const rtx operand0, const rtx operand1)
4355 : {
4356 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4357 0 : static const uint8_t expand_encoding[] = {
4358 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x6e, 0x81, 0x0a,
4359 : 0x2b, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4360 : };
4361 0 : return expand_rtx (expand_encoding, operands);
4362 : }
4363 :
4364 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28163 */
4365 : rtx
4366 0 : gen_avx2_pbroadcastv16bf_1 (const rtx operand0, const rtx operand1)
4367 : {
4368 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4369 0 : static const uint8_t expand_encoding[] = {
4370 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x6d, 0x81, 0x0a,
4371 : 0x2c, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4372 : };
4373 0 : return expand_rtx (expand_encoding, operands);
4374 : }
4375 :
4376 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28181 */
4377 : rtx
4378 39 : gen_avx512f_permvarv8di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4379 : {
4380 39 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4381 39 : static const uint8_t expand_encoding[] = {
4382 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x1a, 0x5c,
4383 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x18, 0x01,
4384 : 0x03, 0x01, 0x04
4385 : };
4386 39 : return expand_rtx (expand_encoding, operands);
4387 : }
4388 :
4389 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28201 */
4390 : rtx
4391 2 : gen_avx512vl_permvarv32qi (const rtx operand0, const rtx operand1, const rtx operand2)
4392 : {
4393 2 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4394 2 : static const uint8_t expand_encoding[] = {
4395 : 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x02, 0x01, 0x01,
4396 : 0x01, 0x02, 0x81, 0x18
4397 : };
4398 2 : return expand_rtx (expand_encoding, operands);
4399 : }
4400 :
4401 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28214 */
4402 : rtx
4403 0 : gen_avx512fp16_permvarv8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4404 : {
4405 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4406 0 : static const uint8_t expand_encoding[] = {
4407 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
4408 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x18, 0x01,
4409 : 0x03, 0x01, 0x04
4410 : };
4411 0 : return expand_rtx (expand_encoding, operands);
4412 : }
4413 :
4414 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28419 */
4415 : rtx
4416 663 : gen_avx2_permv4di_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
4417 : {
4418 663 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
4419 663 : static const uint8_t expand_encoding[] = {
4420 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x57, 0x01, 0x01,
4421 : 0x17, 0x00, 0x04, 0x01, 0x02, 0x01, 0x03, 0x01,
4422 : 0x04, 0x01, 0x05
4423 : };
4424 663 : return expand_rtx (expand_encoding, operands);
4425 : }
4426 :
4427 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28571 */
4428 : rtx
4429 1 : gen_avx512f_vec_dupv16si_1 (const rtx operand0, const rtx operand1)
4430 : {
4431 1 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4432 1 : static const uint8_t expand_encoding[] = {
4433 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x5b, 0x81, 0x0a,
4434 : 0x11, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4435 : };
4436 1 : return expand_rtx (expand_encoding, operands);
4437 : }
4438 :
4439 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28585 */
4440 : rtx
4441 36 : gen_avx512f_vec_dupv16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4442 : {
4443 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4444 36 : static const uint8_t expand_encoding[] = {
4445 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x81, 0x0c,
4446 : 0x5b, 0x81, 0x0a, 0x11, 0x01, 0x01, 0x17, 0x00,
4447 : 0x01, 0x27, 0x00, 0x01, 0x02, 0x01, 0x03
4448 : };
4449 36 : return expand_rtx (expand_encoding, operands);
4450 : }
4451 :
4452 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28585 */
4453 : rtx
4454 0 : gen_avx512f_vec_dupv16sf (const rtx operand0, const rtx operand1)
4455 : {
4456 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4457 0 : static const uint8_t expand_encoding[] = {
4458 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x74, 0x81, 0x0a,
4459 : 0x2d, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4460 : };
4461 0 : return expand_rtx (expand_encoding, operands);
4462 : }
4463 :
4464 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28585 */
4465 : rtx
4466 24 : gen_avx512vl_vec_dupv4df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4467 : {
4468 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4469 24 : static const uint8_t expand_encoding[] = {
4470 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x0c,
4471 : 0x70, 0x81, 0x0a, 0x2e, 0x01, 0x01, 0x17, 0x00,
4472 : 0x01, 0x27, 0x00, 0x01, 0x02, 0x01, 0x03
4473 : };
4474 24 : return expand_rtx (expand_encoding, operands);
4475 : }
4476 :
4477 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28604 */
4478 : rtx
4479 0 : gen_avx512vl_vec_dupv16hi (const rtx operand0, const rtx operand1)
4480 : {
4481 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4482 0 : static const uint8_t expand_encoding[] = {
4483 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x55, 0x81, 0x0a,
4484 : 0x10, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4485 : };
4486 0 : return expand_rtx (expand_encoding, operands);
4487 : }
4488 :
4489 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28604 */
4490 : rtx
4491 0 : gen_avx512fp16_vec_dupv8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4492 : {
4493 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4494 0 : static const uint8_t expand_encoding[] = {
4495 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x0c,
4496 : 0x6a, 0x81, 0x0a, 0x2b, 0x01, 0x01, 0x17, 0x00,
4497 : 0x01, 0x27, 0x00, 0x01, 0x02, 0x01, 0x03
4498 : };
4499 0 : return expand_rtx (expand_encoding, operands);
4500 : }
4501 :
4502 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28642 */
4503 : rtx
4504 24 : gen_avx512bw_vec_dup_gprv64qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4505 : {
4506 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4507 24 : static const uint8_t expand_encoding[] = {
4508 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x59, 0x81, 0x0c,
4509 : 0x59, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4510 : };
4511 24 : return expand_rtx (expand_encoding, operands);
4512 : }
4513 :
4514 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28642 */
4515 : rtx
4516 0 : gen_avx512vl_vec_dup_gprv16bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4517 : {
4518 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4519 0 : static const uint8_t expand_encoding[] = {
4520 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6d, 0x81, 0x0c,
4521 : 0x6d, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4522 : };
4523 0 : return expand_rtx (expand_encoding, operands);
4524 : }
4525 :
4526 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28654 */
4527 : rtx
4528 0 : gen_avx512vl_vec_dup_gprv4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4529 : {
4530 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4531 0 : static const uint8_t expand_encoding[] = {
4532 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x0c,
4533 : 0x6b, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4534 : };
4535 0 : return expand_rtx (expand_encoding, operands);
4536 : }
4537 :
4538 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28824 */
4539 : rtx
4540 0 : gen_vec_dupv8si (const rtx operand0, const rtx operand1)
4541 : {
4542 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4543 0 : static const uint8_t expand_encoding[] = {
4544 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x56, 0x01, 0x01
4545 : };
4546 0 : return expand_rtx (expand_encoding, operands);
4547 : }
4548 :
4549 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28875 */
4550 : rtx
4551 13 : gen_avx_vbroadcastf128_v4df (const rtx operand0, const rtx operand1)
4552 : {
4553 13 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4554 13 : static const uint8_t expand_encoding[] = {
4555 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x70, 0x01, 0x01,
4556 : 0x01, 0x01
4557 : };
4558 13 : return expand_rtx (expand_encoding, operands);
4559 : }
4560 :
4561 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28955 */
4562 : rtx
4563 36 : gen_avx512dq_broadcastv16sf_mask_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4564 : {
4565 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4566 36 : static const uint8_t expand_encoding[] = {
4567 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x81, 0x0c,
4568 : 0x74, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4569 : };
4570 36 : return expand_rtx (expand_encoding, operands);
4571 : }
4572 :
4573 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29001 */
4574 : rtx
4575 11 : gen_avx512cd_maskw_vec_dupv8si (const rtx operand0, const rtx operand1)
4576 : {
4577 11 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4578 11 : static const uint8_t expand_encoding[] = {
4579 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x81, 0x0c,
4580 : 0x56, 0x6f, 0x11, 0x01, 0x01, 0x1a, 0x00, 0x01,
4581 : 0x27, 0x00, 0x81, 0x2f
4582 : };
4583 11 : return expand_rtx (expand_encoding, operands);
4584 : }
4585 :
4586 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29013 */
4587 : rtx
4588 12 : gen_avx_vpermilvarv4df3 (const rtx operand0, const rtx operand1, const rtx operand2)
4589 : {
4590 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4591 12 : static const uint8_t expand_encoding[] = {
4592 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x01, 0x01,
4593 : 0x01, 0x02, 0x81, 0x11
4594 : };
4595 12 : return expand_rtx (expand_encoding, operands);
4596 : }
4597 :
4598 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29115 */
4599 : rtx
4600 186 : gen_avx512f_vpermt2varv8df3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4601 : {
4602 186 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4603 186 : static const uint8_t expand_encoding[] = {
4604 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x03, 0x01, 0x01,
4605 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1c
4606 : };
4607 186 : return expand_rtx (expand_encoding, operands);
4608 : }
4609 :
4610 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29115 */
4611 : rtx
4612 1 : gen_avx512vl_vpermt2varv4df3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4613 : {
4614 1 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4615 1 : static const uint8_t expand_encoding[] = {
4616 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x03, 0x01, 0x01,
4617 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1c
4618 : };
4619 1 : return expand_rtx (expand_encoding, operands);
4620 : }
4621 :
4622 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29115 */
4623 : rtx
4624 0 : gen_avx512vl_vpermt2varv2df3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4625 : {
4626 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4627 0 : static const uint8_t expand_encoding[] = {
4628 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x03, 0x01, 0x01,
4629 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1c
4630 : };
4631 0 : return expand_rtx (expand_encoding, operands);
4632 : }
4633 :
4634 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29115 */
4635 : rtx
4636 12 : gen_avx512bw_vpermt2varv64qi3_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
4637 : {
4638 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
4639 12 : static const uint8_t expand_encoding[] = {
4640 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x59, 0x1a, 0x59,
4641 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4642 : 0x1c, 0x01, 0x04, 0x01, 0x05
4643 : };
4644 12 : return expand_rtx (expand_encoding, operands);
4645 : }
4646 :
4647 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29131 */
4648 : rtx
4649 0 : gen_avx512bw_vpermt2varv32bf3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4650 : {
4651 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4652 0 : static const uint8_t expand_encoding[] = {
4653 : 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x03, 0x01, 0x01,
4654 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1c
4655 : };
4656 0 : return expand_rtx (expand_encoding, operands);
4657 : }
4658 :
4659 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29146 */
4660 : rtx
4661 24 : gen_avx512f_vpermt2varv8df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4662 : {
4663 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4664 24 : static const uint8_t expand_encoding[] = {
4665 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x1a, 0x75,
4666 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4667 : 0x1c, 0x01, 0x02, 0x01, 0x04
4668 : };
4669 24 : return expand_rtx (expand_encoding, operands);
4670 : }
4671 :
4672 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29146 */
4673 : rtx
4674 24 : gen_avx512vl_vpermt2varv16hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4675 : {
4676 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4677 24 : static const uint8_t expand_encoding[] = {
4678 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x1a, 0x55,
4679 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4680 : 0x1c, 0x01, 0x02, 0x01, 0x04
4681 : };
4682 24 : return expand_rtx (expand_encoding, operands);
4683 : }
4684 :
4685 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29352 */
4686 : rtx
4687 24 : gen_vec_set_hi_v4di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4688 : {
4689 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4690 24 : static const uint8_t expand_encoding[] = {
4691 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x81, 0x0b,
4692 : 0x57, 0x81, 0x0a, 0x52, 0x01, 0x01, 0x17, 0x00,
4693 : 0x02, 0x27, 0x00, 0x27, 0x01, 0x01, 0x02, 0x01,
4694 : 0x03, 0x01, 0x04
4695 : };
4696 24 : return expand_rtx (expand_encoding, operands);
4697 : }
4698 :
4699 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29425 */
4700 : rtx
4701 3 : gen_vec_set_lo_v16hi (const rtx operand0, const rtx operand1, const rtx operand2)
4702 : {
4703 3 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4704 3 : static const uint8_t expand_encoding[] = {
4705 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x55, 0x01, 0x02,
4706 : 0x81, 0x0a, 0x50, 0x01, 0x01, 0x17, 0x00, 0x08,
4707 : 0x27, 0x08, 0x27, 0x09, 0x27, 0x0a, 0x27, 0x0b,
4708 : 0x27, 0x0c, 0x27, 0x0d, 0x27, 0x0e, 0x27, 0x0f
4709 : };
4710 3 : return expand_rtx (expand_encoding, operands);
4711 : }
4712 :
4713 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29525 */
4714 : rtx
4715 11 : gen_avx_maskloadpd (const rtx operand0, const rtx operand1, const rtx operand2)
4716 : {
4717 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4718 11 : static const uint8_t expand_encoding[] = {
4719 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x01, 0x02,
4720 : 0x01, 0x01, 0x30
4721 : };
4722 11 : return expand_rtx (expand_encoding, operands);
4723 : }
4724 :
4725 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29546 */
4726 : rtx
4727 12 : gen_avx2_maskstoreq256 (const rtx operand0, const rtx operand1, const rtx operand2)
4728 : {
4729 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4730 12 : static const uint8_t expand_encoding[] = {
4731 : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x03, 0x01, 0x01,
4732 : 0x01, 0x02, 0x01, 0x00, 0x30
4733 : };
4734 12 : return expand_rtx (expand_encoding, operands);
4735 : }
4736 :
4737 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29638 */
4738 : rtx
4739 24 : gen_avx512vl_storev4di_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4740 : {
4741 24 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4742 24 : static const uint8_t expand_encoding[] = {
4743 : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x03, 0x01, 0x01,
4744 : 0x01, 0x00, 0x01, 0x02, 0x30
4745 : };
4746 24 : return expand_rtx (expand_encoding, operands);
4747 : }
4748 :
4749 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29667 */
4750 : rtx
4751 13 : gen_avx512vl_storev32qi_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4752 : {
4753 13 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4754 13 : static const uint8_t expand_encoding[] = {
4755 : 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x03, 0x01, 0x01,
4756 : 0x01, 0x00, 0x01, 0x02, 0x30
4757 : };
4758 13 : return expand_rtx (expand_encoding, operands);
4759 : }
4760 :
4761 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29718 */
4762 : rtx
4763 51 : gen_avx_si256_si (const rtx operand0, const rtx operand1)
4764 : {
4765 51 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4766 51 : static const uint8_t expand_encoding[] = {
4767 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x56, 0x01, 0x01,
4768 : 0x1a, 0x51, 0x01, 0x27, 0x00, 0x81, 0x14
4769 : };
4770 51 : return expand_rtx (expand_encoding, operands);
4771 : }
4772 :
4773 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29807 */
4774 : rtx
4775 0 : gen_avx2_ashrvv2di (const rtx operand0, const rtx operand1, const rtx operand2)
4776 : {
4777 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4778 0 : static const uint8_t expand_encoding[] = {
4779 : 0x1f, 0x01, 0x00, 0x4f, 0x52, 0x01, 0x01, 0x01,
4780 : 0x02
4781 : };
4782 0 : return expand_rtx (expand_encoding, operands);
4783 : }
4784 :
4785 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29818 */
4786 : rtx
4787 33 : gen_avx512vl_ashrvv16hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4788 : {
4789 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4790 33 : static const uint8_t expand_encoding[] = {
4791 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x4f, 0x55,
4792 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
4793 : };
4794 33 : return expand_rtx (expand_encoding, operands);
4795 : }
4796 :
4797 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29829 */
4798 : rtx
4799 23 : gen_avx2_ashlvv4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4800 : {
4801 23 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4802 23 : static const uint8_t expand_encoding[] = {
4803 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x4d, 0x51,
4804 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
4805 : };
4806 23 : return expand_rtx (expand_encoding, operands);
4807 : }
4808 :
4809 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29829 */
4810 : rtx
4811 12 : gen_avx2_ashlvv2di (const rtx operand0, const rtx operand1, const rtx operand2)
4812 : {
4813 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4814 12 : static const uint8_t expand_encoding[] = {
4815 : 0x1f, 0x01, 0x00, 0x4d, 0x52, 0x01, 0x01, 0x01,
4816 : 0x02
4817 : };
4818 12 : return expand_rtx (expand_encoding, operands);
4819 : }
4820 :
4821 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29840 */
4822 : rtx
4823 37 : gen_avx512vl_ashlvv16hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4824 : {
4825 37 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4826 37 : static const uint8_t expand_encoding[] = {
4827 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x4d, 0x55,
4828 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
4829 : };
4830 37 : return expand_rtx (expand_encoding, operands);
4831 : }
4832 :
4833 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29851 */
4834 : rtx
4835 39 : gen_avx_vec_concatv8si (const rtx operand0, const rtx operand1, const rtx operand2)
4836 : {
4837 39 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4838 39 : static const uint8_t expand_encoding[] = {
4839 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x56, 0x01, 0x01,
4840 : 0x01, 0x02
4841 : };
4842 39 : return expand_rtx (expand_encoding, operands);
4843 : }
4844 :
4845 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29851 */
4846 : rtx
4847 6 : gen_avx_vec_concatv16sf (const rtx operand0, const rtx operand1, const rtx operand2)
4848 : {
4849 6 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4850 6 : static const uint8_t expand_encoding[] = {
4851 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x74, 0x01, 0x01,
4852 : 0x01, 0x02
4853 : };
4854 6 : return expand_rtx (expand_encoding, operands);
4855 : }
4856 :
4857 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30123 */
4858 : rtx
4859 0 : gen_avx512f_vcvtps2ph512_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4860 : {
4861 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4862 0 : static const uint8_t expand_encoding[] = {
4863 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x1a, 0x55,
4864 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x17, 0x01,
4865 : 0x03, 0x01, 0x04
4866 : };
4867 0 : return expand_rtx (expand_encoding, operands);
4868 : }
4869 :
4870 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30558 */
4871 : rtx
4872 24 : gen_avx512vl_compressv4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4873 : {
4874 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4875 24 : static const uint8_t expand_encoding[] = {
4876 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x01,
4877 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x2a
4878 : };
4879 24 : return expand_rtx (expand_encoding, operands);
4880 : }
4881 :
4882 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30586 */
4883 : rtx
4884 12 : gen_avx512f_compressstorev16si_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4885 : {
4886 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4887 12 : static const uint8_t expand_encoding[] = {
4888 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x03, 0x01, 0x01,
4889 : 0x01, 0x00, 0x01, 0x02, 0x81, 0x2b
4890 : };
4891 12 : return expand_rtx (expand_encoding, operands);
4892 : }
4893 :
4894 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30586 */
4895 : rtx
4896 12 : gen_avx512vl_compressstorev2di_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4897 : {
4898 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4899 12 : static const uint8_t expand_encoding[] = {
4900 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x03, 0x01, 0x01,
4901 : 0x01, 0x00, 0x01, 0x02, 0x81, 0x2b
4902 : };
4903 12 : return expand_rtx (expand_encoding, operands);
4904 : }
4905 :
4906 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30626 */
4907 : rtx
4908 44 : gen_expandv8di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4909 : {
4910 44 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4911 44 : static const uint8_t expand_encoding[] = {
4912 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x03, 0x01, 0x01,
4913 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
4914 : };
4915 44 : return expand_rtx (expand_encoding, operands);
4916 : }
4917 :
4918 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30641 */
4919 : rtx
4920 40 : gen_expandv64qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4921 : {
4922 40 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4923 40 : static const uint8_t expand_encoding[] = {
4924 : 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x03, 0x01, 0x01,
4925 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
4926 : };
4927 40 : return expand_rtx (expand_encoding, operands);
4928 : }
4929 :
4930 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30722 */
4931 : rtx
4932 0 : gen_avx512dq_rangepv8sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4933 : {
4934 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4935 0 : static const uint8_t expand_encoding[] = {
4936 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x03, 0x01, 0x01,
4937 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x43
4938 : };
4939 0 : return expand_rtx (expand_encoding, operands);
4940 : }
4941 :
4942 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30722 */
4943 : rtx
4944 0 : gen_avx512dq_rangepv4df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4945 : {
4946 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4947 0 : static const uint8_t expand_encoding[] = {
4948 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x03, 0x01, 0x01,
4949 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x43
4950 : };
4951 0 : return expand_rtx (expand_encoding, operands);
4952 : }
4953 :
4954 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30742 */
4955 : rtx
4956 0 : gen_avx512dq_rangesv2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
4957 : {
4958 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
4959 0 : static const uint8_t expand_encoding[] = {
4960 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x09,
4961 : 0x6c, 0x1a, 0x6c, 0x03, 0x01, 0x01, 0x01, 0x02,
4962 : 0x01, 0x03, 0x81, 0x43, 0x01, 0x04, 0x01, 0x05,
4963 : 0x01, 0x01, 0x27, 0x01
4964 : };
4965 0 : return expand_rtx (expand_encoding, operands);
4966 : }
4967 :
4968 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30765 */
4969 : rtx
4970 0 : gen_avx512dq_fpclassv8sf (const rtx operand0, const rtx operand1, const rtx operand2)
4971 : {
4972 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4973 0 : static const uint8_t expand_encoding[] = {
4974 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x02, 0x01, 0x01,
4975 : 0x01, 0x02, 0x81, 0x42
4976 : };
4977 0 : return expand_rtx (expand_encoding, operands);
4978 : }
4979 :
4980 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30765 */
4981 : rtx
4982 16 : gen_avx512dq_fpclassv2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4983 : {
4984 16 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4985 16 : static const uint8_t expand_encoding[] = {
4986 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x02,
4987 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x42, 0x01, 0x03
4988 : };
4989 16 : return expand_rtx (expand_encoding, operands);
4990 : }
4991 :
4992 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30793 */
4993 : rtx
4994 0 : gen_avx512vl_getmantv16hf (const rtx operand0, const rtx operand1, const rtx operand2)
4995 : {
4996 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4997 0 : static const uint8_t expand_encoding[] = {
4998 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x02, 0x01, 0x01,
4999 : 0x01, 0x02, 0x81, 0x27
5000 : };
5001 0 : return expand_rtx (expand_encoding, operands);
5002 : }
5003 :
5004 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30793 */
5005 : rtx
5006 0 : gen_avx512f_getmantv16sf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5007 : {
5008 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5009 0 : static const uint8_t expand_encoding[] = {
5010 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x1a, 0x74,
5011 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x27, 0x01,
5012 : 0x03, 0x81, 0x33
5013 : };
5014 0 : return expand_rtx (expand_encoding, operands);
5015 : }
5016 :
5017 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30793 */
5018 : rtx
5019 109 : gen_avx512vl_getmantv4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5020 : {
5021 109 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5022 109 : static const uint8_t expand_encoding[] = {
5023 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
5024 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x27, 0x01,
5025 : 0x03, 0x01, 0x04
5026 : };
5027 109 : return expand_rtx (expand_encoding, operands);
5028 : }
5029 :
5030 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30793 */
5031 : rtx
5032 0 : gen_avx512vl_getmantv2df_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5033 : {
5034 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5035 0 : static const uint8_t expand_encoding[] = {
5036 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x1a, 0x6c,
5037 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x27, 0x01,
5038 : 0x03, 0x81, 0x33
5039 : };
5040 0 : return expand_rtx (expand_encoding, operands);
5041 : }
5042 :
5043 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30810 */
5044 : rtx
5045 42 : gen_avx512f_vgetmantv4sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
5046 : {
5047 42 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
5048 42 : static const uint8_t expand_encoding[] = {
5049 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
5050 : 0x6b, 0x81, 0x09, 0x6b, 0x1a, 0x6b, 0x03, 0x01,
5051 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x27, 0x01,
5052 : 0x04, 0x01, 0x05, 0x01, 0x01, 0x27, 0x01, 0x01,
5053 : 0x06, 0x81, 0x33
5054 : };
5055 42 : return expand_rtx (expand_encoding, operands);
5056 : }
5057 :
5058 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30849 */
5059 : rtx
5060 33 : gen_clzv8si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5061 : {
5062 33 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5063 33 : static const uint8_t expand_encoding[] = {
5064 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x81, 0x00,
5065 : 0x56, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
5066 : };
5067 33 : return expand_rtx (expand_encoding, operands);
5068 : }
5069 :
5070 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30860 */
5071 : rtx
5072 33 : gen_conflictv4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5073 : {
5074 33 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5075 33 : static const uint8_t expand_encoding[] = {
5076 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5077 : 0x01, 0x01, 0x01, 0x81, 0x29, 0x01, 0x02, 0x01,
5078 : 0x03
5079 : };
5080 33 : return expand_rtx (expand_encoding, operands);
5081 : }
5082 :
5083 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30940 */
5084 : rtx
5085 12 : gen_sha256rnds2 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5086 : {
5087 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5088 12 : static const uint8_t expand_encoding[] = {
5089 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x01,
5090 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x3a
5091 : };
5092 12 : return expand_rtx (expand_encoding, operands);
5093 : }
5094 :
5095 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31038 */
5096 : rtx
5097 12 : gen_vsm4rnds4_v16si (const rtx operand0, const rtx operand1, const rtx operand2)
5098 : {
5099 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5100 12 : static const uint8_t expand_encoding[] = {
5101 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x02, 0x01, 0x01,
5102 : 0x01, 0x02, 0x81, 0x74
5103 : };
5104 12 : return expand_rtx (expand_encoding, operands);
5105 : }
5106 :
5107 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31122 */
5108 : rtx
5109 0 : gen_vpmadd52huqv8di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5110 : {
5111 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5112 0 : static const uint8_t expand_encoding[] = {
5113 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x03, 0x01, 0x01,
5114 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x45
5115 : };
5116 0 : return expand_rtx (expand_encoding, operands);
5117 : }
5118 :
5119 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31154 */
5120 : rtx
5121 13 : gen_vpmadd52huqv2di_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5122 : {
5123 13 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5124 13 : static const uint8_t expand_encoding[] = {
5125 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x1a, 0x52,
5126 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5127 : 0x45, 0x01, 0x04, 0x01, 0x05
5128 : };
5129 13 : return expand_rtx (expand_encoding, operands);
5130 : }
5131 :
5132 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31188 */
5133 : rtx
5134 36 : gen_vpmultishiftqbv16qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5135 : {
5136 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5137 36 : static const uint8_t expand_encoding[] = {
5138 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x1a, 0x4f,
5139 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x46, 0x01,
5140 : 0x03, 0x01, 0x04
5141 : };
5142 36 : return expand_rtx (expand_encoding, operands);
5143 : }
5144 :
5145 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31206 */
5146 : rtx
5147 26 : gen_vpopcountv4di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5148 : {
5149 26 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5150 26 : static const uint8_t expand_encoding[] = {
5151 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x81, 0x02,
5152 : 0x57, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
5153 : };
5154 26 : return expand_rtx (expand_encoding, operands);
5155 : }
5156 :
5157 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31256 */
5158 : rtx
5159 26 : gen_vpopcountv16hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5160 : {
5161 26 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5162 26 : static const uint8_t expand_encoding[] = {
5163 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x81, 0x02,
5164 : 0x55, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
5165 : };
5166 26 : return expand_rtx (expand_encoding, operands);
5167 : }
5168 :
5169 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31280 */
5170 : rtx
5171 18 : gen_vgf2p8affineqb_v32qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5172 : {
5173 18 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5174 18 : static const uint8_t expand_encoding[] = {
5175 : 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x03, 0x01, 0x01,
5176 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x48
5177 : };
5178 18 : return expand_rtx (expand_encoding, operands);
5179 : }
5180 :
5181 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31297 */
5182 : rtx
5183 24 : gen_vgf2p8mulb_v16qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5184 : {
5185 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5186 24 : static const uint8_t expand_encoding[] = {
5187 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x1a, 0x4f,
5188 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x49, 0x01,
5189 : 0x03, 0x01, 0x04
5190 : };
5191 24 : return expand_rtx (expand_encoding, operands);
5192 : }
5193 :
5194 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31313 */
5195 : rtx
5196 11 : gen_vpshrd_v4di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5197 : {
5198 11 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5199 11 : static const uint8_t expand_encoding[] = {
5200 : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x03, 0x01, 0x01,
5201 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4b
5202 : };
5203 11 : return expand_rtx (expand_encoding, operands);
5204 : }
5205 :
5206 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31324 */
5207 : rtx
5208 22 : gen_vpshld_v32hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5209 : {
5210 22 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5211 22 : static const uint8_t expand_encoding[] = {
5212 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x1a, 0x5a,
5213 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5214 : 0x4a, 0x01, 0x04, 0x01, 0x05
5215 : };
5216 22 : return expand_rtx (expand_encoding, operands);
5217 : }
5218 :
5219 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31324 */
5220 : rtx
5221 10 : gen_vpshld_v8hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5222 : {
5223 10 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5224 10 : static const uint8_t expand_encoding[] = {
5225 : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x03, 0x01, 0x01,
5226 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4a
5227 : };
5228 10 : return expand_rtx (expand_encoding, operands);
5229 : }
5230 :
5231 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31335 */
5232 : rtx
5233 12 : gen_vpshrdv_v16hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5234 : {
5235 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5236 12 : static const uint8_t expand_encoding[] = {
5237 : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x03, 0x01, 0x01,
5238 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4c
5239 : };
5240 12 : return expand_rtx (expand_encoding, operands);
5241 : }
5242 :
5243 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31347 */
5244 : rtx
5245 12 : gen_vpshrdv_v8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5246 : {
5247 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5248 12 : static const uint8_t expand_encoding[] = {
5249 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
5250 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5251 : 0x4c, 0x01, 0x01, 0x01, 0x04
5252 : };
5253 12 : return expand_rtx (expand_encoding, operands);
5254 : }
5255 :
5256 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31377 */
5257 : rtx
5258 12 : gen_vpshrdv_v4di_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5259 : {
5260 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5261 12 : static const uint8_t expand_encoding[] = {
5262 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x1a, 0x57,
5263 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5264 : 0x4c, 0x01, 0x04, 0x01, 0x05
5265 : };
5266 12 : return expand_rtx (expand_encoding, operands);
5267 : }
5268 :
5269 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31392 */
5270 : rtx
5271 12 : gen_vpshldv_v8hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5272 : {
5273 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5274 12 : static const uint8_t expand_encoding[] = {
5275 : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x03, 0x01, 0x01,
5276 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4d
5277 : };
5278 12 : return expand_rtx (expand_encoding, operands);
5279 : }
5280 :
5281 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31404 */
5282 : rtx
5283 12 : gen_vpshldv_v4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5284 : {
5285 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5286 12 : static const uint8_t expand_encoding[] = {
5287 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5288 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5289 : 0x4d, 0x01, 0x01, 0x01, 0x04
5290 : };
5291 12 : return expand_rtx (expand_encoding, operands);
5292 : }
5293 :
5294 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31434 */
5295 : rtx
5296 12 : gen_vpshldv_v2di_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5297 : {
5298 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5299 12 : static const uint8_t expand_encoding[] = {
5300 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x1a, 0x52,
5301 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5302 : 0x4d, 0x01, 0x04, 0x01, 0x05
5303 : };
5304 12 : return expand_rtx (expand_encoding, operands);
5305 : }
5306 :
5307 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31577 */
5308 : rtx
5309 20 : gen_vpdpbusds_v8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5310 : {
5311 20 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5312 20 : static const uint8_t expand_encoding[] = {
5313 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x03, 0x01, 0x01,
5314 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4f
5315 : };
5316 20 : return expand_rtx (expand_encoding, operands);
5317 : }
5318 :
5319 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31621 */
5320 : rtx
5321 13 : gen_vpdpbusds_v8si_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5322 : {
5323 13 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5324 13 : static const uint8_t expand_encoding[] = {
5325 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
5326 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5327 : 0x4f, 0x01, 0x04, 0x01, 0x05
5328 : };
5329 13 : return expand_rtx (expand_encoding, operands);
5330 : }
5331 :
5332 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31715 */
5333 : rtx
5334 20 : gen_vpdpwssds_v4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5335 : {
5336 20 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5337 20 : static const uint8_t expand_encoding[] = {
5338 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x01,
5339 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x51
5340 : };
5341 20 : return expand_rtx (expand_encoding, operands);
5342 : }
5343 :
5344 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31773 */
5345 : rtx
5346 0 : gen_vaesdec_v16qi (const rtx operand0, const rtx operand1, const rtx operand2)
5347 : {
5348 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5349 0 : static const uint8_t expand_encoding[] = {
5350 : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x02, 0x01, 0x01,
5351 : 0x01, 0x02, 0x81, 0x52
5352 : };
5353 0 : return expand_rtx (expand_encoding, operands);
5354 : }
5355 :
5356 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31811 */
5357 : rtx
5358 11 : gen_vaesenc_v64qi (const rtx operand0, const rtx operand1, const rtx operand2)
5359 : {
5360 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5361 11 : static const uint8_t expand_encoding[] = {
5362 : 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x02, 0x01, 0x01,
5363 : 0x01, 0x02, 0x81, 0x54
5364 : };
5365 11 : return expand_rtx (expand_encoding, operands);
5366 : }
5367 :
5368 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31859 */
5369 : rtx
5370 24 : gen_avx512vl_vpshufbitqmbv16qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5371 : {
5372 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5373 24 : static const uint8_t expand_encoding[] = {
5374 : 0x1f, 0x01, 0x00, 0x49, 0x10, 0x1a, 0x10, 0x02,
5375 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x57, 0x01, 0x03
5376 : };
5377 24 : return expand_rtx (expand_encoding, operands);
5378 : }
5379 :
5380 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31945 */
5381 : rtx
5382 11 : gen_avx512f_cvtne2ps2bf16_v16bf (const rtx operand0, const rtx operand1, const rtx operand2)
5383 : {
5384 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5385 11 : static const uint8_t expand_encoding[] = {
5386 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6d, 0x72, 0x69,
5387 : 0x01, 0x02, 0x72, 0x69, 0x01, 0x01
5388 : };
5389 11 : return expand_rtx (expand_encoding, operands);
5390 : }
5391 :
5392 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32106 */
5393 : rtx
5394 24 : gen_avx512f_cvtneps2bf16_v8sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5395 : {
5396 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5397 24 : static const uint8_t expand_encoding[] = {
5398 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x72, 0x69,
5399 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
5400 : };
5401 24 : return expand_rtx (expand_encoding, operands);
5402 : }
5403 :
5404 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32150 */
5405 : rtx
5406 11 : gen_loadiwkey (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5407 : {
5408 11 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5409 11 : static const uint8_t expand_encoding[] = {
5410 : 0x17, 0x00, 0x02, 0x1b, 0x52, 0x04, 0x01, 0x00,
5411 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x62, 0x05,
5412 : 0x02, 0x11
5413 : };
5414 11 : return expand_rtx (expand_encoding, operands);
5415 : }
5416 :
5417 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32499 */
5418 : rtx
5419 14 : gen_vpdpbuuds_v8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5420 : {
5421 14 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5422 14 : static const uint8_t expand_encoding[] = {
5423 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x03, 0x01, 0x01,
5424 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x69
5425 : };
5426 14 : return expand_rtx (expand_encoding, operands);
5427 : }
5428 :
5429 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32510 */
5430 : rtx
5431 12 : gen_vpdpbsuds_v16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5432 : {
5433 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5434 12 : static const uint8_t expand_encoding[] = {
5435 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x03, 0x01, 0x01,
5436 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x67
5437 : };
5438 12 : return expand_rtx (expand_encoding, operands);
5439 : }
5440 :
5441 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32521 */
5442 : rtx
5443 12 : gen_vpdpbssds_v8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5444 : {
5445 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5446 12 : static const uint8_t expand_encoding[] = {
5447 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
5448 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5449 : 0x65, 0x01, 0x01, 0x01, 0x04
5450 : };
5451 12 : return expand_rtx (expand_encoding, operands);
5452 : }
5453 :
5454 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32521 */
5455 : rtx
5456 12 : gen_vpdpbuuds_v4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5457 : {
5458 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5459 12 : static const uint8_t expand_encoding[] = {
5460 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5461 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5462 : 0x69, 0x01, 0x01, 0x01, 0x04
5463 : };
5464 12 : return expand_rtx (expand_encoding, operands);
5465 : }
5466 :
5467 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32629 */
5468 : rtx
5469 12 : gen_vcvtneobf162ps_v16bf (const rtx operand0, const rtx operand1)
5470 : {
5471 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5472 12 : static const uint8_t expand_encoding[] = {
5473 : 0x1f, 0x01, 0x00, 0x71, 0x6f, 0x81, 0x0a, 0x69,
5474 : 0x01, 0x01, 0x17, 0x00, 0x08, 0x27, 0x01, 0x27,
5475 : 0x03, 0x27, 0x05, 0x27, 0x07, 0x27, 0x09, 0x27,
5476 : 0x0b, 0x27, 0x0d, 0x27, 0x0f
5477 : };
5478 12 : return expand_rtx (expand_encoding, operands);
5479 : }
5480 :
5481 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32667 */
5482 : rtx
5483 37 : gen_vcvt2ph2bf8v32hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5484 : {
5485 37 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5486 37 : static const uint8_t expand_encoding[] = {
5487 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x59, 0x1a, 0x59,
5488 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x7a, 0x01,
5489 : 0x03, 0x01, 0x04
5490 : };
5491 37 : return expand_rtx (expand_encoding, operands);
5492 : }
5493 :
5494 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32667 */
5495 : rtx
5496 0 : gen_vcvt2ph2hf8v16hf (const rtx operand0, const rtx operand1, const rtx operand2)
5497 : {
5498 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5499 0 : static const uint8_t expand_encoding[] = {
5500 : 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x02, 0x01, 0x01,
5501 : 0x01, 0x02, 0x81, 0x7c
5502 : };
5503 0 : return expand_rtx (expand_encoding, operands);
5504 : }
5505 :
5506 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32667 */
5507 : rtx
5508 37 : gen_vcvt2ph2hf8v8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5509 : {
5510 37 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5511 37 : static const uint8_t expand_encoding[] = {
5512 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x1a, 0x4f,
5513 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x7c, 0x01,
5514 : 0x03, 0x01, 0x04
5515 : };
5516 37 : return expand_rtx (expand_encoding, operands);
5517 : }
5518 :
5519 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32759 */
5520 : rtx
5521 0 : gen_vcvtbiasph2bf8v16hf (const rtx operand0, const rtx operand1, const rtx operand2)
5522 : {
5523 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5524 0 : static const uint8_t expand_encoding[] = {
5525 : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x02, 0x01, 0x01,
5526 : 0x01, 0x02, 0x81, 0x76
5527 : };
5528 0 : return expand_rtx (expand_encoding, operands);
5529 : }
5530 :
5531 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32844 */
5532 : rtx
5533 36 : gen_vcvtph2bf8v16hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5534 : {
5535 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5536 36 : static const uint8_t expand_encoding[] = {
5537 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x1a, 0x4f,
5538 : 0x01, 0x01, 0x01, 0x81, 0x7e, 0x01, 0x02, 0x01,
5539 : 0x03
5540 : };
5541 36 : return expand_rtx (expand_encoding, operands);
5542 : }
5543 :
5544 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32844 */
5545 : rtx
5546 0 : gen_vcvtph2hf8v32hf (const rtx operand0, const rtx operand1)
5547 : {
5548 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5549 0 : static const uint8_t expand_encoding[] = {
5550 : 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x01, 0x01, 0x01,
5551 : 0x82, 0x00
5552 : };
5553 0 : return expand_rtx (expand_encoding, operands);
5554 : }
5555 :
5556 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32853 */
5557 : rtx
5558 0 : gen_vcvthf82phv8hf (const rtx operand0, const rtx operand1)
5559 : {
5560 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5561 0 : static const uint8_t expand_encoding[] = {
5562 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x01, 0x01, 0x01,
5563 : 0x82, 0x02
5564 : };
5565 0 : return expand_rtx (expand_encoding, operands);
5566 : }
5567 :
5568 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32911 */
5569 : rtx
5570 21 : gen_vpdpwusd_v4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5571 : {
5572 21 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5573 21 : static const uint8_t expand_encoding[] = {
5574 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x01,
5575 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x6a
5576 : };
5577 21 : return expand_rtx (expand_encoding, operands);
5578 : }
5579 :
5580 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32922 */
5581 : rtx
5582 20 : gen_vpdpwuud_v16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5583 : {
5584 20 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5585 20 : static const uint8_t expand_encoding[] = {
5586 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x03, 0x01, 0x01,
5587 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x6e
5588 : };
5589 20 : return expand_rtx (expand_encoding, operands);
5590 : }
5591 :
5592 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32933 */
5593 : rtx
5594 12 : gen_vpdpwsud_v8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5595 : {
5596 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5597 12 : static const uint8_t expand_encoding[] = {
5598 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
5599 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5600 : 0x6c, 0x01, 0x01, 0x01, 0x04
5601 : };
5602 12 : return expand_rtx (expand_encoding, operands);
5603 : }
5604 :
5605 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32974 */
5606 : rtx
5607 0 : gen_vdpphps_v16sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5608 : {
5609 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5610 0 : static const uint8_t expand_encoding[] = {
5611 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x03, 0x01, 0x01,
5612 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x75
5613 : };
5614 0 : return expand_rtx (expand_encoding, operands);
5615 : }
5616 :
5617 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33012 */
5618 : rtx
5619 12 : gen_vdpphps_v4sf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5620 : {
5621 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5622 12 : static const uint8_t expand_encoding[] = {
5623 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
5624 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5625 : 0x75, 0x01, 0x04, 0x01, 0x05
5626 : };
5627 12 : return expand_rtx (expand_encoding, operands);
5628 : }
5629 :
5630 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33043 */
5631 : rtx
5632 12 : gen_avx10_2_sminbf16_v16bf (const rtx operand0, const rtx operand1, const rtx operand2)
5633 : {
5634 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5635 12 : static const uint8_t expand_encoding[] = {
5636 : 0x1f, 0x01, 0x00, 0x52, 0x6d, 0x01, 0x01, 0x01,
5637 : 0x02
5638 : };
5639 12 : return expand_rtx (expand_encoding, operands);
5640 : }
5641 :
5642 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33053 */
5643 : rtx
5644 12 : gen_avx10_2_subbf16_v32bf (const rtx operand0, const rtx operand1, const rtx operand2)
5645 : {
5646 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5647 12 : static const uint8_t expand_encoding[] = {
5648 : 0x1f, 0x01, 0x00, 0x3c, 0x72, 0x01, 0x01, 0x01,
5649 : 0x02
5650 : };
5651 12 : return expand_rtx (expand_encoding, operands);
5652 : }
5653 :
5654 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33053 */
5655 : rtx
5656 24 : gen_avx10_2_subbf16_v16bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5657 : {
5658 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5659 24 : static const uint8_t expand_encoding[] = {
5660 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6d, 0x3c, 0x6d,
5661 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
5662 : };
5663 24 : return expand_rtx (expand_encoding, operands);
5664 : }
5665 :
5666 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33053 */
5667 : rtx
5668 12 : gen_avx10_2_divbf16_v8bf (const rtx operand0, const rtx operand1, const rtx operand2)
5669 : {
5670 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5671 12 : static const uint8_t expand_encoding[] = {
5672 : 0x1f, 0x01, 0x00, 0x43, 0x69, 0x01, 0x01, 0x01,
5673 : 0x02
5674 : };
5675 12 : return expand_rtx (expand_encoding, operands);
5676 : }
5677 :
5678 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33092 */
5679 : rtx
5680 23 : gen_avx10_2_fmaddbf16_v16bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5681 : {
5682 23 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5683 23 : static const uint8_t expand_encoding[] = {
5684 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6d, 0x81, 0x19,
5685 : 0x6d, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
5686 : 0x01, 0x01, 0x04
5687 : };
5688 23 : return expand_rtx (expand_encoding, operands);
5689 : }
5690 :
5691 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33139 */
5692 : rtx
5693 0 : gen_avx10_2_fnmaddbf16_v8bf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5694 : {
5695 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5696 0 : static const uint8_t expand_encoding[] = {
5697 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x69, 0x3d, 0x69,
5698 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
5699 : };
5700 0 : return expand_rtx (expand_encoding, operands);
5701 : }
5702 :
5703 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33204 */
5704 : rtx
5705 11 : gen_avx10_2_fmsubbf16_v32bf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5706 : {
5707 11 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5708 11 : static const uint8_t expand_encoding[] = {
5709 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x81, 0x19,
5710 : 0x72, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x72, 0x01,
5711 : 0x03, 0x01, 0x04, 0x01, 0x05
5712 : };
5713 11 : return expand_rtx (expand_encoding, operands);
5714 : }
5715 :
5716 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33269 */
5717 : rtx
5718 0 : gen_avx10_2_fnmsubbf16_v32bf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5719 : {
5720 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5721 0 : static const uint8_t expand_encoding[] = {
5722 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x72, 0x3d, 0x72,
5723 : 0x01, 0x01, 0x01, 0x02, 0x3d, 0x72, 0x01, 0x03
5724 : };
5725 0 : return expand_rtx (expand_encoding, operands);
5726 : }
5727 :
5728 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33305 */
5729 : rtx
5730 12 : gen_avx10_2_fnmsubbf16_v32bf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5731 : {
5732 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5733 12 : static const uint8_t expand_encoding[] = {
5734 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x81, 0x19,
5735 : 0x72, 0x3d, 0x72, 0x01, 0x01, 0x01, 0x02, 0x3d,
5736 : 0x72, 0x01, 0x03, 0x01, 0x03, 0x01, 0x04
5737 : };
5738 12 : return expand_rtx (expand_encoding, operands);
5739 : }
5740 :
5741 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33331 */
5742 : rtx
5743 0 : gen_avx10_2_sqrtbf16_v16bf (const rtx operand0, const rtx operand1)
5744 : {
5745 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5746 0 : static const uint8_t expand_encoding[] = {
5747 : 0x1f, 0x01, 0x00, 0x7c, 0x6d, 0x01, 0x01
5748 : };
5749 0 : return expand_rtx (expand_encoding, operands);
5750 : }
5751 :
5752 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33339 */
5753 : rtx
5754 3 : gen_avx10_2_rcpbf16_v8bf (const rtx operand0, const rtx operand1)
5755 : {
5756 3 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5757 3 : static const uint8_t expand_encoding[] = {
5758 : 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x01, 0x01, 0x01,
5759 : 0x37
5760 : };
5761 3 : return expand_rtx (expand_encoding, operands);
5762 : }
5763 :
5764 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33367 */
5765 : rtx
5766 33 : gen_avx10_2_rndscalebf16_v32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5767 : {
5768 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5769 33 : static const uint8_t expand_encoding[] = {
5770 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x1a, 0x72,
5771 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x82, 0x04, 0x01,
5772 : 0x03, 0x01, 0x04
5773 : };
5774 33 : return expand_rtx (expand_encoding, operands);
5775 : }
5776 :
5777 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33367 */
5778 : rtx
5779 0 : gen_avx10_2_rndscalebf16_v8bf (const rtx operand0, const rtx operand1, const rtx operand2)
5780 : {
5781 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5782 0 : static const uint8_t expand_encoding[] = {
5783 : 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x02, 0x01, 0x01,
5784 : 0x01, 0x02, 0x82, 0x04
5785 : };
5786 0 : return expand_rtx (expand_encoding, operands);
5787 : }
5788 :
5789 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33377 */
5790 : rtx
5791 22 : gen_avx10_2_fpclassbf16_v16bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5792 : {
5793 22 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5794 22 : static const uint8_t expand_encoding[] = {
5795 : 0x1f, 0x01, 0x00, 0x49, 0x10, 0x1a, 0x10, 0x02,
5796 : 0x01, 0x01, 0x01, 0x02, 0x82, 0x07, 0x01, 0x03
5797 : };
5798 22 : return expand_rtx (expand_encoding, operands);
5799 : }
5800 :
5801 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33426 */
5802 : rtx
5803 36 : gen_avx10_2_cvtbf162ibsv32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5804 : {
5805 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5806 36 : static const uint8_t expand_encoding[] = {
5807 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x1a, 0x5a,
5808 : 0x01, 0x01, 0x01, 0x82, 0x08, 0x01, 0x02, 0x01,
5809 : 0x03
5810 : };
5811 36 : return expand_rtx (expand_encoding, operands);
5812 : }
5813 :
5814 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33426 */
5815 : rtx
5816 36 : gen_avx10_2_cvttbf162ibsv16bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5817 : {
5818 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5819 36 : static const uint8_t expand_encoding[] = {
5820 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x1a, 0x55,
5821 : 0x01, 0x01, 0x01, 0x82, 0x0e, 0x01, 0x02, 0x01,
5822 : 0x03
5823 : };
5824 36 : return expand_rtx (expand_encoding, operands);
5825 : }
5826 :
5827 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33441 */
5828 : rtx
5829 0 : gen_avx10_2_cvtph2ibsv32hf (const rtx operand0, const rtx operand1)
5830 : {
5831 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5832 0 : static const uint8_t expand_encoding[] = {
5833 : 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x01, 0x01, 0x01,
5834 : 0x82, 0x0a
5835 : };
5836 0 : return expand_rtx (expand_encoding, operands);
5837 : }
5838 :
5839 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33441 */
5840 : rtx
5841 36 : gen_avx10_2_cvtph2ibsv16hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5842 : {
5843 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5844 36 : static const uint8_t expand_encoding[] = {
5845 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x1a, 0x55,
5846 : 0x01, 0x01, 0x01, 0x82, 0x0a, 0x01, 0x02, 0x01,
5847 : 0x03
5848 : };
5849 36 : return expand_rtx (expand_encoding, operands);
5850 : }
5851 :
5852 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33456 */
5853 : rtx
5854 33 : gen_avx10_2_cvttph2ibsv32hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5855 : {
5856 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5857 33 : static const uint8_t expand_encoding[] = {
5858 : 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x02, 0x81, 0x09,
5859 : 0x5a, 0x1a, 0x5a, 0x01, 0x01, 0x01, 0x82, 0x10,
5860 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
5861 : };
5862 33 : return expand_rtx (expand_encoding, operands);
5863 : }
5864 :
5865 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33456 */
5866 : rtx
5867 36 : gen_avx10_2_cvttph2iubsv8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5868 : {
5869 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5870 36 : static const uint8_t expand_encoding[] = {
5871 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x1a, 0x50,
5872 : 0x01, 0x01, 0x01, 0x82, 0x11, 0x01, 0x02, 0x01,
5873 : 0x03
5874 : };
5875 36 : return expand_rtx (expand_encoding, operands);
5876 : }
5877 :
5878 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33471 */
5879 : rtx
5880 0 : gen_avx10_2_cvtps2iubsv8sf (const rtx operand0, const rtx operand1)
5881 : {
5882 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5883 0 : static const uint8_t expand_encoding[] = {
5884 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x01, 0x01, 0x01,
5885 : 0x82, 0x0d
5886 : };
5887 0 : return expand_rtx (expand_encoding, operands);
5888 : }
5889 :
5890 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33486 */
5891 : rtx
5892 36 : gen_avx10_2_cvttps2ibsv16sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5893 : {
5894 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5895 36 : static const uint8_t expand_encoding[] = {
5896 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a, 0x5b,
5897 : 0x01, 0x01, 0x01, 0x82, 0x12, 0x01, 0x02, 0x01,
5898 : 0x03
5899 : };
5900 36 : return expand_rtx (expand_encoding, operands);
5901 : }
5902 :
5903 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33486 */
5904 : rtx
5905 36 : gen_avx10_2_cvttps2ibsv4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5906 : {
5907 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5908 36 : static const uint8_t expand_encoding[] = {
5909 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5910 : 0x01, 0x01, 0x01, 0x82, 0x12, 0x01, 0x02, 0x01,
5911 : 0x03
5912 : };
5913 36 : return expand_rtx (expand_encoding, operands);
5914 : }
5915 :
5916 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33510 */
5917 : rtx
5918 0 : gen_avx10_2_vcvttps2dqsv8sf (const rtx operand0, const rtx operand1)
5919 : {
5920 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5921 0 : static const uint8_t expand_encoding[] = {
5922 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x01, 0x01, 0x01,
5923 : 0x82, 0x14
5924 : };
5925 0 : return expand_rtx (expand_encoding, operands);
5926 : }
5927 :
5928 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33510 */
5929 : rtx
5930 0 : gen_avx10_2_vcvttpd2dqsv8df (const rtx operand0, const rtx operand1)
5931 : {
5932 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5933 0 : static const uint8_t expand_encoding[] = {
5934 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x01, 0x01, 0x01,
5935 : 0x82, 0x14
5936 : };
5937 0 : return expand_rtx (expand_encoding, operands);
5938 : }
5939 :
5940 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33510 */
5941 : rtx
5942 36 : gen_avx10_2_vcvttpd2dqsv4df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5943 : {
5944 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5945 36 : static const uint8_t expand_encoding[] = {
5946 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5947 : 0x01, 0x01, 0x01, 0x82, 0x14, 0x01, 0x02, 0x01,
5948 : 0x03
5949 : };
5950 36 : return expand_rtx (expand_encoding, operands);
5951 : }
5952 :
5953 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33521 */
5954 : rtx
5955 33 : gen_avx10_2_vcvttpd2qqsv8df_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5956 : {
5957 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5958 33 : static const uint8_t expand_encoding[] = {
5959 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x02, 0x81, 0x09,
5960 : 0x5c, 0x1a, 0x5c, 0x01, 0x01, 0x01, 0x82, 0x14,
5961 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
5962 : };
5963 33 : return expand_rtx (expand_encoding, operands);
5964 : }
5965 :
5966 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33521 */
5967 : rtx
5968 36 : gen_avx10_2_vcvttpd2uqqsv2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5969 : {
5970 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5971 36 : static const uint8_t expand_encoding[] = {
5972 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x1a, 0x52,
5973 : 0x01, 0x01, 0x01, 0x82, 0x15, 0x01, 0x02, 0x01,
5974 : 0x03
5975 : };
5976 36 : return expand_rtx (expand_encoding, operands);
5977 : }
5978 :
5979 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33532 */
5980 : rtx
5981 36 : gen_avx10_2_vcvttps2uqqsv4di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5982 : {
5983 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5984 36 : static const uint8_t expand_encoding[] = {
5985 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x1a, 0x57,
5986 : 0x01, 0x01, 0x01, 0x82, 0x15, 0x01, 0x02, 0x01,
5987 : 0x03
5988 : };
5989 36 : return expand_rtx (expand_encoding, operands);
5990 : }
5991 :
5992 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33543 */
5993 : rtx
5994 0 : gen_avx10_2_vcvttsd2usisdi (const rtx operand0, const rtx operand1)
5995 : {
5996 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5997 0 : static const uint8_t expand_encoding[] = {
5998 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x81, 0x0a,
5999 : 0x2e, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
6000 : 0x82, 0x15
6001 : };
6002 0 : return expand_rtx (expand_encoding, operands);
6003 : }
6004 :
6005 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33556 */
6006 : rtx
6007 24 : gen_avx10_2_vcvttss2usisdi_round (const rtx operand0, const rtx operand1, const rtx operand2)
6008 : {
6009 24 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6010 24 : static const uint8_t expand_encoding[] = {
6011 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x02, 0x1a, 0x12,
6012 : 0x01, 0x81, 0x0a, 0x2d, 0x01, 0x01, 0x17, 0x00,
6013 : 0x01, 0x27, 0x00, 0x82, 0x15, 0x01, 0x02, 0x81,
6014 : 0x33
6015 : };
6016 24 : return expand_rtx (expand_encoding, operands);
6017 : }
6018 :
6019 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33581 */
6020 : rtx
6021 0 : gen_avx10_2_minmaxpv16hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6022 : {
6023 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6024 0 : static const uint8_t expand_encoding[] = {
6025 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x03, 0x01, 0x01,
6026 : 0x01, 0x02, 0x01, 0x03, 0x82, 0x17
6027 : };
6028 0 : return expand_rtx (expand_encoding, operands);
6029 : }
6030 :
6031 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33581 */
6032 : rtx
6033 0 : gen_avx10_2_minmaxpv16sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6034 : {
6035 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6036 0 : static const uint8_t expand_encoding[] = {
6037 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x03, 0x01, 0x01,
6038 : 0x01, 0x02, 0x01, 0x03, 0x82, 0x17
6039 : };
6040 0 : return expand_rtx (expand_encoding, operands);
6041 : }
6042 :
6043 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33581 */
6044 : rtx
6045 0 : gen_avx10_2_minmaxpv4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6046 : {
6047 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6048 0 : static const uint8_t expand_encoding[] = {
6049 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x03, 0x01, 0x01,
6050 : 0x01, 0x02, 0x01, 0x03, 0x82, 0x17
6051 : };
6052 0 : return expand_rtx (expand_encoding, operands);
6053 : }
6054 :
6055 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33581 */
6056 : rtx
6057 0 : gen_avx10_2_minmaxpv4df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6058 : {
6059 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6060 0 : static const uint8_t expand_encoding[] = {
6061 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x03, 0x01, 0x01,
6062 : 0x01, 0x02, 0x01, 0x03, 0x82, 0x17
6063 : };
6064 0 : return expand_rtx (expand_encoding, operands);
6065 : }
6066 :
6067 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33593 */
6068 : rtx
6069 0 : gen_avx10_2_minmaxsv8hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6070 : {
6071 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6072 0 : static const uint8_t expand_encoding[] = {
6073 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
6074 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x82,
6075 : 0x17, 0x01, 0x01, 0x27, 0x01
6076 : };
6077 0 : return expand_rtx (expand_encoding, operands);
6078 : }
6079 :
6080 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33593 */
6081 : rtx
6082 0 : gen_avx10_2_minmaxsv2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
6083 : {
6084 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
6085 0 : static const uint8_t expand_encoding[] = {
6086 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x09,
6087 : 0x6c, 0x1a, 0x6c, 0x03, 0x01, 0x01, 0x01, 0x02,
6088 : 0x01, 0x03, 0x82, 0x17, 0x01, 0x04, 0x01, 0x05,
6089 : 0x01, 0x01, 0x27, 0x01
6090 : };
6091 0 : return expand_rtx (expand_encoding, operands);
6092 : }
6093 :
6094 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33608 */
6095 : rtx
6096 0 : gen_avx10_2_vmovrswv16hi (const rtx operand0, const rtx operand1)
6097 : {
6098 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6099 0 : static const uint8_t expand_encoding[] = {
6100 : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x01, 0x01, 0x01,
6101 : 0x82, 0x1b
6102 : };
6103 0 : return expand_rtx (expand_encoding, operands);
6104 : }
6105 :
6106 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33608 */
6107 : rtx
6108 33 : gen_avx10_2_vmovrsdv4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6109 : {
6110 33 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6111 33 : static const uint8_t expand_encoding[] = {
6112 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
6113 : 0x01, 0x01, 0x01, 0x82, 0x1b, 0x01, 0x02, 0x01,
6114 : 0x03
6115 : };
6116 33 : return expand_rtx (expand_encoding, operands);
6117 : }
6118 :
6119 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33648 */
6120 : rtx
6121 33 : gen_avx512bmm_vbitrevb_v64qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6122 : {
6123 33 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6124 33 : static const uint8_t expand_encoding[] = {
6125 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x59, 0x1a, 0x59,
6126 : 0x01, 0x01, 0x01, 0x82, 0x1a, 0x01, 0x02, 0x01,
6127 : 0x03
6128 : };
6129 33 : return expand_rtx (expand_encoding, operands);
6130 : }
6131 :
6132 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:281 */
6133 : rtx
6134 2006 : gen_atomic_storesi_1 (const rtx operand0, const rtx operand1, const rtx operand2)
6135 : {
6136 2006 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6137 2006 : static const uint8_t expand_encoding[] = {
6138 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x02, 0x01, 0x01,
6139 : 0x01, 0x02, 0x82, 0x24
6140 : };
6141 2006 : return expand_rtx (expand_encoding, operands);
6142 : }
6143 :
6144 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:489 */
6145 : rtx
6146 2613 : gen_atomic_compare_and_swaphi_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
6147 : {
6148 2613 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
6149 2613 : static const uint8_t expand_encoding[] = {
6150 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x1b, 0x10,
6151 : 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
6152 : 0x04, 0x6d, 0x1f, 0x01, 0x01, 0x1b, 0x10, 0x01,
6153 : 0x27, 0x00, 0x6d, 0x1f, 0x30, 0x0c, 0x11, 0x1b,
6154 : 0x0c, 0x01, 0x27, 0x00, 0x6d
6155 : };
6156 2613 : return expand_rtx (expand_encoding, operands);
6157 : }
6158 :
6159 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:814 */
6160 : rtx
6161 18 : gen_rao_aandsi (const rtx operand0, const rtx operand1)
6162 : {
6163 18 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6164 18 : static const uint8_t expand_encoding[] = {
6165 : 0x1f, 0x01, 0x00, 0x1b, 0x11, 0x02, 0x49, 0x11,
6166 : 0x01, 0x00, 0x01, 0x01, 0x27, 0x00, 0x71
6167 : };
6168 18 : return expand_rtx (expand_encoding, operands);
6169 : }
6170 :
6171 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:814 */
6172 : rtx
6173 19 : gen_rao_axordi (const rtx operand0, const rtx operand1)
6174 : {
6175 19 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6176 19 : static const uint8_t expand_encoding[] = {
6177 : 0x1f, 0x01, 0x00, 0x1b, 0x12, 0x02, 0x4b, 0x12,
6178 : 0x01, 0x00, 0x01, 0x01, 0x27, 0x00, 0x71
6179 : };
6180 19 : return expand_rtx (expand_encoding, operands);
6181 : }
6182 :
6183 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:878 */
6184 : rtx
6185 121 : gen_atomic_andqi (const rtx operand0, const rtx operand1, const rtx operand2)
6186 : {
6187 121 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6188 121 : static const uint8_t expand_encoding[] = {
6189 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1b, 0x0f,
6190 : 0x02, 0x49, 0x0f, 0x01, 0x00, 0x01, 0x01, 0x01,
6191 : 0x02, 0x6f, 0x05, 0x02, 0x11
6192 : };
6193 121 : return expand_rtx (expand_encoding, operands);
6194 : }
6195 :
6196 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:878 */
6197 : rtx
6198 216 : gen_atomic_ordi (const rtx operand0, const rtx operand1, const rtx operand2)
6199 : {
6200 216 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6201 216 : static const uint8_t expand_encoding[] = {
6202 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1b, 0x12,
6203 : 0x02, 0x4a, 0x12, 0x01, 0x00, 0x01, 0x01, 0x01,
6204 : 0x02, 0x6f, 0x05, 0x02, 0x11
6205 : };
6206 216 : return expand_rtx (expand_encoding, operands);
6207 : }
6208 :
6209 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:985 */
6210 : rtx
6211 37 : gen_atomic_bit_test_and_resetdi_1 (const rtx operand0, const rtx operand1, const rtx operand2)
6212 : {
6213 37 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6214 37 : static const uint8_t expand_encoding[] = {
6215 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a,
6216 : 0x08, 0x1b, 0x12, 0x02, 0x01, 0x00, 0x01, 0x02,
6217 : 0x6e, 0x27, 0x00, 0x1f, 0x81, 0x06, 0x12, 0x01,
6218 : 0x00, 0x27, 0x01, 0x01, 0x01, 0x27, 0x00
6219 : };
6220 37 : return expand_rtx (expand_encoding, operands);
6221 : }
6222 :
6223 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1089 */
6224 : rtx
6225 28 : gen_atomic_or_fetch_cmp_0qi_1 (const rtx operand0, const rtx operand1, const rtx operand2)
6226 : {
6227 28 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6228 28 : static const uint8_t expand_encoding[] = {
6229 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x05, 0x11, 0x3a,
6230 : 0x05, 0x4a, 0x0f, 0x1b, 0x0f, 0x02, 0x01, 0x00,
6231 : 0x01, 0x02, 0x6e, 0x01, 0x01, 0x27, 0x00, 0x1f,
6232 : 0x01, 0x00, 0x4a, 0x0f, 0x01, 0x00, 0x01, 0x01
6233 : };
6234 28 : return expand_rtx (expand_encoding, operands);
6235 : }
6236 :
6237 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1089 */
6238 : rtx
6239 44 : gen_atomic_xor_fetch_cmp_0di_1 (const rtx operand0, const rtx operand1, const rtx operand2)
6240 : {
6241 44 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6242 44 : static const uint8_t expand_encoding[] = {
6243 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x05, 0x11, 0x3a,
6244 : 0x05, 0x4b, 0x12, 0x1b, 0x12, 0x02, 0x01, 0x00,
6245 : 0x01, 0x02, 0x6e, 0x01, 0x01, 0x27, 0x00, 0x1f,
6246 : 0x01, 0x00, 0x4b, 0x12, 0x01, 0x00, 0x01, 0x01
6247 : };
6248 44 : return expand_rtx (expand_encoding, operands);
6249 : }
6250 :
6251 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1508 */
6252 : rtx
6253 48085 : gen_cstoreqi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6254 : {
6255 48085 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6256 48085 : start_sequence ();
6257 48085 : {
6258 : #define FAIL return (end_sequence (), nullptr)
6259 : #define DONE return end_sequence ()
6260 : #line 1516 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6261 : {
6262 : if (QImode == (TARGET_64BIT ? TImode : DImode))
6263 : {
6264 : if (GET_CODE (operands[1]) != EQ
6265 : && GET_CODE (operands[1]) != NE)
6266 : FAIL;
6267 : }
6268 : else if (MEM_P (operands[2]) && MEM_P (operands[3]))
6269 : operands[2] = force_reg (QImode, operands[2]);
6270 : ix86_expand_setcc (operands[0], GET_CODE (operands[1]),
6271 : operands[2], operands[3]);
6272 : DONE;
6273 : }
6274 : #undef DONE
6275 : #undef FAIL
6276 : }
6277 : static const uint8_t expand_encoding[] = {
6278 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
6279 : 0x02, 0x01, 0x03, 0x1f, 0x01, 0x00, 0x03, 0x00,
6280 : 0x01, 0x30, 0x02, 0x11, 0x27, 0x00
6281 : };
6282 : return complete_seq (expand_encoding, operands);
6283 : }
6284 :
6285 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1783 */
6286 : rtx
6287 : gen_cbranchhf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6288 : {
6289 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6290 : start_sequence ();
6291 : {
6292 : #define FAIL return (end_sequence (), nullptr)
6293 : #define DONE return end_sequence ()
6294 : #line 1794 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6295 : {
6296 : ix86_expand_branch (GET_CODE (operands[0]),
6297 : operands[1], operands[2], operands[3]);
6298 : DONE;
6299 : }
6300 : #undef DONE
6301 : #undef FAIL
6302 : }
6303 : static const uint8_t expand_encoding[] = {
6304 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
6305 : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x03,
6306 : 0x00, 0x00, 0x30, 0x02, 0x11, 0x27, 0x00, 0x37,
6307 : 0x00, 0x01, 0x03, 0x2f
6308 : };
6309 : return complete_seq (expand_encoding, operands);
6310 : }
6311 :
6312 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1896 */
6313 : rtx
6314 : gen_cbranchcc4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6315 : {
6316 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6317 : start_sequence ();
6318 : {
6319 : #define FAIL return (end_sequence (), nullptr)
6320 : #define DONE return end_sequence ()
6321 : #line 1904 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6322 : {
6323 : ix86_expand_branch (GET_CODE (operands[0]),
6324 : operands[1], operands[2], operands[3]);
6325 : DONE;
6326 : }
6327 : #undef DONE
6328 : #undef FAIL
6329 : }
6330 : static const uint8_t expand_encoding[] = {
6331 : 0x01, 0x1f, 0x2f, 0x39, 0x00, 0x03, 0x00, 0x00,
6332 : 0x01, 0x01, 0x01, 0x02, 0x37, 0x00, 0x01, 0x03,
6333 : 0x2f
6334 : };
6335 : return complete_seq (expand_encoding, operands);
6336 : }
6337 :
6338 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1918 */
6339 : rtx
6340 : gen_cstoreccs4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6341 : {
6342 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6343 : start_sequence ();
6344 : {
6345 : #define FAIL return (end_sequence (), nullptr)
6346 : #define DONE return end_sequence ()
6347 : #line 1924 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6348 : {
6349 : ix86_expand_setcc (operands[0], GET_CODE (operands[1]),
6350 : operands[2], operands[3]);
6351 : DONE;
6352 : }
6353 : #undef DONE
6354 : #undef FAIL
6355 : }
6356 : static const uint8_t expand_encoding[] = {
6357 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x00, 0x01, 0x01,
6358 : 0x02, 0x01, 0x03
6359 : };
6360 : return complete_seq (expand_encoding, operands);
6361 : }
6362 :
6363 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2238 */
6364 : extern rtx_insn *gen_split_7 (rtx_insn *, rtx *);
6365 : rtx_insn *
6366 : gen_split_7 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6367 : {
6368 : if (dump_file)
6369 : fprintf (dump_file, "Splitting with gen_split_7 (i386.md:2238)\n");
6370 : start_sequence ();
6371 : #define FAIL return (end_sequence (), nullptr)
6372 : #define DONE return end_sequence ()
6373 : #line 2246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6374 : {
6375 : split_double_mode (DImode, &operands[1], 1, &operands[2], &operands[3]);
6376 :
6377 : operands[1] = gen_lowpart (DImode, operands[2]);
6378 : operands[2] = gen_rtx_MEM (SImode,
6379 : plus_constant (Pmode, stack_pointer_rtx, 4));
6380 : }
6381 : #undef DONE
6382 : #undef FAIL
6383 : static const uint8_t expand_encoding[] = {
6384 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x1f, 0x01,
6385 : 0x02, 0x01, 0x03
6386 : };
6387 : return complete_seq (expand_encoding, operands);
6388 : }
6389 :
6390 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2389 */
6391 : rtx
6392 : gen_movoi (const rtx operand0, const rtx operand1)
6393 : {
6394 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6395 : start_sequence ();
6396 : {
6397 : #define FAIL return (end_sequence (), nullptr)
6398 : #define DONE return end_sequence ()
6399 : #line 2393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6400 : ix86_expand_vector_move (OImode, operands); DONE;
6401 : #undef DONE
6402 : #undef FAIL
6403 : }
6404 : static const uint8_t expand_encoding[] = {
6405 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
6406 : };
6407 : return complete_seq (expand_encoding, operands);
6408 : }
6409 :
6410 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2423 */
6411 : rtx
6412 : gen_movhi (const rtx operand0, const rtx operand1)
6413 : {
6414 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6415 : start_sequence ();
6416 : {
6417 : #define FAIL return (end_sequence (), nullptr)
6418 : #define DONE return end_sequence ()
6419 : #line 2427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6420 : ix86_expand_move (HImode, operands); DONE;
6421 : #undef DONE
6422 : #undef FAIL
6423 : }
6424 : static const uint8_t expand_encoding[] = {
6425 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
6426 : };
6427 : return complete_seq (expand_encoding, operands);
6428 : }
6429 :
6430 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2586 */
6431 : extern rtx_insn *gen_split_20 (rtx_insn *, rtx *);
6432 : rtx_insn *
6433 : gen_split_20 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6434 : {
6435 : if (dump_file)
6436 : fprintf (dump_file, "Splitting with gen_split_20 (i386.md:2586)\n");
6437 : start_sequence ();
6438 : #define FAIL return (end_sequence (), nullptr)
6439 : #define DONE return end_sequence ()
6440 : #line 2596 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6441 : {
6442 : operands[2] = lowpart_subreg (V2DImode, operands[0], TImode);
6443 : operands[3] = gen_highpart (DImode, operands[1]);
6444 :
6445 : emit_move_insn (gen_lowpart (DImode, operands[0]),
6446 : gen_lowpart (DImode, operands[1]));
6447 : }
6448 : #undef DONE
6449 : #undef FAIL
6450 : static const uint8_t expand_encoding[] = {
6451 : 0x01, 0x1f, 0x01, 0x02, 0x81, 0x09, 0x52, 0x81,
6452 : 0x0c, 0x52, 0x01, 0x03, 0x01, 0x02, 0x27, 0x02
6453 : };
6454 : return complete_seq (expand_encoding, operands);
6455 : }
6456 :
6457 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3002 */
6458 : extern rtx_insn *gen_peephole2_10 (rtx_insn *, rtx *);
6459 : rtx_insn *
6460 : gen_peephole2_10 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6461 : {
6462 : if (dump_file)
6463 : fprintf (dump_file, "Splitting with gen_peephole2_10 (i386.md:3002)\n");
6464 : start_sequence ();
6465 : static const uint8_t expand_encoding[] = {
6466 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x01,
6467 : 0x01, 0x05, 0x02, 0x11
6468 : };
6469 : return complete_seq (expand_encoding, operands);
6470 : }
6471 :
6472 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3432 */
6473 : extern rtx_insn *gen_peephole2_21 (rtx_insn *, rtx *);
6474 : rtx_insn *
6475 : gen_peephole2_21 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6476 : {
6477 : if (dump_file)
6478 : fprintf (dump_file, "Splitting with gen_peephole2_21 (i386.md:3432)\n");
6479 : start_sequence ();
6480 : static const uint8_t expand_encoding[] = {
6481 : 0x01, 0x1f, 0x01, 0x01, 0x01, 0x00
6482 : };
6483 : return complete_seq (expand_encoding, operands);
6484 : }
6485 :
6486 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3508 */
6487 : rtx
6488 : gen_extvhi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6489 : {
6490 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6491 : start_sequence ();
6492 : {
6493 : #define FAIL return (end_sequence (), nullptr)
6494 : #define DONE return end_sequence ()
6495 : #line 3514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6496 : {
6497 : /* Handle extractions from %ah et al. */
6498 : if (INTVAL (operands[2]) != 8 || INTVAL (operands[3]) != 8)
6499 : FAIL;
6500 :
6501 : unsigned int regno = reg_or_subregno (operands[1]);
6502 :
6503 : /* Be careful to expand only with registers having upper parts. */
6504 : if (regno <= LAST_VIRTUAL_REGISTER && !QI_REGNO_P (regno))
6505 : operands[1] = copy_to_reg (operands[1]);
6506 : }
6507 : #undef DONE
6508 : #undef FAIL
6509 : }
6510 : static const uint8_t expand_encoding[] = {
6511 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x05, 0x10, 0x01,
6512 : 0x01, 0x01, 0x02, 0x01, 0x03
6513 : };
6514 : return complete_seq (expand_encoding, operands);
6515 : }
6516 :
6517 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3672 */
6518 : extern rtx_insn *gen_peephole2_31 (rtx_insn *, rtx *);
6519 : rtx_insn *
6520 : gen_peephole2_31 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6521 : {
6522 : if (dump_file)
6523 : fprintf (dump_file, "Splitting with gen_peephole2_31 (i386.md:3672)\n");
6524 : start_sequence ();
6525 : static const uint8_t expand_encoding[] = {
6526 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x27,
6527 : 0x00, 0x05, 0x02, 0x11
6528 : };
6529 : return complete_seq (expand_encoding, operands);
6530 : }
6531 :
6532 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3686 */
6533 : extern rtx_insn *gen_peephole2_38 (rtx_insn *, rtx *);
6534 : rtx_insn *
6535 : gen_peephole2_38 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6536 : {
6537 : if (dump_file)
6538 : fprintf (dump_file, "Splitting with gen_peephole2_38 (i386.md:3686)\n");
6539 : start_sequence ();
6540 : #define FAIL return (end_sequence (), nullptr)
6541 : #define DONE return end_sequence ()
6542 : #line 3696 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6543 : {
6544 : HOST_WIDE_INT tmp = INTVAL (operands[1]) & ~HOST_WIDE_INT_C (0xff00);
6545 : tmp |= (INTVAL (operands[3]) & 0xff) << 8;
6546 : operands[4] = gen_int_mode (tmp, DImode);
6547 : }
6548 : #undef DONE
6549 : #undef FAIL
6550 : static const uint8_t expand_encoding[] = {
6551 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x04
6552 : };
6553 : return complete_seq (expand_encoding, operands);
6554 : }
6555 :
6556 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3775 */
6557 : extern rtx_insn *gen_split_35 (rtx_insn *, rtx *);
6558 : rtx_insn *
6559 : gen_split_35 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
6560 : {
6561 : if (dump_file)
6562 : fprintf (dump_file, "Splitting with gen_split_35 (i386.md:3775)\n");
6563 : start_sequence ();
6564 : #define FAIL return (end_sequence (), nullptr)
6565 : #define DONE return end_sequence ()
6566 : #line 3789 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6567 : {
6568 : operands[4] = gen_highpart (SImode, operands[1]);
6569 : split_double_concat (DImode, operands[0], operands[2], operands[4]);
6570 : DONE;
6571 : }
6572 : #undef DONE
6573 : #undef FAIL
6574 : static const uint8_t expand_encoding[] = {
6575 : 0x01, 0x27, 0x00
6576 : };
6577 : return complete_seq (expand_encoding, operands);
6578 : }
6579 :
6580 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:4011 */
6581 : extern rtx_insn *gen_split_45 (rtx_insn *, rtx *);
6582 : rtx_insn *
6583 : gen_split_45 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6584 : {
6585 : if (dump_file)
6586 : fprintf (dump_file, "Splitting with gen_split_45 (i386.md:4011)\n");
6587 : start_sequence ();
6588 : #define FAIL return (end_sequence (), nullptr)
6589 : #define DONE return end_sequence ()
6590 : #line 4017 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6591 : {
6592 : rtx op = XEXP (operands[0], 0);
6593 : if (GET_CODE (op) == PRE_DEC)
6594 : {
6595 : gcc_assert (!TARGET_64BIT);
6596 : op = GEN_INT (-4);
6597 : }
6598 : else
6599 : {
6600 : op = XEXP (XEXP (op, 1), 1);
6601 : gcc_assert (CONST_INT_P (op));
6602 : }
6603 : operands[2] = op;
6604 : /* Preserve memory attributes. */
6605 : operands[0] = replace_equiv_address (operands[0], stack_pointer_rtx);
6606 : }
6607 : #undef DONE
6608 : #undef FAIL
6609 : static const uint8_t expand_encoding[] = {
6610 : 0x02, 0x1f, 0x30, 0x11, 0x07, 0x3b, 0x11, 0x30,
6611 : 0x11, 0x07, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x01,
6612 : 0x01
6613 : };
6614 : return complete_seq (expand_encoding, operands);
6615 : }
6616 :
6617 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:4060 */
6618 : rtx
6619 : gen_movxf (const rtx operand0, const rtx operand1)
6620 : {
6621 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6622 : start_sequence ();
6623 : {
6624 : #define FAIL return (end_sequence (), nullptr)
6625 : #define DONE return end_sequence ()
6626 : #line 4064 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6627 : ix86_expand_move (XFmode, operands); DONE;
6628 : #undef DONE
6629 : #undef FAIL
6630 : }
6631 : static const uint8_t expand_encoding[] = {
6632 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
6633 : };
6634 : return complete_seq (expand_encoding, operands);
6635 : }
6636 :
6637 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:4701 */
6638 : extern rtx_insn *gen_split_59 (rtx_insn *, rtx *);
6639 : rtx_insn *
6640 : gen_split_59 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6641 : {
6642 : if (dump_file)
6643 : fprintf (dump_file, "Splitting with gen_split_59 (i386.md:4701)\n");
6644 : start_sequence ();
6645 : #define FAIL return (end_sequence (), nullptr)
6646 : #define DONE return end_sequence ()
6647 : #line 4709 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6648 : split_double_mode (TImode, &operands[0], 1, &operands[3], &operands[4]);
6649 : #undef DONE
6650 : #undef FAIL
6651 : static const uint8_t expand_encoding[] = {
6652 : 0x02, 0x1f, 0x01, 0x03, 0x01, 0x01, 0x1f, 0x01,
6653 : 0x04, 0x27, 0x00
6654 : };
6655 : return complete_seq (expand_encoding, operands);
6656 : }
6657 :
6658 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:4937 */
6659 : extern rtx_insn *gen_split_65 (rtx_insn *, rtx *);
6660 : rtx_insn *
6661 : gen_split_65 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6662 : {
6663 : if (dump_file)
6664 : fprintf (dump_file, "Splitting with gen_split_65 (i386.md:4937)\n");
6665 : start_sequence ();
6666 : #define FAIL return (end_sequence (), nullptr)
6667 : #define DONE return end_sequence ()
6668 : #line 4946 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6669 : {
6670 : if (!REG_P (operands[1])
6671 : || REGNO (operands[0]) != REGNO (operands[1]))
6672 : {
6673 : ix86_expand_clear (operands[0]);
6674 :
6675 : gcc_assert (!TARGET_PARTIAL_REG_STALL);
6676 : emit_insn (gen_rtx_SET
6677 : (gen_rtx_STRICT_LOW_PART
6678 : (VOIDmode, gen_lowpart (QImode, operands[0])),
6679 : operands[1]));
6680 : DONE;
6681 : }
6682 :
6683 : operands[0] = gen_lowpart (SImode, operands[0]);
6684 : }
6685 : #undef DONE
6686 : #undef FAIL
6687 : static const uint8_t expand_encoding[] = {
6688 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49,
6689 : 0x11, 0x01, 0x00, 0x27, 0x81, 0x7f, 0x05, 0x02,
6690 : 0x11
6691 : };
6692 : return complete_seq (expand_encoding, operands);
6693 : }
6694 :
6695 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5155 */
6696 : extern rtx_insn *gen_peephole2_53 (rtx_insn *, rtx *);
6697 : rtx_insn *
6698 : gen_peephole2_53 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6699 : {
6700 : if (dump_file)
6701 : fprintf (dump_file, "Splitting with gen_peephole2_53 (i386.md:5155)\n");
6702 : start_sequence ();
6703 : static const uint8_t expand_encoding[] = {
6704 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x17, 0x00,
6705 : 0x02, 0x1f, 0x01, 0x03, 0x4f, 0x12, 0x01, 0x02,
6706 : 0x27, 0x3f, 0x05, 0x02, 0x11
6707 : };
6708 : return complete_seq (expand_encoding, operands);
6709 : }
6710 :
6711 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5312 */
6712 : extern rtx_insn *gen_split_75 (rtx_insn *, rtx *);
6713 : rtx_insn *
6714 : gen_split_75 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6715 : {
6716 : if (dump_file)
6717 : fprintf (dump_file, "Splitting with gen_split_75 (i386.md:5312)\n");
6718 : start_sequence ();
6719 : #define FAIL return (end_sequence (), nullptr)
6720 : #define DONE return end_sequence ()
6721 : #line 5318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6722 : operands[2] = GEN_INT (-GET_MODE_SIZE (XFmode));
6723 : #undef DONE
6724 : #undef FAIL
6725 : static const uint8_t expand_encoding[] = {
6726 : 0x02, 0x1f, 0x30, 0x12, 0x07, 0x3b, 0x12, 0x30,
6727 : 0x12, 0x07, 0x01, 0x02, 0x1f, 0x36, 0x2f, 0x30,
6728 : 0x12, 0x07, 0x71, 0x2f, 0x01, 0x01
6729 : };
6730 : return complete_seq (expand_encoding, operands);
6731 : }
6732 :
6733 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5539 */
6734 : rtx
6735 : gen_extenddfxf2 (const rtx operand0, const rtx operand1)
6736 : {
6737 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6738 : start_sequence ();
6739 : {
6740 : #define FAIL return (end_sequence (), nullptr)
6741 : #define DONE return end_sequence ()
6742 : #line 5543 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6743 : {
6744 : /* ??? Needed for compress_float_constant since all fp constants
6745 : are TARGET_LEGITIMATE_CONSTANT_P. */
6746 : if (CONST_DOUBLE_P (operands[1]))
6747 : {
6748 : if (standard_80387_constant_p (operands[1]) > 0)
6749 : {
6750 : operands[1] = simplify_const_unary_operation
6751 : (FLOAT_EXTEND, XFmode, operands[1], DFmode);
6752 : emit_move_insn_1 (operands[0], operands[1]);
6753 : DONE;
6754 : }
6755 : operands[1] = validize_mem (force_const_mem (DFmode, operands[1]));
6756 : }
6757 : }
6758 : #undef DONE
6759 : #undef FAIL
6760 : }
6761 : static const uint8_t expand_encoding[] = {
6762 : 0x01, 0x1f, 0x01, 0x00, 0x71, 0x2f, 0x01, 0x01
6763 : };
6764 : return complete_seq (expand_encoding, operands);
6765 : }
6766 :
6767 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5840 */
6768 : rtx
6769 : gen_fix_truncdfsi2 (const rtx operand0, const rtx operand1)
6770 : {
6771 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6772 : start_sequence ();
6773 : {
6774 : #define FAIL return (end_sequence (), nullptr)
6775 : #define DONE return end_sequence ()
6776 : #line 5845 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6777 : {
6778 : if (TARGET_FISTTP
6779 : && !(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH))
6780 : {
6781 : emit_insn (gen_fix_truncsi_i387_fisttp (operands[0], operands[1]));
6782 : DONE;
6783 : }
6784 : if (SSE_FLOAT_MODE_P (DFmode))
6785 : {
6786 : rtx out = REG_P (operands[0]) ? operands[0] : gen_reg_rtx (SImode);
6787 : emit_insn (gen_fix_truncdfsi_sse (out, operands[1]));
6788 : if (out != operands[0])
6789 : emit_move_insn (operands[0], out);
6790 : DONE;
6791 : }
6792 : }
6793 : #undef DONE
6794 : #undef FAIL
6795 : }
6796 : static const uint8_t expand_encoding[] = {
6797 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x74,
6798 : 0x11, 0x01, 0x01, 0x05, 0x02, 0x11
6799 : };
6800 : return complete_seq (expand_encoding, operands);
6801 : }
6802 :
6803 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6011 */
6804 : extern rtx_insn *gen_peephole2_58 (rtx_insn *, rtx *);
6805 : rtx_insn *
6806 : gen_peephole2_58 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6807 : {
6808 : HARD_REG_SET _regs_allocated;
6809 : CLEAR_HARD_REG_SET (_regs_allocated);
6810 : if ((operands[2] = peep2_find_free_register (0, 0, "x", DFmode, &_regs_allocated)) == NULL_RTX)
6811 : return NULL;
6812 : if (dump_file)
6813 : fprintf (dump_file, "Splitting with gen_peephole2_58 (i386.md:6011)\n");
6814 : start_sequence ();
6815 : static const uint8_t expand_encoding[] = {
6816 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x1f, 0x01,
6817 : 0x00, 0x74, 0x11, 0x01, 0x02
6818 : };
6819 : return complete_seq (expand_encoding, operands);
6820 : }
6821 :
6822 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6210 */
6823 : extern rtx_insn *gen_split_86 (rtx_insn *, rtx *);
6824 : rtx_insn *
6825 : gen_split_86 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
6826 : {
6827 : if (dump_file)
6828 : fprintf (dump_file, "Splitting with gen_split_86 (i386.md:6210)\n");
6829 : start_sequence ();
6830 : #define FAIL return (end_sequence (), nullptr)
6831 : #define DONE return end_sequence ()
6832 : #line 6221 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6833 : {
6834 : operands[3] = lowpart_subreg (V2DFmode, operands[0], DFmode);
6835 : operands[4] = lowpart_subreg (V4SImode, operands[0], DFmode);
6836 :
6837 : emit_insn (gen_sse2_loadld (operands[4],
6838 : CONST0_RTX (V4SImode), operands[1]));
6839 :
6840 : if (V2DFmode == V4SFmode)
6841 : emit_insn (gen_floatv4siv4sf2 (operands[3], operands[4]));
6842 : else
6843 : emit_insn (gen_sse2_cvtdq2pd (operands[3], operands[4]));
6844 : DONE;
6845 : }
6846 : #undef DONE
6847 : #undef FAIL
6848 : static const uint8_t expand_encoding[] = {
6849 : 0x01, 0x27, 0x00
6850 : };
6851 : return complete_seq (expand_encoding, operands);
6852 : }
6853 :
6854 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6318 */
6855 : rtx
6856 : gen_floatunshisf2 (const rtx operand0, const rtx operand1)
6857 : {
6858 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6859 : start_sequence ();
6860 : {
6861 : #define FAIL return (end_sequence (), nullptr)
6862 : #define DONE return end_sequence ()
6863 : #line 6324 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6864 : {
6865 : operands[1] = convert_to_mode (SImode, operands[1], 1);
6866 : emit_insn (gen_floatsisf2 (operands[0], operands[1]));
6867 : DONE;
6868 : }
6869 : #undef DONE
6870 : #undef FAIL
6871 : }
6872 : static const uint8_t expand_encoding[] = {
6873 : 0x01, 0x1f, 0x01, 0x00, 0x75, 0x2d, 0x01, 0x01
6874 : };
6875 : return complete_seq (expand_encoding, operands);
6876 : }
6877 :
6878 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6364 */
6879 : rtx
6880 : gen_floatunssidf2 (const rtx operand0, const rtx operand1)
6881 : {
6882 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6883 : start_sequence ();
6884 : {
6885 : #define FAIL return (end_sequence (), nullptr)
6886 : #define DONE return end_sequence ()
6887 : #line 6373 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6888 : {
6889 : if (!(SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH))
6890 : {
6891 : emit_insn (gen_floatunssidf2_i387_with_xmm
6892 : (operands[0], operands[1],
6893 : assign_stack_temp (DImode, GET_MODE_SIZE (DImode))));
6894 : DONE;
6895 : }
6896 : if (!TARGET_AVX512F)
6897 : {
6898 : ix86_expand_convert_uns_sidf_sse (operands[0], operands[1]);
6899 : DONE;
6900 : }
6901 : }
6902 : #undef DONE
6903 : #undef FAIL
6904 : }
6905 : static const uint8_t expand_encoding[] = {
6906 : 0x01, 0x1f, 0x01, 0x00, 0x75, 0x2e, 0x01, 0x01
6907 : };
6908 : return complete_seq (expand_encoding, operands);
6909 : }
6910 :
6911 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6487 */
6912 : extern rtx_insn *gen_peephole2_63 (rtx_insn *, rtx *);
6913 : rtx_insn *
6914 : gen_peephole2_63 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6915 : {
6916 : if (dump_file)
6917 : fprintf (dump_file, "Splitting with gen_peephole2_63 (i386.md:6487)\n");
6918 : start_sequence ();
6919 : static const uint8_t expand_encoding[] = {
6920 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x12, 0x3b, 0x12,
6921 : 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
6922 : };
6923 : return complete_seq (expand_encoding, operands);
6924 : }
6925 :
6926 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6529 */
6927 : extern rtx_insn *gen_peephole2_69 (rtx_insn *, rtx *);
6928 : rtx_insn *
6929 : gen_peephole2_69 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6930 : {
6931 : if (dump_file)
6932 : fprintf (dump_file, "Splitting with gen_peephole2_69 (i386.md:6529)\n");
6933 : start_sequence ();
6934 : static const uint8_t expand_encoding[] = {
6935 : 0x01, 0x1f, 0x01, 0x03, 0x3b, 0x12, 0x3b, 0x12,
6936 : 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
6937 : };
6938 : return complete_seq (expand_encoding, operands);
6939 : }
6940 :
6941 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6626 */
6942 : extern rtx_insn *gen_split_108 (rtx_insn *, rtx *);
6943 : rtx_insn *
6944 : gen_split_108 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6945 : {
6946 : if (dump_file)
6947 : fprintf (dump_file, "Splitting with gen_split_108 (i386.md:6626)\n");
6948 : start_sequence ();
6949 : #define FAIL return (end_sequence (), nullptr)
6950 : #define DONE return end_sequence ()
6951 : #line 6654 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6952 : split_double_mode (DImode, &operands[0], 2, &operands[0], &operands[5]);
6953 : #undef DONE
6954 : #undef FAIL
6955 : static const uint8_t expand_encoding[] = {
6956 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
6957 : 0x3a, 0x08, 0x3b, 0x11, 0x01, 0x01, 0x01, 0x04,
6958 : 0x01, 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x01,
6959 : 0x01, 0x01, 0x04, 0x17, 0x00, 0x02, 0x1f, 0x01,
6960 : 0x05, 0x3b, 0x11, 0x3b, 0x11, 0x66, 0x11, 0x30,
6961 : 0x02, 0x11, 0x27, 0x00, 0x01, 0x06, 0x01, 0x02,
6962 : 0x05, 0x02, 0x11
6963 : };
6964 : return complete_seq (expand_encoding, operands);
6965 : }
6966 :
6967 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6656 */
6968 : extern rtx_insn *gen_split_116 (rtx_insn *, rtx *);
6969 : rtx_insn *
6970 : gen_split_116 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6971 : {
6972 : if (dump_file)
6973 : fprintf (dump_file, "Splitting with gen_split_116 (i386.md:6656)\n");
6974 : start_sequence ();
6975 : #define FAIL return (end_sequence (), nullptr)
6976 : #define DONE return end_sequence ()
6977 : #line 6687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6978 : split_double_mode (DImode, &operands[0], 1, &operands[0], &operands[5]);
6979 : #undef DONE
6980 : #undef FAIL
6981 : static const uint8_t expand_encoding[] = {
6982 : 0x04, 0x1f, 0x01, 0x00, 0x01, 0x04, 0x17, 0x00,
6983 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x3b,
6984 : 0x11, 0x01, 0x00, 0x01, 0x01, 0x01, 0x00, 0x1f,
6985 : 0x01, 0x00, 0x3b, 0x11, 0x01, 0x00, 0x01, 0x01,
6986 : 0x1f, 0x01, 0x05, 0x01, 0x02, 0x17, 0x00, 0x02,
6987 : 0x1f, 0x01, 0x05, 0x3b, 0x11, 0x3b, 0x11, 0x66,
6988 : 0x11, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01, 0x05,
6989 : 0x27, 0x00, 0x05, 0x02, 0x11
6990 : };
6991 : return complete_seq (expand_encoding, operands);
6992 : }
6993 :
6994 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7138 */
6995 : extern rtx_insn *gen_split_128 (rtx_insn *, rtx *);
6996 : rtx_insn *
6997 : gen_split_128 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6998 : {
6999 : if (dump_file)
7000 : fprintf (dump_file, "Splitting with gen_split_128 (i386.md:7138)\n");
7001 : start_sequence ();
7002 : static const uint8_t expand_encoding[] = {
7003 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x17, 0x00,
7004 : 0x02, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x01, 0x00,
7005 : 0x01, 0x02, 0x05, 0x02, 0x11
7006 : };
7007 : return complete_seq (expand_encoding, operands);
7008 : }
7009 :
7010 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7164 */
7011 : extern rtx_insn *gen_split_134 (rtx_insn *, rtx *);
7012 : rtx_insn *
7013 : gen_split_134 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7014 : {
7015 : if (dump_file)
7016 : fprintf (dump_file, "Splitting with gen_split_134 (i386.md:7164)\n");
7017 : start_sequence ();
7018 : #define FAIL return (end_sequence (), nullptr)
7019 : #define DONE return end_sequence ()
7020 : #line 7172 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7021 : {
7022 : if (DImode != DImode)
7023 : {
7024 : operands[0] = gen_lowpart (DImode, operands[0]);
7025 : operands[1] = gen_lowpart (DImode, operands[1]);
7026 : operands[2] = gen_lowpart (DImode, operands[2]);
7027 : }
7028 : }
7029 : #undef DONE
7030 : #undef FAIL
7031 : static const uint8_t expand_encoding[] = {
7032 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x12, 0x01, 0x01,
7033 : 0x01, 0x02
7034 : };
7035 : return complete_seq (expand_encoding, operands);
7036 : }
7037 :
7038 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7599 */
7039 : extern rtx_insn *gen_split_144 (rtx_insn *, rtx *);
7040 : rtx_insn *
7041 : gen_split_144 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7042 : {
7043 : if (dump_file)
7044 : fprintf (dump_file, "Splitting with gen_split_144 (i386.md:7599)\n");
7045 : start_sequence ();
7046 : #define FAIL return (end_sequence (), nullptr)
7047 : #define DONE return end_sequence ()
7048 : #line 7647 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7049 :
7050 : #undef DONE
7051 : #undef FAIL
7052 : static const uint8_t expand_encoding[] = {
7053 : 0x02, 0x1f, 0x81, 0x06, 0x11, 0x01, 0x00, 0x27,
7054 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x11, 0x01, 0x01,
7055 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
7056 : 0x81, 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27,
7057 : 0x08, 0x32, 0x11, 0x3b, 0x0f, 0x32, 0x0f, 0x81,
7058 : 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
7059 : 0x00, 0x01, 0x02, 0x00, 0x05, 0x02, 0x11
7060 : };
7061 : return complete_seq (expand_encoding, operands);
7062 : }
7063 :
7064 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7701 */
7065 : rtx
7066 : gen_addvsi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
7067 : {
7068 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
7069 : start_sequence ();
7070 : {
7071 : #define FAIL return (end_sequence (), nullptr)
7072 : #define DONE return end_sequence ()
7073 : #line 7719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7074 : {
7075 : ix86_fixup_binary_operands_no_copy (PLUS, SImode, operands);
7076 : if (CONST_SCALAR_INT_P (operands[2]))
7077 : operands[4] = operands[2];
7078 : else
7079 : operands[4] = gen_rtx_SIGN_EXTEND (DImode, operands[2]);
7080 : }
7081 : #undef DONE
7082 : #undef FAIL
7083 : }
7084 : static const uint8_t expand_encoding[] = {
7085 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x09, 0x11,
7086 : 0x5d, 0x09, 0x3b, 0x12, 0x6e, 0x12, 0x01, 0x01,
7087 : 0x01, 0x04, 0x6e, 0x12, 0x3b, 0x11, 0x01, 0x01,
7088 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x01,
7089 : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x5d,
7090 : 0x00, 0x30, 0x09, 0x11, 0x27, 0x00, 0x37, 0x00,
7091 : 0x01, 0x03, 0x2f
7092 : };
7093 : return complete_seq (expand_encoding, operands);
7094 : }
7095 :
7096 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7951 */
7097 : rtx
7098 : gen_uaddvdi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
7099 : {
7100 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
7101 : start_sequence ();
7102 : {
7103 : #define FAIL return (end_sequence (), nullptr)
7104 : #define DONE return end_sequence ()
7105 : #line 7965 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7106 : ix86_fixup_binary_operands_no_copy (PLUS, DImode, operands);
7107 : #undef DONE
7108 : #undef FAIL
7109 : }
7110 : static const uint8_t expand_encoding[] = {
7111 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
7112 : 0x3a, 0x08, 0x3b, 0x12, 0x01, 0x01, 0x01, 0x02,
7113 : 0x01, 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x12, 0x01,
7114 : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x66,
7115 : 0x00, 0x30, 0x08, 0x11, 0x27, 0x00, 0x37, 0x00,
7116 : 0x01, 0x03, 0x2f
7117 : };
7118 : return complete_seq (expand_encoding, operands);
7119 : }
7120 :
7121 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8060 */
7122 : extern rtx_insn *gen_split_164 (rtx_insn *, rtx *);
7123 : rtx_insn *
7124 : gen_split_164 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7125 : {
7126 : if (dump_file)
7127 : fprintf (dump_file, "Splitting with gen_split_164 (i386.md:8060)\n");
7128 : start_sequence ();
7129 : #define FAIL return (end_sequence (), nullptr)
7130 : #define DONE return end_sequence ()
7131 : #line 8077 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7132 : {
7133 : operands[0] = gen_lowpart (SImode, operands[0]);
7134 : operands[1] = gen_lowpart (SImode, operands[1]);
7135 : operands[3] = gen_lowpart (SImode, operands[3]);
7136 : operands[4] = gen_lowpart (SImode, operands[4]);
7137 : }
7138 : #undef DONE
7139 : #undef FAIL
7140 : static const uint8_t expand_encoding[] = {
7141 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x3b, 0x11,
7142 : 0x4d, 0x11, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
7143 : 0x01, 0x04
7144 : };
7145 : return complete_seq (expand_encoding, operands);
7146 : }
7147 :
7148 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8131 */
7149 : rtx
7150 : gen_subqi3 (const rtx operand0, const rtx operand1, const rtx operand2)
7151 : {
7152 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7153 : start_sequence ();
7154 : {
7155 : #define FAIL return (end_sequence (), nullptr)
7156 : #define DONE return end_sequence ()
7157 : #line 8136 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7158 : {
7159 : ix86_expand_binary_operator (MINUS, QImode, operands, TARGET_APX_NDD);
7160 : DONE;
7161 : }
7162 : #undef DONE
7163 : #undef FAIL
7164 : }
7165 : static const uint8_t expand_encoding[] = {
7166 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x0f, 0x01, 0x01,
7167 : 0x01, 0x02
7168 : };
7169 : return complete_seq (expand_encoding, operands);
7170 : }
7171 :
7172 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8174 */
7173 : extern rtx_insn *gen_split_177 (rtx_insn *, rtx *);
7174 : rtx_insn *
7175 : gen_split_177 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7176 : {
7177 : if (dump_file)
7178 : fprintf (dump_file, "Splitting with gen_split_177 (i386.md:8174)\n");
7179 : start_sequence ();
7180 : #define FAIL return (end_sequence (), nullptr)
7181 : #define DONE return end_sequence ()
7182 : #line 8195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7183 : split_double_mode (TImode, &operands[0], 2, &operands[0], &operands[3]);
7184 : #undef DONE
7185 : #undef FAIL
7186 : static const uint8_t expand_encoding[] = {
7187 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x02, 0x11,
7188 : 0x3a, 0x02, 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01,
7189 : 0x00, 0x3c, 0x12, 0x01, 0x01, 0x01, 0x02, 0x17,
7190 : 0x00, 0x02, 0x1f, 0x01, 0x03, 0x3c, 0x12, 0x3c,
7191 : 0x12, 0x01, 0x04, 0x66, 0x12, 0x30, 0x02, 0x11,
7192 : 0x27, 0x00, 0x27, 0x00, 0x05, 0x02, 0x11
7193 : };
7194 : return complete_seq (expand_encoding, operands);
7195 : }
7196 :
7197 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8423 */
7198 : extern rtx_insn *gen_split_190 (rtx_insn *, rtx *);
7199 : rtx_insn *
7200 : gen_split_190 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7201 : {
7202 : if (dump_file)
7203 : fprintf (dump_file, "Splitting with gen_split_190 (i386.md:8423)\n");
7204 : start_sequence ();
7205 : #define FAIL return (end_sequence (), nullptr)
7206 : #define DONE return end_sequence ()
7207 : #line 8455 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7208 :
7209 : #undef DONE
7210 : #undef FAIL
7211 : static const uint8_t expand_encoding[] = {
7212 : 0x02, 0x1f, 0x81, 0x06, 0x11, 0x01, 0x00, 0x27,
7213 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x11, 0x01, 0x01,
7214 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
7215 : 0x81, 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27,
7216 : 0x08, 0x32, 0x11, 0x3c, 0x0f, 0x32, 0x0f, 0x81,
7217 : 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
7218 : 0x00, 0x01, 0x02, 0x00, 0x05, 0x02, 0x11
7219 : };
7220 : return complete_seq (expand_encoding, operands);
7221 : }
7222 :
7223 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8580 */
7224 : extern rtx_insn *gen_split_195 (rtx_insn *, rtx *);
7225 : rtx_insn *
7226 : gen_split_195 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7227 : {
7228 : if (dump_file)
7229 : fprintf (dump_file, "Splitting with gen_split_195 (i386.md:8580)\n");
7230 : start_sequence ();
7231 : #define FAIL return (end_sequence (), nullptr)
7232 : #define DONE return end_sequence ()
7233 : #line 8621 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7234 : {
7235 : split_double_mode (TImode, &operands[0], 3, &operands[0], &operands[3]);
7236 : if (operands[2] == const0_rtx)
7237 : {
7238 : if (!rtx_equal_p (operands[0], operands[1]))
7239 : emit_move_insn (operands[0], operands[1]);
7240 : emit_insn (gen_subvdi4_1 (operands[3], operands[4], operands[5],
7241 : operands[5]));
7242 : DONE;
7243 : }
7244 : }
7245 : #undef DONE
7246 : #undef FAIL
7247 : static const uint8_t expand_encoding[] = {
7248 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x02, 0x11,
7249 : 0x3a, 0x02, 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01,
7250 : 0x00, 0x3c, 0x12, 0x01, 0x01, 0x01, 0x02, 0x17,
7251 : 0x00, 0x02, 0x1f, 0x30, 0x09, 0x11, 0x5d, 0x09,
7252 : 0x3c, 0x13, 0x3c, 0x13, 0x6e, 0x13, 0x01, 0x04,
7253 : 0x66, 0x13, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01,
7254 : 0x05, 0x6e, 0x13, 0x3c, 0x12, 0x3c, 0x12, 0x01,
7255 : 0x04, 0x66, 0x12, 0x30, 0x02, 0x11, 0x27, 0x00,
7256 : 0x01, 0x05, 0x1f, 0x01, 0x03, 0x3c, 0x12, 0x3c,
7257 : 0x12, 0x01, 0x04, 0x66, 0x12, 0x30, 0x02, 0x11,
7258 : 0x27, 0x00, 0x01, 0x05
7259 : };
7260 : return complete_seq (expand_encoding, operands);
7261 : }
7262 :
7263 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8756 */
7264 : extern rtx_insn *gen_peephole2_77 (rtx_insn *, rtx *);
7265 : rtx_insn *
7266 : gen_peephole2_77 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7267 : {
7268 : if (dump_file)
7269 : fprintf (dump_file, "Splitting with gen_peephole2_77 (i386.md:8756)\n");
7270 : start_sequence ();
7271 : static const uint8_t expand_encoding[] = {
7272 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
7273 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7274 : 0x01, 0x01, 0x00, 0x1f, 0x01, 0x01, 0x3c, 0x12,
7275 : 0x01, 0x01, 0x01, 0x00
7276 : };
7277 : return complete_seq (expand_encoding, operands);
7278 : }
7279 :
7280 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8834 */
7281 : extern rtx_insn *gen_split_197 (rtx_insn *, rtx *);
7282 : rtx_insn *
7283 : gen_split_197 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7284 : {
7285 : if (dump_file)
7286 : fprintf (dump_file, "Splitting with gen_split_197 (i386.md:8834)\n");
7287 : start_sequence ();
7288 : #define FAIL return (end_sequence (), nullptr)
7289 : #define DONE return end_sequence ()
7290 : #line 8850 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7291 : {
7292 : rtx cc = gen_rtx_REG (CCCmode, FLAGS_REG);
7293 : operands[4] = gen_rtx_fmt_ee (GET_CODE (operands[1]) == NE
7294 : ? GEU : LTU, VOIDmode, cc, const0_rtx);
7295 : }
7296 : #undef DONE
7297 : #undef FAIL
7298 : static const uint8_t expand_encoding[] = {
7299 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x02, 0x11,
7300 : 0x3a, 0x02, 0x01, 0x02, 0x27, 0x01, 0x1f, 0x01,
7301 : 0x00, 0x3c, 0x11, 0x01, 0x02, 0x27, 0x01, 0x1f,
7302 : 0x01, 0x00, 0x39, 0x11, 0x01, 0x04, 0x01, 0x00,
7303 : 0x01, 0x03
7304 : };
7305 : return complete_seq (expand_encoding, operands);
7306 : }
7307 :
7308 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:9272 */
7309 : extern rtx_insn *gen_peephole2_97 (rtx_insn *, rtx *);
7310 : rtx_insn *
7311 : gen_peephole2_97 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7312 : {
7313 : if (dump_file)
7314 : fprintf (dump_file, "Splitting with gen_peephole2_97 (i386.md:9272)\n");
7315 : start_sequence ();
7316 : static const uint8_t expand_encoding[] = {
7317 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
7318 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x6f,
7319 : 0x13, 0x3b, 0x12, 0x3b, 0x12, 0x02, 0x05, 0x01,
7320 : 0x03, 0x27, 0x00, 0x01, 0x01, 0x01, 0x00, 0x3b,
7321 : 0x13, 0x02, 0x04, 0x01, 0x03, 0x27, 0x00, 0x6f,
7322 : 0x13, 0x01, 0x00, 0x1f, 0x01, 0x01, 0x3b, 0x12,
7323 : 0x3b, 0x12, 0x02, 0x05, 0x01, 0x03, 0x27, 0x00,
7324 : 0x01, 0x01, 0x01, 0x00
7325 : };
7326 : return complete_seq (expand_encoding, operands);
7327 : }
7328 :
7329 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:9562 */
7330 : extern rtx_insn *gen_peephole2_105 (rtx_insn *, rtx *);
7331 : rtx_insn *
7332 : gen_peephole2_105 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7333 : {
7334 : if (dump_file)
7335 : fprintf (dump_file, "Splitting with gen_peephole2_105 (i386.md:9562)\n");
7336 : start_sequence ();
7337 : static const uint8_t expand_encoding[] = {
7338 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
7339 : 0x02, 0x1f, 0x01, 0x01, 0x3c, 0x10, 0x3c, 0x10,
7340 : 0x01, 0x01, 0x02, 0x04, 0x01, 0x03, 0x27, 0x00,
7341 : 0x01, 0x00, 0x05, 0x02, 0x11
7342 : };
7343 : return complete_seq (expand_encoding, operands);
7344 : }
7345 :
7346 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:9989 */
7347 : extern rtx_insn *gen_peephole2_115 (rtx_insn *, rtx *);
7348 : rtx_insn *
7349 : gen_peephole2_115 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7350 : {
7351 : if (dump_file)
7352 : fprintf (dump_file, "Splitting with gen_peephole2_115 (i386.md:9989)\n");
7353 : start_sequence ();
7354 : static const uint8_t expand_encoding[] = {
7355 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x17, 0x00,
7356 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x6f,
7357 : 0x13, 0x01, 0x02, 0x3b, 0x13, 0x02, 0x04, 0x01,
7358 : 0x03, 0x27, 0x00, 0x6f, 0x13, 0x01, 0x00, 0x1f,
7359 : 0x01, 0x02, 0x3c, 0x12, 0x3c, 0x12, 0x01, 0x02,
7360 : 0x02, 0x05, 0x01, 0x03, 0x27, 0x00, 0x01, 0x00
7361 : };
7362 : return complete_seq (expand_encoding, operands);
7363 : }
7364 :
7365 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10221 */
7366 : rtx
7367 : gen_usubcdi5 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
7368 : {
7369 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
7370 : start_sequence ();
7371 : {
7372 : #define FAIL return (end_sequence (), nullptr)
7373 : #define DONE return end_sequence ()
7374 : #line 10228 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7375 : {
7376 : rtx cf, pat, pat2;
7377 : if (operands[4] == const0_rtx)
7378 : {
7379 : cf = gen_rtx_REG (CCmode, FLAGS_REG);
7380 : emit_insn (gen_subborrowdi_0 (operands[0], operands[2],
7381 : operands[3]));
7382 : }
7383 : else
7384 : {
7385 : cf = gen_rtx_REG (CCCmode, FLAGS_REG);
7386 : ix86_expand_carry (operands[4]);
7387 : pat = gen_rtx_LTU (TImode, cf, const0_rtx);
7388 : pat2 = gen_rtx_LTU (DImode, cf, const0_rtx);
7389 : emit_insn (gen_subborrowdi (operands[0], operands[2], operands[3],
7390 : cf, pat, pat2));
7391 : }
7392 : rtx cc = gen_reg_rtx (QImode);
7393 : pat = gen_rtx_LTU (QImode, cf, const0_rtx);
7394 : emit_insn (gen_rtx_SET (cc, pat));
7395 : emit_insn (gen_zero_extendqidi2 (operands[1], cc));
7396 : DONE;
7397 : }
7398 : #undef DONE
7399 : #undef FAIL
7400 : }
7401 : static const uint8_t expand_encoding[] = {
7402 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
7403 : 0x03, 0x01, 0x04
7404 : };
7405 : return complete_seq (expand_encoding, operands);
7406 : }
7407 :
7408 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10365 */
7409 : extern rtx_insn *gen_peephole2_126 (rtx_insn *, rtx *);
7410 : rtx_insn *
7411 : gen_peephole2_126 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7412 : {
7413 : if (dump_file)
7414 : fprintf (dump_file, "Splitting with gen_peephole2_126 (i386.md:10365)\n");
7415 : start_sequence ();
7416 : static const uint8_t expand_encoding[] = {
7417 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
7418 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x3b,
7419 : 0x11, 0x01, 0x01, 0x01, 0x00, 0x01, 0x01, 0x1f,
7420 : 0x01, 0x01, 0x3b, 0x11, 0x01, 0x01, 0x01, 0x00
7421 : };
7422 : return complete_seq (expand_encoding, operands);
7423 : }
7424 :
7425 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10537 */
7426 : extern rtx_insn *gen_split_214 (rtx_insn *, rtx *);
7427 : rtx_insn *
7428 : gen_split_214 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7429 : {
7430 : if (dump_file)
7431 : fprintf (dump_file, "Splitting with gen_split_214 (i386.md:10537)\n");
7432 : start_sequence ();
7433 : #define FAIL return (end_sequence (), nullptr)
7434 : #define DONE return end_sequence ()
7435 : #line 10560 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7436 : {
7437 : operands[2] = gen_int_mode (~INTVAL (operands[2]),
7438 : SImode == DImode ? SImode : SImode);
7439 : }
7440 : #undef DONE
7441 : #undef FAIL
7442 : static const uint8_t expand_encoding[] = {
7443 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7444 : 0x03, 0x27, 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01,
7445 : 0x00, 0x3c, 0x11, 0x3c, 0x11, 0x01, 0x01, 0x66,
7446 : 0x11, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01, 0x02,
7447 : 0x05, 0x02, 0x11
7448 : };
7449 : return complete_seq (expand_encoding, operands);
7450 : }
7451 :
7452 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10586 */
7453 : extern rtx_insn *gen_split_222 (rtx_insn *, rtx *);
7454 : rtx_insn *
7455 : gen_split_222 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7456 : {
7457 : if (dump_file)
7458 : fprintf (dump_file, "Splitting with gen_split_222 (i386.md:10586)\n");
7459 : start_sequence ();
7460 : #define FAIL return (end_sequence (), nullptr)
7461 : #define DONE return end_sequence ()
7462 : #line 10604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7463 : {
7464 : if (!nonimmediate_operand (operands[1], SImode))
7465 : operands[1] = force_reg (SImode, operands[1]);
7466 : }
7467 : #undef DONE
7468 : #undef FAIL
7469 : static const uint8_t expand_encoding[] = {
7470 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7471 : 0x02, 0x27, 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01,
7472 : 0x00, 0x3c, 0x11, 0x3c, 0x11, 0x01, 0x01, 0x66,
7473 : 0x11, 0x30, 0x02, 0x11, 0x27, 0x00, 0x27, 0x81,
7474 : 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7475 : 0x7f, 0x05, 0x02, 0x11
7476 : };
7477 : return complete_seq (expand_encoding, operands);
7478 : }
7479 :
7480 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10660 */
7481 : extern rtx_insn *gen_split_235 (rtx_insn *, rtx *);
7482 : rtx_insn *
7483 : gen_split_235 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7484 : {
7485 : if (dump_file)
7486 : fprintf (dump_file, "Splitting with gen_split_235 (i386.md:10660)\n");
7487 : start_sequence ();
7488 : #define FAIL return (end_sequence (), nullptr)
7489 : #define DONE return end_sequence ()
7490 : #line 10684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7491 : {
7492 : operands[2] = gen_int_mode (-INTVAL (operands[2]),
7493 : DImode == DImode ? SImode : DImode);
7494 : }
7495 : #undef DONE
7496 : #undef FAIL
7497 : static const uint8_t expand_encoding[] = {
7498 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7499 : 0x03, 0x27, 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01,
7500 : 0x00, 0x3c, 0x12, 0x3c, 0x12, 0x01, 0x01, 0x66,
7501 : 0x12, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01, 0x02,
7502 : 0x05, 0x02, 0x11
7503 : };
7504 : return complete_seq (expand_encoding, operands);
7505 : }
7506 :
7507 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10733 */
7508 : rtx
7509 : gen_usaddhi3 (const rtx operand0, const rtx operand1, const rtx operand2)
7510 : {
7511 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7512 : start_sequence ();
7513 : {
7514 : #define FAIL return (end_sequence (), nullptr)
7515 : #define DONE return end_sequence ()
7516 : #line 10738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7517 : {
7518 : rtx res = gen_reg_rtx (HImode);
7519 : rtx dst;
7520 :
7521 : emit_insn (gen_addhi3_cc_overflow_1 (res, operands[1], operands[2]));
7522 :
7523 : if (TARGET_CMOVE)
7524 : {
7525 : rtx cmp = gen_rtx_GEU (VOIDmode, gen_rtx_REG (CCCmode, FLAGS_REG),
7526 : const0_rtx);
7527 :
7528 : if (2 < GET_MODE_SIZE (SImode))
7529 : {
7530 : dst = force_reg (HImode, operands[0]);
7531 : emit_insn (gen_movsicc (gen_lowpart (SImode, dst), cmp,
7532 : gen_lowpart (SImode, res), constm1_rtx));
7533 : }
7534 : else
7535 : {
7536 : dst = operands[0];
7537 : emit_insn (gen_movhicc (dst, cmp, res, constm1_rtx));
7538 : }
7539 : }
7540 : else
7541 : {
7542 : rtx msk = gen_reg_rtx (HImode);
7543 :
7544 : emit_insn (gen_x86_movhicc_0_m1_neg (msk));
7545 : dst = expand_simple_binop (HImode, IOR, res, msk,
7546 : operands[0], 1, OPTAB_WIDEN);
7547 : }
7548 :
7549 : if (!rtx_equal_p (dst, operands[0]))
7550 : emit_move_insn (operands[0], dst);
7551 : DONE;
7552 : }
7553 : #undef DONE
7554 : #undef FAIL
7555 : }
7556 : static const uint8_t expand_encoding[] = {
7557 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0f, 0x10, 0x01,
7558 : 0x01, 0x01, 0x02
7559 : };
7560 : return complete_seq (expand_encoding, operands);
7561 : }
7562 :
7563 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10854 */
7564 : rtx
7565 : gen_ustruncsiqi2 (const rtx operand0, const rtx operand1)
7566 : {
7567 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
7568 : start_sequence ();
7569 : {
7570 : #define FAIL return (end_sequence (), nullptr)
7571 : #define DONE return end_sequence ()
7572 : #line 10858 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7573 : {
7574 : rtx op1 = force_reg (SImode, operands[1]);
7575 : rtx sat = force_reg (SImode, GEN_INT (GET_MODE_MASK (QImode)));
7576 : rtx dst;
7577 :
7578 : emit_insn (gen_cmpsi_1 (sat, op1));
7579 :
7580 : if (TARGET_CMOVE)
7581 : {
7582 : rtx cmp = gen_rtx_GEU (VOIDmode, gen_rtx_REG (CCCmode, FLAGS_REG),
7583 : const0_rtx);
7584 :
7585 : dst = force_reg (QImode, operands[0]);
7586 : emit_insn (gen_movsicc (gen_lowpart (SImode, dst), cmp,
7587 : gen_lowpart (SImode, op1),
7588 : gen_lowpart (SImode, sat)));
7589 : }
7590 : else
7591 : {
7592 : rtx msk = gen_reg_rtx (QImode);
7593 :
7594 : emit_insn (gen_x86_movqicc_0_m1_neg (msk));
7595 : dst = expand_simple_binop (QImode, IOR,
7596 : gen_lowpart (QImode, op1), msk,
7597 : operands[0], 1, OPTAB_WIDEN);
7598 : }
7599 :
7600 : if (!rtx_equal_p (dst, operands[0]))
7601 : emit_move_insn (operands[0], dst);
7602 : DONE;
7603 : }
7604 : #undef DONE
7605 : #undef FAIL
7606 : }
7607 : static const uint8_t expand_encoding[] = {
7608 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x18, 0x11, 0x01,
7609 : 0x01
7610 : };
7611 : return complete_seq (expand_encoding, operands);
7612 : }
7613 :
7614 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11224 */
7615 : rtx
7616 : gen_umulvhi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
7617 : {
7618 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
7619 : start_sequence ();
7620 : {
7621 : #define FAIL return (end_sequence (), nullptr)
7622 : #define DONE return end_sequence ()
7623 : #line 11243 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7624 : {
7625 : if (MEM_P (operands[1]) && MEM_P (operands[2]))
7626 : operands[1] = force_reg (HImode, operands[1]);
7627 : }
7628 : #undef DONE
7629 : #undef FAIL
7630 : }
7631 : static const uint8_t expand_encoding[] = {
7632 : 0x02, 0x17, 0x00, 0x03, 0x1f, 0x30, 0x09, 0x11,
7633 : 0x5d, 0x09, 0x3e, 0x11, 0x6f, 0x11, 0x01, 0x01,
7634 : 0x6f, 0x11, 0x01, 0x02, 0x6f, 0x11, 0x3e, 0x10,
7635 : 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x3e,
7636 : 0x10, 0x01, 0x01, 0x01, 0x02, 0x21, 0x00, 0x31,
7637 : 0x10, 0x1f, 0x2f, 0x39, 0x00, 0x5d, 0x00, 0x30,
7638 : 0x09, 0x11, 0x27, 0x00, 0x37, 0x00, 0x01, 0x03,
7639 : 0x2f
7640 : };
7641 : return complete_seq (expand_encoding, operands);
7642 : }
7643 :
7644 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11350 */
7645 : extern rtx_insn *gen_peephole2_129 (rtx_insn *, rtx *);
7646 : rtx_insn *
7647 : gen_peephole2_129 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7648 : {
7649 : if (dump_file)
7650 : fprintf (dump_file, "Splitting with gen_peephole2_129 (i386.md:11350)\n");
7651 : start_sequence ();
7652 : #define FAIL return (end_sequence (), nullptr)
7653 : #define DONE return end_sequence ()
7654 : #line 11367 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7655 : {
7656 : if (REGNO (operands[5]) == REGNO (operands[0]))
7657 : operands[0] = operands[4];
7658 : else
7659 : operands[1] = operands[4];
7660 : }
7661 : #undef DONE
7662 : #undef FAIL
7663 : static const uint8_t expand_encoding[] = {
7664 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3e,
7665 : 0x12, 0x01, 0x02, 0x01, 0x03, 0x1f, 0x01, 0x01,
7666 : 0x42, 0x12, 0x01, 0x02, 0x01, 0x03
7667 : };
7668 : return complete_seq (expand_encoding, operands);
7669 : }
7670 :
7671 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11677 */
7672 : rtx
7673 : gen_mulhf3 (const rtx operand0, const rtx operand1, const rtx operand2)
7674 : {
7675 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7676 : static const uint8_t expand_encoding[] = {
7677 : 0x1f, 0x01, 0x00, 0x3e, 0x2b, 0x01, 0x01, 0x01,
7678 : 0x02
7679 : };
7680 : return expand_rtx (expand_encoding, operands);
7681 : }
7682 :
7683 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11722 */
7684 : rtx
7685 : gen_divdf3 (const rtx operand0, const rtx operand1, const rtx operand2)
7686 : {
7687 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7688 : start_sequence ();
7689 : {
7690 : #define FAIL return (end_sequence (), nullptr)
7691 : #define DONE return end_sequence ()
7692 : #line 11728 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7693 : {
7694 : if (DFmode == SFmode
7695 : && TARGET_SSE && TARGET_SSE_MATH
7696 : && TARGET_RECIP_DIV
7697 : && optimize_insn_for_speed_p ()
7698 : && flag_finite_math_only && !flag_trapping_math
7699 : && flag_unsafe_math_optimizations)
7700 : {
7701 : ix86_emit_swdivsf (operands[0], operands[1],
7702 : operands[2], SFmode);
7703 : DONE;
7704 : }
7705 : }
7706 : #undef DONE
7707 : #undef FAIL
7708 : }
7709 : static const uint8_t expand_encoding[] = {
7710 : 0x01, 0x1f, 0x01, 0x00, 0x43, 0x2e, 0x01, 0x01,
7711 : 0x01, 0x02
7712 : };
7713 : return complete_seq (expand_encoding, operands);
7714 : }
7715 :
7716 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11842 */
7717 : extern rtx_insn *gen_split_256 (rtx_insn *, rtx *);
7718 : rtx_insn *
7719 : gen_split_256 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7720 : {
7721 : if (dump_file)
7722 : fprintf (dump_file, "Splitting with gen_split_256 (i386.md:11842)\n");
7723 : start_sequence ();
7724 : #define FAIL return (end_sequence (), nullptr)
7725 : #define DONE return end_sequence ()
7726 : #line 11860 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7727 :
7728 : #undef DONE
7729 : #undef FAIL
7730 : static const uint8_t expand_encoding[] = {
7731 : 0x02, 0x1f, 0x01, 0x01, 0x27, 0x00, 0x17, 0x00,
7732 : 0x04, 0x1f, 0x01, 0x00, 0x47, 0x11, 0x01, 0x02,
7733 : 0x01, 0x03, 0x1f, 0x01, 0x01, 0x48, 0x11, 0x01,
7734 : 0x02, 0x01, 0x03, 0x20, 0x00, 0x01, 0x01, 0x05,
7735 : 0x02, 0x11
7736 : };
7737 : return complete_seq (expand_encoding, operands);
7738 : }
7739 :
7740 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11983 */
7741 : extern rtx_insn *gen_split_264 (rtx_insn *, rtx *);
7742 : rtx_insn *
7743 : gen_split_264 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7744 : {
7745 : if (dump_file)
7746 : fprintf (dump_file, "Splitting with gen_split_264 (i386.md:11983)\n");
7747 : start_sequence ();
7748 : #define FAIL return (end_sequence (), nullptr)
7749 : #define DONE return end_sequence ()
7750 : #line 12002 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7751 : {
7752 : operands[5] = GEN_INT (GET_MODE_BITSIZE (DImode)-1);
7753 :
7754 : if (DImode != HImode
7755 : && (optimize_function_for_size_p (cfun) || TARGET_USE_CLTD))
7756 : operands[4] = operands[2];
7757 : else
7758 : {
7759 : /* Avoid use of cltd in favor of a mov+shift. */
7760 : emit_move_insn (operands[1], operands[2]);
7761 : operands[4] = operands[1];
7762 : }
7763 : }
7764 : #undef DONE
7765 : #undef FAIL
7766 : static const uint8_t expand_encoding[] = {
7767 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x01, 0x4f,
7768 : 0x12, 0x01, 0x04, 0x01, 0x05, 0x05, 0x02, 0x11,
7769 : 0x17, 0x00, 0x04, 0x1f, 0x01, 0x00, 0x43, 0x12,
7770 : 0x01, 0x02, 0x01, 0x03, 0x1f, 0x01, 0x01, 0x46,
7771 : 0x12, 0x01, 0x02, 0x01, 0x03, 0x20, 0x00, 0x01,
7772 : 0x01, 0x05, 0x02, 0x11
7773 : };
7774 : return complete_seq (expand_encoding, operands);
7775 : }
7776 :
7777 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12312 */
7778 : rtx
7779 : gen_divmodqi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
7780 : {
7781 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
7782 : start_sequence ();
7783 : {
7784 : #define FAIL return (end_sequence (), nullptr)
7785 : #define DONE return end_sequence ()
7786 : #line 12321 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7787 : {
7788 : rtx div, mod;
7789 : rtx tmp0, tmp1;
7790 :
7791 : tmp0 = gen_reg_rtx (HImode);
7792 : tmp1 = gen_reg_rtx (HImode);
7793 :
7794 : /* Extend operands[1] to HImode. Generate 8bit divide. Result is in AX. */
7795 : emit_insn (gen_extendqihi2 (tmp1, operands[1]));
7796 : emit_insn (gen_divmodhiqi3 (tmp0, tmp1, operands[2]));
7797 :
7798 : /* Extract remainder from AH. */
7799 : tmp1 = gen_rtx_ZERO_EXTRACT (HImode, tmp0, GEN_INT (8), GEN_INT (8));
7800 : tmp1 = lowpart_subreg (QImode, tmp1, HImode);
7801 : rtx_insn *insn = emit_move_insn (operands[3], tmp1);
7802 :
7803 : mod = gen_rtx_MOD (QImode, operands[1], operands[2]);
7804 : set_unique_reg_note (insn, REG_EQUAL, mod);
7805 :
7806 : /* Extract quotient from AL. */
7807 : insn = emit_move_insn (operands[0], gen_lowpart (QImode, tmp0));
7808 :
7809 : div = gen_rtx_DIV (QImode, operands[1], operands[2]);
7810 : set_unique_reg_note (insn, REG_EQUAL, div);
7811 :
7812 : DONE;
7813 : }
7814 : #undef DONE
7815 : #undef FAIL
7816 : }
7817 : static const uint8_t expand_encoding[] = {
7818 : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x43,
7819 : 0x0f, 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01, 0x03,
7820 : 0x46, 0x0f, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02,
7821 : 0x11
7822 : };
7823 : return complete_seq (expand_encoding, operands);
7824 : }
7825 :
7826 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12716 */
7827 : extern rtx_insn *gen_split_285 (rtx_insn *, rtx *);
7828 : rtx_insn *
7829 : gen_split_285 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7830 : {
7831 : if (dump_file)
7832 : fprintf (dump_file, "Splitting with gen_split_285 (i386.md:12716)\n");
7833 : start_sequence ();
7834 : #define FAIL return (end_sequence (), nullptr)
7835 : #define DONE return end_sequence ()
7836 : #line 12730 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7837 : {
7838 : operands[0] = force_reg (DImode, operands[0]);
7839 : operands[2] = gen_reg_rtx (DImode);
7840 : }
7841 : #undef DONE
7842 : #undef FAIL
7843 : static const uint8_t expand_encoding[] = {
7844 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x02, 0x49,
7845 : 0x12, 0x4c, 0x12, 0x01, 0x00, 0x01, 0x01, 0x05,
7846 : 0x02, 0x11, 0x1f, 0x30, 0x0c, 0x11, 0x3a, 0x0c,
7847 : 0x01, 0x02, 0x27, 0x00
7848 : };
7849 : return complete_seq (expand_encoding, operands);
7850 : }
7851 :
7852 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12845 */
7853 : rtx
7854 : gen_andqi3 (const rtx operand0, const rtx operand1, const rtx operand2)
7855 : {
7856 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7857 : start_sequence ();
7858 : {
7859 : #define FAIL return (end_sequence (), nullptr)
7860 : #define DONE return end_sequence ()
7861 : #line 12850 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7862 : {
7863 : machine_mode mode = QImode;
7864 :
7865 : if (GET_MODE_SIZE (QImode) > UNITS_PER_WORD
7866 : && !x86_64_hilo_general_operand (operands[2], QImode))
7867 : operands[2] = force_reg (QImode, operands[2]);
7868 :
7869 : if (GET_MODE_SIZE (QImode) <= UNITS_PER_WORD
7870 : && const_int_operand (operands[2], QImode)
7871 : && register_operand (operands[0], QImode)
7872 : && !(TARGET_ZERO_EXTEND_WITH_AND
7873 : && optimize_function_for_speed_p (cfun)))
7874 : {
7875 : unsigned HOST_WIDE_INT ival = UINTVAL (operands[2]);
7876 :
7877 : if (ival == GET_MODE_MASK (SImode))
7878 : mode = SImode;
7879 : else if (ival == GET_MODE_MASK (HImode))
7880 : mode = HImode;
7881 : else if (ival == GET_MODE_MASK (QImode))
7882 : mode = QImode;
7883 : }
7884 :
7885 : if (mode != QImode)
7886 : emit_insn (gen_extend_insn
7887 : (operands[0], gen_lowpart (mode, operands[1]),
7888 : QImode, mode, 1));
7889 : else
7890 : ix86_expand_binary_operator (AND, QImode, operands, TARGET_APX_NDD);
7891 :
7892 : DONE;
7893 : }
7894 : #undef DONE
7895 : #undef FAIL
7896 : }
7897 : static const uint8_t expand_encoding[] = {
7898 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x01, 0x01,
7899 : 0x01, 0x02
7900 : };
7901 : return complete_seq (expand_encoding, operands);
7902 : }
7903 :
7904 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13125 */
7905 : extern rtx_insn *gen_split_294 (rtx_insn *, rtx *);
7906 : rtx_insn *
7907 : gen_split_294 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7908 : {
7909 : if (dump_file)
7910 : fprintf (dump_file, "Splitting with gen_split_294 (i386.md:13125)\n");
7911 : start_sequence ();
7912 : #define FAIL return (end_sequence (), nullptr)
7913 : #define DONE return end_sequence ()
7914 : #line 13142 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7915 :
7916 : #undef DONE
7917 : #undef FAIL
7918 : static const uint8_t expand_encoding[] = {
7919 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x01, 0x01,
7920 : 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00,
7921 : 0x4a, 0x0f, 0x01, 0x00, 0x01, 0x02, 0x05, 0x02,
7922 : 0x11
7923 : };
7924 : return complete_seq (expand_encoding, operands);
7925 : }
7926 :
7927 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13147 */
7928 : extern rtx_insn *gen_split_304 (rtx_insn *, rtx *);
7929 : rtx_insn *
7930 : gen_split_304 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7931 : {
7932 : if (dump_file)
7933 : fprintf (dump_file, "Splitting with gen_split_304 (i386.md:13147)\n");
7934 : start_sequence ();
7935 : #define FAIL return (end_sequence (), nullptr)
7936 : #define DONE return end_sequence ()
7937 : #line 13170 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7938 :
7939 : #undef DONE
7940 : #undef FAIL
7941 : static const uint8_t expand_encoding[] = {
7942 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x01, 0x01,
7943 : 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00,
7944 : 0x4b, 0x0f, 0x32, 0x0f, 0x81, 0x06, 0x11, 0x01,
7945 : 0x02, 0x27, 0x08, 0x27, 0x08, 0x00, 0x01, 0x00,
7946 : 0x05, 0x02, 0x11
7947 : };
7948 : return complete_seq (expand_encoding, operands);
7949 : }
7950 :
7951 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13174 */
7952 : extern rtx_insn *gen_split_314 (rtx_insn *, rtx *);
7953 : rtx_insn *
7954 : gen_split_314 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7955 : {
7956 : if (dump_file)
7957 : fprintf (dump_file, "Splitting with gen_split_314 (i386.md:13174)\n");
7958 : start_sequence ();
7959 : #define FAIL return (end_sequence (), nullptr)
7960 : #define DONE return end_sequence ()
7961 : #line 13199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7962 :
7963 : #undef DONE
7964 : #undef FAIL
7965 : static const uint8_t expand_encoding[] = {
7966 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x32, 0x0f,
7967 : 0x81, 0x06, 0x12, 0x01, 0x02, 0x27, 0x08, 0x27,
7968 : 0x08, 0x00, 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00,
7969 : 0x01, 0x00, 0x49, 0x0f, 0x32, 0x0f, 0x81, 0x06,
7970 : 0x12, 0x01, 0x01, 0x27, 0x08, 0x27, 0x08, 0x00,
7971 : 0x01, 0x00, 0x05, 0x02, 0x11
7972 : };
7973 : return complete_seq (expand_encoding, operands);
7974 : }
7975 :
7976 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13248 */
7977 : extern rtx_insn *gen_split_324 (rtx_insn *, rtx *);
7978 : rtx_insn *
7979 : gen_split_324 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7980 : {
7981 : if (dump_file)
7982 : fprintf (dump_file, "Splitting with gen_split_324 (i386.md:13248)\n");
7983 : start_sequence ();
7984 : #define FAIL return (end_sequence (), nullptr)
7985 : #define DONE return end_sequence ()
7986 : #line 13256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7987 : operands[1] = gen_lowpart (QImode, operands[0]);
7988 : #undef DONE
7989 : #undef FAIL
7990 : static const uint8_t expand_encoding[] = {
7991 : 0x01, 0x1f, 0x33, 0x00, 0x01, 0x01, 0x27, 0x00
7992 : };
7993 : return complete_seq (expand_encoding, operands);
7994 : }
7995 :
7996 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13409 */
7997 : extern rtx_insn *gen_split_333 (rtx_insn *, rtx *);
7998 : rtx_insn *
7999 : gen_split_333 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8000 : {
8001 : if (dump_file)
8002 : fprintf (dump_file, "Splitting with gen_split_333 (i386.md:13409)\n");
8003 : start_sequence ();
8004 : #define FAIL return (end_sequence (), nullptr)
8005 : #define DONE return end_sequence ()
8006 : #line 13434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8007 :
8008 : #undef DONE
8009 : #undef FAIL
8010 : static const uint8_t expand_encoding[] = {
8011 : 0x02, 0x1f, 0x01, 0x00, 0x32, 0x0f, 0x81, 0x06,
8012 : 0x11, 0x01, 0x02, 0x27, 0x08, 0x27, 0x08, 0x00,
8013 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4b, 0x0f,
8014 : 0x32, 0x0f, 0x81, 0x06, 0x11, 0x01, 0x01, 0x27,
8015 : 0x08, 0x27, 0x08, 0x00, 0x01, 0x00, 0x05, 0x02,
8016 : 0x11
8017 : };
8018 : return complete_seq (expand_encoding, operands);
8019 : }
8020 :
8021 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13453 */
8022 : extern rtx_insn *gen_split_342 (rtx_insn *, rtx *);
8023 : rtx_insn *
8024 : gen_split_342 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8025 : {
8026 : if (dump_file)
8027 : fprintf (dump_file, "Splitting with gen_split_342 (i386.md:13453)\n");
8028 : start_sequence ();
8029 : #define FAIL return (end_sequence (), nullptr)
8030 : #define DONE return end_sequence ()
8031 : #line 13485 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8032 :
8033 : #undef DONE
8034 : #undef FAIL
8035 : static const uint8_t expand_encoding[] = {
8036 : 0x02, 0x1f, 0x81, 0x06, 0x11, 0x01, 0x00, 0x27,
8037 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x11, 0x01, 0x01,
8038 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
8039 : 0x81, 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27,
8040 : 0x08, 0x32, 0x11, 0x4b, 0x0f, 0x32, 0x0f, 0x81,
8041 : 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
8042 : 0x00, 0x01, 0x02, 0x00, 0x05, 0x02, 0x11
8043 : };
8044 : return complete_seq (expand_encoding, operands);
8045 : }
8046 :
8047 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13491 */
8048 : extern rtx_insn *gen_split_352 (rtx_insn *, rtx *);
8049 : rtx_insn *
8050 : gen_split_352 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8051 : {
8052 : if (dump_file)
8053 : fprintf (dump_file, "Splitting with gen_split_352 (i386.md:13491)\n");
8054 : start_sequence ();
8055 : #define FAIL return (end_sequence (), nullptr)
8056 : #define DONE return end_sequence ()
8057 : #line 13537 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8058 :
8059 : #undef DONE
8060 : #undef FAIL
8061 : static const uint8_t expand_encoding[] = {
8062 : 0x02, 0x1f, 0x81, 0x06, 0x12, 0x01, 0x00, 0x27,
8063 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x12, 0x01, 0x01,
8064 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
8065 : 0x01, 0x04, 0x02, 0x05, 0x49, 0x0f, 0x32, 0x0f,
8066 : 0x81, 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27,
8067 : 0x08, 0x00, 0x01, 0x02, 0x27, 0x00, 0x1f, 0x81,
8068 : 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
8069 : 0x32, 0x12, 0x49, 0x0f, 0x32, 0x0f, 0x81, 0x06,
8070 : 0x12, 0x01, 0x01, 0x27, 0x08, 0x27, 0x08, 0x00,
8071 : 0x01, 0x02, 0x00
8072 : };
8073 : return complete_seq (expand_encoding, operands);
8074 : }
8075 :
8076 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13543 */
8077 : extern rtx_insn *gen_split_362 (rtx_insn *, rtx *);
8078 : rtx_insn *
8079 : gen_split_362 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8080 : {
8081 : if (dump_file)
8082 : fprintf (dump_file, "Splitting with gen_split_362 (i386.md:13543)\n");
8083 : start_sequence ();
8084 : #define FAIL return (end_sequence (), nullptr)
8085 : #define DONE return end_sequence ()
8086 : #line 13580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8087 :
8088 : #undef DONE
8089 : #undef FAIL
8090 : static const uint8_t expand_encoding[] = {
8091 : 0x02, 0x1f, 0x81, 0x06, 0x12, 0x01, 0x00, 0x27,
8092 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x12, 0x01, 0x01,
8093 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
8094 : 0x81, 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27,
8095 : 0x08, 0x32, 0x12, 0x4a, 0x0f, 0x32, 0x0f, 0x81,
8096 : 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
8097 : 0x00, 0x32, 0x0f, 0x81, 0x06, 0x12, 0x01, 0x02,
8098 : 0x27, 0x08, 0x27, 0x08, 0x00, 0x00, 0x05, 0x02,
8099 : 0x11
8100 : };
8101 : return complete_seq (expand_encoding, operands);
8102 : }
8103 :
8104 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13585 */
8105 : extern rtx_insn *gen_split_372 (rtx_insn *, rtx *);
8106 : rtx_insn *
8107 : gen_split_372 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8108 : {
8109 : if (dump_file)
8110 : fprintf (dump_file, "Splitting with gen_split_372 (i386.md:13585)\n");
8111 : start_sequence ();
8112 : #define FAIL return (end_sequence (), nullptr)
8113 : #define DONE return end_sequence ()
8114 : #line 13613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8115 : operands[4] = gen_lowpart (GET_MODE (operands[1]), operands[0]);
8116 : #undef DONE
8117 : #undef FAIL
8118 : static const uint8_t expand_encoding[] = {
8119 : 0x02, 0x1f, 0x81, 0x06, 0x12, 0x01, 0x00, 0x27,
8120 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x12, 0x01, 0x01,
8121 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
8122 : 0x81, 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27,
8123 : 0x08, 0x81, 0x06, 0x12, 0x4b, 0x00, 0x01, 0x04,
8124 : 0x01, 0x02, 0x27, 0x08, 0x27, 0x08, 0x05, 0x02,
8125 : 0x11
8126 : };
8127 : return complete_seq (expand_encoding, operands);
8128 : }
8129 :
8130 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13691 */
8131 : extern rtx_insn *gen_split_382 (rtx_insn *, rtx *);
8132 : rtx_insn *
8133 : gen_split_382 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8134 : {
8135 : if (dump_file)
8136 : fprintf (dump_file, "Splitting with gen_split_382 (i386.md:13691)\n");
8137 : start_sequence ();
8138 : #define FAIL return (end_sequence (), nullptr)
8139 : #define DONE return end_sequence ()
8140 : #line 13705 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8141 : operands[3] = gen_reg_rtx (TImode);
8142 : #undef DONE
8143 : #undef FAIL
8144 : static const uint8_t expand_encoding[] = {
8145 : 0x02, 0x1f, 0x01, 0x03, 0x4c, 0x13, 0x01, 0x01,
8146 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49, 0x13,
8147 : 0x01, 0x03, 0x01, 0x02, 0x05, 0x02, 0x11
8148 : };
8149 : return complete_seq (expand_encoding, operands);
8150 : }
8151 :
8152 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13874 */
8153 : rtx
8154 : gen_iorqi3 (const rtx operand0, const rtx operand1, const rtx operand2)
8155 : {
8156 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
8157 : start_sequence ();
8158 : {
8159 : #define FAIL return (end_sequence (), nullptr)
8160 : #define DONE return end_sequence ()
8161 : #line 13879 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8162 : {
8163 : if (GET_MODE_SIZE (QImode) > UNITS_PER_WORD
8164 : && !x86_64_hilo_general_operand (operands[2], QImode))
8165 : operands[2] = force_reg (QImode, operands[2]);
8166 :
8167 : ix86_expand_binary_operator (IOR, QImode, operands, TARGET_APX_NDD);
8168 : DONE;
8169 : }
8170 : #undef DONE
8171 : #undef FAIL
8172 : }
8173 : static const uint8_t expand_encoding[] = {
8174 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x0f, 0x01, 0x01,
8175 : 0x01, 0x02
8176 : };
8177 : return complete_seq (expand_encoding, operands);
8178 : }
8179 :
8180 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13874 */
8181 : rtx
8182 : gen_xorti3 (const rtx operand0, const rtx operand1, const rtx operand2)
8183 : {
8184 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
8185 : start_sequence ();
8186 : {
8187 : #define FAIL return (end_sequence (), nullptr)
8188 : #define DONE return end_sequence ()
8189 : #line 13879 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8190 : {
8191 : if (GET_MODE_SIZE (TImode) > UNITS_PER_WORD
8192 : && !x86_64_hilo_general_operand (operands[2], TImode))
8193 : operands[2] = force_reg (TImode, operands[2]);
8194 :
8195 : ix86_expand_binary_operator (XOR, TImode, operands, TARGET_APX_NDD);
8196 : DONE;
8197 : }
8198 : #undef DONE
8199 : #undef FAIL
8200 : }
8201 : static const uint8_t expand_encoding[] = {
8202 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x13, 0x01, 0x01,
8203 : 0x01, 0x02
8204 : };
8205 : return complete_seq (expand_encoding, operands);
8206 : }
8207 :
8208 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14043 */
8209 : extern rtx_insn *gen_split_402 (rtx_insn *, rtx *);
8210 : rtx_insn *
8211 : gen_split_402 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8212 : {
8213 : if (dump_file)
8214 : fprintf (dump_file, "Splitting with gen_split_402 (i386.md:14043)\n");
8215 : start_sequence ();
8216 : #define FAIL return (end_sequence (), nullptr)
8217 : #define DONE return end_sequence ()
8218 : #line 14072 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8219 : {
8220 : operands[1] = force_reg (HImode, operands[1]);
8221 : operands[3] = force_reg (HImode, operands[3]);
8222 : operands[4] = gen_reg_rtx (HImode);
8223 : operands[5] = gen_reg_rtx (HImode);
8224 : }
8225 : #undef DONE
8226 : #undef FAIL
8227 : static const uint8_t expand_encoding[] = {
8228 : 0x03, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x49,
8229 : 0x10, 0x4c, 0x10, 0x01, 0x03, 0x01, 0x01, 0x05,
8230 : 0x02, 0x11, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x05,
8231 : 0x49, 0x10, 0x01, 0x03, 0x01, 0x02, 0x05, 0x02,
8232 : 0x11, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a,
8233 : 0x10, 0x01, 0x04, 0x01, 0x05, 0x05, 0x02, 0x11
8234 : };
8235 : return complete_seq (expand_encoding, operands);
8236 : }
8237 :
8238 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14212 */
8239 : extern rtx_insn *gen_split_410 (rtx_insn *, rtx *);
8240 : rtx_insn *
8241 : gen_split_410 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8242 : {
8243 : if (dump_file)
8244 : fprintf (dump_file, "Splitting with gen_split_410 (i386.md:14212)\n");
8245 : start_sequence ();
8246 : #define FAIL return (end_sequence (), nullptr)
8247 : #define DONE return end_sequence ()
8248 : #line 14220 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8249 : operands[3] = gen_reg_rtx (SImode);
8250 : #undef DONE
8251 : #undef FAIL
8252 : static const uint8_t expand_encoding[] = {
8253 : 0x02, 0x1f, 0x01, 0x03, 0x6e, 0x11, 0x01, 0x01,
8254 : 0x1f, 0x01, 0x00, 0x4a, 0x11, 0x01, 0x03, 0x01,
8255 : 0x02
8256 : };
8257 : return complete_seq (expand_encoding, operands);
8258 : }
8259 :
8260 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14222 */
8261 : extern rtx_insn *gen_split_420 (rtx_insn *, rtx *);
8262 : rtx_insn *
8263 : gen_split_420 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8264 : {
8265 : if (dump_file)
8266 : fprintf (dump_file, "Splitting with gen_split_420 (i386.md:14222)\n");
8267 : start_sequence ();
8268 : #define FAIL return (end_sequence (), nullptr)
8269 : #define DONE return end_sequence ()
8270 : #line 14230 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8271 : operands[3] = gen_reg_rtx (DImode);
8272 : #undef DONE
8273 : #undef FAIL
8274 : static const uint8_t expand_encoding[] = {
8275 : 0x02, 0x1f, 0x01, 0x03, 0x6e, 0x12, 0x01, 0x01,
8276 : 0x1f, 0x01, 0x00, 0x4b, 0x12, 0x01, 0x03, 0x01,
8277 : 0x02
8278 : };
8279 : return complete_seq (expand_encoding, operands);
8280 : }
8281 :
8282 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14370 */
8283 : extern rtx_insn *gen_split_430 (rtx_insn *, rtx *);
8284 : rtx_insn *
8285 : gen_split_430 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8286 : {
8287 : if (dump_file)
8288 : fprintf (dump_file, "Splitting with gen_split_430 (i386.md:14370)\n");
8289 : start_sequence ();
8290 : #define FAIL return (end_sequence (), nullptr)
8291 : #define DONE return end_sequence ()
8292 : #line 14385 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8293 : {
8294 : operands[0] = gen_lowpart (QImode, operands[0]);
8295 : operands[1] = gen_lowpart (QImode, operands[1]);
8296 : operands[2] = gen_int_mode (INTVAL (operands[2]), QImode);
8297 : }
8298 : #undef DONE
8299 : #undef FAIL
8300 : static const uint8_t expand_encoding[] = {
8301 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01,
8302 : 0x00, 0x4a, 0x0f, 0x01, 0x01, 0x01, 0x02, 0x05,
8303 : 0x02, 0x11
8304 : };
8305 : return complete_seq (expand_encoding, operands);
8306 : }
8307 :
8308 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14370 */
8309 : extern rtx_insn *gen_split_434 (rtx_insn *, rtx *);
8310 : rtx_insn *
8311 : gen_split_434 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8312 : {
8313 : if (dump_file)
8314 : fprintf (dump_file, "Splitting with gen_split_434 (i386.md:14370)\n");
8315 : start_sequence ();
8316 : #define FAIL return (end_sequence (), nullptr)
8317 : #define DONE return end_sequence ()
8318 : #line 14385 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8319 : {
8320 : operands[0] = gen_lowpart (QImode, operands[0]);
8321 : operands[1] = gen_lowpart (QImode, operands[1]);
8322 : operands[2] = gen_int_mode (INTVAL (operands[2]), QImode);
8323 : }
8324 : #undef DONE
8325 : #undef FAIL
8326 : static const uint8_t expand_encoding[] = {
8327 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01,
8328 : 0x00, 0x4a, 0x0f, 0x01, 0x01, 0x01, 0x02, 0x05,
8329 : 0x02, 0x11
8330 : };
8331 : return complete_seq (expand_encoding, operands);
8332 : }
8333 :
8334 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14426 */
8335 : extern rtx_insn *gen_peephole2_156 (rtx_insn *, rtx *);
8336 : rtx_insn *
8337 : gen_peephole2_156 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8338 : {
8339 : if (dump_file)
8340 : fprintf (dump_file, "Splitting with gen_peephole2_156 (i386.md:14426)\n");
8341 : start_sequence ();
8342 : static const uint8_t expand_encoding[] = {
8343 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x27,
8344 : 0x00, 0x05, 0x02, 0x11
8345 : };
8346 : return complete_seq (expand_encoding, operands);
8347 : }
8348 :
8349 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14426 */
8350 : extern rtx_insn *gen_peephole2_166 (rtx_insn *, rtx *);
8351 : rtx_insn *
8352 : gen_peephole2_166 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8353 : {
8354 : if (dump_file)
8355 : fprintf (dump_file, "Splitting with gen_peephole2_166 (i386.md:14426)\n");
8356 : start_sequence ();
8357 : static const uint8_t expand_encoding[] = {
8358 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x27,
8359 : 0x00, 0x05, 0x02, 0x11
8360 : };
8361 : return complete_seq (expand_encoding, operands);
8362 : }
8363 :
8364 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14455 */
8365 : extern rtx_insn *gen_split_445 (rtx_insn *, rtx *);
8366 : rtx_insn *
8367 : gen_split_445 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8368 : {
8369 : if (dump_file)
8370 : fprintf (dump_file, "Splitting with gen_split_445 (i386.md:14455)\n");
8371 : start_sequence ();
8372 : #define FAIL return (end_sequence (), nullptr)
8373 : #define DONE return end_sequence ()
8374 : #line 14466 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8375 : {
8376 : split_double_concat (TImode, operands[0], operands[1],
8377 : gen_lowpart (DImode, operands[2]));
8378 : DONE;
8379 : }
8380 : #undef DONE
8381 : #undef FAIL
8382 : static const uint8_t expand_encoding[] = {
8383 : 0x01, 0x27, 0x00
8384 : };
8385 : return complete_seq (expand_encoding, operands);
8386 : }
8387 :
8388 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14472 */
8389 : extern rtx_insn *gen_split_455 (rtx_insn *, rtx *);
8390 : rtx_insn *
8391 : gen_split_455 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8392 : {
8393 : if (dump_file)
8394 : fprintf (dump_file, "Splitting with gen_split_455 (i386.md:14472)\n");
8395 : start_sequence ();
8396 : #define FAIL return (end_sequence (), nullptr)
8397 : #define DONE return end_sequence ()
8398 : #line 14485 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8399 : {
8400 : if (SSE_REG_P (operands[0]))
8401 : {
8402 : rtx tmp = gen_rtx_REG (V2DImode, REGNO (operands[0]));
8403 : emit_insn (gen_vec_concatv2di (tmp, operands[3], operands[1]));
8404 : }
8405 : else
8406 : split_double_concat (TImode, operands[0], operands[3], operands[1]);
8407 : DONE;
8408 : }
8409 : #undef DONE
8410 : #undef FAIL
8411 : static const uint8_t expand_encoding[] = {
8412 : 0x01, 0x27, 0x00
8413 : };
8414 : return complete_seq (expand_encoding, operands);
8415 : }
8416 :
8417 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14497 */
8418 : extern rtx_insn *gen_split_465 (rtx_insn *, rtx *);
8419 : rtx_insn *
8420 : gen_split_465 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8421 : {
8422 : if (dump_file)
8423 : fprintf (dump_file, "Splitting with gen_split_465 (i386.md:14497)\n");
8424 : start_sequence ();
8425 : #define FAIL return (end_sequence (), nullptr)
8426 : #define DONE return end_sequence ()
8427 : #line 14510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8428 : {
8429 : split_double_concat (DImode, operands[0], operands[1], operands[2]);
8430 : DONE;
8431 : }
8432 : #undef DONE
8433 : #undef FAIL
8434 : static const uint8_t expand_encoding[] = {
8435 : 0x01, 0x27, 0x00
8436 : };
8437 : return complete_seq (expand_encoding, operands);
8438 : }
8439 :
8440 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14516 */
8441 : extern rtx_insn *gen_split_474 (rtx_insn *, rtx *);
8442 : rtx_insn *
8443 : gen_split_474 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8444 : {
8445 : if (dump_file)
8446 : fprintf (dump_file, "Splitting with gen_split_474 (i386.md:14516)\n");
8447 : start_sequence ();
8448 : #define FAIL return (end_sequence (), nullptr)
8449 : #define DONE return end_sequence ()
8450 : #line 14538 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8451 : {
8452 : rtx op3 = simplify_subreg (SImode, operands[3], DImode, 0);
8453 : split_double_concat (DImode, operands[0], op3,
8454 : gen_lowpart (SImode, operands[1]));
8455 : DONE;
8456 : }
8457 : #undef DONE
8458 : #undef FAIL
8459 : static const uint8_t expand_encoding[] = {
8460 : 0x01, 0x27, 0x00
8461 : };
8462 : return complete_seq (expand_encoding, operands);
8463 : }
8464 :
8465 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14546 */
8466 : extern rtx_insn *gen_split_484 (rtx_insn *, rtx *);
8467 : rtx_insn *
8468 : gen_split_484 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8469 : {
8470 : if (dump_file)
8471 : fprintf (dump_file, "Splitting with gen_split_484 (i386.md:14546)\n");
8472 : start_sequence ();
8473 : #define FAIL return (end_sequence (), nullptr)
8474 : #define DONE return end_sequence ()
8475 : #line 14570 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8476 : {
8477 : rtx op3 = simplify_subreg (DImode, operands[3], TImode, 0);
8478 : split_double_concat (TImode, operands[0], op3, operands[1]);
8479 : DONE;
8480 : }
8481 : #undef DONE
8482 : #undef FAIL
8483 : static const uint8_t expand_encoding[] = {
8484 : 0x01, 0x27, 0x00
8485 : };
8486 : return complete_seq (expand_encoding, operands);
8487 : }
8488 :
8489 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14577 */
8490 : extern rtx_insn *gen_split_494 (rtx_insn *, rtx *);
8491 : rtx_insn *
8492 : gen_split_494 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8493 : {
8494 : if (dump_file)
8495 : fprintf (dump_file, "Splitting with gen_split_494 (i386.md:14577)\n");
8496 : start_sequence ();
8497 : #define FAIL return (end_sequence (), nullptr)
8498 : #define DONE return end_sequence ()
8499 : #line 14596 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8500 : {
8501 : rtx op2;
8502 : if (TImode == DImode)
8503 : op2 = gen_int_mode (INTVAL (operands[2]) >> 32, DImode);
8504 : else
8505 : op2 = gen_int_mode (CONST_WIDE_INT_ELT (operands[2], 1), DImode);
8506 : split_double_concat (TImode, operands[0], operands[1], op2);
8507 : DONE;
8508 : }
8509 : #undef DONE
8510 : #undef FAIL
8511 : static const uint8_t expand_encoding[] = {
8512 : 0x01, 0x27, 0x00
8513 : };
8514 : return complete_seq (expand_encoding, operands);
8515 : }
8516 :
8517 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14652 */
8518 : extern rtx_insn *gen_peephole2_168 (rtx_insn *, rtx *);
8519 : rtx_insn *
8520 : gen_peephole2_168 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8521 : {
8522 : if (dump_file)
8523 : fprintf (dump_file, "Splitting with gen_peephole2_168 (i386.md:14652)\n");
8524 : start_sequence ();
8525 : #define FAIL return (end_sequence (), nullptr)
8526 : #define DONE return end_sequence ()
8527 : #line 14685 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8528 : ix86_expand_clear (operands[0]);
8529 : #undef DONE
8530 : #undef FAIL
8531 : static const uint8_t expand_encoding[] = {
8532 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
8533 : 0x1a, 0x08, 0x02, 0x01, 0x02, 0x27, 0x00, 0x29,
8534 : 0x1f, 0x01, 0x02, 0x3d, 0x12, 0x01, 0x02, 0x17,
8535 : 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3c, 0x12, 0x3c,
8536 : 0x12, 0x01, 0x00, 0x66, 0x12, 0x30, 0x02, 0x11,
8537 : 0x27, 0x00, 0x01, 0x01, 0x05, 0x02, 0x11
8538 : };
8539 : return complete_seq (expand_encoding, operands);
8540 : }
8541 :
8542 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14933 */
8543 : extern rtx_insn *gen_peephole2_172 (rtx_insn *, rtx *);
8544 : rtx_insn *
8545 : gen_peephole2_172 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8546 : {
8547 : if (dump_file)
8548 : fprintf (dump_file, "Splitting with gen_peephole2_172 (i386.md:14933)\n");
8549 : start_sequence ();
8550 : static const uint8_t expand_encoding[] = {
8551 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x17, 0x00,
8552 : 0x02, 0x1f, 0x30, 0x0c, 0x11, 0x3a, 0x0c, 0x3d,
8553 : 0x10, 0x01, 0x00, 0x27, 0x00, 0x1f, 0x01, 0x00,
8554 : 0x3d, 0x10, 0x01, 0x00
8555 : };
8556 : return complete_seq (expand_encoding, operands);
8557 : }
8558 :
8559 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14946 */
8560 : extern rtx_insn *gen_peephole2_175 (rtx_insn *, rtx *);
8561 : rtx_insn *
8562 : gen_peephole2_175 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8563 : {
8564 : if (dump_file)
8565 : fprintf (dump_file, "Splitting with gen_peephole2_175 (i386.md:14946)\n");
8566 : start_sequence ();
8567 : static const uint8_t expand_encoding[] = {
8568 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x0c, 0x11,
8569 : 0x3a, 0x0c, 0x3d, 0x0f, 0x01, 0x01, 0x27, 0x00,
8570 : 0x1f, 0x01, 0x00, 0x3d, 0x0f, 0x01, 0x01
8571 : };
8572 : return complete_seq (expand_encoding, operands);
8573 : }
8574 :
8575 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14989 */
8576 : extern rtx_insn *gen_split_503 (rtx_insn *, rtx *);
8577 : rtx_insn *
8578 : gen_split_503 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8579 : {
8580 : if (dump_file)
8581 : fprintf (dump_file, "Splitting with gen_split_503 (i386.md:14989)\n");
8582 : start_sequence ();
8583 : #define FAIL return (end_sequence (), nullptr)
8584 : #define DONE return end_sequence ()
8585 : #line 15025 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8586 : {
8587 : operands[1] = force_reg (DImode, operands[1]);
8588 : operands[2] = gen_reg_rtx (DImode);
8589 :
8590 : split_double_mode (DImode, &operands[0], 3, &operands[0], &operands[3]);
8591 : }
8592 : #undef DONE
8593 : #undef FAIL
8594 : static const uint8_t expand_encoding[] = {
8595 : 0x05, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
8596 : 0x1a, 0x08, 0x02, 0x01, 0x01, 0x27, 0x00, 0x29,
8597 : 0x1f, 0x01, 0x02, 0x3d, 0x11, 0x01, 0x01, 0x17,
8598 : 0x00, 0x02, 0x1f, 0x01, 0x05, 0x3b, 0x11, 0x3b,
8599 : 0x11, 0x66, 0x11, 0x30, 0x02, 0x11, 0x27, 0x00,
8600 : 0x01, 0x04, 0x27, 0x00, 0x05, 0x02, 0x11, 0x17,
8601 : 0x00, 0x02, 0x1f, 0x30, 0x04, 0x11, 0x3a, 0x04,
8602 : 0x3d, 0x11, 0x01, 0x05, 0x27, 0x00, 0x1f, 0x01,
8603 : 0x05, 0x3d, 0x11, 0x01, 0x05, 0x1f, 0x01, 0x00,
8604 : 0x39, 0x11, 0x5e, 0x00, 0x30, 0x04, 0x11, 0x27,
8605 : 0x00, 0x01, 0x02, 0x01, 0x01, 0x1f, 0x01, 0x03,
8606 : 0x39, 0x11, 0x5e, 0x00, 0x30, 0x04, 0x11, 0x27,
8607 : 0x00, 0x01, 0x05, 0x01, 0x04
8608 : };
8609 : return complete_seq (expand_encoding, operands);
8610 : }
8611 :
8612 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15103 */
8613 : extern rtx_insn *gen_split_514 (rtx_insn *, rtx *);
8614 : rtx_insn *
8615 : gen_split_514 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8616 : {
8617 : if (dump_file)
8618 : fprintf (dump_file, "Splitting with gen_split_514 (i386.md:15103)\n");
8619 : start_sequence ();
8620 : #define FAIL return (end_sequence (), nullptr)
8621 : #define DONE return end_sequence ()
8622 : #line 15126 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8623 : {
8624 : operands[1] = force_reg (DImode, operands[1]);
8625 : operands[2] = gen_reg_rtx (DImode);
8626 : }
8627 : #undef DONE
8628 : #undef FAIL
8629 : static const uint8_t expand_encoding[] = {
8630 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x04, 0x11,
8631 : 0x3a, 0x04, 0x3d, 0x12, 0x01, 0x01, 0x27, 0x00,
8632 : 0x1f, 0x01, 0x02, 0x3d, 0x12, 0x01, 0x01, 0x1f,
8633 : 0x01, 0x00, 0x39, 0x12, 0x61, 0x00, 0x30, 0x04,
8634 : 0x11, 0x27, 0x00, 0x01, 0x02, 0x01, 0x01
8635 : };
8636 : return complete_seq (expand_encoding, operands);
8637 : }
8638 :
8639 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15192 */
8640 : rtx
8641 : gen_absxf2 (const rtx operand0, const rtx operand1)
8642 : {
8643 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
8644 : start_sequence ();
8645 : {
8646 : #define FAIL return (end_sequence (), nullptr)
8647 : #define DONE return end_sequence ()
8648 : #line 15196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8649 : ix86_expand_fp_absneg_operator (ABS, XFmode, operands); DONE;
8650 : #undef DONE
8651 : #undef FAIL
8652 : }
8653 : static const uint8_t expand_encoding[] = {
8654 : 0x01, 0x1f, 0x01, 0x00, 0x7b, 0x2f, 0x01, 0x01
8655 : };
8656 : return complete_seq (expand_encoding, operands);
8657 : }
8658 :
8659 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15214 */
8660 : extern rtx_insn *gen_split_526 (rtx_insn *, rtx *);
8661 : rtx_insn *
8662 : gen_split_526 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8663 : {
8664 : if (dump_file)
8665 : fprintf (dump_file, "Splitting with gen_split_526 (i386.md:15214)\n");
8666 : start_sequence ();
8667 : #define FAIL return (end_sequence (), nullptr)
8668 : #define DONE return end_sequence ()
8669 : #line 15220 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8670 : ix86_split_fp_absneg_operator (ABS, DFmode, operands); DONE;
8671 : #undef DONE
8672 : #undef FAIL
8673 : static const uint8_t expand_encoding[] = {
8674 : 0x01, 0x27, 0x00
8675 : };
8676 : return complete_seq (expand_encoding, operands);
8677 : }
8678 :
8679 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15280 */
8680 : extern rtx_insn *gen_split_536 (rtx_insn *, rtx *);
8681 : rtx_insn *
8682 : gen_split_536 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8683 : {
8684 : if (dump_file)
8685 : fprintf (dump_file, "Splitting with gen_split_536 (i386.md:15280)\n");
8686 : start_sequence ();
8687 : static const uint8_t expand_encoding[] = {
8688 : 0x01, 0x1f, 0x01, 0x00, 0x7b, 0x2d, 0x01, 0x01
8689 : };
8690 : return complete_seq (expand_encoding, operands);
8691 : }
8692 :
8693 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15297 */
8694 : extern rtx_insn *gen_split_544 (rtx_insn *, rtx *);
8695 : rtx_insn *
8696 : gen_split_544 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8697 : {
8698 : if (dump_file)
8699 : fprintf (dump_file, "Splitting with gen_split_544 (i386.md:15297)\n");
8700 : start_sequence ();
8701 : #define FAIL return (end_sequence (), nullptr)
8702 : #define DONE return end_sequence ()
8703 : #line 15308 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8704 : {
8705 : machine_mode mode = SFmode;
8706 : machine_mode vmode = V4SFmode;
8707 :
8708 : operands[0] = lowpart_subreg (vmode, operands[0], mode);
8709 : operands[1] = lowpart_subreg (vmode, operands[1], mode);
8710 :
8711 : if (!TARGET_AVX && operands_match_p (operands[0], operands[2]))
8712 : std::swap (operands[1], operands[2]);
8713 : }
8714 : #undef DONE
8715 : #undef FAIL
8716 : static const uint8_t expand_encoding[] = {
8717 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x6b, 0x01, 0x01,
8718 : 0x01, 0x02
8719 : };
8720 : return complete_seq (expand_encoding, operands);
8721 : }
8722 :
8723 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15358 */
8724 : rtx
8725 : gen_one_cmplti2 (const rtx operand0, const rtx operand1)
8726 : {
8727 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
8728 : start_sequence ();
8729 : {
8730 : #define FAIL return (end_sequence (), nullptr)
8731 : #define DONE return end_sequence ()
8732 : #line 15362 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8733 : {
8734 : ix86_expand_unary_operator (NOT, TImode, operands, TARGET_APX_NDD);
8735 : DONE;
8736 : }
8737 : #undef DONE
8738 : #undef FAIL
8739 : }
8740 : static const uint8_t expand_encoding[] = {
8741 : 0x01, 0x1f, 0x01, 0x00, 0x4c, 0x13, 0x01, 0x01
8742 : };
8743 : return complete_seq (expand_encoding, operands);
8744 : }
8745 :
8746 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15521 */
8747 : extern rtx_insn *gen_split_555 (rtx_insn *, rtx *);
8748 : rtx_insn *
8749 : gen_split_555 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8750 : {
8751 : if (dump_file)
8752 : fprintf (dump_file, "Splitting with gen_split_555 (i386.md:15521)\n");
8753 : start_sequence ();
8754 : #define FAIL return (end_sequence (), nullptr)
8755 : #define DONE return end_sequence ()
8756 : #line 15543 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8757 :
8758 : #undef DONE
8759 : #undef FAIL
8760 : static const uint8_t expand_encoding[] = {
8761 : 0x02, 0x1f, 0x81, 0x06, 0x10, 0x01, 0x00, 0x27,
8762 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x10, 0x01, 0x01,
8763 : 0x27, 0x08, 0x27, 0x08, 0x1f, 0x81, 0x06, 0x10,
8764 : 0x01, 0x00, 0x27, 0x08, 0x27, 0x08, 0x4c, 0x10,
8765 : 0x81, 0x06, 0x10, 0x01, 0x00, 0x27, 0x08, 0x27,
8766 : 0x08
8767 : };
8768 : return complete_seq (expand_encoding, operands);
8769 : }
8770 :
8771 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15643 */
8772 : extern rtx_insn *gen_split_560 (rtx_insn *, rtx *);
8773 : rtx_insn *
8774 : gen_split_560 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8775 : {
8776 : if (dump_file)
8777 : fprintf (dump_file, "Splitting with gen_split_560 (i386.md:15643)\n");
8778 : start_sequence ();
8779 : #define FAIL return (end_sequence (), nullptr)
8780 : #define DONE return end_sequence ()
8781 : #line 15670 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8782 : {
8783 : if ((INTVAL (operands[3]) & (4 * BITS_PER_UNIT)) != 0)
8784 : {
8785 : emit_insn (gen_ashldi3_doubleword (operands[0], operands[1],
8786 : operands[2]));
8787 : DONE;
8788 : }
8789 :
8790 : split_double_mode (DImode, &operands[0], 2, &operands[4], &operands[6]);
8791 :
8792 : operands[8] = GEN_INT (4 * BITS_PER_UNIT - 1);
8793 : operands[9] = GEN_INT (4 * BITS_PER_UNIT);
8794 :
8795 : if ((INTVAL (operands[3]) & ((4 * BITS_PER_UNIT) - 1))
8796 : != ((4 * BITS_PER_UNIT) - 1))
8797 : {
8798 : rtx tem = gen_reg_rtx (QImode);
8799 : emit_insn (gen_andqi3 (tem, operands[2], operands[3]));
8800 : operands[2] = tem;
8801 : }
8802 :
8803 : if (!rtx_equal_p (operands[6], operands[7]))
8804 : emit_move_insn (operands[6], operands[7]);
8805 : }
8806 : #undef DONE
8807 : #undef FAIL
8808 : static const uint8_t expand_encoding[] = {
8809 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x06, 0x4a,
8810 : 0x11, 0x4d, 0x11, 0x01, 0x06, 0x49, 0x0f, 0x01,
8811 : 0x02, 0x01, 0x08, 0x32, 0x11, 0x50, 0x12, 0x6f,
8812 : 0x12, 0x01, 0x05, 0x3c, 0x0f, 0x01, 0x09, 0x49,
8813 : 0x0f, 0x01, 0x02, 0x01, 0x08, 0x00, 0x05, 0x02,
8814 : 0x11, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x4d,
8815 : 0x11, 0x01, 0x05, 0x01, 0x02, 0x05, 0x02, 0x11
8816 : };
8817 : return complete_seq (expand_encoding, operands);
8818 : }
8819 :
8820 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16087 */
8821 : extern rtx_insn *gen_split_572 (rtx_insn *, rtx *);
8822 : rtx_insn *
8823 : gen_split_572 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8824 : {
8825 : if (dump_file)
8826 : fprintf (dump_file, "Splitting with gen_split_572 (i386.md:16087)\n");
8827 : start_sequence ();
8828 : #define FAIL return (end_sequence (), nullptr)
8829 : #define DONE return end_sequence ()
8830 : #line 16100 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8831 : {
8832 : if (rtx_equal_p (operands[4], operands[0]))
8833 : {
8834 : operands[1] = force_reg (SImode, operands[1]);
8835 : emit_insn (gen_x86_shld_1_nf (operands[0], operands[1],
8836 : operands[2], operands[3]));
8837 : }
8838 : else if (rtx_equal_p (operands[1], operands[0]))
8839 : {
8840 : operands[4] = force_reg (SImode, operands[4]);
8841 : emit_insn (gen_x86_shrd_1_nf (operands[0], operands[4],
8842 : operands[3], operands[2]));
8843 : }
8844 : else if (TARGET_APX_NDD)
8845 : {
8846 : rtx tmp = gen_reg_rtx (SImode);
8847 : if (MEM_P (operands[4]))
8848 : {
8849 : operands[1] = force_reg (SImode, operands[1]);
8850 : emit_insn (gen_x86_shld_ndd_1_nf (tmp, operands[4], operands[1],
8851 : operands[2], operands[3]));
8852 : }
8853 : else if (MEM_P (operands[1]))
8854 : emit_insn (gen_x86_shrd_ndd_1_nf (tmp, operands[1], operands[4],
8855 : operands[3], operands[2]));
8856 : else
8857 : emit_insn (gen_x86_shld_ndd_1_nf (tmp, operands[4], operands[1],
8858 : operands[2], operands[3]));
8859 : emit_move_insn (operands[0], tmp);
8860 : }
8861 : else
8862 : {
8863 : operands[1] = force_reg (SImode, operands[1]);
8864 : rtx tmp = gen_reg_rtx (SImode);
8865 : emit_move_insn (tmp, operands[4]);
8866 : emit_insn (gen_x86_shld_1_nf (tmp, operands[1], operands[2],
8867 : operands[3]));
8868 : emit_move_insn (operands[0], tmp);
8869 : }
8870 : DONE;
8871 : }
8872 : #undef DONE
8873 : #undef FAIL
8874 : static const uint8_t expand_encoding[] = {
8875 : 0x01, 0x27, 0x00
8876 : };
8877 : return complete_seq (expand_encoding, operands);
8878 : }
8879 :
8880 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16683 */
8881 : extern rtx_insn *gen_split_587 (rtx_insn *, rtx *);
8882 : rtx_insn *
8883 : gen_split_587 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8884 : {
8885 : if (dump_file)
8886 : fprintf (dump_file, "Splitting with gen_split_587 (i386.md:16683)\n");
8887 : start_sequence ();
8888 : #define FAIL return (end_sequence (), nullptr)
8889 : #define DONE return end_sequence ()
8890 : #line 16692 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8891 : {
8892 : if (QImode != SImode)
8893 : {
8894 : operands[0] = gen_lowpart (SImode, operands[0]);
8895 : operands[1] = gen_lowpart (SImode, operands[1]);
8896 : }
8897 : operands[2] = GEN_INT (1 << INTVAL (operands[2]));
8898 : }
8899 : #undef DONE
8900 : #undef FAIL
8901 : static const uint8_t expand_encoding[] = {
8902 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x11, 0x01, 0x01,
8903 : 0x01, 0x02
8904 : };
8905 : return complete_seq (expand_encoding, operands);
8906 : }
8907 :
8908 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16948 */
8909 : rtx
8910 : gen_lshrhi3 (const rtx operand0, const rtx operand1, const rtx operand2)
8911 : {
8912 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
8913 : start_sequence ();
8914 : {
8915 : #define FAIL return (end_sequence (), nullptr)
8916 : #define DONE return end_sequence ()
8917 : #line 16953 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8918 : {
8919 : ix86_expand_binary_operator (LSHIFTRT, HImode, operands, TARGET_APX_NDD);
8920 : DONE;
8921 : }
8922 : #undef DONE
8923 : #undef FAIL
8924 : }
8925 : static const uint8_t expand_encoding[] = {
8926 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x10, 0x01, 0x01,
8927 : 0x01, 0x02
8928 : };
8929 : return complete_seq (expand_encoding, operands);
8930 : }
8931 :
8932 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16958 */
8933 : extern rtx_insn *gen_split_595 (rtx_insn *, rtx *);
8934 : rtx_insn *
8935 : gen_split_595 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8936 : {
8937 : if (dump_file)
8938 : fprintf (dump_file, "Splitting with gen_split_595 (i386.md:16958)\n");
8939 : start_sequence ();
8940 : #define FAIL return (end_sequence (), nullptr)
8941 : #define DONE return end_sequence ()
8942 : #line 16986 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8943 : {
8944 : if ((INTVAL (operands[3]) & (4 * BITS_PER_UNIT)) != 0)
8945 : {
8946 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
8947 : operands[2] = gen_lowpart (QImode, operands[2]);
8948 : emit_insn (gen_lshrdi3_doubleword (operands[0], operands[1],
8949 : operands[2]));
8950 : DONE;
8951 : }
8952 :
8953 : split_double_mode (DImode, &operands[0], 2, &operands[4], &operands[6]);
8954 :
8955 : operands[8] = GEN_INT (4 * BITS_PER_UNIT - 1);
8956 : operands[9] = GEN_INT (4 * BITS_PER_UNIT);
8957 :
8958 : if ((INTVAL (operands[3]) & ((4 * BITS_PER_UNIT) - 1))
8959 : != ((4 * BITS_PER_UNIT) - 1))
8960 : {
8961 : rtx xops[3];
8962 : xops[0] = gen_reg_rtx (GET_MODE (operands[2]));
8963 : xops[1] = operands[2];
8964 : xops[2] = GEN_INT (INTVAL (operands[3])
8965 : & ((4 * BITS_PER_UNIT) - 1));
8966 : ix86_expand_binary_operator (AND, GET_MODE (operands[2]), xops);
8967 : operands[2] = xops[0];
8968 : }
8969 :
8970 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
8971 : operands[2] = gen_lowpart (QImode, operands[2]);
8972 :
8973 : if (!rtx_equal_p (operands[4], operands[5]))
8974 : emit_move_insn (operands[4], operands[5]);
8975 : }
8976 : #undef DONE
8977 : #undef FAIL
8978 : static const uint8_t expand_encoding[] = {
8979 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x4a,
8980 : 0x11, 0x50, 0x11, 0x01, 0x04, 0x49, 0x0f, 0x01,
8981 : 0x02, 0x01, 0x08, 0x32, 0x11, 0x4d, 0x12, 0x6f,
8982 : 0x12, 0x01, 0x07, 0x3c, 0x0f, 0x01, 0x09, 0x49,
8983 : 0x0f, 0x01, 0x02, 0x01, 0x08, 0x00, 0x05, 0x02,
8984 : 0x11, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x06, 0x50,
8985 : 0x11, 0x01, 0x07, 0x01, 0x02, 0x05, 0x02, 0x11
8986 : };
8987 : return complete_seq (expand_encoding, operands);
8988 : }
8989 :
8990 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17096 */
8991 : extern rtx_insn *gen_peephole2_184 (rtx_insn *, rtx *);
8992 : rtx_insn *
8993 : gen_peephole2_184 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8994 : {
8995 : HARD_REG_SET _regs_allocated;
8996 : CLEAR_HARD_REG_SET (_regs_allocated);
8997 : if ((operands[3] = peep2_find_free_register (0, 1, "r", DImode, &_regs_allocated)) == NULL_RTX)
8998 : return NULL;
8999 : if (dump_file)
9000 : fprintf (dump_file, "Splitting with gen_peephole2_184 (i386.md:17096)\n");
9001 : start_sequence ();
9002 : #define FAIL return (end_sequence (), nullptr)
9003 : #define DONE return end_sequence ()
9004 : #line 17106 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9005 : {
9006 : if (TARGET_APX_NDD
9007 : && !rtx_equal_p (operands[0], operands[1]))
9008 : ix86_split_rshift_ndd (ASHIFTRT, operands, operands[3]);
9009 : else
9010 : ix86_split_ashr (operands, operands[3], TImode);
9011 : DONE;
9012 : }
9013 : #undef DONE
9014 : #undef FAIL
9015 : static const uint8_t expand_encoding[] = {
9016 : 0x01, 0x27, 0x00
9017 : };
9018 : return complete_seq (expand_encoding, operands);
9019 : }
9020 :
9021 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17347 */
9022 : extern rtx_insn *gen_split_617 (rtx_insn *, rtx *);
9023 : rtx_insn *
9024 : gen_split_617 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9025 : {
9026 : if (dump_file)
9027 : fprintf (dump_file, "Splitting with gen_split_617 (i386.md:17347)\n");
9028 : start_sequence ();
9029 : static const uint8_t expand_encoding[] = {
9030 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a,
9031 : 0x12, 0x50, 0x12, 0x01, 0x00, 0x49, 0x0f, 0x01,
9032 : 0x02, 0x27, 0x3f, 0x32, 0x12, 0x4d, 0x13, 0x6f,
9033 : 0x13, 0x01, 0x01, 0x3c, 0x0f, 0x27, 0x40, 0x49,
9034 : 0x0f, 0x01, 0x02, 0x27, 0x3f, 0x00, 0x05, 0x02,
9035 : 0x11
9036 : };
9037 : return complete_seq (expand_encoding, operands);
9038 : }
9039 :
9040 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17665 */
9041 : rtx
9042 : gen_x86_shiftsi_adj_3 (const rtx operand0, const rtx operand1, const rtx operand2)
9043 : {
9044 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
9045 : start_sequence ();
9046 : {
9047 : #define FAIL return (end_sequence (), nullptr)
9048 : #define DONE return end_sequence ()
9049 : #line 17670 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9050 : {
9051 : rtx_code_label *label = gen_label_rtx ();
9052 : rtx tmp;
9053 :
9054 : emit_insn (gen_testqi_ccz_1 (operands[2],
9055 : GEN_INT (GET_MODE_BITSIZE (SImode))));
9056 :
9057 : tmp = gen_rtx_REG (CCZmode, FLAGS_REG);
9058 : tmp = gen_rtx_EQ (VOIDmode, tmp, const0_rtx);
9059 : tmp = gen_rtx_IF_THEN_ELSE (VOIDmode, tmp,
9060 : gen_rtx_LABEL_REF (VOIDmode, label),
9061 : pc_rtx);
9062 : tmp = emit_jump_insn (gen_rtx_SET (pc_rtx, tmp));
9063 : JUMP_LABEL (tmp) = label;
9064 :
9065 : emit_move_insn (operands[0], operands[1]);
9066 : emit_insn (gen_ashrsi3_cvt (operands[1], operands[1],
9067 : GEN_INT (GET_MODE_BITSIZE (SImode)-1)));
9068 : emit_label (label);
9069 : LABEL_NUSES (label) = 1;
9070 :
9071 : DONE;
9072 : }
9073 : #undef DONE
9074 : #undef FAIL
9075 : }
9076 : static const uint8_t expand_encoding[] = {
9077 : 0x03, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
9078 : 0x01, 0x20, 0x00, 0x01, 0x02
9079 : };
9080 : return complete_seq (expand_encoding, operands);
9081 : }
9082 :
9083 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17901 */
9084 : extern rtx_insn *gen_split_633 (rtx_insn *, rtx *);
9085 : rtx_insn *
9086 : gen_split_633 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9087 : {
9088 : if (dump_file)
9089 : fprintf (dump_file, "Splitting with gen_split_633 (i386.md:17901)\n");
9090 : start_sequence ();
9091 : #define FAIL return (end_sequence (), nullptr)
9092 : #define DONE return end_sequence ()
9093 : #line 17910 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9094 : operands[2] = gen_lowpart (SImode, operands[2]);
9095 : #undef DONE
9096 : #undef FAIL
9097 : static const uint8_t expand_encoding[] = {
9098 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x4f, 0x11,
9099 : 0x01, 0x01, 0x01, 0x02
9100 : };
9101 : return complete_seq (expand_encoding, operands);
9102 : }
9103 :
9104 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18163 */
9105 : extern rtx_insn *gen_split_643 (rtx_insn *, rtx *);
9106 : rtx_insn *
9107 : gen_split_643 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9108 : {
9109 : if (dump_file)
9110 : fprintf (dump_file, "Splitting with gen_split_643 (i386.md:18163)\n");
9111 : start_sequence ();
9112 : #define FAIL return (end_sequence (), nullptr)
9113 : #define DONE return end_sequence ()
9114 : #line 18202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9115 :
9116 : #undef DONE
9117 : #undef FAIL
9118 : static const uint8_t expand_encoding[] = {
9119 : 0x02, 0x1f, 0x81, 0x06, 0x12, 0x01, 0x00, 0x27,
9120 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x12, 0x01, 0x01,
9121 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
9122 : 0x81, 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27,
9123 : 0x08, 0x32, 0x12, 0x4f, 0x0f, 0x32, 0x0f, 0x81,
9124 : 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
9125 : 0x00, 0x01, 0x02, 0x00, 0x05, 0x02, 0x11
9126 : };
9127 : return complete_seq (expand_encoding, operands);
9128 : }
9129 :
9130 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18240 */
9131 : extern rtx_insn *gen_split_655 (rtx_insn *, rtx *);
9132 : rtx_insn *
9133 : gen_split_655 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9134 : {
9135 : if (dump_file)
9136 : fprintf (dump_file, "Splitting with gen_split_655 (i386.md:18240)\n");
9137 : start_sequence ();
9138 : #define FAIL return (end_sequence (), nullptr)
9139 : #define DONE return end_sequence ()
9140 : #line 18259 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9141 :
9142 : #undef DONE
9143 : #undef FAIL
9144 : static const uint8_t expand_encoding[] = {
9145 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4f,
9146 : 0x12, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9147 : };
9148 : return complete_seq (expand_encoding, operands);
9149 : }
9150 :
9151 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18287 */
9152 : extern rtx_insn *gen_split_665 (rtx_insn *, rtx *);
9153 : rtx_insn *
9154 : gen_split_665 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9155 : {
9156 : if (dump_file)
9157 : fprintf (dump_file, "Splitting with gen_split_665 (i386.md:18287)\n");
9158 : start_sequence ();
9159 : #define FAIL return (end_sequence (), nullptr)
9160 : #define DONE return end_sequence ()
9161 : #line 18305 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9162 :
9163 : #undef DONE
9164 : #undef FAIL
9165 : static const uint8_t expand_encoding[] = {
9166 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4d,
9167 : 0x12, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9168 : };
9169 : return complete_seq (expand_encoding, operands);
9170 : }
9171 :
9172 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18308 */
9173 : extern rtx_insn *gen_split_672 (rtx_insn *, rtx *);
9174 : rtx_insn *
9175 : gen_split_672 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9176 : {
9177 : if (dump_file)
9178 : fprintf (dump_file, "Splitting with gen_split_672 (i386.md:18308)\n");
9179 : start_sequence ();
9180 : #define FAIL return (end_sequence (), nullptr)
9181 : #define DONE return end_sequence ()
9182 : #line 18329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9183 : {
9184 : HOST_WIDE_INT cnt = INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1);
9185 :
9186 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9187 : operands[2] = gen_lowpart (QImode, operands[2]);
9188 :
9189 : operands[4] = gen_reg_rtx (QImode);
9190 :
9191 : rtx (*insn)(rtx, rtx) = (cnt == 0) ? gen_negqi2 : gen_one_cmplqi2;
9192 : emit_insn (insn (operands[4], operands[2]));
9193 : }
9194 : #undef DONE
9195 : #undef FAIL
9196 : static const uint8_t expand_encoding[] = {
9197 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x50,
9198 : 0x12, 0x01, 0x01, 0x01, 0x04, 0x05, 0x02, 0x11
9199 : };
9200 : return complete_seq (expand_encoding, operands);
9201 : }
9202 :
9203 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18455 */
9204 : rtx
9205 : gen_rotlti3 (const rtx operand0, const rtx operand1, const rtx operand2)
9206 : {
9207 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
9208 : start_sequence ();
9209 : {
9210 : #define FAIL return (end_sequence (), nullptr)
9211 : #define DONE return end_sequence ()
9212 : #line 18460 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9213 : {
9214 : if (const_1_to_63_operand (operands[2], VOIDmode))
9215 : emit_insn (gen_ix86_rotlti3_doubleword
9216 : (operands[0], operands[1], operands[2]));
9217 : else if (CONST_INT_P (operands[2]) && INTVAL (operands[2]) == 64)
9218 : {
9219 : operands[1] = force_reg (TImode, operands[1]);
9220 : emit_insn (gen_rotl64ti2_doubleword (operands[0], operands[1]));
9221 : }
9222 : else
9223 : {
9224 : rtx amount = force_reg (QImode, operands[2]);
9225 : rtx src_lo = gen_lowpart (DImode, operands[1]);
9226 : rtx src_hi = gen_highpart (DImode, operands[1]);
9227 : rtx tmp_lo = gen_reg_rtx (DImode);
9228 : rtx tmp_hi = gen_reg_rtx (DImode);
9229 : emit_move_insn (tmp_lo, src_lo);
9230 : emit_move_insn (tmp_hi, src_hi);
9231 : rtx (*shiftd) (rtx, rtx, rtx)
9232 : = (ROTATE == ROTATE) ? gen_x86_64_shld : gen_x86_64_shrd;
9233 : emit_insn (shiftd (tmp_lo, src_hi, amount));
9234 : emit_insn (shiftd (tmp_hi, src_lo, amount));
9235 : rtx dst_lo = gen_lowpart (DImode, operands[0]);
9236 : rtx dst_hi = gen_highpart (DImode, operands[0]);
9237 : emit_move_insn (dst_lo, tmp_lo);
9238 : emit_move_insn (dst_hi, tmp_hi);
9239 : emit_insn (gen_x86_shiftdi_adj_1 (dst_lo, dst_hi, amount, tmp_lo));
9240 : }
9241 : DONE;
9242 : }
9243 : #undef DONE
9244 : #undef FAIL
9245 : }
9246 : static const uint8_t expand_encoding[] = {
9247 : 0x01, 0x1f, 0x01, 0x00, 0x4e, 0x13, 0x01, 0x01,
9248 : 0x01, 0x02
9249 : };
9250 : return complete_seq (expand_encoding, operands);
9251 : }
9252 :
9253 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18524 */
9254 : extern rtx_insn *gen_split_691 (rtx_insn *, rtx *);
9255 : rtx_insn *
9256 : gen_split_691 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9257 : {
9258 : if (dump_file)
9259 : fprintf (dump_file, "Splitting with gen_split_691 (i386.md:18524)\n");
9260 : start_sequence ();
9261 : #define FAIL return (end_sequence (), nullptr)
9262 : #define DONE return end_sequence ()
9263 : #line 18544 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9264 : {
9265 : operands[2] = force_lowpart_subreg (QImode, operands[2],
9266 : GET_MODE (operands[2]));
9267 : if (TARGET_APX_NF)
9268 : {
9269 : emit_move_insn (operands[0],
9270 : gen_rtx_ROTATERT (DImode, operands[1],
9271 : operands[2]));
9272 : DONE;
9273 : }
9274 : }
9275 : #undef DONE
9276 : #undef FAIL
9277 : static const uint8_t expand_encoding[] = {
9278 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x51,
9279 : 0x12, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9280 : };
9281 : return complete_seq (expand_encoding, operands);
9282 : }
9283 :
9284 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18573 */
9285 : extern rtx_insn *gen_split_703 (rtx_insn *, rtx *);
9286 : rtx_insn *
9287 : gen_split_703 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9288 : {
9289 : if (dump_file)
9290 : fprintf (dump_file, "Splitting with gen_split_703 (i386.md:18573)\n");
9291 : start_sequence ();
9292 : #define FAIL return (end_sequence (), nullptr)
9293 : #define DONE return end_sequence ()
9294 : #line 18592 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9295 : {
9296 : if (TARGET_APX_NF)
9297 : {
9298 : emit_move_insn (operands[0],
9299 : gen_rtx_ROTATERT (HImode, operands[1],
9300 : operands[2]));
9301 : DONE;
9302 : }
9303 : }
9304 : #undef DONE
9305 : #undef FAIL
9306 : static const uint8_t expand_encoding[] = {
9307 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x51,
9308 : 0x10, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9309 : };
9310 : return complete_seq (expand_encoding, operands);
9311 : }
9312 :
9313 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18602 */
9314 : extern rtx_insn *gen_split_713 (rtx_insn *, rtx *);
9315 : rtx_insn *
9316 : gen_split_713 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9317 : {
9318 : if (dump_file)
9319 : fprintf (dump_file, "Splitting with gen_split_713 (i386.md:18602)\n");
9320 : start_sequence ();
9321 : #define FAIL return (end_sequence (), nullptr)
9322 : #define DONE return end_sequence ()
9323 : #line 18615 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9324 : operands[4] = gen_reg_rtx (SImode);
9325 : #undef DONE
9326 : #undef FAIL
9327 : static const uint8_t expand_encoding[] = {
9328 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9329 : 0x00, 0x51, 0x11, 0x01, 0x04, 0x49, 0x0f, 0x01,
9330 : 0x02, 0x01, 0x03
9331 : };
9332 : return complete_seq (expand_encoding, operands);
9333 : }
9334 :
9335 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18617 */
9336 : extern rtx_insn *gen_split_723 (rtx_insn *, rtx *);
9337 : rtx_insn *
9338 : gen_split_723 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9339 : {
9340 : if (dump_file)
9341 : fprintf (dump_file, "Splitting with gen_split_723 (i386.md:18617)\n");
9342 : start_sequence ();
9343 : #define FAIL return (end_sequence (), nullptr)
9344 : #define DONE return end_sequence ()
9345 : #line 18635 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9346 : {
9347 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9348 : operands[2] = gen_lowpart (QImode, operands[2]);
9349 : }
9350 : #undef DONE
9351 : #undef FAIL
9352 : static const uint8_t expand_encoding[] = {
9353 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x51,
9354 : 0x12, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9355 : };
9356 : return complete_seq (expand_encoding, operands);
9357 : }
9358 :
9359 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18654 */
9360 : extern rtx_insn *gen_split_733 (rtx_insn *, rtx *);
9361 : rtx_insn *
9362 : gen_split_733 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9363 : {
9364 : if (dump_file)
9365 : fprintf (dump_file, "Splitting with gen_split_733 (i386.md:18654)\n");
9366 : start_sequence ();
9367 : #define FAIL return (end_sequence (), nullptr)
9368 : #define DONE return end_sequence ()
9369 : #line 18671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9370 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9371 : #undef DONE
9372 : #undef FAIL
9373 : static const uint8_t expand_encoding[] = {
9374 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x51,
9375 : 0x0f, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9376 : };
9377 : return complete_seq (expand_encoding, operands);
9378 : }
9379 :
9380 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18673 */
9381 : extern rtx_insn *gen_split_743 (rtx_insn *, rtx *);
9382 : rtx_insn *
9383 : gen_split_743 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9384 : {
9385 : if (dump_file)
9386 : fprintf (dump_file, "Splitting with gen_split_743 (i386.md:18673)\n");
9387 : start_sequence ();
9388 : #define FAIL return (end_sequence (), nullptr)
9389 : #define DONE return end_sequence ()
9390 : #line 18684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9391 : operands[4] = gen_reg_rtx (HImode);
9392 : #undef DONE
9393 : #undef FAIL
9394 : static const uint8_t expand_encoding[] = {
9395 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9396 : 0x00, 0x51, 0x10, 0x01, 0x04, 0x01, 0x02
9397 : };
9398 : return complete_seq (expand_encoding, operands);
9399 : }
9400 :
9401 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18686 */
9402 : extern rtx_insn *gen_split_753 (rtx_insn *, rtx *);
9403 : rtx_insn *
9404 : gen_split_753 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9405 : {
9406 : if (dump_file)
9407 : fprintf (dump_file, "Splitting with gen_split_753 (i386.md:18686)\n");
9408 : start_sequence ();
9409 : #define FAIL return (end_sequence (), nullptr)
9410 : #define DONE return end_sequence ()
9411 : #line 18704 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9412 : {
9413 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9414 : operands[2] = gen_lowpart (QImode, operands[2]);
9415 : }
9416 : #undef DONE
9417 : #undef FAIL
9418 : static const uint8_t expand_encoding[] = {
9419 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4e,
9420 : 0x11, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9421 : };
9422 : return complete_seq (expand_encoding, operands);
9423 : }
9424 :
9425 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18709 */
9426 : extern rtx_insn *gen_split_763 (rtx_insn *, rtx *);
9427 : rtx_insn *
9428 : gen_split_763 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9429 : {
9430 : if (dump_file)
9431 : fprintf (dump_file, "Splitting with gen_split_763 (i386.md:18709)\n");
9432 : start_sequence ();
9433 : #define FAIL return (end_sequence (), nullptr)
9434 : #define DONE return end_sequence ()
9435 : #line 18721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9436 : operands[4] = gen_reg_rtx (DImode);
9437 : #undef DONE
9438 : #undef FAIL
9439 : static const uint8_t expand_encoding[] = {
9440 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9441 : 0x00, 0x4e, 0x12, 0x01, 0x04, 0x32, 0x0f, 0x01,
9442 : 0x02, 0x00
9443 : };
9444 : return complete_seq (expand_encoding, operands);
9445 : }
9446 :
9447 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18742 */
9448 : extern rtx_insn *gen_split_773 (rtx_insn *, rtx *);
9449 : rtx_insn *
9450 : gen_split_773 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9451 : {
9452 : if (dump_file)
9453 : fprintf (dump_file, "Splitting with gen_split_773 (i386.md:18742)\n");
9454 : start_sequence ();
9455 : #define FAIL return (end_sequence (), nullptr)
9456 : #define DONE return end_sequence ()
9457 : #line 18753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9458 : operands[4] = gen_reg_rtx (QImode);
9459 : #undef DONE
9460 : #undef FAIL
9461 : static const uint8_t expand_encoding[] = {
9462 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9463 : 0x00, 0x4e, 0x0f, 0x01, 0x04, 0x01, 0x02
9464 : };
9465 : return complete_seq (expand_encoding, operands);
9466 : }
9467 :
9468 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18795 */
9469 : extern rtx_insn *gen_split_783 (rtx_insn *, rtx *);
9470 : rtx_insn *
9471 : gen_split_783 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9472 : {
9473 : if (dump_file)
9474 : fprintf (dump_file, "Splitting with gen_split_783 (i386.md:18795)\n");
9475 : start_sequence ();
9476 : #define FAIL return (end_sequence (), nullptr)
9477 : #define DONE return end_sequence ()
9478 : #line 18825 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9479 : {
9480 : operands[6] = GEN_INT (GET_MODE_BITSIZE (DImode) - 1);
9481 : operands[7] = GEN_INT (GET_MODE_BITSIZE (DImode));
9482 :
9483 : split_double_mode (TImode, &operands[0], 1, &operands[4], &operands[5]);
9484 : }
9485 : #undef DONE
9486 : #undef FAIL
9487 : static const uint8_t expand_encoding[] = {
9488 : 0x03, 0x1f, 0x01, 0x03, 0x01, 0x04, 0x17, 0x00,
9489 : 0x02, 0x1f, 0x01, 0x04, 0x4a, 0x12, 0x50, 0x12,
9490 : 0x01, 0x04, 0x49, 0x0f, 0x01, 0x02, 0x01, 0x06,
9491 : 0x32, 0x12, 0x4d, 0x13, 0x6f, 0x13, 0x01, 0x05,
9492 : 0x3c, 0x0f, 0x01, 0x07, 0x49, 0x0f, 0x01, 0x02,
9493 : 0x01, 0x06, 0x00, 0x05, 0x02, 0x11, 0x17, 0x00,
9494 : 0x02, 0x1f, 0x01, 0x05, 0x4a, 0x12, 0x50, 0x12,
9495 : 0x01, 0x05, 0x49, 0x0f, 0x01, 0x02, 0x01, 0x06,
9496 : 0x32, 0x12, 0x4d, 0x13, 0x6f, 0x13, 0x01, 0x03,
9497 : 0x3c, 0x0f, 0x01, 0x07, 0x49, 0x0f, 0x01, 0x02,
9498 : 0x01, 0x06, 0x00, 0x05, 0x02, 0x11
9499 : };
9500 : return complete_seq (expand_encoding, operands);
9501 : }
9502 :
9503 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19094 */
9504 : extern rtx_insn *gen_split_798 (rtx_insn *, rtx *);
9505 : rtx_insn *
9506 : gen_split_798 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9507 : {
9508 : if (dump_file)
9509 : fprintf (dump_file, "Splitting with gen_split_798 (i386.md:19094)\n");
9510 : start_sequence ();
9511 : #define FAIL return (end_sequence (), nullptr)
9512 : #define DONE return end_sequence ()
9513 : #line 19117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9514 :
9515 : #undef DONE
9516 : #undef FAIL
9517 : static const uint8_t expand_encoding[] = {
9518 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x01, 0x01,
9519 : 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00,
9520 : 0x4e, 0x10, 0x01, 0x00, 0x01, 0x02, 0x05, 0x02,
9521 : 0x11
9522 : };
9523 : return complete_seq (expand_encoding, operands);
9524 : }
9525 :
9526 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19252 */
9527 : extern rtx_insn *gen_split_808 (rtx_insn *, rtx *);
9528 : rtx_insn *
9529 : gen_split_808 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9530 : {
9531 : if (dump_file)
9532 : fprintf (dump_file, "Splitting with gen_split_808 (i386.md:19252)\n");
9533 : start_sequence ();
9534 : static const uint8_t expand_encoding[] = {
9535 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a,
9536 : 0x12, 0x4d, 0x12, 0x27, 0x01, 0x01, 0x01, 0x01,
9537 : 0x03, 0x05, 0x02, 0x11
9538 : };
9539 : return complete_seq (expand_encoding, operands);
9540 : }
9541 :
9542 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19345 */
9543 : extern rtx_insn *gen_split_815 (rtx_insn *, rtx *);
9544 : rtx_insn *
9545 : gen_split_815 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9546 : {
9547 : if (dump_file)
9548 : fprintf (dump_file, "Splitting with gen_split_815 (i386.md:19345)\n");
9549 : start_sequence ();
9550 : #define FAIL return (end_sequence (), nullptr)
9551 : #define DONE return end_sequence ()
9552 : #line 19361 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9553 : {
9554 : operands[0] = lowpart_subreg (SImode, operands[0], HImode);
9555 : operands[1] = force_reg (HImode, operands[1]);
9556 : operands[1] = lowpart_subreg (SImode, operands[1], HImode);
9557 : }
9558 : #undef DONE
9559 : #undef FAIL
9560 : static const uint8_t expand_encoding[] = {
9561 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49,
9562 : 0x11, 0x4e, 0x11, 0x27, 0x81, 0xff, 0xff, 0xff,
9563 : 0xff, 0xff, 0xff, 0xff, 0xff, 0x7e, 0x01, 0x02,
9564 : 0x01, 0x01, 0x05, 0x02, 0x11
9565 : };
9566 : return complete_seq (expand_encoding, operands);
9567 : }
9568 :
9569 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19592 */
9570 : extern rtx_insn *gen_split_822 (rtx_insn *, rtx *);
9571 : rtx_insn *
9572 : gen_split_822 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9573 : {
9574 : if (dump_file)
9575 : fprintf (dump_file, "Splitting with gen_split_822 (i386.md:19592)\n");
9576 : start_sequence ();
9577 : #define FAIL return (end_sequence (), nullptr)
9578 : #define DONE return end_sequence ()
9579 : #line 19623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9580 : {
9581 : operands[0] = shallow_copy_rtx (operands[0]);
9582 : PUT_CODE (operands[0], GET_CODE (operands[0]) == NE ? LTU : GEU);
9583 : }
9584 : #undef DONE
9585 : #undef FAIL
9586 : static const uint8_t expand_encoding[] = {
9587 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x27,
9588 : 0x00, 0x81, 0x06, 0x11, 0x01, 0x01, 0x27, 0x01,
9589 : 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x02, 0x00,
9590 : 0x30, 0x08, 0x11, 0x27, 0x00, 0x37, 0x00, 0x01,
9591 : 0x03, 0x2f
9592 : };
9593 : return complete_seq (expand_encoding, operands);
9594 : }
9595 :
9596 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19703 */
9597 : extern rtx_insn *gen_split_832 (rtx_insn *, rtx *);
9598 : rtx_insn *
9599 : gen_split_832 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9600 : {
9601 : if (dump_file)
9602 : fprintf (dump_file, "Splitting with gen_split_832 (i386.md:19703)\n");
9603 : start_sequence ();
9604 : #define FAIL return (end_sequence (), nullptr)
9605 : #define DONE return end_sequence ()
9606 : #line 19725 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9607 : {
9608 : if (GET_CODE (operands[5]) == EQ)
9609 : std::swap (operands[3], operands[4]);
9610 : }
9611 : #undef DONE
9612 : #undef FAIL
9613 : static const uint8_t expand_encoding[] = {
9614 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x27,
9615 : 0x00, 0x81, 0x06, 0x11, 0x01, 0x01, 0x27, 0x01,
9616 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x39, 0x12, 0x66,
9617 : 0x00, 0x30, 0x08, 0x11, 0x27, 0x00, 0x01, 0x03,
9618 : 0x01, 0x04
9619 : };
9620 : return complete_seq (expand_encoding, operands);
9621 : }
9622 :
9623 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19839 */
9624 : extern rtx_insn *gen_split_845 (rtx_insn *, rtx *);
9625 : rtx_insn *
9626 : gen_split_845 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9627 : {
9628 : if (dump_file)
9629 : fprintf (dump_file, "Splitting with gen_split_845 (i386.md:19839)\n");
9630 : start_sequence ();
9631 : static const uint8_t expand_encoding[] = {
9632 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x3b,
9633 : 0x10, 0x01, 0x02, 0x01, 0x03, 0x01, 0x02, 0x1f,
9634 : 0x01, 0x00, 0x02, 0x01, 0x30, 0x08, 0x11, 0x27,
9635 : 0x00
9636 : };
9637 : return complete_seq (expand_encoding, operands);
9638 : }
9639 :
9640 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19924 */
9641 : extern rtx_insn *gen_split_853 (rtx_insn *, rtx *);
9642 : rtx_insn *
9643 : gen_split_853 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9644 : {
9645 : if (dump_file)
9646 : fprintf (dump_file, "Splitting with gen_split_853 (i386.md:19924)\n");
9647 : start_sequence ();
9648 : #define FAIL return (end_sequence (), nullptr)
9649 : #define DONE return end_sequence ()
9650 : #line 19934 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9651 : {
9652 : operands[1] = shallow_copy_rtx (operands[1]);
9653 : PUT_MODE (operands[1], QImode);
9654 : operands[2] = gen_lowpart (QImode, operands[0]);
9655 : }
9656 : #undef DONE
9657 : #undef FAIL
9658 : static const uint8_t expand_encoding[] = {
9659 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x1f, 0x01,
9660 : 0x00, 0x6f, 0x11, 0x01, 0x02
9661 : };
9662 : return complete_seq (expand_encoding, operands);
9663 : }
9664 :
9665 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20128 */
9666 : extern rtx_insn *gen_split_861 (rtx_insn *, rtx *);
9667 : rtx_insn *
9668 : gen_split_861 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9669 : {
9670 : if (dump_file)
9671 : fprintf (dump_file, "Splitting with gen_split_861 (i386.md:20128)\n");
9672 : start_sequence ();
9673 : static const uint8_t expand_encoding[] = {
9674 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x3b,
9675 : 0x11, 0x01, 0x02, 0x01, 0x03, 0x01, 0x02, 0x1f,
9676 : 0x2f, 0x39, 0x00, 0x02, 0x01, 0x30, 0x08, 0x11,
9677 : 0x27, 0x00, 0x37, 0x00, 0x01, 0x00, 0x2f
9678 : };
9679 : return complete_seq (expand_encoding, operands);
9680 : }
9681 :
9682 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20344 */
9683 : extern rtx_insn *gen_peephole2_189 (rtx_insn *, rtx *);
9684 : rtx_insn *
9685 : gen_peephole2_189 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9686 : {
9687 : if (dump_file)
9688 : fprintf (dump_file, "Splitting with gen_peephole2_189 (i386.md:20344)\n");
9689 : start_sequence ();
9690 : #define FAIL return (end_sequence (), nullptr)
9691 : #define DONE return end_sequence ()
9692 : #line 20358 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9693 : {
9694 : operands[5] = gen_lowpart (QImode, operands[3]);
9695 : ix86_expand_clear (operands[3]);
9696 : }
9697 : #undef DONE
9698 : #undef FAIL
9699 : static const uint8_t expand_encoding[] = {
9700 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x00, 0x1f, 0x33,
9701 : 0x00, 0x01, 0x05, 0x01, 0x02
9702 : };
9703 : return complete_seq (expand_encoding, operands);
9704 : }
9705 :
9706 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20601 */
9707 : extern rtx_insn *gen_peephole2_196 (rtx_insn *, rtx *);
9708 : rtx_insn *
9709 : gen_peephole2_196 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9710 : {
9711 : if (dump_file)
9712 : fprintf (dump_file, "Splitting with gen_peephole2_196 (i386.md:20601)\n");
9713 : start_sequence ();
9714 : static const uint8_t expand_encoding[] = {
9715 : 0x01, 0x17, 0x00, 0x02, 0x22, 0x00, 0x36, 0x0f,
9716 : 0x01, 0x01, 0x01, 0x03, 0x1a, 0x00, 0x01, 0x27,
9717 : 0x00, 0x26
9718 : };
9719 : return complete_seq (expand_encoding, operands);
9720 : }
9721 :
9722 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20713 */
9723 : extern rtx_insn *gen_peephole2_202 (rtx_insn *, rtx *);
9724 : rtx_insn *
9725 : gen_peephole2_202 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9726 : {
9727 : if (dump_file)
9728 : fprintf (dump_file, "Splitting with gen_peephole2_202 (i386.md:20713)\n");
9729 : start_sequence ();
9730 : static const uint8_t expand_encoding[] = {
9731 : 0x01, 0x1f, 0x2f, 0x01, 0x01
9732 : };
9733 : return complete_seq (expand_encoding, operands);
9734 : }
9735 :
9736 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20837 */
9737 : rtx
9738 : gen_call_value_pop (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
9739 : {
9740 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
9741 : start_sequence ();
9742 : {
9743 : #define FAIL return (end_sequence (), nullptr)
9744 : #define DONE return end_sequence ()
9745 : #line 20845 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9746 : {
9747 : ix86_expand_call (operands[0], operands[1], operands[2],
9748 : operands[3], operands[4], false);
9749 : DONE;
9750 : }
9751 : #undef DONE
9752 : #undef FAIL
9753 : }
9754 : static const uint8_t expand_encoding[] = {
9755 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x22,
9756 : 0x00, 0x01, 0x01, 0x01, 0x02, 0x1f, 0x30, 0x11,
9757 : 0x07, 0x3b, 0x11, 0x30, 0x11, 0x07, 0x01, 0x04
9758 : };
9759 : return complete_seq (expand_encoding, operands);
9760 : }
9761 :
9762 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21240 */
9763 : rtx
9764 : gen_sibcall_epilogue (void)
9765 : {
9766 : start_sequence ();
9767 : {
9768 : #define FAIL return (end_sequence (), nullptr)
9769 : #define DONE return end_sequence ()
9770 : #line 21243 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9771 : ix86_expand_epilogue (0); DONE;
9772 : #undef DONE
9773 : #undef FAIL
9774 : }
9775 : static const uint8_t expand_encoding[] = {
9776 : 0x01, 0x27, 0x00
9777 : };
9778 : return complete_seq (expand_encoding, nullptr);
9779 : }
9780 :
9781 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21356 */
9782 : rtx
9783 : gen_ffsdi2 (const rtx operand0, const rtx operand1)
9784 : {
9785 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1 };
9786 : start_sequence ();
9787 : {
9788 : #define FAIL _Pragma ("GCC error \"ffsdi2 cannot FAIL\"") (void)0
9789 : #define DONE return end_sequence ()
9790 : #line 21369 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9791 : {
9792 : machine_mode flags_mode;
9793 :
9794 : if (DImode == SImode && !TARGET_CMOVE)
9795 : {
9796 : emit_insn (gen_ffssi2_no_cmove (operands[0], operands [1]));
9797 : DONE;
9798 : }
9799 :
9800 : flags_mode = TARGET_BMI ? CCCmode : CCZmode;
9801 :
9802 : operands[2] = gen_reg_rtx (DImode);
9803 : operands[3] = gen_rtx_REG (flags_mode, FLAGS_REG);
9804 : operands[4] = gen_rtx_COMPARE (flags_mode, operands[1], const0_rtx);
9805 : }
9806 : #undef DONE
9807 : #undef FAIL
9808 : }
9809 : static const uint8_t expand_encoding[] = {
9810 : 0x04, 0x1f, 0x01, 0x02, 0x27, 0x81, 0xff, 0xff,
9811 : 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x17,
9812 : 0x00, 0x02, 0x1f, 0x01, 0x03, 0x01, 0x04, 0x1f,
9813 : 0x01, 0x00, 0x81, 0x01, 0x12, 0x01, 0x01, 0x1f,
9814 : 0x01, 0x00, 0x39, 0x12, 0x5d, 0x00, 0x01, 0x03,
9815 : 0x27, 0x00, 0x01, 0x02, 0x01, 0x00, 0x17, 0x00,
9816 : 0x02, 0x1f, 0x01, 0x00, 0x3b, 0x12, 0x01, 0x00,
9817 : 0x27, 0x01, 0x05, 0x02, 0x11
9818 : };
9819 : return complete_seq (expand_encoding, operands);
9820 : }
9821 :
9822 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21813 */
9823 : extern rtx_insn *gen_split_881 (rtx_insn *, rtx *);
9824 : rtx_insn *
9825 : gen_split_881 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9826 : {
9827 : if (dump_file)
9828 : fprintf (dump_file, "Splitting with gen_split_881 (i386.md:21813)\n");
9829 : start_sequence ();
9830 : #define FAIL return (end_sequence (), nullptr)
9831 : #define DONE return end_sequence ()
9832 : #line 21826 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9833 : {
9834 : if (INTVAL (operands[2]) == 31)
9835 : {
9836 : emit_insn (gen_bsr_1 (operands[0], operands[1]));
9837 : DONE;
9838 : }
9839 : operands[3] = gen_reg_rtx (SImode);
9840 : operands[4] = gen_int_mode (UINTVAL (operands[2]) - 31, SImode);
9841 : }
9842 : #undef DONE
9843 : #undef FAIL
9844 : static const uint8_t expand_encoding[] = {
9845 : 0x02, 0x1f, 0x01, 0x03, 0x3c, 0x11, 0x27, 0x1f,
9846 : 0x81, 0x00, 0x11, 0x01, 0x01, 0x1f, 0x01, 0x00,
9847 : 0x3b, 0x11, 0x01, 0x03, 0x01, 0x04
9848 : };
9849 : return complete_seq (expand_encoding, operands);
9850 : }
9851 :
9852 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21938 */
9853 : extern rtx_insn *gen_split_888 (rtx_insn *, rtx *);
9854 : rtx_insn *
9855 : gen_split_888 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9856 : {
9857 : if (dump_file)
9858 : fprintf (dump_file, "Splitting with gen_split_888 (i386.md:21938)\n");
9859 : start_sequence ();
9860 : #define FAIL return (end_sequence (), nullptr)
9861 : #define DONE return end_sequence ()
9862 : #line 21953 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9863 : ix86_expand_clear (operands[0]);
9864 : #undef DONE
9865 : #undef FAIL
9866 : static const uint8_t expand_encoding[] = {
9867 : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x81,
9868 : 0x00, 0x11, 0x01, 0x01, 0x1a, 0x00, 0x01, 0x01,
9869 : 0x00, 0x27, 0x05, 0x02, 0x11
9870 : };
9871 : return complete_seq (expand_encoding, operands);
9872 : }
9873 :
9874 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22101 */
9875 : extern rtx_insn *gen_split_898 (rtx_insn *, rtx *);
9876 : rtx_insn *
9877 : gen_split_898 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9878 : {
9879 : if (dump_file)
9880 : fprintf (dump_file, "Splitting with gen_split_898 (i386.md:22101)\n");
9881 : start_sequence ();
9882 : #define FAIL return (end_sequence (), nullptr)
9883 : #define DONE return end_sequence ()
9884 : #line 22116 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9885 : ix86_expand_clear (operands[0]);
9886 : #undef DONE
9887 : #undef FAIL
9888 : static const uint8_t expand_encoding[] = {
9889 : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x1a,
9890 : 0x12, 0x01, 0x01, 0x01, 0x62, 0x1a, 0x00, 0x01,
9891 : 0x01, 0x00, 0x27, 0x05, 0x02, 0x11
9892 : };
9893 : return complete_seq (expand_encoding, operands);
9894 : }
9895 :
9896 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22367 */
9897 : extern rtx_insn *gen_split_908 (rtx_insn *, rtx *);
9898 : rtx_insn *
9899 : gen_split_908 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9900 : {
9901 : if (dump_file)
9902 : fprintf (dump_file, "Splitting with gen_split_908 (i386.md:22367)\n");
9903 : start_sequence ();
9904 : #define FAIL return (end_sequence (), nullptr)
9905 : #define DONE return end_sequence ()
9906 : #line 22398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9907 : ix86_expand_clear (operands[0]);
9908 : #undef DONE
9909 : #undef FAIL
9910 : static const uint8_t expand_encoding[] = {
9911 : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x30, 0x0c, 0x11,
9912 : 0x3a, 0x0c, 0x49, 0x11, 0x3b, 0x11, 0x01, 0x01,
9913 : 0x27, 0x81, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9914 : 0xff, 0xff, 0x7f, 0x01, 0x01, 0x27, 0x00, 0x1f,
9915 : 0x01, 0x00, 0x49, 0x11, 0x3b, 0x11, 0x01, 0x01,
9916 : 0x27, 0x81, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9917 : 0xff, 0xff, 0x7f, 0x01, 0x01, 0x1a, 0x00, 0x01,
9918 : 0x01, 0x00, 0x27
9919 : };
9920 : return complete_seq (expand_encoding, operands);
9921 : }
9922 :
9923 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22935 */
9924 : extern rtx_insn *gen_split_917 (rtx_insn *, rtx *);
9925 : rtx_insn *
9926 : gen_split_917 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
9927 : {
9928 : if (dump_file)
9929 : fprintf (dump_file, "Splitting with gen_split_917 (i386.md:22935)\n");
9930 : start_sequence ();
9931 : #define FAIL return (end_sequence (), nullptr)
9932 : #define DONE return end_sequence ()
9933 : #line 22945 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9934 : {
9935 : rtx tmp = gen_reg_rtx (HImode);
9936 :
9937 : emit_insn (gen_popcounthi2 (tmp, operands[1]));
9938 : emit_insn (gen_zero_extendhisi2 (operands[0], tmp));
9939 : DONE;
9940 : }
9941 : #undef DONE
9942 : #undef FAIL
9943 : static const uint8_t expand_encoding[] = {
9944 : 0x01, 0x27, 0x00
9945 : };
9946 : return complete_seq (expand_encoding, operands);
9947 : }
9948 :
9949 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:23293 */
9950 : extern rtx_insn *gen_peephole2_215 (rtx_insn *, rtx *);
9951 : rtx_insn *
9952 : gen_peephole2_215 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9953 : {
9954 : HARD_REG_SET _regs_allocated;
9955 : CLEAR_HARD_REG_SET (_regs_allocated);
9956 : if ((operands[0] = peep2_find_free_register (0, 0, "Q", HImode, &_regs_allocated)) == NULL_RTX)
9957 : return NULL;
9958 : if (dump_file)
9959 : fprintf (dump_file, "Splitting with gen_peephole2_215 (i386.md:23293)\n");
9960 : start_sequence ();
9961 : #define FAIL return (end_sequence (), nullptr)
9962 : #define DONE return end_sequence ()
9963 : #line 23322 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9964 : {
9965 : operands[5] = shallow_copy_rtx (operands[5]);
9966 : PUT_CODE (operands[5], GET_CODE (operands[5]) == EQ ? UNORDERED : ORDERED);
9967 : }
9968 : #undef DONE
9969 : #undef FAIL
9970 : static const uint8_t expand_encoding[] = {
9971 : 0x03, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
9972 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x1a, 0x02, 0x01,
9973 : 0x01, 0x00, 0x1c, 0x21, 0x00, 0x01, 0x00, 0x1f,
9974 : 0x2f, 0x39, 0x00, 0x02, 0x05, 0x30, 0x02, 0x11,
9975 : 0x27, 0x00, 0x37, 0x00, 0x01, 0x06, 0x2f
9976 : };
9977 : return complete_seq (expand_encoding, operands);
9978 : }
9979 :
9980 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:23624 */
9981 : rtx
9982 : gen_get_thread_pointersi (const rtx operand0)
9983 : {
9984 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
9985 : start_sequence ();
9986 : {
9987 : #define FAIL return (end_sequence (), nullptr)
9988 : #define DONE return end_sequence ()
9989 : #line 23628 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9990 : {
9991 : /* targetm is not visible in the scope of the condition. */
9992 : if (!targetm.have_tls)
9993 : error ("%<__builtin_thread_pointer%> is not supported on this target");
9994 : }
9995 : #undef DONE
9996 : #undef FAIL
9997 : }
9998 : static const uint8_t expand_encoding[] = {
9999 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x27,
10000 : 0x00, 0x14
10001 : };
10002 : return complete_seq (expand_encoding, operands);
10003 : }
10004 :
10005 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:23767 */
10006 : rtx
10007 : gen_tls_dynamic_gnu2_64_si (const rtx operand0, const rtx operand1)
10008 : {
10009 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
10010 : start_sequence ();
10011 : {
10012 : #define FAIL return (end_sequence (), nullptr)
10013 : #define DONE return end_sequence ()
10014 : #line 23777 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10015 : {
10016 : operands[2] = can_create_pseudo_p () ? gen_reg_rtx (ptr_mode) : operands[0];
10017 : if (ix86_tls_descriptor_calls_expanded_in_cfun)
10018 : cfun->machine->tls_descriptor_call_multiple_p = true;
10019 : ix86_tls_descriptor_calls_expanded_in_cfun = true;
10020 : }
10021 : #undef DONE
10022 : #undef FAIL
10023 : }
10024 : static const uint8_t expand_encoding[] = {
10025 : 0x02, 0x1f, 0x01, 0x02, 0x1a, 0x11, 0x01, 0x01,
10026 : 0x01, 0x17, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00,
10027 : 0x1a, 0x11, 0x03, 0x01, 0x01, 0x01, 0x02, 0x30,
10028 : 0x11, 0x07, 0x17, 0x05, 0x02, 0x11
10029 : };
10030 : return complete_seq (expand_encoding, operands);
10031 : }
10032 :
10033 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24340 */
10034 : rtx
10035 : gen_fmodxf3 (const rtx operand0, const rtx operand1, const rtx operand2)
10036 : {
10037 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
10038 : start_sequence ();
10039 : {
10040 : #define FAIL _Pragma ("GCC error \"fmodxf3 cannot FAIL\"") (void)0
10041 : #define DONE return end_sequence ()
10042 : #line 24345 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10043 : {
10044 : rtx_code_label *label = gen_label_rtx ();
10045 :
10046 : rtx op1 = gen_reg_rtx (XFmode);
10047 : rtx op2 = gen_reg_rtx (XFmode);
10048 :
10049 : emit_move_insn (op2, operands[2]);
10050 : emit_move_insn (op1, operands[1]);
10051 :
10052 : emit_label (label);
10053 : emit_insn (gen_fpremxf4_i387 (op1, op2, op1, op2));
10054 : ix86_emit_fp_unordered_jump (label);
10055 : LABEL_NUSES (label) = 1;
10056 :
10057 : emit_move_insn (operands[0], op1);
10058 : DONE;
10059 : }
10060 : #undef DONE
10061 : #undef FAIL
10062 : }
10063 : static const uint8_t expand_encoding[] = {
10064 : 0x03, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10065 : 0x01, 0x20, 0x00, 0x01, 0x02
10066 : };
10067 : return complete_seq (expand_encoding, operands);
10068 : }
10069 :
10070 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24521 */
10071 : rtx
10072 : gen_sincossf3 (const rtx operand0, const rtx operand1, const rtx operand2)
10073 : {
10074 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
10075 : start_sequence ();
10076 : {
10077 : #define FAIL return (end_sequence (), nullptr)
10078 : #define DONE return end_sequence ()
10079 : #line 24529 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10080 : {
10081 : rtx op0 = gen_reg_rtx (XFmode);
10082 : rtx op1 = gen_reg_rtx (XFmode);
10083 : rtx op2 = gen_reg_rtx (XFmode);
10084 :
10085 : emit_insn (gen_extendsfxf2 (op2, operands[2]));
10086 : emit_insn (gen_sincosxf3 (op0, op1, op2));
10087 : emit_insn (gen_truncxfsf2 (operands[0], op0));
10088 : emit_insn (gen_truncxfsf2 (operands[1], op1));
10089 : DONE;
10090 : }
10091 : #undef DONE
10092 : #undef FAIL
10093 : }
10094 : static const uint8_t expand_encoding[] = {
10095 : 0x03, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10096 : 0x01, 0x20, 0x00, 0x01, 0x02
10097 : };
10098 : return complete_seq (expand_encoding, operands);
10099 : }
10100 :
10101 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24646 */
10102 : rtx
10103 : gen_asinxf2 (const rtx operand0, const rtx operand1)
10104 : {
10105 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1 };
10106 : start_sequence ();
10107 : {
10108 : #define FAIL _Pragma ("GCC error \"asinxf2 cannot FAIL\"") (void)0
10109 : #define DONE return end_sequence ()
10110 : #line 24658 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10111 : {
10112 : int i;
10113 :
10114 : for (i = 2; i < 6; i++)
10115 : operands[i] = gen_reg_rtx (XFmode);
10116 :
10117 : emit_move_insn (operands[3], CONST1_RTX (XFmode));
10118 : }
10119 : #undef DONE
10120 : #undef FAIL
10121 : }
10122 : static const uint8_t expand_encoding[] = {
10123 : 0x04, 0x1f, 0x01, 0x02, 0x3e, 0x2f, 0x01, 0x01,
10124 : 0x01, 0x01, 0x1f, 0x01, 0x04, 0x3c, 0x2f, 0x01,
10125 : 0x03, 0x01, 0x02, 0x1f, 0x01, 0x05, 0x7c, 0x2f,
10126 : 0x01, 0x04, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00,
10127 : 0x1a, 0x2f, 0x02, 0x01, 0x05, 0x01, 0x01, 0x43,
10128 : 0x21, 0x00, 0x31, 0x2f
10129 : };
10130 : return complete_seq (expand_encoding, operands);
10131 : }
10132 :
10133 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24778 */
10134 : rtx
10135 : gen_tanhxf2 (const rtx operand0, const rtx operand1)
10136 : {
10137 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10138 : start_sequence ();
10139 : {
10140 : #define FAIL _Pragma ("GCC error \"tanhxf2 cannot FAIL\"") (void)0
10141 : #define DONE return end_sequence ()
10142 : #line 24783 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10143 : {
10144 : ix86_emit_i387_tanh (operands[0], operands[1]);
10145 : DONE;
10146 : }
10147 : #undef DONE
10148 : #undef FAIL
10149 : }
10150 : static const uint8_t expand_encoding[] = {
10151 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10152 : 0x01
10153 : };
10154 : return complete_seq (expand_encoding, operands);
10155 : }
10156 :
10157 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24844 */
10158 : rtx
10159 : gen_acoshdf2 (const rtx operand0, const rtx operand1)
10160 : {
10161 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10162 : start_sequence ();
10163 : {
10164 : #define FAIL _Pragma ("GCC error \"acoshdf2 cannot FAIL\"") (void)0
10165 : #define DONE return end_sequence ()
10166 : #line 24851 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10167 : {
10168 : rtx op0 = gen_reg_rtx (XFmode);
10169 : rtx op1 = gen_reg_rtx (XFmode);
10170 :
10171 : emit_insn (gen_extenddfxf2 (op1, operands[1]));
10172 : emit_insn (gen_acoshxf2 (op0, op1));
10173 : emit_insn (gen_truncxfdf2 (operands[0], op0));
10174 : DONE;
10175 : }
10176 : #undef DONE
10177 : #undef FAIL
10178 : }
10179 : static const uint8_t expand_encoding[] = {
10180 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10181 : 0x01
10182 : };
10183 : return complete_seq (expand_encoding, operands);
10184 : }
10185 :
10186 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24969 */
10187 : rtx
10188 : gen_log2sf2 (const rtx operand0, const rtx operand1)
10189 : {
10190 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10191 : start_sequence ();
10192 : {
10193 : #define FAIL _Pragma ("GCC error \"log2sf2 cannot FAIL\"") (void)0
10194 : #define DONE return end_sequence ()
10195 : #line 24976 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10196 : {
10197 : rtx op0 = gen_reg_rtx (XFmode);
10198 : rtx op1 = gen_reg_rtx (XFmode);
10199 :
10200 : emit_insn (gen_extendsfxf2 (op1, operands[1]));
10201 : emit_insn (gen_log2xf2 (op0, op1));
10202 : emit_insn (gen_truncxfsf2 (operands[0], op0));
10203 : DONE;
10204 : }
10205 : #undef DONE
10206 : #undef FAIL
10207 : }
10208 : static const uint8_t expand_encoding[] = {
10209 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10210 : 0x01
10211 : };
10212 : return complete_seq (expand_encoding, operands);
10213 : }
10214 :
10215 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25087 */
10216 : rtx
10217 : gen_ilogbdf2 (const rtx operand0, const rtx operand1)
10218 : {
10219 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10220 : start_sequence ();
10221 : {
10222 : #define FAIL return (end_sequence (), nullptr)
10223 : #define DONE return end_sequence ()
10224 : #line 25094 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10225 : {
10226 : rtx op0, op1, op2;
10227 :
10228 : if (optimize_insn_for_size_p ())
10229 : FAIL;
10230 :
10231 : op0 = gen_reg_rtx (XFmode);
10232 : op1 = gen_reg_rtx (XFmode);
10233 : op2 = gen_reg_rtx (XFmode);
10234 :
10235 : emit_insn (gen_extenddfxf2 (op2, operands[1]));
10236 : emit_insn (gen_fxtractxf3_i387 (op0, op1, op2));
10237 : emit_insn (gen_fix_truncxfsi2 (operands[0], op1));
10238 : DONE;
10239 : }
10240 : #undef DONE
10241 : #undef FAIL
10242 : }
10243 : static const uint8_t expand_encoding[] = {
10244 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10245 : 0x01
10246 : };
10247 : return complete_seq (expand_encoding, operands);
10248 : }
10249 :
10250 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25249 */
10251 : rtx
10252 : gen_expm1xf2 (const rtx operand0, const rtx operand1)
10253 : {
10254 : rtx operands[13] ATTRIBUTE_UNUSED = { operand0, operand1 };
10255 : start_sequence ();
10256 : {
10257 : #define FAIL _Pragma ("GCC error \"expm1xf2 cannot FAIL\"") (void)0
10258 : #define DONE return end_sequence ()
10259 : #line 25272 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10260 : {
10261 : int i;
10262 :
10263 : for (i = 2; i < 13; i++)
10264 : operands[i] = gen_reg_rtx (XFmode);
10265 :
10266 : emit_move_insn (operands[2], standard_80387_constant_rtx (5)); /* fldl2e */
10267 : emit_move_insn (operands[9], CONST1_RTX (XFmode));
10268 : }
10269 : #undef DONE
10270 : #undef FAIL
10271 : }
10272 : static const uint8_t expand_encoding[] = {
10273 : 0x08, 0x1f, 0x01, 0x03, 0x3e, 0x2f, 0x01, 0x01,
10274 : 0x01, 0x02, 0x1f, 0x01, 0x04, 0x1a, 0x2f, 0x01,
10275 : 0x01, 0x03, 0x46, 0x1f, 0x01, 0x05, 0x3c, 0x2f,
10276 : 0x01, 0x03, 0x01, 0x04, 0x1f, 0x01, 0x06, 0x1a,
10277 : 0x2f, 0x01, 0x01, 0x05, 0x48, 0x17, 0x00, 0x02,
10278 : 0x1f, 0x01, 0x07, 0x1a, 0x2f, 0x02, 0x01, 0x06,
10279 : 0x01, 0x04, 0x55, 0x1f, 0x01, 0x08, 0x1a, 0x2f,
10280 : 0x02, 0x01, 0x06, 0x01, 0x04, 0x56, 0x17, 0x00,
10281 : 0x02, 0x1f, 0x01, 0x0a, 0x1a, 0x2f, 0x02, 0x01,
10282 : 0x09, 0x01, 0x08, 0x55, 0x1f, 0x01, 0x0b, 0x1a,
10283 : 0x2f, 0x02, 0x01, 0x09, 0x01, 0x08, 0x56, 0x1f,
10284 : 0x01, 0x0c, 0x3c, 0x2f, 0x01, 0x0a, 0x01, 0x09,
10285 : 0x1f, 0x01, 0x00, 0x3b, 0x2f, 0x01, 0x0c, 0x01,
10286 : 0x07
10287 : };
10288 : return complete_seq (expand_encoding, operands);
10289 : }
10290 :
10291 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25494 */
10292 : rtx
10293 : gen_nearbyintxf2 (const rtx operand0, const rtx operand1)
10294 : {
10295 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10296 : static const uint8_t expand_encoding[] = {
10297 : 0x1f, 0x01, 0x00, 0x1a, 0x2f, 0x01, 0x01, 0x01,
10298 : 0x46
10299 : };
10300 : return expand_rtx (expand_encoding, operands);
10301 : }
10302 :
10303 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25546 */
10304 : rtx
10305 : gen_roundxf2 (const rtx operand0, const rtx operand1)
10306 : {
10307 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10308 : start_sequence ();
10309 : {
10310 : #define FAIL _Pragma ("GCC error \"roundxf2 cannot FAIL\"") (void)0
10311 : #define DONE return end_sequence ()
10312 : #line 25556 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10313 : {
10314 : if (SSE_FLOAT_MODE_P (XFmode) && TARGET_SSE_MATH
10315 : && !flag_trapping_math && !flag_rounding_math)
10316 : {
10317 : if (TARGET_SSE4_1)
10318 : {
10319 : operands[1] = force_reg (XFmode, operands[1]);
10320 : ix86_expand_round_sse4 (operands[0], operands[1]);
10321 : }
10322 : else if (TARGET_64BIT || (XFmode != DFmode))
10323 : ix86_expand_round (operands[0], operands[1]);
10324 : else
10325 : ix86_expand_rounddf_32 (operands[0], operands[1]);
10326 : }
10327 : else
10328 : {
10329 : operands[1] = force_reg (XFmode, operands[1]);
10330 : ix86_emit_i387_round (operands[0], operands[1]);
10331 : }
10332 : DONE;
10333 : }
10334 : #undef DONE
10335 : #undef FAIL
10336 : }
10337 : static const uint8_t expand_encoding[] = {
10338 : 0x02, 0x01, 0x00, 0x01, 0x01
10339 : };
10340 : return complete_seq (expand_encoding, operands);
10341 : }
10342 :
10343 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25619 */
10344 : rtx
10345 : gen_lroundxfdi2 (const rtx operand0, const rtx operand1)
10346 : {
10347 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10348 : start_sequence ();
10349 : {
10350 : #define FAIL _Pragma ("GCC error \"lroundxfdi2 cannot FAIL\"") (void)0
10351 : #define DONE return end_sequence ()
10352 : #line 25630 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10353 : {
10354 : if (SSE_FLOAT_MODE_P (XFmode) && TARGET_SSE_MATH
10355 : && DImode != HImode
10356 : && ((DImode != DImode) || TARGET_64BIT)
10357 : && !flag_trapping_math && !flag_rounding_math)
10358 : ix86_expand_lround (operands[0], operands[1]);
10359 : else
10360 : ix86_emit_i387_round (operands[0], operands[1]);
10361 : DONE;
10362 : }
10363 : #undef DONE
10364 : #undef FAIL
10365 : }
10366 : static const uint8_t expand_encoding[] = {
10367 : 0x02, 0x01, 0x00, 0x01, 0x01
10368 : };
10369 : return complete_seq (expand_encoding, operands);
10370 : }
10371 :
10372 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25723 */
10373 : rtx
10374 : gen_floorhf2 (const rtx operand0, const rtx operand1)
10375 : {
10376 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10377 : start_sequence ();
10378 : {
10379 : #define FAIL _Pragma ("GCC error \"floorhf2 cannot FAIL\"") (void)0
10380 : #define DONE return end_sequence ()
10381 : #line 25729 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10382 : {
10383 : emit_insn (gen_sse4_1_roundhf2 (operands[0], operands[1],
10384 : GEN_INT (ROUND_FLOOR | ROUND_NO_EXC)));
10385 : DONE;
10386 : }
10387 : #undef DONE
10388 : #undef FAIL
10389 : }
10390 : static const uint8_t expand_encoding[] = {
10391 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
10392 : 0x2b, 0x01, 0x01, 0x01, 0x4c, 0x05, 0x02, 0x11
10393 : };
10394 : return complete_seq (expand_encoding, operands);
10395 : }
10396 :
10397 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25735 */
10398 : rtx
10399 : gen_btruncsf2 (const rtx operand0, const rtx operand1)
10400 : {
10401 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10402 : start_sequence ();
10403 : {
10404 : #define FAIL _Pragma ("GCC error \"btruncsf2 cannot FAIL\"") (void)0
10405 : #define DONE return end_sequence ()
10406 : #line 25748 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10407 : {
10408 : if (SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH
10409 : && (TARGET_SSE4_1
10410 : || (ROUND_TRUNC != ROUND_ROUNDEVEN
10411 : && (flag_fp_int_builtin_inexact || !flag_trapping_math))))
10412 : {
10413 : if (TARGET_SSE4_1)
10414 : emit_insn (gen_sse4_1_roundsf2
10415 : (operands[0], operands[1],
10416 : GEN_INT (ROUND_TRUNC | ROUND_NO_EXC)));
10417 : else if (TARGET_64BIT || (SFmode != DFmode))
10418 : {
10419 : if (ROUND_TRUNC == ROUND_FLOOR)
10420 : ix86_expand_floorceil (operands[0], operands[1], true);
10421 : else if (ROUND_TRUNC == ROUND_CEIL)
10422 : ix86_expand_floorceil (operands[0], operands[1], false);
10423 : else if (ROUND_TRUNC == ROUND_TRUNC)
10424 : ix86_expand_trunc (operands[0], operands[1]);
10425 : else
10426 : gcc_unreachable ();
10427 : }
10428 : else
10429 : {
10430 : if (ROUND_TRUNC == ROUND_FLOOR)
10431 : ix86_expand_floorceildf_32 (operands[0], operands[1], true);
10432 : else if (ROUND_TRUNC == ROUND_CEIL)
10433 : ix86_expand_floorceildf_32 (operands[0], operands[1], false);
10434 : else if (ROUND_TRUNC == ROUND_TRUNC)
10435 : ix86_expand_truncdf_32 (operands[0], operands[1]);
10436 : else
10437 : gcc_unreachable ();
10438 : }
10439 : }
10440 : else
10441 : {
10442 : rtx op0 = gen_reg_rtx (XFmode);
10443 : rtx op1 = gen_reg_rtx (XFmode);
10444 :
10445 : emit_insn (gen_extendsfxf2 (op1, operands[1]));
10446 : emit_insn (gen_frndintxf2_trunc (op0, op1));
10447 : emit_insn (gen_truncxfsf2_i387_noop_unspec (operands[0], op0));
10448 : }
10449 : DONE;
10450 : }
10451 : #undef DONE
10452 : #undef FAIL
10453 : }
10454 : static const uint8_t expand_encoding[] = {
10455 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
10456 : 0x2d, 0x01, 0x01, 0x01, 0x4e, 0x05, 0x02, 0x11
10457 : };
10458 : return complete_seq (expand_encoding, operands);
10459 : }
10460 :
10461 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25846 */
10462 : rtx
10463 : gen_lceilxfhi2 (const rtx operand0, const rtx operand1)
10464 : {
10465 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10466 : static const uint8_t expand_encoding[] = {
10467 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x10,
10468 : 0x01, 0x01, 0x01, 0x50, 0x05, 0x02, 0x11
10469 : };
10470 : return expand_rtx (expand_encoding, operands);
10471 : }
10472 :
10473 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25855 */
10474 : rtx
10475 : gen_lceilhfdi2 (const rtx operand0, const rtx operand1)
10476 : {
10477 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10478 : start_sequence ();
10479 : {
10480 : #define FAIL _Pragma ("GCC error \"lceilhfdi2 cannot FAIL\"") (void)0
10481 : #define DONE return end_sequence ()
10482 : #line 25860 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10483 : {
10484 : rtx tmp = gen_reg_rtx (HFmode);
10485 : emit_insn (gen_sse4_1_roundhf2 (tmp, operands[1],
10486 : GEN_INT (ROUND_CEIL | ROUND_NO_EXC)));
10487 : emit_insn (gen_fix_trunchfdi2 (operands[0], tmp));
10488 : DONE;
10489 : }
10490 : #undef DONE
10491 : #undef FAIL
10492 : }
10493 : static const uint8_t expand_encoding[] = {
10494 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x01,
10495 : 0x01, 0x50
10496 : };
10497 : return complete_seq (expand_encoding, operands);
10498 : }
10499 :
10500 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25933 */
10501 : rtx
10502 : gen_signbitxf2 (const rtx operand0, const rtx operand1)
10503 : {
10504 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10505 : start_sequence ();
10506 : {
10507 : #define FAIL _Pragma ("GCC error \"signbitxf2 cannot FAIL\"") (void)0
10508 : #define DONE return end_sequence ()
10509 : #line 25937 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10510 : {
10511 : rtx scratch = gen_reg_rtx (HImode);
10512 :
10513 : emit_insn (gen_fxamxf2_i387 (scratch, operands[1]));
10514 : emit_insn (gen_andsi3 (operands[0],
10515 : gen_lowpart (SImode, scratch), GEN_INT (0x200)));
10516 : DONE;
10517 : }
10518 : #undef DONE
10519 : #undef FAIL
10520 : }
10521 : static const uint8_t expand_encoding[] = {
10522 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10523 : 0x01
10524 : };
10525 : return complete_seq (expand_encoding, operands);
10526 : }
10527 :
10528 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26048 */
10529 : rtx
10530 : gen_strmov (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
10531 : {
10532 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
10533 : start_sequence ();
10534 : {
10535 : #define FAIL return (end_sequence (), nullptr)
10536 : #define DONE return end_sequence ()
10537 : #line 26056 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10538 : {
10539 : int piece_size = GET_MODE_SIZE (GET_MODE (operands[1]));
10540 :
10541 : /* If .md ever supports :P for Pmode, these can be directly
10542 : in the pattern above. */
10543 : operands[5] = plus_constant (Pmode, operands[0], piece_size);
10544 : operands[6] = plus_constant (Pmode, operands[2], piece_size);
10545 :
10546 : /* Can't use this if the user has appropriated esi or edi,
10547 : * or if we have the destination in the non-default address space,
10548 : * since string insns cannot override the destination segment. */
10549 : if ((TARGET_SINGLE_STRINGOP || optimize_insn_for_size_p ())
10550 : && !(fixed_regs[SI_REG] || fixed_regs[DI_REG])
10551 : && ADDR_SPACE_GENERIC_P (MEM_ADDR_SPACE (operands[1]))
10552 : && (ADDR_SPACE_GENERIC_P (MEM_ADDR_SPACE (operands[3]))
10553 : || Pmode == word_mode))
10554 : {
10555 : emit_insn (gen_strmov_singleop (operands[0], operands[1],
10556 : operands[2], operands[3],
10557 : operands[5], operands[6]));
10558 : DONE;
10559 : }
10560 :
10561 : operands[4] = gen_reg_rtx (GET_MODE (operands[1]));
10562 : }
10563 : #undef DONE
10564 : #undef FAIL
10565 : }
10566 : static const uint8_t expand_encoding[] = {
10567 : 0x04, 0x1f, 0x01, 0x04, 0x01, 0x03, 0x1f, 0x01,
10568 : 0x01, 0x01, 0x04, 0x17, 0x00, 0x02, 0x1f, 0x01,
10569 : 0x00, 0x01, 0x05, 0x05, 0x02, 0x11, 0x17, 0x00,
10570 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x06, 0x05, 0x02,
10571 : 0x11
10572 : };
10573 : return complete_seq (expand_encoding, operands);
10574 : }
10575 :
10576 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26748 */
10577 : rtx
10578 : gen_movhicc (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
10579 : {
10580 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
10581 : start_sequence ();
10582 : {
10583 : #define FAIL return (end_sequence (), nullptr)
10584 : #define DONE return end_sequence ()
10585 : #line 26754 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10586 : if (ix86_expand_int_movcc (operands)) DONE; else FAIL;
10587 : #undef DONE
10588 : #undef FAIL
10589 : }
10590 : static const uint8_t expand_encoding[] = {
10591 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x10, 0x01, 0x01,
10592 : 0x01, 0x02, 0x01, 0x03
10593 : };
10594 : return complete_seq (expand_encoding, operands);
10595 : }
10596 :
10597 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26820 */
10598 : extern rtx_insn *gen_split_939 (rtx_insn *, rtx *);
10599 : rtx_insn *
10600 : gen_split_939 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10601 : {
10602 : if (dump_file)
10603 : fprintf (dump_file, "Splitting with gen_split_939 (i386.md:26820)\n");
10604 : start_sequence ();
10605 : #define FAIL return (end_sequence (), nullptr)
10606 : #define DONE return end_sequence ()
10607 : #line 26832 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10608 : operands[2] = GEN_INT (INTVAL (operands[2]) + 1);
10609 : #undef DONE
10610 : #undef FAIL
10611 : static const uint8_t expand_encoding[] = {
10612 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
10613 : 0x01, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x3d, 0x11,
10614 : 0x66, 0x11, 0x30, 0x02, 0x11, 0x27, 0x00
10615 : };
10616 : return complete_seq (expand_encoding, operands);
10617 : }
10618 :
10619 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26913 */
10620 : extern rtx_insn *gen_split_951 (rtx_insn *, rtx *);
10621 : rtx_insn *
10622 : gen_split_951 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10623 : {
10624 : if (dump_file)
10625 : fprintf (dump_file, "Splitting with gen_split_951 (i386.md:26913)\n");
10626 : start_sequence ();
10627 : #define FAIL return (end_sequence (), nullptr)
10628 : #define DONE return end_sequence ()
10629 : #line 26926 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10630 : {
10631 : operands[2] = force_reg (DImode, operands[2]);
10632 : operands[3] = force_reg (DImode, operands[3]);
10633 : }
10634 : #undef DONE
10635 : #undef FAIL
10636 : static const uint8_t expand_encoding[] = {
10637 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x12, 0x01, 0x01,
10638 : 0x01, 0x02, 0x01, 0x03
10639 : };
10640 : return complete_seq (expand_encoding, operands);
10641 : }
10642 :
10643 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27057 */
10644 : extern rtx_insn *gen_peephole2_226 (rtx_insn *, rtx *);
10645 : rtx_insn *
10646 : gen_peephole2_226 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10647 : {
10648 : if (dump_file)
10649 : fprintf (dump_file, "Splitting with gen_peephole2_226 (i386.md:27057)\n");
10650 : start_sequence ();
10651 : #define FAIL return (end_sequence (), nullptr)
10652 : #define DONE return end_sequence ()
10653 : #line 27082 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10654 : {
10655 : operands[7] = SET_DEST (XVECEXP (PATTERN (peep2_next_insn (2)), 0, 0));
10656 : operands[8]
10657 : = ix86_replace_reg_with_reg (operands[5], operands[0], operands[1]);
10658 : operands[9]
10659 : = ix86_replace_reg_with_reg (operands[6], operands[0], operands[1]);
10660 : }
10661 : #undef DONE
10662 : #undef FAIL
10663 : static const uint8_t expand_encoding[] = {
10664 : 0x03, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x07, 0x01,
10665 : 0x08, 0x1f, 0x01, 0x01, 0x01, 0x09, 0x1f, 0x01,
10666 : 0x00, 0x01, 0x03, 0x1f, 0x01, 0x00, 0x39, 0x10,
10667 : 0x01, 0x04, 0x01, 0x01, 0x01, 0x00
10668 : };
10669 : return complete_seq (expand_encoding, operands);
10670 : }
10671 :
10672 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27212 */
10673 : extern rtx_insn *gen_peephole2_229 (rtx_insn *, rtx *);
10674 : rtx_insn *
10675 : gen_peephole2_229 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10676 : {
10677 : HARD_REG_SET _regs_allocated;
10678 : CLEAR_HARD_REG_SET (_regs_allocated);
10679 : if ((operands[4] = peep2_find_free_register (0, 0, "r", SFmode, &_regs_allocated)) == NULL_RTX)
10680 : return NULL;
10681 : if (dump_file)
10682 : fprintf (dump_file, "Splitting with gen_peephole2_229 (i386.md:27212)\n");
10683 : start_sequence ();
10684 : #define FAIL return (end_sequence (), nullptr)
10685 : #define DONE return end_sequence ()
10686 : #line 27227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10687 : {
10688 : if (MEM_P (operands[2]))
10689 : {
10690 : operands[5] = operands[2];
10691 : operands[2] = operands[4];
10692 : }
10693 : else if (MEM_P (operands[3]))
10694 : {
10695 : operands[5] = operands[3];
10696 : operands[3] = operands[4];
10697 : }
10698 : else
10699 : gcc_unreachable ();
10700 : }
10701 : #undef DONE
10702 : #undef FAIL
10703 : static const uint8_t expand_encoding[] = {
10704 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x05, 0x1f, 0x01,
10705 : 0x00, 0x39, 0x2d, 0x01, 0x01, 0x01, 0x02, 0x01,
10706 : 0x03
10707 : };
10708 : return complete_seq (expand_encoding, operands);
10709 : }
10710 :
10711 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27430 */
10712 : rtx
10713 : gen_smaxhi3 (const rtx operand0, const rtx operand1, const rtx operand2)
10714 : {
10715 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
10716 : static const uint8_t expand_encoding[] = {
10717 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x53, 0x10,
10718 : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
10719 : };
10720 : return expand_rtx (expand_encoding, operands);
10721 : }
10722 :
10723 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27430 */
10724 : rtx
10725 : gen_umaxdi3 (const rtx operand0, const rtx operand1, const rtx operand2)
10726 : {
10727 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
10728 : static const uint8_t expand_encoding[] = {
10729 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x55, 0x12,
10730 : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
10731 : };
10732 : return expand_rtx (expand_encoding, operands);
10733 : }
10734 :
10735 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27440 */
10736 : extern rtx_insn *gen_split_965 (rtx_insn *, rtx *);
10737 : rtx_insn *
10738 : gen_split_965 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10739 : {
10740 : if (dump_file)
10741 : fprintf (dump_file, "Splitting with gen_split_965 (i386.md:27440)\n");
10742 : start_sequence ();
10743 : #define FAIL return (end_sequence (), nullptr)
10744 : #define DONE return end_sequence ()
10745 : #line 27458 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10746 : {
10747 : operands[2] = force_reg (TImode, operands[2]);
10748 :
10749 : split_double_mode (TImode, &operands[0], 3, &operands[0], &operands[3]);
10750 :
10751 : rtx cmplo[2] = { operands[1], operands[2] };
10752 : rtx cmphi[2] = { operands[4], operands[5] };
10753 :
10754 : enum rtx_code code = GE;
10755 :
10756 : switch (code)
10757 : {
10758 : case LE: case LEU:
10759 : std::swap (cmplo[0], cmplo[1]);
10760 : std::swap (cmphi[0], cmphi[1]);
10761 : code = swap_condition (code);
10762 : /* FALLTHRU */
10763 :
10764 : case GE: case GEU:
10765 : {
10766 : bool uns = (code == GEU);
10767 : rtx (*sbb_insn) (machine_mode, rtx, rtx, rtx)
10768 : = uns ? gen_sub3_carry_ccc : gen_sub3_carry_ccgz;
10769 :
10770 : emit_insn (gen_cmp_1 (DImode, cmplo[0], cmplo[1]));
10771 :
10772 : rtx tmp = gen_rtx_SCRATCH (DImode);
10773 : emit_insn (sbb_insn (DImode, tmp, cmphi[0], cmphi[1]));
10774 :
10775 : rtx flags = gen_rtx_REG (uns ? CCCmode : CCGZmode, FLAGS_REG);
10776 : operands[6] = gen_rtx_fmt_ee (code, VOIDmode, flags, const0_rtx);
10777 :
10778 : break;
10779 : }
10780 :
10781 : default:
10782 : gcc_unreachable ();
10783 : }
10784 : }
10785 : #undef DONE
10786 : #undef FAIL
10787 : static const uint8_t expand_encoding[] = {
10788 : 0x02, 0x1f, 0x01, 0x00, 0x39, 0x12, 0x01, 0x06,
10789 : 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01, 0x03, 0x39,
10790 : 0x12, 0x01, 0x06, 0x01, 0x04, 0x01, 0x05
10791 : };
10792 : return complete_seq (expand_encoding, operands);
10793 : }
10794 :
10795 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27498 */
10796 : extern rtx_insn *gen_split_975 (rtx_insn *, rtx *);
10797 : rtx_insn *
10798 : gen_split_975 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10799 : {
10800 : if (dump_file)
10801 : fprintf (dump_file, "Splitting with gen_split_975 (i386.md:27498)\n");
10802 : start_sequence ();
10803 : #define FAIL return (end_sequence (), nullptr)
10804 : #define DONE return end_sequence ()
10805 : #line 27513 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10806 : {
10807 : machine_mode mode = HImode;
10808 : rtx cmp_op = operands[2];
10809 :
10810 : operands[2] = force_reg (mode, cmp_op);
10811 :
10812 : enum rtx_code code = GEU;
10813 :
10814 : if (cmp_op == const1_rtx)
10815 : {
10816 : /* Convert smax (x, 1) into (x > 0 ? x : 1).
10817 : Convert umax (x, 1) into (x != 0 ? x : 1).
10818 : Convert ?min (x, 1) into (x <= 0 ? x : 1). */
10819 : cmp_op = const0_rtx;
10820 : if (code == GE)
10821 : code = GT;
10822 : else if (code == GEU)
10823 : code = NE;
10824 : }
10825 : /* Convert smin (x, -1) into (x < 0 ? x : -1). */
10826 : else if (cmp_op == constm1_rtx && code == LE)
10827 : {
10828 : cmp_op = const0_rtx;
10829 : code = LT;
10830 : }
10831 : /* Convert smax (x, -1) into (x >= 0 ? x : -1). */
10832 : else if (cmp_op == constm1_rtx && code == GE)
10833 : cmp_op = const0_rtx;
10834 : else if (cmp_op != const0_rtx)
10835 : cmp_op = operands[2];
10836 :
10837 : machine_mode cmpmode = SELECT_CC_MODE (code, operands[1], cmp_op);
10838 : rtx flags = gen_rtx_REG (cmpmode, FLAGS_REG);
10839 :
10840 : rtx tmp = gen_rtx_COMPARE (cmpmode, operands[1], cmp_op);
10841 : emit_insn (gen_rtx_SET (flags, tmp));
10842 :
10843 : operands[3] = gen_rtx_fmt_ee (code, VOIDmode, flags, const0_rtx);
10844 : }
10845 : #undef DONE
10846 : #undef FAIL
10847 : static const uint8_t expand_encoding[] = {
10848 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x10, 0x01, 0x03,
10849 : 0x01, 0x01, 0x01, 0x02
10850 : };
10851 : return complete_seq (expand_encoding, operands);
10852 : }
10853 :
10854 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27555 */
10855 : extern rtx_insn *gen_peephole2_233 (rtx_insn *, rtx *);
10856 : rtx_insn *
10857 : gen_peephole2_233 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10858 : {
10859 : if (dump_file)
10860 : fprintf (dump_file, "Splitting with gen_peephole2_233 (i386.md:27555)\n");
10861 : start_sequence ();
10862 : #define FAIL return (end_sequence (), nullptr)
10863 : #define DONE return end_sequence ()
10864 : #line 27561 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10865 : {
10866 : operands[2] = gen_rtx_REG (GET_MODE (operands[0]), FLAGS_REG);
10867 : ix86_expand_clear (operands[1]);
10868 : }
10869 : #undef DONE
10870 : #undef FAIL
10871 : static const uint8_t expand_encoding[] = {
10872 : 0x01, 0x1f, 0x01, 0x02, 0x01, 0x00
10873 : };
10874 : return complete_seq (expand_encoding, operands);
10875 : }
10876 :
10877 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27585 */
10878 : extern rtx_insn *gen_peephole2_239 (rtx_insn *, rtx *);
10879 : rtx_insn *
10880 : gen_peephole2_239 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
10881 : {
10882 : HARD_REG_SET _regs_allocated;
10883 : CLEAR_HARD_REG_SET (_regs_allocated);
10884 : if ((operands[0] = peep2_find_free_register (0, 0, "r", SImode, &_regs_allocated)) == NULL_RTX)
10885 : return NULL;
10886 : if (dump_file)
10887 : fprintf (dump_file, "Splitting with gen_peephole2_239 (i386.md:27585)\n");
10888 : start_sequence ();
10889 : #define FAIL return (end_sequence (), nullptr)
10890 : #define DONE return end_sequence ()
10891 : #line 27591 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10892 : {
10893 : ix86_expand_clear (operands[0]);
10894 : emit_move_insn (operands[1], operands[0]);
10895 : ix86_last_zero_store_uid
10896 : = INSN_UID (emit_move_insn (operands[2], operands[0]));
10897 : DONE;
10898 : }
10899 : #undef DONE
10900 : #undef FAIL
10901 : static const uint8_t expand_encoding[] = {
10902 : 0x01, 0x27, 0x00
10903 : };
10904 : return complete_seq (expand_encoding, operands);
10905 : }
10906 :
10907 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27663 */
10908 : extern rtx_insn *gen_peephole2_250 (rtx_insn *, rtx *);
10909 : rtx_insn *
10910 : gen_peephole2_250 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10911 : {
10912 : if (dump_file)
10913 : fprintf (dump_file, "Splitting with gen_peephole2_250 (i386.md:27663)\n");
10914 : start_sequence ();
10915 : static const uint8_t expand_encoding[] = {
10916 : 0x01, 0x1f, 0x01, 0x02, 0x01, 0x01
10917 : };
10918 : return complete_seq (expand_encoding, operands);
10919 : }
10920 :
10921 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27678 */
10922 : extern rtx_insn *gen_split_988 (rtx_insn *, rtx *);
10923 : rtx_insn *
10924 : gen_split_988 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10925 : {
10926 : if (dump_file)
10927 : fprintf (dump_file, "Splitting with gen_split_988 (i386.md:27678)\n");
10928 : start_sequence ();
10929 : #define FAIL return (end_sequence (), nullptr)
10930 : #define DONE return end_sequence ()
10931 : #line 27701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10932 : {
10933 : operands[2] = force_reg (HImode, operands[2]);
10934 : operands[3] = gen_reg_rtx (HImode);
10935 : }
10936 : #undef DONE
10937 : #undef FAIL
10938 : static const uint8_t expand_encoding[] = {
10939 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
10940 : 0x3a, 0x08, 0x3b, 0x10, 0x01, 0x01, 0x01, 0x02,
10941 : 0x01, 0x02, 0x1f, 0x01, 0x03, 0x3b, 0x10, 0x01,
10942 : 0x01, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x39, 0x10,
10943 : 0x66, 0x00, 0x30, 0x08, 0x11, 0x27, 0x00, 0x01,
10944 : 0x03, 0x01, 0x02
10945 : };
10946 : return complete_seq (expand_encoding, operands);
10947 : }
10948 :
10949 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27711 */
10950 : extern rtx_insn *gen_split_998 (rtx_insn *, rtx *);
10951 : rtx_insn *
10952 : gen_split_998 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10953 : {
10954 : if (dump_file)
10955 : fprintf (dump_file, "Splitting with gen_split_998 (i386.md:27711)\n");
10956 : start_sequence ();
10957 : #define FAIL return (end_sequence (), nullptr)
10958 : #define DONE return end_sequence ()
10959 : #line 27732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10960 : {
10961 : operands[1] = force_reg (HImode, operands[1]);
10962 : operands[3] = gen_reg_rtx (HImode);
10963 : }
10964 : #undef DONE
10965 : #undef FAIL
10966 : static const uint8_t expand_encoding[] = {
10967 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x02, 0x11,
10968 : 0x3a, 0x02, 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01,
10969 : 0x03, 0x3c, 0x10, 0x01, 0x01, 0x01, 0x02, 0x1f,
10970 : 0x01, 0x00, 0x39, 0x10, 0x63, 0x00, 0x30, 0x02,
10971 : 0x11, 0x27, 0x00, 0x01, 0x03, 0x01, 0x01
10972 : };
10973 : return complete_seq (expand_encoding, operands);
10974 : }
10975 :
10976 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28046 */
10977 : rtx
10978 : gen_stack_protect_set (const rtx operand0, const rtx operand1)
10979 : {
10980 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10981 : start_sequence ();
10982 : {
10983 : #define FAIL return (end_sequence (), nullptr)
10984 : #define DONE return end_sequence ()
10985 : #line 28050 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10986 : {
10987 : rtx scratch = gen_reg_rtx (word_mode);
10988 :
10989 : emit_insn (gen_stack_protect_set_1
10990 : (ptr_mode, word_mode, operands[0], operands[1], scratch));
10991 : DONE;
10992 : }
10993 : #undef DONE
10994 : #undef FAIL
10995 : }
10996 : static const uint8_t expand_encoding[] = {
10997 : 0x02, 0x01, 0x00, 0x01, 0x01
10998 : };
10999 : return complete_seq (expand_encoding, operands);
11000 : }
11001 :
11002 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28159 */
11003 : extern rtx_insn *gen_peephole2_262 (rtx_insn *, rtx *);
11004 : rtx_insn *
11005 : gen_peephole2_262 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11006 : {
11007 : if (dump_file)
11008 : fprintf (dump_file, "Splitting with gen_peephole2_262 (i386.md:28159)\n");
11009 : start_sequence ();
11010 : static const uint8_t expand_encoding[] = {
11011 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
11012 : 0x11, 0x01, 0x01, 0x01, 0x5d, 0x1f, 0x01, 0x03,
11013 : 0x01, 0x04
11014 : };
11015 : return complete_seq (expand_encoding, operands);
11016 : }
11017 :
11018 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28247 */
11019 : extern rtx_insn *gen_peephole2_271 (rtx_insn *, rtx *);
11020 : rtx_insn *
11021 : gen_peephole2_271 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11022 : {
11023 : if (dump_file)
11024 : fprintf (dump_file, "Splitting with gen_peephole2_271 (i386.md:28247)\n");
11025 : start_sequence ();
11026 : static const uint8_t expand_encoding[] = {
11027 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
11028 : 0x12, 0x01, 0x01, 0x01, 0x5d, 0x1f, 0x01, 0x03,
11029 : 0x6e, 0x12, 0x01, 0x04
11030 : };
11031 : return complete_seq (expand_encoding, operands);
11032 : }
11033 :
11034 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28428 */
11035 : extern rtx_insn *gen_peephole2_273 (rtx_insn *, rtx *);
11036 : rtx_insn *
11037 : gen_peephole2_273 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11038 : {
11039 : HARD_REG_SET _regs_allocated;
11040 : CLEAR_HARD_REG_SET (_regs_allocated);
11041 : if ((operands[2] = peep2_find_free_register (1, 1, "q", QImode, &_regs_allocated)) == NULL_RTX)
11042 : return NULL;
11043 : if (dump_file)
11044 : fprintf (dump_file, "Splitting with gen_peephole2_273 (i386.md:28428)\n");
11045 : start_sequence ();
11046 : static const uint8_t expand_encoding[] = {
11047 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x1f, 0x01,
11048 : 0x00, 0x01, 0x02
11049 : };
11050 : return complete_seq (expand_encoding, operands);
11051 : }
11052 :
11053 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28466 */
11054 : extern rtx_insn *gen_peephole2_281 (rtx_insn *, rtx *);
11055 : rtx_insn *
11056 : gen_peephole2_281 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11057 : {
11058 : HARD_REG_SET _regs_allocated;
11059 : CLEAR_HARD_REG_SET (_regs_allocated);
11060 : if ((operands[2] = peep2_find_free_register (0, 0, "q", QImode, &_regs_allocated)) == NULL_RTX)
11061 : return NULL;
11062 : if (dump_file)
11063 : fprintf (dump_file, "Splitting with gen_peephole2_281 (i386.md:28466)\n");
11064 : start_sequence ();
11065 : static const uint8_t expand_encoding[] = {
11066 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x1f, 0x01,
11067 : 0x00, 0x01, 0x02
11068 : };
11069 : return complete_seq (expand_encoding, operands);
11070 : }
11071 :
11072 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28521 */
11073 : extern rtx_insn *gen_peephole2_288 (rtx_insn *, rtx *);
11074 : rtx_insn *
11075 : gen_peephole2_288 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11076 : {
11077 : if (dump_file)
11078 : fprintf (dump_file, "Splitting with gen_peephole2_288 (i386.md:28521)\n");
11079 : start_sequence ();
11080 : static const uint8_t expand_encoding[] = {
11081 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x02,
11082 : 0x01, 0x49, 0x11, 0x01, 0x02, 0x01, 0x03, 0x27,
11083 : 0x00, 0x1f, 0x01, 0x02, 0x49, 0x11, 0x01, 0x02,
11084 : 0x01, 0x03
11085 : };
11086 : return complete_seq (expand_encoding, operands);
11087 : }
11088 :
11089 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28606 */
11090 : extern rtx_insn *gen_peephole2_298 (rtx_insn *, rtx *);
11091 : rtx_insn *
11092 : gen_peephole2_298 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11093 : {
11094 : HARD_REG_SET _regs_allocated;
11095 : CLEAR_HARD_REG_SET (_regs_allocated);
11096 : if ((operands[2] = peep2_find_free_register (0, 0, "r", HImode, &_regs_allocated)) == NULL_RTX)
11097 : return NULL;
11098 : if (dump_file)
11099 : fprintf (dump_file, "Splitting with gen_peephole2_298 (i386.md:28606)\n");
11100 : start_sequence ();
11101 : static const uint8_t expand_encoding[] = {
11102 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x17, 0x00,
11103 : 0x02, 0x1f, 0x01, 0x00, 0x02, 0x03, 0x01, 0x02,
11104 : 0x01, 0x00, 0x05, 0x02, 0x11
11105 : };
11106 : return complete_seq (expand_encoding, operands);
11107 : }
11108 :
11109 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28681 */
11110 : extern rtx_insn *gen_peephole2_308 (rtx_insn *, rtx *);
11111 : rtx_insn *
11112 : gen_peephole2_308 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11113 : {
11114 : HARD_REG_SET _regs_allocated;
11115 : CLEAR_HARD_REG_SET (_regs_allocated);
11116 : if ((operands[2] = peep2_find_free_register (0, 0, "r", HImode, &_regs_allocated)) == NULL_RTX)
11117 : return NULL;
11118 : if (dump_file)
11119 : fprintf (dump_file, "Splitting with gen_peephole2_308 (i386.md:28681)\n");
11120 : start_sequence ();
11121 : static const uint8_t expand_encoding[] = {
11122 : 0x03, 0x1f, 0x01, 0x02, 0x01, 0x00, 0x17, 0x00,
11123 : 0x02, 0x1f, 0x01, 0x02, 0x02, 0x03, 0x01, 0x02,
11124 : 0x01, 0x01, 0x05, 0x02, 0x11, 0x1f, 0x01, 0x00,
11125 : 0x01, 0x02
11126 : };
11127 : return complete_seq (expand_encoding, operands);
11128 : }
11129 :
11130 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28711 */
11131 : extern rtx_insn *gen_peephole2_318 (rtx_insn *, rtx *);
11132 : rtx_insn *
11133 : gen_peephole2_318 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11134 : {
11135 : if (dump_file)
11136 : fprintf (dump_file, "Splitting with gen_peephole2_318 (i386.md:28711)\n");
11137 : start_sequence ();
11138 : #define FAIL return (end_sequence (), nullptr)
11139 : #define DONE return end_sequence ()
11140 : #line 28734 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11141 : {
11142 : operands[4] = SET_DEST (PATTERN (peep2_next_insn (3)));
11143 : operands[5]
11144 : = gen_rtx_fmt_ee (GET_CODE (operands[3]), GET_MODE (operands[3]),
11145 : copy_rtx (operands[1]),
11146 : operands[2]);
11147 : operands[6]
11148 : = gen_rtx_COMPARE (GET_MODE (operands[4]),
11149 : copy_rtx (operands[5]),
11150 : const0_rtx);
11151 : }
11152 : #undef DONE
11153 : #undef FAIL
11154 : static const uint8_t expand_encoding[] = {
11155 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x01,
11156 : 0x06, 0x1f, 0x01, 0x01, 0x01, 0x05
11157 : };
11158 : return complete_seq (expand_encoding, operands);
11159 : }
11160 :
11161 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28813 */
11162 : extern rtx_insn *gen_peephole2_328 (rtx_insn *, rtx *);
11163 : rtx_insn *
11164 : gen_peephole2_328 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11165 : {
11166 : if (dump_file)
11167 : fprintf (dump_file, "Splitting with gen_peephole2_328 (i386.md:28813)\n");
11168 : start_sequence ();
11169 : #define FAIL return (end_sequence (), nullptr)
11170 : #define DONE return end_sequence ()
11171 : #line 28836 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11172 : {
11173 : operands[6] = SET_DEST (PATTERN (peep2_next_insn (3)));
11174 : operands[7]
11175 : = gen_rtx_PLUS (HImode,
11176 : copy_rtx (operands[1]),
11177 : gen_lowpart (HImode, operands[2]));
11178 : operands[8]
11179 : = gen_rtx_COMPARE (GET_MODE (operands[6]),
11180 : copy_rtx (operands[7]),
11181 : const0_rtx);
11182 : }
11183 : #undef DONE
11184 : #undef FAIL
11185 : static const uint8_t expand_encoding[] = {
11186 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x06, 0x01,
11187 : 0x08, 0x1f, 0x01, 0x01, 0x01, 0x07
11188 : };
11189 : return complete_seq (expand_encoding, operands);
11190 : }
11191 :
11192 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28878 */
11193 : extern rtx_insn *gen_peephole2_338 (rtx_insn *, rtx *);
11194 : rtx_insn *
11195 : gen_peephole2_338 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11196 : {
11197 : if (dump_file)
11198 : fprintf (dump_file, "Splitting with gen_peephole2_338 (i386.md:28878)\n");
11199 : start_sequence ();
11200 : #define FAIL return (end_sequence (), nullptr)
11201 : #define DONE return end_sequence ()
11202 : #line 28895 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11203 : {
11204 : operands[3] = SET_DEST (XVECEXP (PATTERN (peep2_next_insn (0)), 0, 0));
11205 : operands[4]
11206 : = gen_rtx_fmt_ee (GET_CODE (operands[2]), GET_MODE (operands[2]),
11207 : copy_rtx (operands[1]), operands[0]);
11208 : operands[5]
11209 : = gen_rtx_COMPARE (GET_MODE (operands[3]), copy_rtx (operands[4]),
11210 : const0_rtx);
11211 : }
11212 : #undef DONE
11213 : #undef FAIL
11214 : static const uint8_t expand_encoding[] = {
11215 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x03, 0x01,
11216 : 0x05, 0x1f, 0x01, 0x01, 0x01, 0x04
11217 : };
11218 : return complete_seq (expand_encoding, operands);
11219 : }
11220 :
11221 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28991 */
11222 : extern rtx_insn *gen_peephole2_348 (rtx_insn *, rtx *);
11223 : rtx_insn *
11224 : gen_peephole2_348 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11225 : {
11226 : if (dump_file)
11227 : fprintf (dump_file, "Splitting with gen_peephole2_348 (i386.md:28991)\n");
11228 : start_sequence ();
11229 : #define FAIL return (end_sequence (), nullptr)
11230 : #define DONE return end_sequence ()
11231 : #line 29017 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11232 : {
11233 : operands[5] = SET_DEST (PATTERN (peep2_next_insn (4)));
11234 : operands[6]
11235 : = gen_rtx_fmt_ee (GET_CODE (operands[3]), GET_MODE (operands[3]),
11236 : copy_rtx (operands[1]),
11237 : operands[2]);
11238 : operands[7]
11239 : = gen_rtx_COMPARE (GET_MODE (operands[5]),
11240 : copy_rtx (operands[6]),
11241 : const0_rtx);
11242 : }
11243 : #undef DONE
11244 : #undef FAIL
11245 : static const uint8_t expand_encoding[] = {
11246 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x05, 0x01,
11247 : 0x07, 0x1f, 0x01, 0x01, 0x01, 0x06
11248 : };
11249 : return complete_seq (expand_encoding, operands);
11250 : }
11251 :
11252 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29104 */
11253 : extern rtx_insn *gen_peephole2_358 (rtx_insn *, rtx *);
11254 : rtx_insn *
11255 : gen_peephole2_358 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11256 : {
11257 : if (dump_file)
11258 : fprintf (dump_file, "Splitting with gen_peephole2_358 (i386.md:29104)\n");
11259 : start_sequence ();
11260 : #define FAIL return (end_sequence (), nullptr)
11261 : #define DONE return end_sequence ()
11262 : #line 29138 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11263 : {
11264 : operands[7] = SET_DEST (PATTERN (peep2_next_insn (4)));
11265 : operands[8] = gen_rtx_XOR (DImode, copy_rtx (operands[1]),
11266 : operands[2]);
11267 : operands[9]
11268 : = gen_rtx_COMPARE (GET_MODE (operands[7]),
11269 : copy_rtx (operands[8]),
11270 : const0_rtx);
11271 : }
11272 : #undef DONE
11273 : #undef FAIL
11274 : static const uint8_t expand_encoding[] = {
11275 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x07, 0x01,
11276 : 0x09, 0x1f, 0x01, 0x01, 0x01, 0x08
11277 : };
11278 : return complete_seq (expand_encoding, operands);
11279 : }
11280 :
11281 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29280 */
11282 : extern rtx_insn *gen_peephole2_368 (rtx_insn *, rtx *);
11283 : rtx_insn *
11284 : gen_peephole2_368 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11285 : {
11286 : if (dump_file)
11287 : fprintf (dump_file, "Splitting with gen_peephole2_368 (i386.md:29280)\n");
11288 : start_sequence ();
11289 : #define FAIL return (end_sequence (), nullptr)
11290 : #define DONE return end_sequence ()
11291 : #line 29287 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11292 : {
11293 : if (4 < GET_MODE_SIZE (SImode))
11294 : operands[0] = gen_lowpart (SImode, operands[0]);
11295 : }
11296 : #undef DONE
11297 : #undef FAIL
11298 : static const uint8_t expand_encoding[] = {
11299 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x27,
11300 : 0x81, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
11301 : 0xff, 0x7f, 0x05, 0x02, 0x11
11302 : };
11303 : return complete_seq (expand_encoding, operands);
11304 : }
11305 :
11306 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29383 */
11307 : extern rtx_insn *gen_peephole2_381 (rtx_insn *, rtx *);
11308 : rtx_insn *
11309 : gen_peephole2_381 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11310 : {
11311 : HARD_REG_SET _regs_allocated;
11312 : CLEAR_HARD_REG_SET (_regs_allocated);
11313 : if ((operands[1] = peep2_find_free_register (0, 0, "r", SImode, &_regs_allocated)) == NULL_RTX)
11314 : return NULL;
11315 : if (dump_file)
11316 : fprintf (dump_file, "Splitting with gen_peephole2_381 (i386.md:29383)\n");
11317 : start_sequence ();
11318 : static const uint8_t expand_encoding[] = {
11319 : 0x02, 0x21, 0x00, 0x01, 0x01, 0x17, 0x00, 0x02,
11320 : 0x1f, 0x36, 0x11, 0x56, 0x12, 0x30, 0x12, 0x07,
11321 : 0x01, 0x01, 0x21, 0x00, 0x36, 0x01, 0x31, 0x00
11322 : };
11323 : return complete_seq (expand_encoding, operands);
11324 : }
11325 :
11326 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29425 */
11327 : extern rtx_insn *gen_peephole2_391 (rtx_insn *, rtx *);
11328 : rtx_insn *
11329 : gen_peephole2_391 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11330 : {
11331 : HARD_REG_SET _regs_allocated;
11332 : CLEAR_HARD_REG_SET (_regs_allocated);
11333 : if ((operands[1] = peep2_find_free_register (0, 0, "r", SImode, &_regs_allocated)) == NULL_RTX)
11334 : return NULL;
11335 : if (dump_file)
11336 : fprintf (dump_file, "Splitting with gen_peephole2_391 (i386.md:29425)\n");
11337 : start_sequence ();
11338 : static const uint8_t expand_encoding[] = {
11339 : 0x03, 0x21, 0x00, 0x01, 0x01, 0x1f, 0x36, 0x11,
11340 : 0x56, 0x11, 0x30, 0x11, 0x07, 0x01, 0x01, 0x1f,
11341 : 0x36, 0x11, 0x56, 0x11, 0x30, 0x11, 0x07, 0x01,
11342 : 0x01
11343 : };
11344 : return complete_seq (expand_encoding, operands);
11345 : }
11346 :
11347 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29453 */
11348 : extern rtx_insn *gen_peephole2_401 (rtx_insn *, rtx *);
11349 : rtx_insn *
11350 : gen_peephole2_401 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11351 : {
11352 : HARD_REG_SET _regs_allocated;
11353 : CLEAR_HARD_REG_SET (_regs_allocated);
11354 : if ((operands[1] = peep2_find_free_register (0, 0, "r", SImode, &_regs_allocated)) == NULL_RTX)
11355 : return NULL;
11356 : if ((operands[2] = peep2_find_free_register (0, 0, "r", SImode, &_regs_allocated)) == NULL_RTX)
11357 : return NULL;
11358 : if (dump_file)
11359 : fprintf (dump_file, "Splitting with gen_peephole2_401 (i386.md:29453)\n");
11360 : start_sequence ();
11361 : static const uint8_t expand_encoding[] = {
11362 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x01, 0x36,
11363 : 0x11, 0x59, 0x12, 0x30, 0x12, 0x07, 0x21, 0x00,
11364 : 0x36, 0x01, 0x31, 0x00, 0x1f, 0x01, 0x02, 0x36,
11365 : 0x11, 0x59, 0x12, 0x30, 0x12, 0x07
11366 : };
11367 : return complete_seq (expand_encoding, operands);
11368 : }
11369 :
11370 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29492 */
11371 : extern rtx_insn *gen_peephole2_414 (rtx_insn *, rtx *);
11372 : rtx_insn *
11373 : gen_peephole2_414 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11374 : {
11375 : HARD_REG_SET _regs_allocated;
11376 : CLEAR_HARD_REG_SET (_regs_allocated);
11377 : if ((operands[1] = peep2_find_free_register (0, 0, "r", DImode, &_regs_allocated)) == NULL_RTX)
11378 : return NULL;
11379 : if ((operands[2] = peep2_find_free_register (0, 0, "r", DImode, &_regs_allocated)) == NULL_RTX)
11380 : return NULL;
11381 : if (dump_file)
11382 : fprintf (dump_file, "Splitting with gen_peephole2_414 (i386.md:29492)\n");
11383 : start_sequence ();
11384 : static const uint8_t expand_encoding[] = {
11385 : 0x02, 0x1f, 0x01, 0x01, 0x36, 0x12, 0x59, 0x12,
11386 : 0x30, 0x12, 0x07, 0x1f, 0x01, 0x02, 0x36, 0x12,
11387 : 0x59, 0x12, 0x30, 0x12, 0x07
11388 : };
11389 : return complete_seq (expand_encoding, operands);
11390 : }
11391 :
11392 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29562 */
11393 : extern rtx_insn *gen_peephole2_425 (rtx_insn *, rtx *);
11394 : rtx_insn *
11395 : gen_peephole2_425 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11396 : {
11397 : HARD_REG_SET _regs_allocated;
11398 : CLEAR_HARD_REG_SET (_regs_allocated);
11399 : if ((operands[3] = peep2_find_free_register (0, 0, "r", DImode, &_regs_allocated)) == NULL_RTX)
11400 : return NULL;
11401 : if (dump_file)
11402 : fprintf (dump_file, "Splitting with gen_peephole2_425 (i386.md:29562)\n");
11403 : start_sequence ();
11404 : static const uint8_t expand_encoding[] = {
11405 : 0x02, 0x1f, 0x01, 0x03, 0x01, 0x01, 0x17, 0x00,
11406 : 0x02, 0x1f, 0x01, 0x00, 0x3e, 0x12, 0x01, 0x03,
11407 : 0x01, 0x02, 0x05, 0x02, 0x11
11408 : };
11409 : return complete_seq (expand_encoding, operands);
11410 : }
11411 :
11412 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29850 */
11413 : rtx
11414 : gen_crc_revqisi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
11415 : {
11416 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
11417 : start_sequence ();
11418 : {
11419 : #define FAIL _Pragma ("GCC error \"crc_revqisi4 cannot FAIL\"") (void)0
11420 : #define DONE return end_sequence ()
11421 : #line 29856 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11422 : {
11423 : /* crc32 uses iSCSI polynomial */
11424 : if (INTVAL (operands[3]) == 0x1EDC6F41)
11425 : emit_insn (gen_sse4_2_crc32qi (operands[0], operands[1], operands[2]));
11426 : else
11427 : expand_reversed_crc_table_based (operands[0], operands[1], operands[2],
11428 : operands[3], QImode,
11429 : generate_reflecting_code_standard);
11430 : DONE;
11431 : }
11432 : #undef DONE
11433 : #undef FAIL
11434 : }
11435 : static const uint8_t expand_encoding[] = {
11436 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
11437 : 0x03
11438 : };
11439 : return complete_seq (expand_encoding, operands);
11440 : }
11441 :
11442 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30753 */
11443 : rtx
11444 : gen_spaceshipsf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
11445 : {
11446 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
11447 : start_sequence ();
11448 : {
11449 : #define FAIL return (end_sequence (), nullptr)
11450 : #define DONE return end_sequence ()
11451 : #line 30760 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11452 : {
11453 : ix86_expand_fp_spaceship (operands[0], operands[1], operands[2],
11454 : operands[3]);
11455 : DONE;
11456 : }
11457 : #undef DONE
11458 : #undef FAIL
11459 : }
11460 : static const uint8_t expand_encoding[] = {
11461 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
11462 : 0x03
11463 : };
11464 : return complete_seq (expand_encoding, operands);
11465 : }
11466 :
11467 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:177 */
11468 : rtx
11469 : gen_movv2si (const rtx operand0, const rtx operand1)
11470 : {
11471 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11472 : start_sequence ();
11473 : {
11474 : #define FAIL return (end_sequence (), nullptr)
11475 : #define DONE return end_sequence ()
11476 : #line 181 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11477 : {
11478 : ix86_expand_vector_move (V2SImode, operands);
11479 : DONE;
11480 : }
11481 : #undef DONE
11482 : #undef FAIL
11483 : }
11484 : static const uint8_t expand_encoding[] = {
11485 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11486 : };
11487 : return complete_seq (expand_encoding, operands);
11488 : }
11489 :
11490 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:309 */
11491 : extern rtx_insn *gen_split_1013 (rtx_insn *, rtx *);
11492 : rtx_insn *
11493 : gen_split_1013 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
11494 : {
11495 : if (dump_file)
11496 : fprintf (dump_file, "Splitting with gen_split_1013 (mmx.md:309)\n");
11497 : start_sequence ();
11498 : #define FAIL return (end_sequence (), nullptr)
11499 : #define DONE return end_sequence ()
11500 : #line 314 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11501 : ix86_split_long_move (operands); DONE;
11502 : #undef DONE
11503 : #undef FAIL
11504 : static const uint8_t expand_encoding[] = {
11505 : 0x01, 0x27, 0x00
11506 : };
11507 : return complete_seq (expand_encoding, operands);
11508 : }
11509 :
11510 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:316 */
11511 : extern rtx_insn *gen_split_1022 (rtx_insn *, rtx *);
11512 : rtx_insn *
11513 : gen_split_1022 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
11514 : {
11515 : if (dump_file)
11516 : fprintf (dump_file, "Splitting with gen_split_1022 (mmx.md:316)\n");
11517 : start_sequence ();
11518 : #define FAIL return (end_sequence (), nullptr)
11519 : #define DONE return end_sequence ()
11520 : #line 321 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11521 : ix86_split_long_move (operands); DONE;
11522 : #undef DONE
11523 : #undef FAIL
11524 : static const uint8_t expand_encoding[] = {
11525 : 0x01, 0x27, 0x00
11526 : };
11527 : return complete_seq (expand_encoding, operands);
11528 : }
11529 :
11530 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:332 */
11531 : rtx
11532 : gen_movv2hf (const rtx operand0, const rtx operand1)
11533 : {
11534 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11535 : start_sequence ();
11536 : {
11537 : #define FAIL return (end_sequence (), nullptr)
11538 : #define DONE return end_sequence ()
11539 : #line 336 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11540 : {
11541 : ix86_expand_vector_move (V2HFmode, operands);
11542 : DONE;
11543 : }
11544 : #undef DONE
11545 : #undef FAIL
11546 : }
11547 : static const uint8_t expand_encoding[] = {
11548 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11549 : };
11550 : return complete_seq (expand_encoding, operands);
11551 : }
11552 :
11553 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:423 */
11554 : extern rtx_insn *gen_split_1031 (rtx_insn *, rtx *);
11555 : rtx_insn *
11556 : gen_split_1031 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11557 : {
11558 : if (dump_file)
11559 : fprintf (dump_file, "Splitting with gen_split_1031 (mmx.md:423)\n");
11560 : start_sequence ();
11561 : #define FAIL return (end_sequence (), nullptr)
11562 : #define DONE return end_sequence ()
11563 : #line 429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11564 : {
11565 : operands[2] = GEN_INT (-PUSH_ROUNDING (GET_MODE_SIZE (V2HFmode)));
11566 : /* Preserve memory attributes. */
11567 : operands[0] = replace_equiv_address (operands[0], stack_pointer_rtx);
11568 : }
11569 : #undef DONE
11570 : #undef FAIL
11571 : static const uint8_t expand_encoding[] = {
11572 : 0x02, 0x1f, 0x30, 0x12, 0x07, 0x3b, 0x12, 0x30,
11573 : 0x12, 0x07, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x01,
11574 : 0x01
11575 : };
11576 : return complete_seq (expand_encoding, operands);
11577 : }
11578 :
11579 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:577 */
11580 : extern rtx_insn *gen_split_1035 (rtx_insn *, rtx *);
11581 : rtx_insn *
11582 : gen_split_1035 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11583 : {
11584 : if (dump_file)
11585 : fprintf (dump_file, "Splitting with gen_split_1035 (mmx.md:577)\n");
11586 : start_sequence ();
11587 : #define FAIL return (end_sequence (), nullptr)
11588 : #define DONE return end_sequence ()
11589 : #line 584 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11590 : {
11591 : rtx op1 = avoid_constant_pool_reference (operands[1]);
11592 :
11593 : if (!CONST_VECTOR_P (op1))
11594 : FAIL;
11595 :
11596 : HOST_WIDE_INT val = ix86_convert_const_vector_to_integer (op1, V2HImode);
11597 :
11598 : operands[0] = lowpart_subreg (SImode, operands[0], V2HImode);
11599 : operands[1] = GEN_INT (val);
11600 : }
11601 : #undef DONE
11602 : #undef FAIL
11603 : static const uint8_t expand_encoding[] = {
11604 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11605 : };
11606 : return complete_seq (expand_encoding, operands);
11607 : }
11608 :
11609 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:577 */
11610 : extern rtx_insn *gen_split_1045 (rtx_insn *, rtx *);
11611 : rtx_insn *
11612 : gen_split_1045 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11613 : {
11614 : if (dump_file)
11615 : fprintf (dump_file, "Splitting with gen_split_1045 (mmx.md:577)\n");
11616 : start_sequence ();
11617 : #define FAIL return (end_sequence (), nullptr)
11618 : #define DONE return end_sequence ()
11619 : #line 584 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11620 : {
11621 : rtx op1 = avoid_constant_pool_reference (operands[1]);
11622 :
11623 : if (!CONST_VECTOR_P (op1))
11624 : FAIL;
11625 :
11626 : HOST_WIDE_INT val = ix86_convert_const_vector_to_integer (op1, V1DImode);
11627 :
11628 : operands[0] = lowpart_subreg (DImode, operands[0], V1DImode);
11629 : operands[1] = GEN_INT (val);
11630 : }
11631 : #undef DONE
11632 : #undef FAIL
11633 : static const uint8_t expand_encoding[] = {
11634 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11635 : };
11636 : return complete_seq (expand_encoding, operands);
11637 : }
11638 :
11639 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:598 */
11640 : extern rtx_insn *gen_split_1056 (rtx_insn *, rtx *);
11641 : rtx_insn *
11642 : gen_split_1056 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11643 : {
11644 : if (dump_file)
11645 : fprintf (dump_file, "Splitting with gen_split_1056 (mmx.md:598)\n");
11646 : start_sequence ();
11647 : #define FAIL return (end_sequence (), nullptr)
11648 : #define DONE return end_sequence ()
11649 : #line 605 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11650 : {
11651 : rtx op1 = operands[1];
11652 : HOST_WIDE_INT val = ix86_convert_const_vector_to_integer (op1, V2SImode);
11653 :
11654 : operands[0] = adjust_address (operands[0], DImode, 0);
11655 : operands[1] = GEN_INT (val);
11656 : }
11657 : #undef DONE
11658 : #undef FAIL
11659 : static const uint8_t expand_encoding[] = {
11660 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11661 : };
11662 : return complete_seq (expand_encoding, operands);
11663 : }
11664 :
11665 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:695 */
11666 : rtx
11667 : gen_absv2sf2 (const rtx operand0, const rtx operand1)
11668 : {
11669 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11670 : start_sequence ();
11671 : {
11672 : #define FAIL return (end_sequence (), nullptr)
11673 : #define DONE return end_sequence ()
11674 : #line 700 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11675 : ix86_expand_fp_absneg_operator (ABS, V2SFmode, operands); DONE;
11676 : #undef DONE
11677 : #undef FAIL
11678 : }
11679 : static const uint8_t expand_encoding[] = {
11680 : 0x01, 0x1f, 0x01, 0x00, 0x7b, 0x67, 0x01, 0x01
11681 : };
11682 : return complete_seq (expand_encoding, operands);
11683 : }
11684 :
11685 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:735 */
11686 : rtx
11687 : gen_mulv2sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
11688 : {
11689 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11690 : start_sequence ();
11691 : {
11692 : #define FAIL return (end_sequence (), nullptr)
11693 : #define DONE return end_sequence ()
11694 : #line 741 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11695 : {
11696 : rtx op2 = gen_reg_rtx (V4SFmode);
11697 : rtx op1 = gen_reg_rtx (V4SFmode);
11698 : rtx op0 = gen_reg_rtx (V4SFmode);
11699 :
11700 : emit_insn (gen_movq_v2sf_to_sse (op2, operands[2]));
11701 : emit_insn (gen_movq_v2sf_to_sse (op1, operands[1]));
11702 :
11703 : emit_insn (gen_mulv4sf3 (op0, op1, op2));
11704 :
11705 : emit_move_insn (operands[0], lowpart_subreg (V2SFmode, op0, V4SFmode));
11706 : DONE;
11707 : }
11708 : #undef DONE
11709 : #undef FAIL
11710 : }
11711 : static const uint8_t expand_encoding[] = {
11712 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x67, 0x01, 0x01,
11713 : 0x01, 0x02
11714 : };
11715 : return complete_seq (expand_encoding, operands);
11716 : }
11717 :
11718 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1099 */
11719 : rtx
11720 : gen_mmx_haddsubv2sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
11721 : {
11722 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11723 : static const uint8_t expand_encoding[] = {
11724 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x67, 0x3c, 0x2d,
11725 : 0x81, 0x0a, 0x2d, 0x01, 0x01, 0x17, 0x00, 0x01,
11726 : 0x27, 0x00, 0x81, 0x0a, 0x2d, 0x01, 0x01, 0x17,
11727 : 0x00, 0x01, 0x27, 0x01, 0x3b, 0x2d, 0x81, 0x0a,
11728 : 0x2d, 0x01, 0x02, 0x17, 0x00, 0x01, 0x27, 0x00,
11729 : 0x81, 0x0a, 0x2d, 0x01, 0x02, 0x17, 0x00, 0x01,
11730 : 0x27, 0x01
11731 : };
11732 : return expand_rtx (expand_encoding, operands);
11733 : }
11734 :
11735 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1424 */
11736 : rtx
11737 : gen_signbitv2sf2 (const rtx operand0, const rtx operand1)
11738 : {
11739 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
11740 : start_sequence ();
11741 : {
11742 : #define FAIL _Pragma ("GCC error \"signbitv2sf2 cannot FAIL\"") (void)0
11743 : #define DONE return end_sequence ()
11744 : #line 1431 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11745 : {
11746 : operands[1] = force_reg (V2SFmode, operands[1]);
11747 : operands[2] = GEN_INT (GET_MODE_UNIT_BITSIZE (V2SFmode)-1);
11748 : }
11749 : #undef DONE
11750 : #undef FAIL
11751 : }
11752 : static const uint8_t expand_encoding[] = {
11753 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x4a, 0x32, 0x4a,
11754 : 0x01, 0x01, 0x00, 0x01, 0x02
11755 : };
11756 : return complete_seq (expand_encoding, operands);
11757 : }
11758 :
11759 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1548 */
11760 : rtx
11761 : gen_fix_truncv2sfv2si2 (const rtx operand0, const rtx operand1)
11762 : {
11763 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11764 : start_sequence ();
11765 : {
11766 : #define FAIL return (end_sequence (), nullptr)
11767 : #define DONE return end_sequence ()
11768 : #line 1552 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11769 : {
11770 : rtx op1 = gen_reg_rtx (V4SFmode);
11771 : rtx op0 = gen_reg_rtx (V4SImode);
11772 :
11773 : emit_insn (gen_movq_v2sf_to_sse (op1, operands[1]));
11774 :
11775 : emit_insn (gen_fix_truncv4sfv4si2 (op0, op1));
11776 :
11777 : emit_move_insn (operands[0], lowpart_subreg (V2SImode, op0, V4SImode));
11778 : DONE;
11779 : }
11780 : #undef DONE
11781 : #undef FAIL
11782 : }
11783 : static const uint8_t expand_encoding[] = {
11784 : 0x01, 0x1f, 0x01, 0x00, 0x74, 0x4a, 0x01, 0x01
11785 : };
11786 : return complete_seq (expand_encoding, operands);
11787 : }
11788 :
11789 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1857 */
11790 : rtx
11791 : gen_vec_extractv2sfsf (const rtx operand0, const rtx operand1, const rtx operand2)
11792 : {
11793 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11794 : start_sequence ();
11795 : {
11796 : #define FAIL _Pragma ("GCC error \"vec_extractv2sfsf cannot FAIL\"") (void)0
11797 : #define DONE return end_sequence ()
11798 : #line 1862 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11799 : {
11800 : ix86_expand_vector_extract (TARGET_MMX_WITH_SSE, operands[0],
11801 : operands[1], INTVAL (operands[2]));
11802 : DONE;
11803 : }
11804 : #undef DONE
11805 : #undef FAIL
11806 : }
11807 : static const uint8_t expand_encoding[] = {
11808 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
11809 : };
11810 : return complete_seq (expand_encoding, operands);
11811 : }
11812 :
11813 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2035 */
11814 : rtx
11815 : gen_lroundv2sfv2si2 (const rtx operand0, const rtx operand1)
11816 : {
11817 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11818 : start_sequence ();
11819 : {
11820 : #define FAIL _Pragma ("GCC error \"lroundv2sfv2si2 cannot FAIL\"") (void)0
11821 : #define DONE return end_sequence ()
11822 : #line 2040 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11823 : {
11824 : rtx op1 = gen_reg_rtx (V4SFmode);
11825 : rtx op0 = gen_reg_rtx (V4SImode);
11826 :
11827 : emit_insn (gen_movq_v2sf_to_sse (op1, operands[1]));
11828 :
11829 : emit_insn (gen_lroundv4sfv4si2 (op0, op1));
11830 :
11831 : emit_move_insn (operands[0], lowpart_subreg (V2SImode, op0, V4SImode));
11832 : DONE;
11833 : }
11834 : #undef DONE
11835 : #undef FAIL
11836 : }
11837 : static const uint8_t expand_encoding[] = {
11838 : 0x02, 0x01, 0x00, 0x01, 0x01
11839 : };
11840 : return complete_seq (expand_encoding, operands);
11841 : }
11842 :
11843 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2122 */
11844 : rtx
11845 : gen_addv4hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
11846 : {
11847 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11848 : start_sequence ();
11849 : {
11850 : #define FAIL return (end_sequence (), nullptr)
11851 : #define DONE return end_sequence ()
11852 : #line 2128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11853 : {
11854 : rtx op2 = gen_reg_rtx (V8HFmode);
11855 : rtx op1 = gen_reg_rtx (V8HFmode);
11856 : rtx op0 = gen_reg_rtx (V8HFmode);
11857 :
11858 : emit_insn (gen_movq_v4hf_to_sse (op2, operands[2]));
11859 : emit_insn (gen_movq_v4hf_to_sse (op1, operands[1]));
11860 : emit_insn (gen_addv8hf3 (op0, op1, op2));
11861 :
11862 : emit_move_insn (operands[0], lowpart_subreg (V4HFmode, op0, V8HFmode));
11863 : DONE;
11864 : }
11865 : #undef DONE
11866 : #undef FAIL
11867 : }
11868 : static const uint8_t expand_encoding[] = {
11869 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x66, 0x01, 0x01,
11870 : 0x01, 0x02
11871 : };
11872 : return complete_seq (expand_encoding, operands);
11873 : }
11874 :
11875 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2142 */
11876 : rtx
11877 : gen_divv4bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
11878 : {
11879 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11880 : start_sequence ();
11881 : {
11882 : #define FAIL return (end_sequence (), nullptr)
11883 : #define DONE return end_sequence ()
11884 : #line 2148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11885 : {
11886 : rtx op0 = gen_reg_rtx (V8BFmode);
11887 : rtx op1 = lowpart_subreg (V8BFmode,
11888 : force_reg (V4BFmode, operands[1]), V4BFmode);
11889 : rtx op2 = lowpart_subreg (V8BFmode,
11890 : force_reg (V4BFmode, operands[2]), V4BFmode);
11891 :
11892 : emit_insn (gen_divv8bf3 (op0, op1, op2));
11893 :
11894 : emit_move_insn (operands[0], lowpart_subreg (V4BFmode, op0, V8BFmode));
11895 : DONE;
11896 : }
11897 : #undef DONE
11898 : #undef FAIL
11899 : }
11900 : static const uint8_t expand_encoding[] = {
11901 : 0x01, 0x1f, 0x01, 0x00, 0x43, 0x65, 0x01, 0x01,
11902 : 0x01, 0x02
11903 : };
11904 : return complete_seq (expand_encoding, operands);
11905 : }
11906 :
11907 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2220 */
11908 : rtx
11909 : gen_sqrtv2hf2 (const rtx operand0, const rtx operand1)
11910 : {
11911 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11912 : start_sequence ();
11913 : {
11914 : #define FAIL _Pragma ("GCC error \"sqrtv2hf2 cannot FAIL\"") (void)0
11915 : #define DONE return end_sequence ()
11916 : #line 2225 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11917 : {
11918 : rtx op1 = gen_reg_rtx (V8HFmode);
11919 : rtx op0 = gen_reg_rtx (V8HFmode);
11920 :
11921 : emit_insn (gen_movd_v2hf_to_sse (op1, operands[1]));
11922 : emit_insn (gen_sqrtv8hf2 (op0, op1));
11923 : emit_move_insn (operands[0], lowpart_subreg (V2HFmode, op0, V8HFmode));
11924 : DONE;
11925 : }
11926 : #undef DONE
11927 : #undef FAIL
11928 : }
11929 : static const uint8_t expand_encoding[] = {
11930 : 0x01, 0x1f, 0x01, 0x00, 0x7c, 0x63, 0x01, 0x01
11931 : };
11932 : return complete_seq (expand_encoding, operands);
11933 : }
11934 :
11935 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2254 */
11936 : rtx
11937 : gen_negv2hf2 (const rtx operand0, const rtx operand1)
11938 : {
11939 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11940 : start_sequence ();
11941 : {
11942 : #define FAIL return (end_sequence (), nullptr)
11943 : #define DONE return end_sequence ()
11944 : #line 2259 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11945 : ix86_expand_fp_absneg_operator (NEG, V2HFmode, operands); DONE;
11946 : #undef DONE
11947 : #undef FAIL
11948 : }
11949 : static const uint8_t expand_encoding[] = {
11950 : 0x01, 0x1f, 0x01, 0x00, 0x3d, 0x63, 0x01, 0x01
11951 : };
11952 : return complete_seq (expand_encoding, operands);
11953 : }
11954 :
11955 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2261 */
11956 : extern rtx_insn *gen_split_1077 (rtx_insn *, rtx *);
11957 : rtx_insn *
11958 : gen_split_1077 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11959 : {
11960 : if (dump_file)
11961 : fprintf (dump_file, "Splitting with gen_split_1077 (mmx.md:2261)\n");
11962 : start_sequence ();
11963 : #define FAIL return (end_sequence (), nullptr)
11964 : #define DONE return end_sequence ()
11965 : #line 2271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11966 : {
11967 : if (!TARGET_AVX && operands_match_p (operands[0], operands[2]))
11968 : std::swap (operands[1], operands[2]);
11969 : }
11970 : #undef DONE
11971 : #undef FAIL
11972 : static const uint8_t expand_encoding[] = {
11973 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x66, 0x01, 0x01,
11974 : 0x01, 0x02
11975 : };
11976 : return complete_seq (expand_encoding, operands);
11977 : }
11978 :
11979 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2362 */
11980 : rtx
11981 : gen_vcond_mask_v2bfv2hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
11982 : {
11983 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
11984 : start_sequence ();
11985 : {
11986 : #define FAIL _Pragma ("GCC error \"vcond_mask_v2bfv2hi cannot FAIL\"") (void)0
11987 : #define DONE return end_sequence ()
11988 : #line 2369 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11989 : {
11990 : ix86_expand_sse_movcc (operands[0], operands[3],
11991 : operands[1], operands[2]);
11992 : DONE;
11993 : }
11994 : #undef DONE
11995 : #undef FAIL
11996 : }
11997 : static const uint8_t expand_encoding[] = {
11998 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x64, 0x01,
11999 : 0x01, 0x01, 0x02, 0x01, 0x03
12000 : };
12001 : return complete_seq (expand_encoding, operands);
12002 : }
12003 :
12004 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2416 */
12005 : rtx
12006 : gen_btruncv2hf2 (const rtx operand0, const rtx operand1)
12007 : {
12008 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12009 : start_sequence ();
12010 : {
12011 : #define FAIL _Pragma ("GCC error \"btruncv2hf2 cannot FAIL\"") (void)0
12012 : #define DONE return end_sequence ()
12013 : #line 2422 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12014 : {
12015 : rtx op1 = gen_reg_rtx (V8HFmode);
12016 : rtx op0 = gen_reg_rtx (V8HFmode);
12017 :
12018 : emit_insn (gen_movd_v2hf_to_sse (op1, operands[1]));
12019 : emit_insn (gen_btruncv8hf2 (op0, op1));
12020 : emit_move_insn (operands[0], lowpart_subreg (V2HFmode, op0, V8HFmode));
12021 :
12022 : DONE;
12023 : }
12024 : #undef DONE
12025 : #undef FAIL
12026 : }
12027 : static const uint8_t expand_encoding[] = {
12028 : 0x02, 0x01, 0x00, 0x01, 0x01
12029 : };
12030 : return complete_seq (expand_encoding, operands);
12031 : }
12032 :
12033 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2481 */
12034 : rtx
12035 : gen_floorv4hf2 (const rtx operand0, const rtx operand1)
12036 : {
12037 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12038 : start_sequence ();
12039 : {
12040 : #define FAIL _Pragma ("GCC error \"floorv4hf2 cannot FAIL\"") (void)0
12041 : #define DONE return end_sequence ()
12042 : #line 2487 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12043 : {
12044 : rtx op1 = gen_reg_rtx (V8HFmode);
12045 : rtx op0 = gen_reg_rtx (V8HFmode);
12046 :
12047 : emit_insn (gen_movq_v4hf_to_sse (op1, operands[1]));
12048 : emit_insn (gen_floorv8hf2 (op0, op1));
12049 : emit_move_insn (operands[0], lowpart_subreg (V4HFmode, op0, V8HFmode));
12050 :
12051 : DONE;
12052 : }
12053 : #undef DONE
12054 : #undef FAIL
12055 : }
12056 : static const uint8_t expand_encoding[] = {
12057 : 0x02, 0x01, 0x00, 0x01, 0x01
12058 : };
12059 : return complete_seq (expand_encoding, operands);
12060 : }
12061 :
12062 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2566 */
12063 : rtx
12064 : gen_lroundv4hfv4hi2 (const rtx operand0, const rtx operand1)
12065 : {
12066 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12067 : start_sequence ();
12068 : {
12069 : #define FAIL _Pragma ("GCC error \"lroundv4hfv4hi2 cannot FAIL\"") (void)0
12070 : #define DONE return end_sequence ()
12071 : #line 2572 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12072 : {
12073 : rtx op1 = gen_reg_rtx (V8HFmode);
12074 : rtx op0 = gen_reg_rtx (V8HFmode);
12075 :
12076 : emit_insn (gen_movq_v4hf_to_sse (op1, operands[1]));
12077 : emit_insn (gen_lroundv8hfv8hi2 (op0, op1));
12078 : emit_move_insn (operands[0], lowpart_subreg (V4HFmode, op0, V8HFmode));
12079 :
12080 : DONE;
12081 : }
12082 : #undef DONE
12083 : #undef FAIL
12084 : }
12085 : static const uint8_t expand_encoding[] = {
12086 : 0x02, 0x01, 0x00, 0x01, 0x01
12087 : };
12088 : return complete_seq (expand_encoding, operands);
12089 : }
12090 :
12091 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2650 */
12092 : rtx
12093 : gen_signbitv4bf2 (const rtx operand0, const rtx operand1)
12094 : {
12095 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
12096 : start_sequence ();
12097 : {
12098 : #define FAIL _Pragma ("GCC error \"signbitv4bf2 cannot FAIL\"") (void)0
12099 : #define DONE return end_sequence ()
12100 : #line 2657 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12101 : {
12102 : operands[1] = force_reg (V4BFmode, operands[1]);
12103 : operands[2] = GEN_INT (GET_MODE_UNIT_BITSIZE (V4BFmode)-1);
12104 : }
12105 : #undef DONE
12106 : #undef FAIL
12107 : }
12108 : static const uint8_t expand_encoding[] = {
12109 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x49, 0x32, 0x49,
12110 : 0x01, 0x01, 0x00, 0x01, 0x02
12111 : };
12112 : return complete_seq (expand_encoding, operands);
12113 : }
12114 :
12115 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2739 */
12116 : rtx
12117 : gen_fnmsv4hf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12118 : {
12119 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12120 : start_sequence ();
12121 : {
12122 : #define FAIL _Pragma ("GCC error \"fnmsv4hf4 cannot FAIL\"") (void)0
12123 : #define DONE return end_sequence ()
12124 : #line 2748 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12125 : {
12126 : rtx op3 = gen_reg_rtx (V8HFmode);
12127 : rtx op2 = gen_reg_rtx (V8HFmode);
12128 : rtx op1 = gen_reg_rtx (V8HFmode);
12129 : rtx op0 = gen_reg_rtx (V8HFmode);
12130 :
12131 : emit_insn (gen_movq_v4hf_to_sse (op3, operands[3]));
12132 : emit_insn (gen_movq_v4hf_to_sse (op2, operands[2]));
12133 : emit_insn (gen_movq_v4hf_to_sse (op1, operands[1]));
12134 :
12135 : emit_insn (gen_fnmsv8hf4 (op0, op1, op2, op3));
12136 :
12137 : emit_move_insn (operands[0], lowpart_subreg (V4HFmode, op0, V8HFmode));
12138 : DONE;
12139 : }
12140 : #undef DONE
12141 : #undef FAIL
12142 : }
12143 : static const uint8_t expand_encoding[] = {
12144 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x19, 0x66, 0x3d,
12145 : 0x66, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x66, 0x01,
12146 : 0x03
12147 : };
12148 : return complete_seq (expand_encoding, operands);
12149 : }
12150 :
12151 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2871 */
12152 : rtx
12153 : gen_fnmsv4bf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12154 : {
12155 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12156 : start_sequence ();
12157 : {
12158 : #define FAIL _Pragma ("GCC error \"fnmsv4bf4 cannot FAIL\"") (void)0
12159 : #define DONE return end_sequence ()
12160 : #line 2880 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12161 : {
12162 : rtx op0 = gen_reg_rtx (V8BFmode);
12163 : rtx op1 = lowpart_subreg (V8BFmode, force_reg (V4BFmode, operands[1]), V4BFmode);
12164 : rtx op2 = lowpart_subreg (V8BFmode, force_reg (V4BFmode, operands[2]), V4BFmode);
12165 : rtx op3 = lowpart_subreg (V8BFmode, force_reg (V4BFmode, operands[3]), V4BFmode);
12166 :
12167 : emit_insn (gen_fnmsv8bf4 (op0, op1, op2, op3));
12168 :
12169 : emit_move_insn (operands[0], lowpart_subreg (V4BFmode, op0, V8BFmode));
12170 : DONE;
12171 : }
12172 : #undef DONE
12173 : #undef FAIL
12174 : }
12175 : static const uint8_t expand_encoding[] = {
12176 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x19, 0x65, 0x3d,
12177 : 0x65, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x65, 0x01,
12178 : 0x03
12179 : };
12180 : return complete_seq (expand_encoding, operands);
12181 : }
12182 :
12183 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3006 */
12184 : rtx
12185 : gen_fixuns_truncv2hfv2si2 (const rtx operand0, const rtx operand1)
12186 : {
12187 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12188 : start_sequence ();
12189 : {
12190 : #define FAIL return (end_sequence (), nullptr)
12191 : #define DONE return end_sequence ()
12192 : #line 3012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12193 : {
12194 : rtx op1 = gen_reg_rtx (V8HFmode);
12195 : rtx op0 = gen_reg_rtx (V4SImode);
12196 :
12197 : emit_insn (gen_movd_v2hf_to_sse (op1, operands[1]));
12198 :
12199 : emit_insn (gen_avx512fp16_fixuns_truncv4si2 (op0, op1));
12200 :
12201 : emit_move_insn (operands[0], lowpart_subreg (V2SImode, op0, V4SImode));
12202 : DONE;
12203 : }
12204 : #undef DONE
12205 : #undef FAIL
12206 : }
12207 : static const uint8_t expand_encoding[] = {
12208 : 0x01, 0x1f, 0x01, 0x00, 0x76, 0x4a, 0x01, 0x01
12209 : };
12210 : return complete_seq (expand_encoding, operands);
12211 : }
12212 :
12213 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3120 */
12214 : rtx
12215 : gen_extendv2bfv2sf2 (const rtx operand0, const rtx operand1)
12216 : {
12217 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12218 : start_sequence ();
12219 : {
12220 : #define FAIL return (end_sequence (), nullptr)
12221 : #define DONE return end_sequence ()
12222 : #line 3125 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12223 : {
12224 : rtx op0 = gen_reg_rtx (V4SFmode);
12225 : rtx op1 = gen_reg_rtx (V4BFmode);
12226 :
12227 : emit_move_insn (op1, lowpart_subreg (V4BFmode,
12228 : force_reg (V2BFmode, operands[1]),
12229 : V2BFmode));
12230 : emit_insn (gen_extendv4bfv4sf2 (op0, op1));
12231 :
12232 : emit_move_insn (operands[0], lowpart_subreg (V2SFmode, op0, V4SFmode));
12233 : DONE;
12234 : }
12235 : #undef DONE
12236 : #undef FAIL
12237 : }
12238 : static const uint8_t expand_encoding[] = {
12239 : 0x01, 0x1f, 0x01, 0x00, 0x71, 0x67, 0x01, 0x01
12240 : };
12241 : return complete_seq (expand_encoding, operands);
12242 : }
12243 :
12244 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3220 */
12245 : rtx
12246 : gen_mmx_addv2si3 (const rtx operand0, const rtx operand1, const rtx operand2)
12247 : {
12248 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12249 : start_sequence ();
12250 : {
12251 : #define FAIL return (end_sequence (), nullptr)
12252 : #define DONE return end_sequence ()
12253 : #line 3226 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12254 : ix86_fixup_binary_operands_no_copy (PLUS, V2SImode, operands);
12255 : #undef DONE
12256 : #undef FAIL
12257 : }
12258 : static const uint8_t expand_encoding[] = {
12259 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x4a, 0x01, 0x01,
12260 : 0x01, 0x02
12261 : };
12262 : return complete_seq (expand_encoding, operands);
12263 : }
12264 :
12265 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3285 */
12266 : extern rtx_insn *gen_split_1084 (rtx_insn *, rtx *);
12267 : rtx_insn *
12268 : gen_split_1084 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12269 : {
12270 : if (dump_file)
12271 : fprintf (dump_file, "Splitting with gen_split_1084 (mmx.md:3285)\n");
12272 : start_sequence ();
12273 : #define FAIL return (end_sequence (), nullptr)
12274 : #define DONE return end_sequence ()
12275 : #line 3310 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12276 : {
12277 : operands[5] = lowpart_subreg (HImode, operands[2], V2QImode);
12278 : operands[4] = lowpart_subreg (HImode, operands[1], V2QImode);
12279 : operands[3] = lowpart_subreg (HImode, operands[0], V2QImode);
12280 : operands[2] = lowpart_subreg (QImode, operands[2], V2QImode);
12281 : operands[1] = lowpart_subreg (QImode, operands[1], V2QImode);
12282 : operands[0] = lowpart_subreg (QImode, operands[0], V2QImode);
12283 : }
12284 : #undef DONE
12285 : #undef FAIL
12286 : static const uint8_t expand_encoding[] = {
12287 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01,
12288 : 0x00, 0x3b, 0x0f, 0x01, 0x01, 0x01, 0x02, 0x05,
12289 : 0x02, 0x11, 0x17, 0x00, 0x02, 0x1f, 0x81, 0x06,
12290 : 0x10, 0x01, 0x03, 0x27, 0x08, 0x27, 0x08, 0x32,
12291 : 0x10, 0x3b, 0x0f, 0x32, 0x0f, 0x81, 0x06, 0x10,
12292 : 0x01, 0x04, 0x27, 0x08, 0x27, 0x08, 0x00, 0x32,
12293 : 0x0f, 0x81, 0x06, 0x10, 0x01, 0x05, 0x27, 0x08,
12294 : 0x27, 0x08, 0x00, 0x00, 0x05, 0x02, 0x11
12295 : };
12296 : return complete_seq (expand_encoding, operands);
12297 : }
12298 :
12299 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3445 */
12300 : rtx
12301 : gen_mulv4qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12302 : {
12303 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12304 : start_sequence ();
12305 : {
12306 : #define FAIL return (end_sequence (), nullptr)
12307 : #define DONE return end_sequence ()
12308 : #line 3450 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12309 : {
12310 : ix86_expand_vecop_qihi_partial (MULT, operands[0], operands[1], operands[2]);
12311 : DONE;
12312 : }
12313 : #undef DONE
12314 : #undef FAIL
12315 : }
12316 : static const uint8_t expand_encoding[] = {
12317 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x45, 0x01, 0x01,
12318 : 0x01, 0x02
12319 : };
12320 : return complete_seq (expand_encoding, operands);
12321 : }
12322 :
12323 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3780 */
12324 : rtx
12325 : gen_mmx_umaxv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12326 : {
12327 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12328 : start_sequence ();
12329 : {
12330 : #define FAIL return (end_sequence (), nullptr)
12331 : #define DONE return end_sequence ()
12332 : #line 3787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12333 : ix86_fixup_binary_operands_no_copy (UMAX, V8QImode, operands);
12334 : #undef DONE
12335 : #undef FAIL
12336 : }
12337 : static const uint8_t expand_encoding[] = {
12338 : 0x01, 0x1f, 0x01, 0x00, 0x55, 0x48, 0x01, 0x01,
12339 : 0x01, 0x02
12340 : };
12341 : return complete_seq (expand_encoding, operands);
12342 : }
12343 :
12344 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3937 */
12345 : extern rtx_insn *gen_split_1090 (rtx_insn *, rtx *);
12346 : rtx_insn *
12347 : gen_split_1090 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12348 : {
12349 : if (dump_file)
12350 : fprintf (dump_file, "Splitting with gen_split_1090 (mmx.md:3937)\n");
12351 : start_sequence ();
12352 : #define FAIL return (end_sequence (), nullptr)
12353 : #define DONE return end_sequence ()
12354 : #line 3946 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12355 : operands[4] = gen_int_mode (16 - 1, DImode);
12356 : #undef DONE
12357 : #undef FAIL
12358 : static const uint8_t expand_encoding[] = {
12359 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x49, 0x01, 0x01,
12360 : 0x01, 0x04
12361 : };
12362 : return complete_seq (expand_encoding, operands);
12363 : }
12364 :
12365 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4022 */
12366 : rtx
12367 : gen_ashrv4qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12368 : {
12369 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12370 : start_sequence ();
12371 : {
12372 : #define FAIL return (end_sequence (), nullptr)
12373 : #define DONE return end_sequence ()
12374 : #line 4027 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12375 : {
12376 : ix86_expand_vecop_qihi_partial (ASHIFTRT, operands[0],
12377 : operands[1], operands[2]);
12378 : DONE;
12379 : }
12380 : #undef DONE
12381 : #undef FAIL
12382 : }
12383 : static const uint8_t expand_encoding[] = {
12384 : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x45, 0x01, 0x01,
12385 : 0x01, 0x02
12386 : };
12387 : return complete_seq (expand_encoding, operands);
12388 : }
12389 :
12390 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4090 */
12391 : rtx
12392 : gen_vec_shl_v2sf (const rtx operand0, const rtx operand1, const rtx operand2)
12393 : {
12394 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12395 : start_sequence ();
12396 : {
12397 : #define FAIL return (end_sequence (), nullptr)
12398 : #define DONE return end_sequence ()
12399 : #line 4096 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12400 : {
12401 : rtx op0 = gen_reg_rtx (V1DImode);
12402 : rtx op1 = force_reg (V2SFmode, operands[1]);
12403 :
12404 : emit_insn (gen_mmx_ashlv1di3
12405 : (op0, gen_lowpart (V1DImode, op1), operands[2]));
12406 : emit_move_insn (operands[0], gen_lowpart (V2SFmode, op0));
12407 : DONE;
12408 : }
12409 : #undef DONE
12410 : #undef FAIL
12411 : }
12412 : static const uint8_t expand_encoding[] = {
12413 : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x4b, 0x01, 0x01,
12414 : 0x01, 0x02
12415 : };
12416 : return complete_seq (expand_encoding, operands);
12417 : }
12418 :
12419 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4122 */
12420 : rtx
12421 : gen_vec_shr_v2sf (const rtx operand0, const rtx operand1, const rtx operand2)
12422 : {
12423 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12424 : start_sequence ();
12425 : {
12426 : #define FAIL return (end_sequence (), nullptr)
12427 : #define DONE return end_sequence ()
12428 : #line 4128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12429 : {
12430 : rtx op0 = gen_reg_rtx (V1DImode);
12431 : rtx op1 = force_reg (V2SFmode, operands[1]);
12432 :
12433 : emit_insn (gen_mmx_lshrv1di3
12434 : (op0, gen_lowpart (V1DImode, op1), operands[2]));
12435 : emit_move_insn (operands[0], gen_lowpart (V2SFmode, op0));
12436 : DONE;
12437 : }
12438 : #undef DONE
12439 : #undef FAIL
12440 : }
12441 : static const uint8_t expand_encoding[] = {
12442 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x4b, 0x01, 0x01,
12443 : 0x01, 0x02
12444 : };
12445 : return complete_seq (expand_encoding, operands);
12446 : }
12447 :
12448 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4160 */
12449 : rtx
12450 : gen_mmx_eqv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12451 : {
12452 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12453 : start_sequence ();
12454 : {
12455 : #define FAIL return (end_sequence (), nullptr)
12456 : #define DONE return end_sequence ()
12457 : #line 4166 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12458 : ix86_fixup_binary_operands_no_copy (EQ, V8QImode, operands);
12459 : #undef DONE
12460 : #undef FAIL
12461 : }
12462 : static const uint8_t expand_encoding[] = {
12463 : 0x01, 0x1f, 0x01, 0x00, 0x5d, 0x48, 0x01, 0x01,
12464 : 0x01, 0x02
12465 : };
12466 : return complete_seq (expand_encoding, operands);
12467 : }
12468 :
12469 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4277 */
12470 : rtx
12471 : gen_vec_cmpv2hiv2hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12472 : {
12473 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12474 : start_sequence ();
12475 : {
12476 : #define FAIL return (end_sequence (), nullptr)
12477 : #define DONE return end_sequence ()
12478 : #line 4283 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12479 : {
12480 : bool ok = ix86_expand_int_vec_cmp (operands);
12481 : gcc_assert (ok);
12482 : DONE;
12483 : }
12484 : #undef DONE
12485 : #undef FAIL
12486 : }
12487 : static const uint8_t expand_encoding[] = {
12488 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x46, 0x01, 0x01,
12489 : 0x02, 0x01, 0x03
12490 : };
12491 : return complete_seq (expand_encoding, operands);
12492 : }
12493 :
12494 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4313 */
12495 : rtx
12496 : gen_vcond_mask_v2sfv2si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12497 : {
12498 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12499 : start_sequence ();
12500 : {
12501 : #define FAIL _Pragma ("GCC error \"vcond_mask_v2sfv2si cannot FAIL\"") (void)0
12502 : #define DONE return end_sequence ()
12503 : #line 4320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12504 : {
12505 : ix86_expand_sse_movcc (operands[0], operands[3],
12506 : operands[1], operands[2]);
12507 : DONE;
12508 : }
12509 : #undef DONE
12510 : #undef FAIL
12511 : }
12512 : static const uint8_t expand_encoding[] = {
12513 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x67, 0x01,
12514 : 0x01, 0x01, 0x02, 0x01, 0x03
12515 : };
12516 : return complete_seq (expand_encoding, operands);
12517 : }
12518 :
12519 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4464 */
12520 : extern rtx_insn *gen_split_1104 (rtx_insn *, rtx *);
12521 : rtx_insn *
12522 : gen_split_1104 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12523 : {
12524 : if (dump_file)
12525 : fprintf (dump_file, "Splitting with gen_split_1104 (mmx.md:4464)\n");
12526 : start_sequence ();
12527 : #define FAIL return (end_sequence (), nullptr)
12528 : #define DONE return end_sequence ()
12529 : #line 4487 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12530 : {
12531 : operands[6] = gen_reg_rtx (V2HImode);
12532 : operands[7] = lowpart_subreg (V4QImode, operands[6], V2HImode);
12533 : operands[8] = force_reg (V2HImode, operands[4]);
12534 : }
12535 : #undef DONE
12536 : #undef FAIL
12537 : static const uint8_t expand_encoding[] = {
12538 : 0x02, 0x1f, 0x01, 0x06, 0x5d, 0x46, 0x01, 0x03,
12539 : 0x01, 0x08, 0x1f, 0x01, 0x00, 0x1a, 0x45, 0x03,
12540 : 0x01, 0x02, 0x01, 0x01, 0x01, 0x07, 0x34
12541 : };
12542 : return complete_seq (expand_encoding, operands);
12543 : }
12544 :
12545 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4614 */
12546 : rtx
12547 : gen_andnv2si3 (const rtx operand0, const rtx operand1, const rtx operand2)
12548 : {
12549 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12550 : static const uint8_t expand_encoding[] = {
12551 : 0x1f, 0x01, 0x00, 0x49, 0x4a, 0x4c, 0x4a, 0x01,
12552 : 0x02, 0x01, 0x01
12553 : };
12554 : return expand_rtx (expand_encoding, operands);
12555 : }
12556 :
12557 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4667 */
12558 : extern rtx_insn *gen_split_1114 (rtx_insn *, rtx *);
12559 : rtx_insn *
12560 : gen_split_1114 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12561 : {
12562 : if (dump_file)
12563 : fprintf (dump_file, "Splitting with gen_split_1114 (mmx.md:4667)\n");
12564 : start_sequence ();
12565 : #define FAIL return (end_sequence (), nullptr)
12566 : #define DONE return end_sequence ()
12567 : #line 4680 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12568 : {
12569 : operands[2] = lowpart_subreg (SImode, operands[2], V4QImode);
12570 : operands[1] = lowpart_subreg (SImode, operands[1], V4QImode);
12571 : operands[0] = lowpart_subreg (SImode, operands[0], V4QImode);
12572 : }
12573 : #undef DONE
12574 : #undef FAIL
12575 : static const uint8_t expand_encoding[] = {
12576 : 0x02, 0x1f, 0x01, 0x00, 0x4c, 0x11, 0x01, 0x01,
12577 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49, 0x11,
12578 : 0x01, 0x00, 0x01, 0x02, 0x05, 0x02, 0x11
12579 : };
12580 : return complete_seq (expand_encoding, operands);
12581 : }
12582 :
12583 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4701 */
12584 : rtx
12585 : gen_mmx_iorv4hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12586 : {
12587 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12588 : start_sequence ();
12589 : {
12590 : #define FAIL return (end_sequence (), nullptr)
12591 : #define DONE return end_sequence ()
12592 : #line 4707 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12593 : ix86_fixup_binary_operands_no_copy (IOR, V4HImode, operands);
12594 : #undef DONE
12595 : #undef FAIL
12596 : }
12597 : static const uint8_t expand_encoding[] = {
12598 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x49, 0x01, 0x01,
12599 : 0x01, 0x02
12600 : };
12601 : return complete_seq (expand_encoding, operands);
12602 : }
12603 :
12604 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4709 */
12605 : rtx
12606 : gen_iorv2si3 (const rtx operand0, const rtx operand1, const rtx operand2)
12607 : {
12608 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12609 : static const uint8_t expand_encoding[] = {
12610 : 0x1f, 0x01, 0x00, 0x4a, 0x4a, 0x01, 0x01, 0x01,
12611 : 0x02
12612 : };
12613 : return expand_rtx (expand_encoding, operands);
12614 : }
12615 :
12616 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4733 */
12617 : rtx
12618 : gen_xorv2hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12619 : {
12620 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12621 : start_sequence ();
12622 : {
12623 : #define FAIL return (end_sequence (), nullptr)
12624 : #define DONE return end_sequence ()
12625 : #line 4739 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12626 : ix86_expand_binary_operator (XOR, V2HImode, operands); DONE;
12627 : #undef DONE
12628 : #undef FAIL
12629 : }
12630 : static const uint8_t expand_encoding[] = {
12631 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x46, 0x01, 0x01,
12632 : 0x01, 0x02
12633 : };
12634 : return complete_seq (expand_encoding, operands);
12635 : }
12636 :
12637 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4777 */
12638 : extern rtx_insn *gen_split_1129 (rtx_insn *, rtx *);
12639 : rtx_insn *
12640 : gen_split_1129 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12641 : {
12642 : if (dump_file)
12643 : fprintf (dump_file, "Splitting with gen_split_1129 (mmx.md:4777)\n");
12644 : start_sequence ();
12645 : #define FAIL return (end_sequence (), nullptr)
12646 : #define DONE return end_sequence ()
12647 : #line 4786 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12648 : {
12649 : operands[2] = lowpart_subreg (V16QImode, operands[2], V4QImode);
12650 : operands[1] = lowpart_subreg (V16QImode, operands[1], V4QImode);
12651 : operands[0] = lowpart_subreg (V16QImode, operands[0], V4QImode);
12652 : }
12653 : #undef DONE
12654 : #undef FAIL
12655 : static const uint8_t expand_encoding[] = {
12656 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x4f, 0x01, 0x01,
12657 : 0x01, 0x02
12658 : };
12659 : return complete_seq (expand_encoding, operands);
12660 : }
12661 :
12662 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4777 */
12663 : extern rtx_insn *gen_split_1135 (rtx_insn *, rtx *);
12664 : rtx_insn *
12665 : gen_split_1135 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12666 : {
12667 : if (dump_file)
12668 : fprintf (dump_file, "Splitting with gen_split_1135 (mmx.md:4777)\n");
12669 : start_sequence ();
12670 : #define FAIL return (end_sequence (), nullptr)
12671 : #define DONE return end_sequence ()
12672 : #line 4786 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12673 : {
12674 : operands[2] = lowpart_subreg (V16QImode, operands[2], V2HImode);
12675 : operands[1] = lowpart_subreg (V16QImode, operands[1], V2HImode);
12676 : operands[0] = lowpart_subreg (V16QImode, operands[0], V2HImode);
12677 : }
12678 : #undef DONE
12679 : #undef FAIL
12680 : static const uint8_t expand_encoding[] = {
12681 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x4f, 0x01, 0x01,
12682 : 0x01, 0x02
12683 : };
12684 : return complete_seq (expand_encoding, operands);
12685 : }
12686 :
12687 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4975 */
12688 : extern rtx_insn *gen_split_1147 (rtx_insn *, rtx *);
12689 : rtx_insn *
12690 : gen_split_1147 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
12691 : {
12692 : if (dump_file)
12693 : fprintf (dump_file, "Splitting with gen_split_1147 (mmx.md:4975)\n");
12694 : start_sequence ();
12695 : #define FAIL return (end_sequence (), nullptr)
12696 : #define DONE return end_sequence ()
12697 : #line 4991 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12698 : ix86_split_mmx_punpck (operands, false); DONE;
12699 : #undef DONE
12700 : #undef FAIL
12701 : static const uint8_t expand_encoding[] = {
12702 : 0x01, 0x27, 0x00
12703 : };
12704 : return complete_seq (expand_encoding, operands);
12705 : }
12706 :
12707 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5147 */
12708 : rtx
12709 : gen_zero_extendv2qiv2hi2 (const rtx operand0, const rtx operand1)
12710 : {
12711 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12712 : start_sequence ();
12713 : {
12714 : #define FAIL return (end_sequence (), nullptr)
12715 : #define DONE return end_sequence ()
12716 : #line 5152 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12717 : {
12718 : if (!TARGET_SSE4_1)
12719 : {
12720 : ix86_expand_sse_extend (operands[0], operands[1], true);
12721 : DONE;
12722 : }
12723 :
12724 : rtx op1 = force_reg (V2QImode, operands[1]);
12725 : op1 = lowpart_subreg (V4QImode, op1, V2QImode);
12726 : emit_insn (gen_sse4_1_zero_extendv2qiv2hi2 (operands[0], op1));
12727 : DONE;
12728 : }
12729 : #undef DONE
12730 : #undef FAIL
12731 : }
12732 : static const uint8_t expand_encoding[] = {
12733 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x46, 0x01, 0x01
12734 : };
12735 : return complete_seq (expand_encoding, operands);
12736 : }
12737 :
12738 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5251 */
12739 : rtx
12740 : gen_vec_unpacks_hi_v4hi (const rtx operand0, const rtx operand1)
12741 : {
12742 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12743 : start_sequence ();
12744 : {
12745 : #define FAIL return (end_sequence (), nullptr)
12746 : #define DONE return end_sequence ()
12747 : #line 5255 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12748 : ix86_expand_sse_unpack (operands[0], operands[1], false, true); DONE;
12749 : #undef DONE
12750 : #undef FAIL
12751 : }
12752 : static const uint8_t expand_encoding[] = {
12753 : 0x02, 0x01, 0x00, 0x01, 0x01
12754 : };
12755 : return complete_seq (expand_encoding, operands);
12756 : }
12757 :
12758 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5281 */
12759 : rtx
12760 : gen_vec_unpacku_lo_v4qi (const rtx operand0, const rtx operand1)
12761 : {
12762 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12763 : start_sequence ();
12764 : {
12765 : #define FAIL return (end_sequence (), nullptr)
12766 : #define DONE return end_sequence ()
12767 : #line 5285 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12768 : ix86_expand_sse_unpack (operands[0], operands[1], true, false); DONE;
12769 : #undef DONE
12770 : #undef FAIL
12771 : }
12772 : static const uint8_t expand_encoding[] = {
12773 : 0x02, 0x01, 0x00, 0x01, 0x01
12774 : };
12775 : return complete_seq (expand_encoding, operands);
12776 : }
12777 :
12778 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5860 */
12779 : extern rtx_insn *gen_split_1156 (rtx_insn *, rtx *);
12780 : rtx_insn *
12781 : gen_split_1156 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12782 : {
12783 : if (dump_file)
12784 : fprintf (dump_file, "Splitting with gen_split_1156 (mmx.md:5860)\n");
12785 : start_sequence ();
12786 : #define FAIL return (end_sequence (), nullptr)
12787 : #define DONE return end_sequence ()
12788 : #line 5867 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12789 : operands[1] = adjust_address (operands[1], SImode, 4);
12790 : #undef DONE
12791 : #undef FAIL
12792 : static const uint8_t expand_encoding[] = {
12793 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
12794 : };
12795 : return complete_seq (expand_encoding, operands);
12796 : }
12797 :
12798 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5937 */
12799 : rtx
12800 : gen_vec_extractv4bfbf (const rtx operand0, const rtx operand1, const rtx operand2)
12801 : {
12802 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12803 : start_sequence ();
12804 : {
12805 : #define FAIL _Pragma ("GCC error \"vec_extractv4bfbf cannot FAIL\"") (void)0
12806 : #define DONE return end_sequence ()
12807 : #line 5942 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12808 : {
12809 : ix86_expand_vector_extract (TARGET_MMX_WITH_SSE, operands[0],
12810 : operands[1], INTVAL (operands[2]));
12811 : DONE;
12812 : }
12813 : #undef DONE
12814 : #undef FAIL
12815 : }
12816 : static const uint8_t expand_encoding[] = {
12817 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
12818 : };
12819 : return complete_seq (expand_encoding, operands);
12820 : }
12821 :
12822 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6196 */
12823 : rtx
12824 : gen_vec_setv2hf (const rtx operand0, const rtx operand1, const rtx operand2)
12825 : {
12826 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12827 : start_sequence ();
12828 : {
12829 : #define FAIL _Pragma ("GCC error \"vec_setv2hf cannot FAIL\"") (void)0
12830 : #define DONE return end_sequence ()
12831 : #line 6201 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12832 : {
12833 : if (CONST_INT_P (operands[2]))
12834 : ix86_expand_vector_set (false, operands[0], operands[1],
12835 : INTVAL (operands[2]));
12836 : else
12837 : ix86_expand_vector_set_var (operands[0], operands[1], operands[2]);
12838 : DONE;
12839 : }
12840 : #undef DONE
12841 : #undef FAIL
12842 : }
12843 : static const uint8_t expand_encoding[] = {
12844 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
12845 : };
12846 : return complete_seq (expand_encoding, operands);
12847 : }
12848 :
12849 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6329 */
12850 : rtx
12851 : gen_vec_initv2hfhf (const rtx operand0, const rtx operand1)
12852 : {
12853 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12854 : start_sequence ();
12855 : {
12856 : #define FAIL return (end_sequence (), nullptr)
12857 : #define DONE return end_sequence ()
12858 : #line 6333 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12859 : {
12860 : ix86_expand_vector_init (TARGET_MMX_WITH_SSE, operands[0],
12861 : operands[1]);
12862 : DONE;
12863 : }
12864 : #undef DONE
12865 : #undef FAIL
12866 : }
12867 : static const uint8_t expand_encoding[] = {
12868 : 0x02, 0x01, 0x00, 0x01, 0x01
12869 : };
12870 : return complete_seq (expand_encoding, operands);
12871 : }
12872 :
12873 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6445 */
12874 : rtx
12875 : gen_uavgv8qi3_ceil (const rtx operand0, const rtx operand1, const rtx operand2)
12876 : {
12877 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12878 : start_sequence ();
12879 : {
12880 : #define FAIL return (end_sequence (), nullptr)
12881 : #define DONE return end_sequence ()
12882 : #line 6458 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12883 : operands[3] = CONST1_RTX(V8HImode);
12884 : #undef DONE
12885 : #undef FAIL
12886 : }
12887 : static const uint8_t expand_encoding[] = {
12888 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x48, 0x50, 0x50,
12889 : 0x3b, 0x50, 0x3b, 0x50, 0x6f, 0x50, 0x01, 0x01,
12890 : 0x6f, 0x50, 0x01, 0x02, 0x01, 0x03, 0x27, 0x01
12891 : };
12892 : return complete_seq (expand_encoding, operands);
12893 : }
12894 :
12895 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6559 */
12896 : rtx
12897 : gen_reduc_ior_scal_v4qi (const rtx operand0, const rtx operand1)
12898 : {
12899 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12900 : start_sequence ();
12901 : {
12902 : #define FAIL _Pragma ("GCC error \"reduc_ior_scal_v4qi cannot FAIL\"") (void)0
12903 : #define DONE return end_sequence ()
12904 : #line 6564 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12905 : {
12906 : rtx tmp = gen_reg_rtx (V4QImode);
12907 : ix86_expand_reduc (gen_iorv4qi3, tmp, operands[1]);
12908 : emit_insn (gen_vec_extractv4qiqi (operands[0], tmp, const0_rtx));
12909 : DONE;
12910 : }
12911 : #undef DONE
12912 : #undef FAIL
12913 : }
12914 : static const uint8_t expand_encoding[] = {
12915 : 0x01, 0x4a, 0x45, 0x01, 0x00, 0x01, 0x01
12916 : };
12917 : return complete_seq (expand_encoding, operands);
12918 : }
12919 :
12920 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6634 */
12921 : rtx
12922 : gen_reduc_umax_scal_v4qi (const rtx operand0, const rtx operand1)
12923 : {
12924 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12925 : start_sequence ();
12926 : {
12927 : #define FAIL return (end_sequence (), nullptr)
12928 : #define DONE return end_sequence ()
12929 : #line 6639 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12930 : {
12931 : rtx tmp = gen_reg_rtx (V4QImode);
12932 : ix86_expand_reduc (gen_umaxv4qi3, tmp, operands[1]);
12933 : emit_insn (gen_vec_extractv4qiqi (operands[0], tmp, const0_rtx));
12934 : DONE;
12935 : }
12936 : #undef DONE
12937 : #undef FAIL
12938 : }
12939 : static const uint8_t expand_encoding[] = {
12940 : 0x01, 0x55, 0x45, 0x01, 0x00, 0x01, 0x01
12941 : };
12942 : return complete_seq (expand_encoding, operands);
12943 : }
12944 :
12945 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6877 */
12946 : extern rtx_insn *gen_split_1164 (rtx_insn *, rtx *);
12947 : rtx_insn *
12948 : gen_split_1164 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12949 : {
12950 : if (dump_file)
12951 : fprintf (dump_file, "Splitting with gen_split_1164 (mmx.md:6877)\n");
12952 : start_sequence ();
12953 : #define FAIL return (end_sequence (), nullptr)
12954 : #define DONE return end_sequence ()
12955 : #line 6893 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12956 : {
12957 : /* Generate SSE pmovmskb and zero-extend from QImode to SImode. */
12958 : operands[1] = lowpart_subreg (V16QImode, operands[1],
12959 : GET_MODE (operands[1]));
12960 : operands[2] = lowpart_subreg (QImode, operands[0],
12961 : GET_MODE (operands[0]));
12962 : }
12963 : #undef DONE
12964 : #undef FAIL
12965 : static const uint8_t expand_encoding[] = {
12966 : 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01,
12967 : 0x01, 0x32, 0x1f, 0x01, 0x00, 0x6f, 0x11, 0x01,
12968 : 0x02
12969 : };
12970 : return complete_seq (expand_encoding, operands);
12971 : }
12972 :
12973 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1477 */
12974 : rtx
12975 : gen_movv32qi (const rtx operand0, const rtx operand1)
12976 : {
12977 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12978 : start_sequence ();
12979 : {
12980 : #define FAIL return (end_sequence (), nullptr)
12981 : #define DONE return end_sequence ()
12982 : #line 1481 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
12983 : {
12984 : ix86_expand_vector_move (V32QImode, operands);
12985 : DONE;
12986 : }
12987 : #undef DONE
12988 : #undef FAIL
12989 : }
12990 : static const uint8_t expand_encoding[] = {
12991 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
12992 : };
12993 : return complete_seq (expand_encoding, operands);
12994 : }
12995 :
12996 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1477 */
12997 : rtx
12998 : gen_movv8di (const rtx operand0, const rtx operand1)
12999 : {
13000 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13001 : start_sequence ();
13002 : {
13003 : #define FAIL return (end_sequence (), nullptr)
13004 : #define DONE return end_sequence ()
13005 : #line 1481 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13006 : {
13007 : ix86_expand_vector_move (V8DImode, operands);
13008 : DONE;
13009 : }
13010 : #undef DONE
13011 : #undef FAIL
13012 : }
13013 : static const uint8_t expand_encoding[] = {
13014 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13015 : };
13016 : return complete_seq (expand_encoding, operands);
13017 : }
13018 :
13019 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1477 */
13020 : rtx
13021 : gen_movv16bf (const rtx operand0, const rtx operand1)
13022 : {
13023 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13024 : start_sequence ();
13025 : {
13026 : #define FAIL return (end_sequence (), nullptr)
13027 : #define DONE return end_sequence ()
13028 : #line 1481 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13029 : {
13030 : ix86_expand_vector_move (V16BFmode, operands);
13031 : DONE;
13032 : }
13033 : #undef DONE
13034 : #undef FAIL
13035 : }
13036 : static const uint8_t expand_encoding[] = {
13037 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13038 : };
13039 : return complete_seq (expand_encoding, operands);
13040 : }
13041 :
13042 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1539 */
13043 : extern rtx_insn *gen_split_1167 (rtx_insn *, rtx *);
13044 : rtx_insn *
13045 : gen_split_1167 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13046 : {
13047 : if (dump_file)
13048 : fprintf (dump_file, "Splitting with gen_split_1167 (sse.md:1539)\n");
13049 : start_sequence ();
13050 : #define FAIL return (end_sequence (), nullptr)
13051 : #define DONE return end_sequence ()
13052 : #line 1549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13053 : operands[2] = CONST0_RTX (V16QImode);
13054 : #undef DONE
13055 : #undef FAIL
13056 : static const uint8_t expand_encoding[] = {
13057 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
13058 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x1a, 0x00,
13059 : 0x01, 0x01, 0x00, 0x27
13060 : };
13061 : return complete_seq (expand_encoding, operands);
13062 : }
13063 :
13064 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1539 */
13065 : extern rtx_insn *gen_split_1177 (rtx_insn *, rtx *);
13066 : rtx_insn *
13067 : gen_split_1177 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13068 : {
13069 : if (dump_file)
13070 : fprintf (dump_file, "Splitting with gen_split_1177 (sse.md:1539)\n");
13071 : start_sequence ();
13072 : #define FAIL return (end_sequence (), nullptr)
13073 : #define DONE return end_sequence ()
13074 : #line 1549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13075 : operands[2] = CONST0_RTX (V4TImode);
13076 : #undef DONE
13077 : #undef FAIL
13078 : static const uint8_t expand_encoding[] = {
13079 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
13080 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x1a, 0x00,
13081 : 0x01, 0x01, 0x00, 0x27
13082 : };
13083 : return complete_seq (expand_encoding, operands);
13084 : }
13085 :
13086 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1539 */
13087 : extern rtx_insn *gen_split_1187 (rtx_insn *, rtx *);
13088 : rtx_insn *
13089 : gen_split_1187 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13090 : {
13091 : if (dump_file)
13092 : fprintf (dump_file, "Splitting with gen_split_1187 (sse.md:1539)\n");
13093 : start_sequence ();
13094 : #define FAIL return (end_sequence (), nullptr)
13095 : #define DONE return end_sequence ()
13096 : #line 1549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13097 : operands[2] = CONST0_RTX (V8SFmode);
13098 : #undef DONE
13099 : #undef FAIL
13100 : static const uint8_t expand_encoding[] = {
13101 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
13102 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x1a, 0x00,
13103 : 0x01, 0x01, 0x00, 0x27
13104 : };
13105 : return complete_seq (expand_encoding, operands);
13106 : }
13107 :
13108 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1568 */
13109 : rtx
13110 : gen_avx512vl_loadv2di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
13111 : {
13112 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
13113 : start_sequence ();
13114 : {
13115 : #define FAIL return (end_sequence (), nullptr)
13116 : #define DONE return end_sequence ()
13117 : #line 1575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13118 : {
13119 : if (CONST_INT_P (operands[3]))
13120 : {
13121 : emit_insn (gen_rtx_SET (operands[0], operands[1]));
13122 : DONE;
13123 : }
13124 : else if (MEM_P (operands[1]))
13125 : operands[1] = gen_rtx_UNSPEC (V2DImode,
13126 : gen_rtvec(1, operands[1]),
13127 : UNSPEC_MASKLOAD);
13128 : }
13129 : #undef DONE
13130 : #undef FAIL
13131 : }
13132 : static const uint8_t expand_encoding[] = {
13133 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x01,
13134 : 0x01, 0x01, 0x02, 0x01, 0x03
13135 : };
13136 : return complete_seq (expand_encoding, operands);
13137 : }
13138 :
13139 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1616 */
13140 : extern rtx_insn *gen_split_1196 (rtx_insn *, rtx *);
13141 : rtx_insn *
13142 : gen_split_1196 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13143 : {
13144 : if (dump_file)
13145 : fprintf (dump_file, "Splitting with gen_split_1196 (sse.md:1616)\n");
13146 : start_sequence ();
13147 : static const uint8_t expand_encoding[] = {
13148 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13149 : };
13150 : return complete_seq (expand_encoding, operands);
13151 : }
13152 :
13153 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1626 */
13154 : extern rtx_insn *gen_split_1206 (rtx_insn *, rtx *);
13155 : rtx_insn *
13156 : gen_split_1206 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13157 : {
13158 : if (dump_file)
13159 : fprintf (dump_file, "Splitting with gen_split_1206 (sse.md:1626)\n");
13160 : start_sequence ();
13161 : static const uint8_t expand_encoding[] = {
13162 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a,
13163 : 0x51, 0x01, 0x01, 0x01, 0x81, 0x32, 0x01, 0x02,
13164 : 0x01, 0x03
13165 : };
13166 : return complete_seq (expand_encoding, operands);
13167 : }
13168 :
13169 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1698 */
13170 : extern rtx_insn *gen_split_1210 (rtx_insn *, rtx *);
13171 : rtx_insn *
13172 : gen_split_1210 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13173 : {
13174 : if (dump_file)
13175 : fprintf (dump_file, "Splitting with gen_split_1210 (sse.md:1698)\n");
13176 : start_sequence ();
13177 : static const uint8_t expand_encoding[] = {
13178 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13179 : };
13180 : return complete_seq (expand_encoding, operands);
13181 : }
13182 :
13183 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1698 */
13184 : extern rtx_insn *gen_split_1214 (rtx_insn *, rtx *);
13185 : rtx_insn *
13186 : gen_split_1214 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13187 : {
13188 : if (dump_file)
13189 : fprintf (dump_file, "Splitting with gen_split_1214 (sse.md:1698)\n");
13190 : start_sequence ();
13191 : static const uint8_t expand_encoding[] = {
13192 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13193 : };
13194 : return complete_seq (expand_encoding, operands);
13195 : }
13196 :
13197 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1723 */
13198 : rtx
13199 : gen_avx512f_loaddf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
13200 : {
13201 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
13202 : start_sequence ();
13203 : {
13204 : #define FAIL return (end_sequence (), nullptr)
13205 : #define DONE return end_sequence ()
13206 : #line 1734 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13207 : operands[4] = CONST0_RTX (V2DFmode);
13208 : #undef DONE
13209 : #undef FAIL
13210 : }
13211 : static const uint8_t expand_encoding[] = {
13212 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81,
13213 : 0x09, 0x6c, 0x81, 0x0c, 0x6c, 0x01, 0x01, 0x01,
13214 : 0x02, 0x01, 0x03, 0x01, 0x04, 0x27, 0x01
13215 : };
13216 : return complete_seq (expand_encoding, operands);
13217 : }
13218 :
13219 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1965 */
13220 : rtx
13221 : gen_movmisalignv8si (const rtx operand0, const rtx operand1)
13222 : {
13223 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13224 : start_sequence ();
13225 : {
13226 : #define FAIL return (end_sequence (), nullptr)
13227 : #define DONE return end_sequence ()
13228 : #line 1969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13229 : {
13230 : ix86_expand_vector_move_misalign (V8SImode, operands);
13231 : DONE;
13232 : }
13233 : #undef DONE
13234 : #undef FAIL
13235 : }
13236 : static const uint8_t expand_encoding[] = {
13237 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13238 : };
13239 : return complete_seq (expand_encoding, operands);
13240 : }
13241 :
13242 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1965 */
13243 : rtx
13244 : gen_movmisalignv16hf (const rtx operand0, const rtx operand1)
13245 : {
13246 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13247 : start_sequence ();
13248 : {
13249 : #define FAIL return (end_sequence (), nullptr)
13250 : #define DONE return end_sequence ()
13251 : #line 1969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13252 : {
13253 : ix86_expand_vector_move_misalign (V16HFmode, operands);
13254 : DONE;
13255 : }
13256 : #undef DONE
13257 : #undef FAIL
13258 : }
13259 : static const uint8_t expand_encoding[] = {
13260 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13261 : };
13262 : return complete_seq (expand_encoding, operands);
13263 : }
13264 :
13265 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1965 */
13266 : rtx
13267 : gen_movmisalignv2df (const rtx operand0, const rtx operand1)
13268 : {
13269 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13270 : start_sequence ();
13271 : {
13272 : #define FAIL return (end_sequence (), nullptr)
13273 : #define DONE return end_sequence ()
13274 : #line 1969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13275 : {
13276 : ix86_expand_vector_move_misalign (V2DFmode, operands);
13277 : DONE;
13278 : }
13279 : #undef DONE
13280 : #undef FAIL
13281 : }
13282 : static const uint8_t expand_encoding[] = {
13283 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13284 : };
13285 : return complete_seq (expand_encoding, operands);
13286 : }
13287 :
13288 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2087 */
13289 : rtx
13290 : gen_storentv8sf (const rtx operand0, const rtx operand1)
13291 : {
13292 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13293 : static const uint8_t expand_encoding[] = {
13294 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x01, 0x01, 0x01,
13295 : 0x76
13296 : };
13297 : return expand_rtx (expand_encoding, operands);
13298 : }
13299 :
13300 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2142 */
13301 : extern rtx_insn *gen_split_1226 (rtx_insn *, rtx *);
13302 : rtx_insn *
13303 : gen_split_1226 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13304 : {
13305 : if (dump_file)
13306 : fprintf (dump_file, "Splitting with gen_split_1226 (sse.md:2142)\n");
13307 : start_sequence ();
13308 : static const uint8_t expand_encoding[] = {
13309 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a,
13310 : 0x0f, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
13311 : 0x27, 0x00, 0x81, 0x2f
13312 : };
13313 : return complete_seq (expand_encoding, operands);
13314 : }
13315 :
13316 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2142 */
13317 : extern rtx_insn *gen_split_1236 (rtx_insn *, rtx *);
13318 : rtx_insn *
13319 : gen_split_1236 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13320 : {
13321 : if (dump_file)
13322 : fprintf (dump_file, "Splitting with gen_split_1236 (sse.md:2142)\n");
13323 : start_sequence ();
13324 : static const uint8_t expand_encoding[] = {
13325 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4b,
13326 : 0x12, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
13327 : 0x27, 0x00, 0x81, 0x2f
13328 : };
13329 : return complete_seq (expand_encoding, operands);
13330 : }
13331 :
13332 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2153 */
13333 : extern rtx_insn *gen_split_1246 (rtx_insn *, rtx *);
13334 : rtx_insn *
13335 : gen_split_1246 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13336 : {
13337 : if (dump_file)
13338 : fprintf (dump_file, "Splitting with gen_split_1246 (sse.md:2153)\n");
13339 : start_sequence ();
13340 : static const uint8_t expand_encoding[] = {
13341 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49,
13342 : 0x12, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
13343 : 0x27, 0x00, 0x81, 0x2f
13344 : };
13345 : return complete_seq (expand_encoding, operands);
13346 : }
13347 :
13348 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2247 */
13349 : extern rtx_insn *gen_split_1256 (rtx_insn *, rtx *);
13350 : rtx_insn *
13351 : gen_split_1256 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13352 : {
13353 : if (dump_file)
13354 : fprintf (dump_file, "Splitting with gen_split_1256 (sse.md:2247)\n");
13355 : start_sequence ();
13356 : static const uint8_t expand_encoding[] = {
13357 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4c,
13358 : 0x12, 0x01, 0x01, 0x1a, 0x00, 0x01, 0x27, 0x00,
13359 : 0x81, 0x2f
13360 : };
13361 : return complete_seq (expand_encoding, operands);
13362 : }
13363 :
13364 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2319 */
13365 : extern rtx_insn *gen_split_1266 (rtx_insn *, rtx *);
13366 : rtx_insn *
13367 : gen_split_1266 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13368 : {
13369 : if (dump_file)
13370 : fprintf (dump_file, "Splitting with gen_split_1266 (sse.md:2319)\n");
13371 : start_sequence ();
13372 : static const uint8_t expand_encoding[] = {
13373 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4d,
13374 : 0x0f, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
13375 : 0x27, 0x00, 0x81, 0x2f
13376 : };
13377 : return complete_seq (expand_encoding, operands);
13378 : }
13379 :
13380 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2403 */
13381 : rtx
13382 : gen_kortesthi (const rtx operand0, const rtx operand1)
13383 : {
13384 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13385 : static const uint8_t expand_encoding[] = {
13386 : 0x1f, 0x30, 0x02, 0x11, 0x1a, 0x02, 0x02, 0x01,
13387 : 0x00, 0x01, 0x01, 0x81, 0x30
13388 : };
13389 : return expand_rtx (expand_encoding, operands);
13390 : }
13391 :
13392 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2444 */
13393 : extern rtx_insn *gen_split_1282 (rtx_insn *, rtx *);
13394 : rtx_insn *
13395 : gen_split_1282 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
13396 : {
13397 : if (dump_file)
13398 : fprintf (dump_file, "Splitting with gen_split_1282 (sse.md:2444)\n");
13399 : start_sequence ();
13400 : #define FAIL return (end_sequence (), nullptr)
13401 : #define DONE return end_sequence ()
13402 : #line 2457 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13403 : {
13404 : if (MASK_REGNO_P (REGNO (operands[1])))
13405 : {
13406 : emit_insn (gen_kortestdi_ccc (operands[1], operands[1]));
13407 : operands[4] = gen_rtx_REG (CCCmode, FLAGS_REG);
13408 : }
13409 : else
13410 : {
13411 : operands[4] = gen_rtx_REG (CCZmode, FLAGS_REG);
13412 : emit_insn (gen_rtx_SET (operands[4],
13413 : gen_rtx_COMPARE (CCZmode,
13414 : operands[1],
13415 : constm1_rtx)));
13416 : }
13417 : ix86_expand_branch (GET_CODE (operands[0]),
13418 : operands[4],
13419 : const0_rtx,
13420 : operands[2]);
13421 : DONE;
13422 : }
13423 : #undef DONE
13424 : #undef FAIL
13425 : static const uint8_t expand_encoding[] = {
13426 : 0x01, 0x27, 0x00
13427 : };
13428 : return complete_seq (expand_encoding, operands);
13429 : }
13430 :
13431 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2522 */
13432 : extern rtx_insn *gen_split_1292 (rtx_insn *, rtx *);
13433 : rtx_insn *
13434 : gen_split_1292 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13435 : {
13436 : if (dump_file)
13437 : fprintf (dump_file, "Splitting with gen_split_1292 (sse.md:2522)\n");
13438 : start_sequence ();
13439 : #define FAIL return (end_sequence (), nullptr)
13440 : #define DONE return end_sequence ()
13441 : #line 2541 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13442 : {
13443 : rtx flag_reg;
13444 : if (MASK_REGNO_P (REGNO (operands[4])))
13445 : {
13446 : emit_insn (gen_kortesthi_ccc (operands[4], operands[4]));
13447 : flag_reg = gen_rtx_REG (CCCmode, FLAGS_REG);
13448 : }
13449 : else
13450 : {
13451 : flag_reg = gen_rtx_REG (CCZmode, FLAGS_REG);
13452 : emit_insn (gen_rtx_SET (flag_reg,
13453 : gen_rtx_COMPARE (CCZmode,
13454 : operands[4],
13455 : constm1_rtx)));
13456 : }
13457 : operands[5] = gen_rtx_fmt_ee (GET_CODE (operands[1]), VOIDmode,
13458 : flag_reg,const0_rtx);
13459 : }
13460 : #undef DONE
13461 : #undef FAIL
13462 : static const uint8_t expand_encoding[] = {
13463 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x12, 0x01, 0x05,
13464 : 0x01, 0x02, 0x01, 0x03
13465 : };
13466 : return complete_seq (expand_encoding, operands);
13467 : }
13468 :
13469 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2608 */
13470 : rtx
13471 : gen_negv16bf2 (const rtx operand0, const rtx operand1)
13472 : {
13473 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13474 : start_sequence ();
13475 : {
13476 : #define FAIL return (end_sequence (), nullptr)
13477 : #define DONE return end_sequence ()
13478 : #line 2613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13479 : ix86_expand_fp_absneg_operator (NEG, V16BFmode, operands); DONE;
13480 : #undef DONE
13481 : #undef FAIL
13482 : }
13483 : static const uint8_t expand_encoding[] = {
13484 : 0x01, 0x1f, 0x01, 0x00, 0x3d, 0x6d, 0x01, 0x01
13485 : };
13486 : return complete_seq (expand_encoding, operands);
13487 : }
13488 :
13489 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2608 */
13490 : rtx
13491 : gen_negv16hf2 (const rtx operand0, const rtx operand1)
13492 : {
13493 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13494 : start_sequence ();
13495 : {
13496 : #define FAIL return (end_sequence (), nullptr)
13497 : #define DONE return end_sequence ()
13498 : #line 2613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13499 : ix86_expand_fp_absneg_operator (NEG, V16HFmode, operands); DONE;
13500 : #undef DONE
13501 : #undef FAIL
13502 : }
13503 : static const uint8_t expand_encoding[] = {
13504 : 0x01, 0x1f, 0x01, 0x00, 0x3d, 0x6e, 0x01, 0x01
13505 : };
13506 : return complete_seq (expand_encoding, operands);
13507 : }
13508 :
13509 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2608 */
13510 : rtx
13511 : gen_negv8df2 (const rtx operand0, const rtx operand1)
13512 : {
13513 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13514 : start_sequence ();
13515 : {
13516 : #define FAIL return (end_sequence (), nullptr)
13517 : #define DONE return end_sequence ()
13518 : #line 2613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13519 : ix86_expand_fp_absneg_operator (NEG, V8DFmode, operands); DONE;
13520 : #undef DONE
13521 : #undef FAIL
13522 : }
13523 : static const uint8_t expand_encoding[] = {
13524 : 0x01, 0x1f, 0x01, 0x00, 0x3d, 0x75, 0x01, 0x01
13525 : };
13526 : return complete_seq (expand_encoding, operands);
13527 : }
13528 :
13529 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2615 */
13530 : extern rtx_insn *gen_split_1304 (rtx_insn *, rtx *);
13531 : rtx_insn *
13532 : gen_split_1304 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13533 : {
13534 : if (dump_file)
13535 : fprintf (dump_file, "Splitting with gen_split_1304 (sse.md:2615)\n");
13536 : start_sequence ();
13537 : #define FAIL return (end_sequence (), nullptr)
13538 : #define DONE return end_sequence ()
13539 : #line 2625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13540 : {
13541 : if (TARGET_AVX)
13542 : {
13543 : if (MEM_P (operands[1]))
13544 : std::swap (operands[1], operands[2]);
13545 : }
13546 : else
13547 : {
13548 : if (operands_match_p (operands[0], operands[2]))
13549 : std::swap (operands[1], operands[2]);
13550 : }
13551 : }
13552 : #undef DONE
13553 : #undef FAIL
13554 : static const uint8_t expand_encoding[] = {
13555 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x69, 0x01, 0x01,
13556 : 0x01, 0x02
13557 : };
13558 : return complete_seq (expand_encoding, operands);
13559 : }
13560 :
13561 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2615 */
13562 : extern rtx_insn *gen_split_1314 (rtx_insn *, rtx *);
13563 : rtx_insn *
13564 : gen_split_1314 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13565 : {
13566 : if (dump_file)
13567 : fprintf (dump_file, "Splitting with gen_split_1314 (sse.md:2615)\n");
13568 : start_sequence ();
13569 : #define FAIL return (end_sequence (), nullptr)
13570 : #define DONE return end_sequence ()
13571 : #line 2625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13572 : {
13573 : if (TARGET_AVX)
13574 : {
13575 : if (MEM_P (operands[1]))
13576 : std::swap (operands[1], operands[2]);
13577 : }
13578 : else
13579 : {
13580 : if (operands_match_p (operands[0], operands[2]))
13581 : std::swap (operands[1], operands[2]);
13582 : }
13583 : }
13584 : #undef DONE
13585 : #undef FAIL
13586 : static const uint8_t expand_encoding[] = {
13587 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x6f, 0x01, 0x01,
13588 : 0x01, 0x02
13589 : };
13590 : return complete_seq (expand_encoding, operands);
13591 : }
13592 :
13593 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2639 */
13594 : extern rtx_insn *gen_split_1324 (rtx_insn *, rtx *);
13595 : rtx_insn *
13596 : gen_split_1324 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13597 : {
13598 : if (dump_file)
13599 : fprintf (dump_file, "Splitting with gen_split_1324 (sse.md:2639)\n");
13600 : start_sequence ();
13601 : #define FAIL return (end_sequence (), nullptr)
13602 : #define DONE return end_sequence ()
13603 : #line 2650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13604 : {
13605 : if (TARGET_AVX)
13606 : {
13607 : if (MEM_P (operands[1]))
13608 : std::swap (operands[1], operands[2]);
13609 : }
13610 : else
13611 : {
13612 : if (operands_match_p (operands[0], operands[2]))
13613 : std::swap (operands[1], operands[2]);
13614 : }
13615 : }
13616 : #undef DONE
13617 : #undef FAIL
13618 : static const uint8_t expand_encoding[] = {
13619 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x6f, 0x01, 0x01,
13620 : 0x01, 0x02
13621 : };
13622 : return complete_seq (expand_encoding, operands);
13623 : }
13624 :
13625 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2664 */
13626 : rtx
13627 : gen_cond_subv8hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13628 : {
13629 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13630 : start_sequence ();
13631 : {
13632 : #define FAIL _Pragma ("GCC error \"cond_subv8hf cannot FAIL\"") (void)0
13633 : #define DONE return end_sequence ()
13634 : #line 2673 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13635 : {
13636 : emit_insn (gen_subv8hf3_mask (operands[0],
13637 : operands[2],
13638 : operands[3],
13639 : operands[4],
13640 : operands[1]));
13641 : DONE;
13642 : }
13643 : #undef DONE
13644 : #undef FAIL
13645 : }
13646 : static const uint8_t expand_encoding[] = {
13647 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x3c,
13648 : 0x6a, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13649 : 0x01
13650 : };
13651 : return complete_seq (expand_encoding, operands);
13652 : }
13653 :
13654 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2664 */
13655 : rtx
13656 : gen_cond_subv4df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13657 : {
13658 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13659 : start_sequence ();
13660 : {
13661 : #define FAIL _Pragma ("GCC error \"cond_subv4df cannot FAIL\"") (void)0
13662 : #define DONE return end_sequence ()
13663 : #line 2673 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13664 : {
13665 : emit_insn (gen_subv4df3_mask (operands[0],
13666 : operands[2],
13667 : operands[3],
13668 : operands[4],
13669 : operands[1]));
13670 : DONE;
13671 : }
13672 : #undef DONE
13673 : #undef FAIL
13674 : }
13675 : static const uint8_t expand_encoding[] = {
13676 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x3c,
13677 : 0x70, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13678 : 0x01
13679 : };
13680 : return complete_seq (expand_encoding, operands);
13681 : }
13682 :
13683 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13684 : rtx
13685 : gen_subv32hf3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
13686 : {
13687 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
13688 : start_sequence ();
13689 : {
13690 : #define FAIL return (end_sequence (), nullptr)
13691 : #define DONE return end_sequence ()
13692 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13693 : ix86_fixup_binary_operands_no_copy (MINUS, V32HFmode, operands);
13694 : #undef DONE
13695 : #undef FAIL
13696 : }
13697 : static const uint8_t expand_encoding[] = {
13698 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x81,
13699 : 0x09, 0x73, 0x3c, 0x73, 0x01, 0x01, 0x01, 0x02,
13700 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
13701 : };
13702 : return complete_seq (expand_encoding, operands);
13703 : }
13704 :
13705 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13706 : rtx
13707 : gen_addv16sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13708 : {
13709 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13710 : start_sequence ();
13711 : {
13712 : #define FAIL return (end_sequence (), nullptr)
13713 : #define DONE return end_sequence ()
13714 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13715 : ix86_fixup_binary_operands_no_copy (PLUS, V16SFmode, operands);
13716 : #undef DONE
13717 : #undef FAIL
13718 : }
13719 : static const uint8_t expand_encoding[] = {
13720 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x3b,
13721 : 0x74, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
13722 : 0x04
13723 : };
13724 : return complete_seq (expand_encoding, operands);
13725 : }
13726 :
13727 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13728 : rtx
13729 : gen_addv4sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
13730 : {
13731 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13732 : start_sequence ();
13733 : {
13734 : #define FAIL return (end_sequence (), nullptr)
13735 : #define DONE return end_sequence ()
13736 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13737 : ix86_fixup_binary_operands_no_copy (PLUS, V4SFmode, operands);
13738 : #undef DONE
13739 : #undef FAIL
13740 : }
13741 : static const uint8_t expand_encoding[] = {
13742 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x6b, 0x01, 0x01,
13743 : 0x01, 0x02
13744 : };
13745 : return complete_seq (expand_encoding, operands);
13746 : }
13747 :
13748 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13749 : rtx
13750 : gen_subv8df3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
13751 : {
13752 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
13753 : start_sequence ();
13754 : {
13755 : #define FAIL return (end_sequence (), nullptr)
13756 : #define DONE return end_sequence ()
13757 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13758 : ix86_fixup_binary_operands_no_copy (MINUS, V8DFmode, operands);
13759 : #undef DONE
13760 : #undef FAIL
13761 : }
13762 : static const uint8_t expand_encoding[] = {
13763 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x3c,
13764 : 0x75, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
13765 : 0x33
13766 : };
13767 : return complete_seq (expand_encoding, operands);
13768 : }
13769 :
13770 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13771 : rtx
13772 : gen_subv2df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13773 : {
13774 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13775 : start_sequence ();
13776 : {
13777 : #define FAIL return (end_sequence (), nullptr)
13778 : #define DONE return end_sequence ()
13779 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13780 : ix86_fixup_binary_operands_no_copy (MINUS, V2DFmode, operands);
13781 : #undef DONE
13782 : #undef FAIL
13783 : }
13784 : static const uint8_t expand_encoding[] = {
13785 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x3c,
13786 : 0x6c, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
13787 : 0x04
13788 : };
13789 : return complete_seq (expand_encoding, operands);
13790 : }
13791 :
13792 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13793 : rtx
13794 : gen_subv8bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
13795 : {
13796 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13797 : start_sequence ();
13798 : {
13799 : #define FAIL return (end_sequence (), nullptr)
13800 : #define DONE return end_sequence ()
13801 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13802 : ix86_fixup_binary_operands_no_copy (MINUS, V8BFmode, operands);
13803 : #undef DONE
13804 : #undef FAIL
13805 : }
13806 : static const uint8_t expand_encoding[] = {
13807 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x69, 0x01, 0x01,
13808 : 0x01, 0x02
13809 : };
13810 : return complete_seq (expand_encoding, operands);
13811 : }
13812 :
13813 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2753 */
13814 : rtx
13815 : gen_cond_mulv4df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13816 : {
13817 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13818 : start_sequence ();
13819 : {
13820 : #define FAIL _Pragma ("GCC error \"cond_mulv4df cannot FAIL\"") (void)0
13821 : #define DONE return end_sequence ()
13822 : #line 2762 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13823 : {
13824 : emit_insn (gen_mulv4df3_mask (operands[0],
13825 : operands[2],
13826 : operands[3],
13827 : operands[4],
13828 : operands[1]));
13829 : DONE;
13830 : }
13831 : #undef DONE
13832 : #undef FAIL
13833 : }
13834 : static const uint8_t expand_encoding[] = {
13835 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x3e,
13836 : 0x70, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13837 : 0x01
13838 : };
13839 : return complete_seq (expand_encoding, operands);
13840 : }
13841 :
13842 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2771 */
13843 : rtx
13844 : gen_mulv16sf3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
13845 : {
13846 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
13847 : start_sequence ();
13848 : {
13849 : #define FAIL return (end_sequence (), nullptr)
13850 : #define DONE return end_sequence ()
13851 : #line 2777 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13852 : ix86_fixup_binary_operands_no_copy (MULT, V16SFmode, operands);
13853 : #undef DONE
13854 : #undef FAIL
13855 : }
13856 : static const uint8_t expand_encoding[] = {
13857 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x3e,
13858 : 0x74, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
13859 : 0x33
13860 : };
13861 : return complete_seq (expand_encoding, operands);
13862 : }
13863 :
13864 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2771 */
13865 : rtx
13866 : gen_mulv8df3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
13867 : {
13868 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
13869 : start_sequence ();
13870 : {
13871 : #define FAIL return (end_sequence (), nullptr)
13872 : #define DONE return end_sequence ()
13873 : #line 2777 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13874 : ix86_fixup_binary_operands_no_copy (MULT, V8DFmode, operands);
13875 : #undef DONE
13876 : #undef FAIL
13877 : }
13878 : static const uint8_t expand_encoding[] = {
13879 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81,
13880 : 0x09, 0x75, 0x3e, 0x75, 0x01, 0x01, 0x01, 0x02,
13881 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
13882 : };
13883 : return complete_seq (expand_encoding, operands);
13884 : }
13885 :
13886 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2845 */
13887 : rtx
13888 : gen_divv8df3 (const rtx operand0, const rtx operand1, const rtx operand2)
13889 : {
13890 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13891 : static const uint8_t expand_encoding[] = {
13892 : 0x1f, 0x01, 0x00, 0x43, 0x75, 0x01, 0x01, 0x01,
13893 : 0x02
13894 : };
13895 : return expand_rtx (expand_encoding, operands);
13896 : }
13897 :
13898 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2851 */
13899 : rtx
13900 : gen_divv8hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
13901 : {
13902 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13903 : start_sequence ();
13904 : {
13905 : #define FAIL return (end_sequence (), nullptr)
13906 : #define DONE return end_sequence ()
13907 : #line 2857 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13908 : {
13909 : /* Transform HF vector div to vector mul/rcp. */
13910 : if (GET_MODE_INNER (V8HFmode) == HFmode
13911 : && TARGET_RECIP_VEC_DIV
13912 : && optimize_insn_for_speed_p ()
13913 : && flag_finite_math_only && !flag_trapping_math
13914 : && flag_unsafe_math_optimizations)
13915 : {
13916 : rtx op = gen_reg_rtx (V8HFmode);
13917 : operands[2] = force_reg (V8HFmode, operands[2]);
13918 : emit_insn (gen_avx512fp16_rcpv8hf2 (op, operands[2]));
13919 : emit_insn (gen_mulv8hf3 (operands[0], operands[1], op));
13920 : DONE;
13921 : }
13922 : }
13923 : #undef DONE
13924 : #undef FAIL
13925 : }
13926 : static const uint8_t expand_encoding[] = {
13927 : 0x01, 0x1f, 0x01, 0x00, 0x43, 0x6a, 0x01, 0x01,
13928 : 0x01, 0x02
13929 : };
13930 : return complete_seq (expand_encoding, operands);
13931 : }
13932 :
13933 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2910 */
13934 : rtx
13935 : gen_cond_divv8df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13936 : {
13937 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13938 : start_sequence ();
13939 : {
13940 : #define FAIL _Pragma ("GCC error \"cond_divv8df cannot FAIL\"") (void)0
13941 : #define DONE return end_sequence ()
13942 : #line 2919 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13943 : {
13944 : emit_insn (gen_avx512f_divv8df3_mask (operands[0],
13945 : operands[2],
13946 : operands[3],
13947 : operands[4],
13948 : operands[1]));
13949 : DONE;
13950 : }
13951 : #undef DONE
13952 : #undef FAIL
13953 : }
13954 : static const uint8_t expand_encoding[] = {
13955 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x43,
13956 : 0x75, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13957 : 0x01
13958 : };
13959 : return complete_seq (expand_encoding, operands);
13960 : }
13961 :
13962 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3086 */
13963 : rtx
13964 : gen_sqrtv4sf2 (const rtx operand0, const rtx operand1)
13965 : {
13966 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13967 : start_sequence ();
13968 : {
13969 : #define FAIL _Pragma ("GCC error \"sqrtv4sf2 cannot FAIL\"") (void)0
13970 : #define DONE return end_sequence ()
13971 : #line 3090 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13972 : {
13973 : if (TARGET_SSE_MATH
13974 : && TARGET_RECIP_VEC_SQRT
13975 : && !optimize_insn_for_size_p ()
13976 : && flag_finite_math_only && !flag_trapping_math
13977 : && flag_unsafe_math_optimizations)
13978 : {
13979 : ix86_emit_swsqrtsf (operands[0], operands[1], V4SFmode, false);
13980 : DONE;
13981 : }
13982 : }
13983 : #undef DONE
13984 : #undef FAIL
13985 : }
13986 : static const uint8_t expand_encoding[] = {
13987 : 0x01, 0x1f, 0x01, 0x00, 0x7c, 0x6b, 0x01, 0x01
13988 : };
13989 : return complete_seq (expand_encoding, operands);
13990 : }
13991 :
13992 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3303 */
13993 : rtx
13994 : gen_cond_sminv8sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13995 : {
13996 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13997 : start_sequence ();
13998 : {
13999 : #define FAIL return (end_sequence (), nullptr)
14000 : #define DONE return end_sequence ()
14001 : #line 3312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14002 : {
14003 : emit_insn (gen_sminv8sf3_mask (operands[0],
14004 : operands[2],
14005 : operands[3],
14006 : operands[4],
14007 : operands[1]));
14008 : DONE;
14009 : }
14010 : #undef DONE
14011 : #undef FAIL
14012 : }
14013 : static const uint8_t expand_encoding[] = {
14014 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x52,
14015 : 0x6f, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
14016 : 0x01
14017 : };
14018 : return complete_seq (expand_encoding, operands);
14019 : }
14020 :
14021 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3321 */
14022 : rtx
14023 : gen_smaxv32hf3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
14024 : {
14025 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
14026 : start_sequence ();
14027 : {
14028 : #define FAIL return (end_sequence (), nullptr)
14029 : #define DONE return end_sequence ()
14030 : #line 3328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14031 : {
14032 : if (!flag_finite_math_only || flag_signed_zeros)
14033 : {
14034 : operands[1] = force_reg (V32HFmode, operands[1]);
14035 : emit_insn (gen_ieee_maxv32hf3_round
14036 : (operands[0], operands[1], operands[2]
14037 :
14038 : , operands[3]));
14039 : DONE;
14040 : }
14041 : else
14042 : ix86_fixup_binary_operands_no_copy (SMAX, V32HFmode, operands);
14043 : }
14044 : #undef DONE
14045 : #undef FAIL
14046 : }
14047 : static const uint8_t expand_encoding[] = {
14048 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x53,
14049 : 0x73, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
14050 : 0x33
14051 : };
14052 : return complete_seq (expand_encoding, operands);
14053 : }
14054 :
14055 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3321 */
14056 : rtx
14057 : gen_sminv16hf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
14058 : {
14059 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
14060 : start_sequence ();
14061 : {
14062 : #define FAIL return (end_sequence (), nullptr)
14063 : #define DONE return end_sequence ()
14064 : #line 3328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14065 : {
14066 : if (!flag_finite_math_only || flag_signed_zeros)
14067 : {
14068 : operands[1] = force_reg (V16HFmode, operands[1]);
14069 : emit_insn (gen_ieee_minv16hf3_mask
14070 : (operands[0], operands[1], operands[2]
14071 : , operands[3], operands[4]
14072 : ));
14073 : DONE;
14074 : }
14075 : else
14076 : ix86_fixup_binary_operands_no_copy (SMIN, V16HFmode, operands);
14077 : }
14078 : #undef DONE
14079 : #undef FAIL
14080 : }
14081 : static const uint8_t expand_encoding[] = {
14082 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x52,
14083 : 0x6e, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
14084 : 0x04
14085 : };
14086 : return complete_seq (expand_encoding, operands);
14087 : }
14088 :
14089 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3321 */
14090 : rtx
14091 : gen_sminv16sf3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
14092 : {
14093 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
14094 : start_sequence ();
14095 : {
14096 : #define FAIL return (end_sequence (), nullptr)
14097 : #define DONE return end_sequence ()
14098 : #line 3328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14099 : {
14100 : if (!flag_finite_math_only || flag_signed_zeros)
14101 : {
14102 : operands[1] = force_reg (V16SFmode, operands[1]);
14103 : emit_insn (gen_ieee_minv16sf3_round
14104 : (operands[0], operands[1], operands[2]
14105 :
14106 : , operands[3]));
14107 : DONE;
14108 : }
14109 : else
14110 : ix86_fixup_binary_operands_no_copy (SMIN, V16SFmode, operands);
14111 : }
14112 : #undef DONE
14113 : #undef FAIL
14114 : }
14115 : static const uint8_t expand_encoding[] = {
14116 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x52,
14117 : 0x74, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
14118 : 0x33
14119 : };
14120 : return complete_seq (expand_encoding, operands);
14121 : }
14122 :
14123 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3321 */
14124 : rtx
14125 : gen_sminv4sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
14126 : {
14127 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
14128 : start_sequence ();
14129 : {
14130 : #define FAIL return (end_sequence (), nullptr)
14131 : #define DONE return end_sequence ()
14132 : #line 3328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14133 : {
14134 : if (!flag_finite_math_only || flag_signed_zeros)
14135 : {
14136 : operands[1] = force_reg (V4SFmode, operands[1]);
14137 : emit_insn (gen_ieee_minv4sf3_mask
14138 : (operands[0], operands[1], operands[2]
14139 : , operands[3], operands[4]
14140 : ));
14141 : DONE;
14142 : }
14143 : else
14144 : ix86_fixup_binary_operands_no_copy (SMIN, V4SFmode, operands);
14145 : }
14146 : #undef DONE
14147 : #undef FAIL
14148 : }
14149 : static const uint8_t expand_encoding[] = {
14150 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x52,
14151 : 0x6b, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
14152 : 0x04
14153 : };
14154 : return complete_seq (expand_encoding, operands);
14155 : }
14156 :
14157 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3321 */
14158 : rtx
14159 : gen_smaxv4df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
14160 : {
14161 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
14162 : start_sequence ();
14163 : {
14164 : #define FAIL return (end_sequence (), nullptr)
14165 : #define DONE return end_sequence ()
14166 : #line 3328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14167 : {
14168 : if (!flag_finite_math_only || flag_signed_zeros)
14169 : {
14170 : operands[1] = force_reg (V4DFmode, operands[1]);
14171 : emit_insn (gen_ieee_maxv4df3_mask
14172 : (operands[0], operands[1], operands[2]
14173 : , operands[3], operands[4]
14174 : ));
14175 : DONE;
14176 : }
14177 : else
14178 : ix86_fixup_binary_operands_no_copy (SMAX, V4DFmode, operands);
14179 : }
14180 : #undef DONE
14181 : #undef FAIL
14182 : }
14183 : static const uint8_t expand_encoding[] = {
14184 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x53,
14185 : 0x70, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
14186 : 0x04
14187 : };
14188 : return complete_seq (expand_encoding, operands);
14189 : }
14190 :
14191 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3366 */
14192 : extern rtx_insn *gen_split_1333 (rtx_insn *, rtx *);
14193 : rtx_insn *
14194 : gen_split_1333 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14195 : {
14196 : if (dump_file)
14197 : fprintf (dump_file, "Splitting with gen_split_1333 (sse.md:3366)\n");
14198 : start_sequence ();
14199 : #define FAIL return (end_sequence (), nullptr)
14200 : #define DONE return end_sequence ()
14201 : #line 3385 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14202 : {
14203 : int u = UNSPEC_IEEE_MIN;
14204 : rtx tmp = operands[2];
14205 : if ((INTVAL (operands[5]) == 1 && rtx_equal_p (operands[1], operands[4]))
14206 : || (INTVAL (operands[5]) == 14 && rtx_equal_p (operands[1], operands[3])))
14207 : u = UNSPEC_IEEE_MAX;
14208 :
14209 : if (MEM_P (operands[1]))
14210 : operands[1] = force_reg (V8SFmode, operands[1]);
14211 :
14212 : if (immediate_operand (operands[2], V8SFmode))
14213 : tmp = force_reg (V8SFmode, operands[2]);
14214 : rtvec v = gen_rtvec (2, operands[1], tmp);
14215 : operands[6] = gen_rtx_UNSPEC (V8SFmode, v, u);
14216 : }
14217 : #undef DONE
14218 : #undef FAIL
14219 : static const uint8_t expand_encoding[] = {
14220 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x06
14221 : };
14222 : return complete_seq (expand_encoding, operands);
14223 : }
14224 :
14225 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3430 */
14226 : extern rtx_insn *gen_split_1343 (rtx_insn *, rtx *);
14227 : rtx_insn *
14228 : gen_split_1343 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14229 : {
14230 : if (dump_file)
14231 : fprintf (dump_file, "Splitting with gen_split_1343 (sse.md:3430)\n");
14232 : start_sequence ();
14233 : #define FAIL return (end_sequence (), nullptr)
14234 : #define DONE return end_sequence ()
14235 : #line 3443 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14236 : {
14237 : int u = UNSPEC_IEEE_MIN;
14238 : if (GET_CODE (operands[1]) == LT)
14239 : u = UNSPEC_IEEE_MAX;
14240 :
14241 : rtx tmp = force_reg (V4SFmode, operands[3]);
14242 : rtvec v = gen_rtvec (2, tmp, operands[2]);
14243 : operands[5] = gen_rtx_UNSPEC (V4SFmode, v, u);
14244 : }
14245 : #undef DONE
14246 : #undef FAIL
14247 : static const uint8_t expand_encoding[] = {
14248 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x05
14249 : };
14250 : return complete_seq (expand_encoding, operands);
14251 : }
14252 :
14253 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3534 */
14254 : rtx
14255 : gen_avx512fp16_vmsmaxv8hf3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
14256 : {
14257 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
14258 : start_sequence ();
14259 : {
14260 : #define FAIL return (end_sequence (), nullptr)
14261 : #define DONE return end_sequence ()
14262 : #line 3543 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14263 : {
14264 : if (!flag_finite_math_only || flag_signed_zeros)
14265 : {
14266 : emit_insn (gen_avx512fp16_ieee_vmmaxv8hf3_mask_round
14267 : (operands[0], operands[1], operands[2]
14268 : , operands[3], operands[4]
14269 : , operands[5]));
14270 : DONE;
14271 : }
14272 : }
14273 : #undef DONE
14274 : #undef FAIL
14275 : }
14276 : static const uint8_t expand_encoding[] = {
14277 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81,
14278 : 0x09, 0x6a, 0x81, 0x09, 0x6a, 0x53, 0x6a, 0x01,
14279 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
14280 : 0x01, 0x27, 0x01, 0x01, 0x05, 0x81, 0x33
14281 : };
14282 : return complete_seq (expand_encoding, operands);
14283 : }
14284 :
14285 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3534 */
14286 : rtx
14287 : gen_sse_vmsminv4sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
14288 : {
14289 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
14290 : start_sequence ();
14291 : {
14292 : #define FAIL return (end_sequence (), nullptr)
14293 : #define DONE return end_sequence ()
14294 : #line 3543 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14295 : {
14296 : if (!flag_finite_math_only || flag_signed_zeros)
14297 : {
14298 : emit_insn (gen_sse_ieee_vmminv4sf3_mask
14299 : (operands[0], operands[1], operands[2]
14300 : , operands[3], operands[4]
14301 : ));
14302 : DONE;
14303 : }
14304 : }
14305 : #undef DONE
14306 : #undef FAIL
14307 : }
14308 : static const uint8_t expand_encoding[] = {
14309 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81,
14310 : 0x09, 0x6b, 0x52, 0x6b, 0x01, 0x01, 0x01, 0x02,
14311 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x01, 0x27, 0x01
14312 : };
14313 : return complete_seq (expand_encoding, operands);
14314 : }
14315 :
14316 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3624 */
14317 : extern rtx_insn *gen_split_1350 (rtx_insn *, rtx *);
14318 : rtx_insn *
14319 : gen_split_1350 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14320 : {
14321 : if (dump_file)
14322 : fprintf (dump_file, "Splitting with gen_split_1350 (sse.md:3624)\n");
14323 : start_sequence ();
14324 : static const uint8_t expand_encoding[] = {
14325 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x3c,
14326 : 0x6f, 0x01, 0x01, 0x01, 0x02, 0x3b, 0x6f, 0x01,
14327 : 0x01, 0x01, 0x02, 0x01, 0x05
14328 : };
14329 : return complete_seq (expand_encoding, operands);
14330 : }
14331 :
14332 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3646 */
14333 : extern rtx_insn *gen_split_1357 (rtx_insn *, rtx *);
14334 : rtx_insn *
14335 : gen_split_1357 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14336 : {
14337 : if (dump_file)
14338 : fprintf (dump_file, "Splitting with gen_split_1357 (sse.md:3646)\n");
14339 : start_sequence ();
14340 : #define FAIL return (end_sequence (), nullptr)
14341 : #define DONE return end_sequence ()
14342 : #line 3667 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14343 : {
14344 : /* Negate mask bits to compensate for swapped PLUS and MINUS RTXes. */
14345 : operands[5]
14346 : = GEN_INT (~INTVAL (operands[5])
14347 : & ((HOST_WIDE_INT_1U << GET_MODE_NUNITS (V2DFmode)) - 1));
14348 : }
14349 : #undef DONE
14350 : #undef FAIL
14351 : static const uint8_t expand_encoding[] = {
14352 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x3c,
14353 : 0x6c, 0x01, 0x03, 0x01, 0x04, 0x3b, 0x6c, 0x01,
14354 : 0x03, 0x01, 0x04, 0x01, 0x05
14355 : };
14356 : return complete_seq (expand_encoding, operands);
14357 : }
14358 :
14359 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3964 */
14360 : rtx
14361 : gen_reduc_plus_scal_v2df (const rtx operand0, const rtx operand1)
14362 : {
14363 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14364 : start_sequence ();
14365 : {
14366 : #define FAIL _Pragma ("GCC error \"reduc_plus_scal_v2df cannot FAIL\"") (void)0
14367 : #define DONE return end_sequence ()
14368 : #line 3969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14369 : {
14370 : rtx tmp = gen_reg_rtx (V2DFmode);
14371 : ix86_expand_reduc (gen_addv2df3, tmp, operands[1]);
14372 : emit_insn (gen_vec_extractv2dfdf (operands[0], tmp,
14373 : const0_rtx));
14374 : DONE;
14375 : }
14376 : #undef DONE
14377 : #undef FAIL
14378 : }
14379 : static const uint8_t expand_encoding[] = {
14380 : 0x01, 0x3b, 0x6c, 0x01, 0x00, 0x01, 0x01
14381 : };
14382 : return complete_seq (expand_encoding, operands);
14383 : }
14384 :
14385 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4007 */
14386 : rtx
14387 : gen_reduc_plus_scal_v8df (const rtx operand0, const rtx operand1)
14388 : {
14389 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14390 : start_sequence ();
14391 : {
14392 : #define FAIL _Pragma ("GCC error \"reduc_plus_scal_v8df cannot FAIL\"") (void)0
14393 : #define DONE return end_sequence ()
14394 : #line 4012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14395 : {
14396 : rtx tmp = gen_reg_rtx (V4DFmode);
14397 : rtx tmp2 = gen_reg_rtx (V4DFmode);
14398 : rtx tmp3 = gen_reg_rtx (V4DFmode);
14399 : emit_insn (gen_vec_extract_hi_v8df (tmp, operands[1]));
14400 : emit_insn (gen_vec_extract_lo_v8df (tmp2, operands[1]));
14401 : emit_insn (gen_addv4df3 (tmp3, tmp, tmp2));
14402 : emit_insn (gen_reduc_plus_scal_v4df (operands[0], tmp3));
14403 : DONE;
14404 : }
14405 : #undef DONE
14406 : #undef FAIL
14407 : }
14408 : static const uint8_t expand_encoding[] = {
14409 : 0x01, 0x3b, 0x75, 0x01, 0x00, 0x01, 0x01
14410 : };
14411 : return complete_seq (expand_encoding, operands);
14412 : }
14413 :
14414 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4007 */
14415 : rtx
14416 : gen_reduc_plus_scal_v8di (const rtx operand0, const rtx operand1)
14417 : {
14418 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14419 : start_sequence ();
14420 : {
14421 : #define FAIL _Pragma ("GCC error \"reduc_plus_scal_v8di cannot FAIL\"") (void)0
14422 : #define DONE return end_sequence ()
14423 : #line 4012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14424 : {
14425 : rtx tmp = gen_reg_rtx (V4DImode);
14426 : rtx tmp2 = gen_reg_rtx (V4DImode);
14427 : rtx tmp3 = gen_reg_rtx (V4DImode);
14428 : emit_insn (gen_vec_extract_hi_v8di (tmp, operands[1]));
14429 : emit_insn (gen_vec_extract_lo_v8di (tmp2, operands[1]));
14430 : emit_insn (gen_addv4di3 (tmp3, tmp, tmp2));
14431 : emit_insn (gen_reduc_plus_scal_v4di (operands[0], tmp3));
14432 : DONE;
14433 : }
14434 : #undef DONE
14435 : #undef FAIL
14436 : }
14437 : static const uint8_t expand_encoding[] = {
14438 : 0x01, 0x3b, 0x5c, 0x01, 0x00, 0x01, 0x01
14439 : };
14440 : return complete_seq (expand_encoding, operands);
14441 : }
14442 :
14443 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4030 */
14444 : rtx
14445 : gen_reduc_smin_scal_v16qi (const rtx operand0, const rtx operand1)
14446 : {
14447 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14448 : start_sequence ();
14449 : {
14450 : #define FAIL return (end_sequence (), nullptr)
14451 : #define DONE return end_sequence ()
14452 : #line 4035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14453 : {
14454 : rtx tmp = gen_reg_rtx (V16QImode);
14455 : ix86_expand_reduc (gen_sminv16qi3, tmp, operands[1]);
14456 : emit_insn (gen_vec_extractv16qiqi (operands[0], tmp,
14457 : const0_rtx));
14458 : DONE;
14459 : }
14460 : #undef DONE
14461 : #undef FAIL
14462 : }
14463 : static const uint8_t expand_encoding[] = {
14464 : 0x01, 0x52, 0x4f, 0x01, 0x00, 0x01, 0x01
14465 : };
14466 : return complete_seq (expand_encoding, operands);
14467 : }
14468 :
14469 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4054 */
14470 : rtx
14471 : gen_reduc_smin_scal_v8si (const rtx operand0, const rtx operand1)
14472 : {
14473 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14474 : start_sequence ();
14475 : {
14476 : #define FAIL return (end_sequence (), nullptr)
14477 : #define DONE return end_sequence ()
14478 : #line 4059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14479 : {
14480 : rtx tmp = gen_reg_rtx (V4SImode);
14481 : rtx tmp2 = gen_reg_rtx (V4SImode);
14482 : rtx tmp3 = gen_reg_rtx (V4SImode);
14483 : emit_insn (gen_vec_extract_hi_v8si (tmp, operands[1]));
14484 : emit_insn (gen_vec_extract_lo_v8si (tmp2, operands[1]));
14485 : emit_insn (gen_sminv4si3 (tmp3, tmp, tmp2));
14486 : emit_insn (gen_reduc_smin_scal_v4si (operands[0], tmp3));
14487 : DONE;
14488 : }
14489 : #undef DONE
14490 : #undef FAIL
14491 : }
14492 : static const uint8_t expand_encoding[] = {
14493 : 0x01, 0x52, 0x56, 0x01, 0x00, 0x01, 0x01
14494 : };
14495 : return complete_seq (expand_encoding, operands);
14496 : }
14497 :
14498 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4054 */
14499 : rtx
14500 : gen_reduc_smin_scal_v32hf (const rtx operand0, const rtx operand1)
14501 : {
14502 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14503 : start_sequence ();
14504 : {
14505 : #define FAIL return (end_sequence (), nullptr)
14506 : #define DONE return end_sequence ()
14507 : #line 4059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14508 : {
14509 : rtx tmp = gen_reg_rtx (V16HFmode);
14510 : rtx tmp2 = gen_reg_rtx (V16HFmode);
14511 : rtx tmp3 = gen_reg_rtx (V16HFmode);
14512 : emit_insn (gen_vec_extract_hi_v32hf (tmp, operands[1]));
14513 : emit_insn (gen_vec_extract_lo_v32hf (tmp2, operands[1]));
14514 : emit_insn (gen_sminv16hf3 (tmp3, tmp, tmp2));
14515 : emit_insn (gen_reduc_smin_scal_v16hf (operands[0], tmp3));
14516 : DONE;
14517 : }
14518 : #undef DONE
14519 : #undef FAIL
14520 : }
14521 : static const uint8_t expand_encoding[] = {
14522 : 0x01, 0x52, 0x73, 0x01, 0x00, 0x01, 0x01
14523 : };
14524 : return complete_seq (expand_encoding, operands);
14525 : }
14526 :
14527 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4054 */
14528 : rtx
14529 : gen_reduc_smin_scal_v8df (const rtx operand0, const rtx operand1)
14530 : {
14531 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14532 : start_sequence ();
14533 : {
14534 : #define FAIL return (end_sequence (), nullptr)
14535 : #define DONE return end_sequence ()
14536 : #line 4059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14537 : {
14538 : rtx tmp = gen_reg_rtx (V4DFmode);
14539 : rtx tmp2 = gen_reg_rtx (V4DFmode);
14540 : rtx tmp3 = gen_reg_rtx (V4DFmode);
14541 : emit_insn (gen_vec_extract_hi_v8df (tmp, operands[1]));
14542 : emit_insn (gen_vec_extract_lo_v8df (tmp2, operands[1]));
14543 : emit_insn (gen_sminv4df3 (tmp3, tmp, tmp2));
14544 : emit_insn (gen_reduc_smin_scal_v4df (operands[0], tmp3));
14545 : DONE;
14546 : }
14547 : #undef DONE
14548 : #undef FAIL
14549 : }
14550 : static const uint8_t expand_encoding[] = {
14551 : 0x01, 0x52, 0x75, 0x01, 0x00, 0x01, 0x01
14552 : };
14553 : return complete_seq (expand_encoding, operands);
14554 : }
14555 :
14556 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4086 */
14557 : rtx
14558 : gen_reduc_umin_scal_v32qi (const rtx operand0, const rtx operand1)
14559 : {
14560 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14561 : start_sequence ();
14562 : {
14563 : #define FAIL return (end_sequence (), nullptr)
14564 : #define DONE return end_sequence ()
14565 : #line 4091 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14566 : {
14567 : rtx tmp = gen_reg_rtx (V16QImode);
14568 : rtx tmp2 = gen_reg_rtx (V16QImode);
14569 : rtx tmp3 = gen_reg_rtx (V16QImode);
14570 : emit_insn (gen_vec_extract_hi_v32qi (tmp, operands[1]));
14571 : emit_insn (gen_vec_extract_lo_v32qi (tmp2, operands[1]));
14572 : emit_insn (gen_uminv16qi3 (tmp3, tmp, tmp2));
14573 : rtx tmp4 = gen_reg_rtx (V16QImode);
14574 : ix86_expand_reduc (gen_uminv16qi3, tmp4, tmp3);
14575 : emit_insn (gen_vec_extractv16qiqi
14576 : (operands[0], tmp4, const0_rtx));
14577 : DONE;
14578 : }
14579 : #undef DONE
14580 : #undef FAIL
14581 : }
14582 : static const uint8_t expand_encoding[] = {
14583 : 0x01, 0x54, 0x54, 0x01, 0x00, 0x01, 0x01
14584 : };
14585 : return complete_seq (expand_encoding, operands);
14586 : }
14587 :
14588 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4117 */
14589 : rtx
14590 : gen_reduc_sbool_and_scal_si (const rtx operand0, const rtx operand1, const rtx operand2)
14591 : {
14592 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
14593 : start_sequence ();
14594 : {
14595 : #define FAIL _Pragma ("GCC error \"reduc_sbool_and_scal_si cannot FAIL\"") (void)0
14596 : #define DONE return end_sequence ()
14597 : #line 4122 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14598 : {
14599 : int n_elt = INTVAL (operands[2]);
14600 : rtx op2 = CONSTM1_RTX (SImode);
14601 : rtx op1 = operands[1];
14602 : if (n_elt < 8)
14603 : {
14604 : op2 = gen_int_mode ((1u << n_elt) - 1, QImode);
14605 : op1 = gen_reg_rtx (QImode);
14606 : emit_insn (gen_andqi3 (op1, operands[1], op2));
14607 : }
14608 : ix86_expand_setcc (operands[0], EQ, op1, op2);
14609 : DONE;
14610 : }
14611 : #undef DONE
14612 : #undef FAIL
14613 : }
14614 : static const uint8_t expand_encoding[] = {
14615 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
14616 : };
14617 : return complete_seq (expand_encoding, operands);
14618 : }
14619 :
14620 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4199 */
14621 : rtx
14622 : gen_reduc_sbool_and_scal_v32qi (const rtx operand0, const rtx operand1)
14623 : {
14624 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14625 : start_sequence ();
14626 : {
14627 : #define FAIL _Pragma ("GCC error \"reduc_sbool_and_scal_v32qi cannot FAIL\"") (void)0
14628 : #define DONE return end_sequence ()
14629 : #line 4203 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14630 : {
14631 : rtx flags = gen_rtx_REG (CCZmode, FLAGS_REG);
14632 : rtx op2, tmp;
14633 : if (TARGET_AVX2 || 32 != 32)
14634 : {
14635 : op2 = force_reg (V32QImode, CONST0_RTX (V32QImode));
14636 : tmp = gen_reg_rtx (V32QImode);
14637 : rtx op1 = gen_rtx_EQ (V32QImode, operands[1], op2);
14638 : emit_insn (gen_vec_cmpv32qiv32qi (tmp, op1, operands[1], op2));
14639 : }
14640 : else
14641 : {
14642 : op2 = force_reg (V32QImode, CONSTM1_RTX (V32QImode));
14643 : tmp = gen_reg_rtx (V32QImode);
14644 : rtx ops[3] = { tmp, operands[1], op2 };
14645 : ix86_expand_vector_logical_operator (XOR, V32QImode, ops);
14646 : }
14647 :
14648 : tmp = gen_rtx_UNSPEC (CCZmode, gen_rtvec(2, tmp, tmp), UNSPEC_PTEST);
14649 : emit_insn (gen_rtx_SET (flags, tmp));
14650 : rtx ret = gen_rtx_fmt_ee (EQ, VOIDmode, flags, const0_rtx);
14651 : PUT_MODE (ret, QImode);
14652 : emit_insn (gen_rtx_SET (operands[0], ret));
14653 : DONE;
14654 :
14655 : }
14656 : #undef DONE
14657 : #undef FAIL
14658 : }
14659 : static const uint8_t expand_encoding[] = {
14660 : 0x02, 0x01, 0x00, 0x01, 0x01
14661 : };
14662 : return complete_seq (expand_encoding, operands);
14663 : }
14664 :
14665 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4230 */
14666 : rtx
14667 : gen_reduc_sbool_ior_scal_v16qi (const rtx operand0, const rtx operand1)
14668 : {
14669 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14670 : start_sequence ();
14671 : {
14672 : #define FAIL _Pragma ("GCC error \"reduc_sbool_ior_scal_v16qi cannot FAIL\"") (void)0
14673 : #define DONE return end_sequence ()
14674 : #line 4234 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14675 : {
14676 : rtx flags = gen_rtx_REG (CCZmode, FLAGS_REG);
14677 : rtx tmp = gen_rtx_UNSPEC (CCZmode, gen_rtvec(2, operands[1], operands[1]), UNSPEC_PTEST);
14678 : emit_insn (gen_rtx_SET (flags, tmp));
14679 : rtx ret = gen_rtx_fmt_ee (NE, VOIDmode, flags, const0_rtx);
14680 : PUT_MODE (ret, QImode);
14681 : emit_insn (gen_rtx_SET (operands[0], ret));
14682 : DONE;
14683 : }
14684 : #undef DONE
14685 : #undef FAIL
14686 : }
14687 : static const uint8_t expand_encoding[] = {
14688 : 0x02, 0x01, 0x00, 0x01, 0x01
14689 : };
14690 : return complete_seq (expand_encoding, operands);
14691 : }
14692 :
14693 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4244 */
14694 : rtx
14695 : gen_reduc_sbool_xor_scal_v16qi (const rtx operand0, const rtx operand1)
14696 : {
14697 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14698 : start_sequence ();
14699 : {
14700 : #define FAIL _Pragma ("GCC error \"reduc_sbool_xor_scal_v16qi cannot FAIL\"") (void)0
14701 : #define DONE return end_sequence ()
14702 : #line 4248 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14703 : {
14704 : rtx popcnt1 = gen_reg_rtx (SImode);
14705 : emit_insn (gen_sse2_pmovmskb (popcnt1,operands[1]));
14706 :
14707 : emit_insn (gen_popcountsi2 (popcnt1, popcnt1));
14708 : emit_insn (gen_andsi3 (popcnt1, popcnt1, GEN_INT (0x1)));
14709 :
14710 : emit_move_insn (operands[0], gen_lowpart (QImode, popcnt1));
14711 : DONE;
14712 : }
14713 : #undef DONE
14714 : #undef FAIL
14715 : }
14716 : static const uint8_t expand_encoding[] = {
14717 : 0x02, 0x01, 0x00, 0x01, 0x01
14718 : };
14719 : return complete_seq (expand_encoding, operands);
14720 : }
14721 :
14722 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4311 */
14723 : rtx
14724 : gen_reduc_xor_scal_v8hi (const rtx operand0, const rtx operand1)
14725 : {
14726 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14727 : start_sequence ();
14728 : {
14729 : #define FAIL _Pragma ("GCC error \"reduc_xor_scal_v8hi cannot FAIL\"") (void)0
14730 : #define DONE return end_sequence ()
14731 : #line 4316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14732 : {
14733 : rtx tmp = gen_reg_rtx (V8HImode);
14734 : ix86_expand_reduc (gen_xorv8hi3, tmp, operands[1]);
14735 : emit_insn (gen_vec_extractv8hihi (operands[0],
14736 : tmp, const0_rtx));
14737 : DONE;
14738 : }
14739 : #undef DONE
14740 : #undef FAIL
14741 : }
14742 : static const uint8_t expand_encoding[] = {
14743 : 0x01, 0x4b, 0x50, 0x01, 0x00, 0x01, 0x01
14744 : };
14745 : return complete_seq (expand_encoding, operands);
14746 : }
14747 :
14748 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4330 */
14749 : rtx
14750 : gen_reduc_and_scal_v16hi (const rtx operand0, const rtx operand1)
14751 : {
14752 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14753 : start_sequence ();
14754 : {
14755 : #define FAIL _Pragma ("GCC error \"reduc_and_scal_v16hi cannot FAIL\"") (void)0
14756 : #define DONE return end_sequence ()
14757 : #line 4335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14758 : {
14759 : rtx tmp = gen_reg_rtx (V8HImode);
14760 : rtx tmp2 = gen_reg_rtx (V8HImode);
14761 : rtx tmp3 = gen_reg_rtx (V8HImode);
14762 : emit_insn (gen_vec_extract_hi_v16hi (tmp, operands[1]));
14763 : emit_insn (gen_vec_extract_lo_v16hi (tmp2, operands[1]));
14764 : emit_insn (gen_andv8hi3 (tmp3, tmp, tmp2));
14765 : emit_insn (gen_reduc_and_scal_v8hi (operands[0], tmp3));
14766 : DONE;
14767 : }
14768 : #undef DONE
14769 : #undef FAIL
14770 : }
14771 : static const uint8_t expand_encoding[] = {
14772 : 0x01, 0x49, 0x55, 0x01, 0x00, 0x01, 0x01
14773 : };
14774 : return complete_seq (expand_encoding, operands);
14775 : }
14776 :
14777 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4330 */
14778 : rtx
14779 : gen_reduc_ior_scal_v64qi (const rtx operand0, const rtx operand1)
14780 : {
14781 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14782 : start_sequence ();
14783 : {
14784 : #define FAIL _Pragma ("GCC error \"reduc_ior_scal_v64qi cannot FAIL\"") (void)0
14785 : #define DONE return end_sequence ()
14786 : #line 4335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14787 : {
14788 : rtx tmp = gen_reg_rtx (V32QImode);
14789 : rtx tmp2 = gen_reg_rtx (V32QImode);
14790 : rtx tmp3 = gen_reg_rtx (V32QImode);
14791 : emit_insn (gen_vec_extract_hi_v64qi (tmp, operands[1]));
14792 : emit_insn (gen_vec_extract_lo_v64qi (tmp2, operands[1]));
14793 : emit_insn (gen_iorv32qi3 (tmp3, tmp, tmp2));
14794 : emit_insn (gen_reduc_ior_scal_v32qi (operands[0], tmp3));
14795 : DONE;
14796 : }
14797 : #undef DONE
14798 : #undef FAIL
14799 : }
14800 : static const uint8_t expand_encoding[] = {
14801 : 0x01, 0x4a, 0x59, 0x01, 0x00, 0x01, 0x01
14802 : };
14803 : return complete_seq (expand_encoding, operands);
14804 : }
14805 :
14806 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4330 */
14807 : rtx
14808 : gen_reduc_xor_scal_v8di (const rtx operand0, const rtx operand1)
14809 : {
14810 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14811 : start_sequence ();
14812 : {
14813 : #define FAIL _Pragma ("GCC error \"reduc_xor_scal_v8di cannot FAIL\"") (void)0
14814 : #define DONE return end_sequence ()
14815 : #line 4335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14816 : {
14817 : rtx tmp = gen_reg_rtx (V4DImode);
14818 : rtx tmp2 = gen_reg_rtx (V4DImode);
14819 : rtx tmp3 = gen_reg_rtx (V4DImode);
14820 : emit_insn (gen_vec_extract_hi_v8di (tmp, operands[1]));
14821 : emit_insn (gen_vec_extract_lo_v8di (tmp2, operands[1]));
14822 : emit_insn (gen_xorv4di3 (tmp3, tmp, tmp2));
14823 : emit_insn (gen_reduc_xor_scal_v4di (operands[0], tmp3));
14824 : DONE;
14825 : }
14826 : #undef DONE
14827 : #undef FAIL
14828 : }
14829 : static const uint8_t expand_encoding[] = {
14830 : 0x01, 0x4b, 0x5c, 0x01, 0x00, 0x01, 0x01
14831 : };
14832 : return complete_seq (expand_encoding, operands);
14833 : }
14834 :
14835 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4424 */
14836 : extern rtx_insn *gen_split_1375 (rtx_insn *, rtx *);
14837 : rtx_insn *
14838 : gen_split_1375 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14839 : {
14840 : if (dump_file)
14841 : fprintf (dump_file, "Splitting with gen_split_1375 (sse.md:4424)\n");
14842 : start_sequence ();
14843 : static const uint8_t expand_encoding[] = {
14844 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x03, 0x01,
14845 : 0x03, 0x01, 0x04, 0x01, 0x05, 0x3c
14846 : };
14847 : return complete_seq (expand_encoding, operands);
14848 : }
14849 :
14850 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4466 */
14851 : extern rtx_insn *gen_split_1383 (rtx_insn *, rtx *);
14852 : rtx_insn *
14853 : gen_split_1383 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14854 : {
14855 : if (dump_file)
14856 : fprintf (dump_file, "Splitting with gen_split_1383 (sse.md:4466)\n");
14857 : start_sequence ();
14858 : #define FAIL return (end_sequence (), nullptr)
14859 : #define DONE return end_sequence ()
14860 : #line 4489 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14861 : {
14862 : if (INTVAL (operands[5]) == 5)
14863 : std::swap (operands[1], operands[2]);
14864 : operands[2] = force_reg (V4SFmode, operands[2]);
14865 : }
14866 : #undef DONE
14867 : #undef FAIL
14868 : static const uint8_t expand_encoding[] = {
14869 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x03, 0x01,
14870 : 0x02, 0x01, 0x01, 0x61, 0x6b, 0x01, 0x03, 0x01,
14871 : 0x04, 0x34
14872 : };
14873 : return complete_seq (expand_encoding, operands);
14874 : }
14875 :
14876 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4528 */
14877 : extern rtx_insn *gen_split_1393 (rtx_insn *, rtx *);
14878 : rtx_insn *
14879 : gen_split_1393 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14880 : {
14881 : if (dump_file)
14882 : fprintf (dump_file, "Splitting with gen_split_1393 (sse.md:4528)\n");
14883 : start_sequence ();
14884 : #define FAIL return (end_sequence (), nullptr)
14885 : #define DONE return end_sequence ()
14886 : #line 4554 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14887 : {
14888 : if (INTVAL (operands[5]) == 5)
14889 : std::swap (operands[1], operands[2]);
14890 : operands[0] = gen_lowpart (V32QImode, operands[0]);
14891 : operands[1] = force_reg (V32QImode,
14892 : gen_lowpart (V32QImode, operands[1]));
14893 : operands[2] = gen_lowpart (V32QImode, operands[2]);
14894 :
14895 : operands[3] = force_reg (V32QImode, operands[3]);
14896 : operands[3] = lowpart_subreg (V4DImode, operands[3], V32QImode);
14897 : }
14898 : #undef DONE
14899 : #undef FAIL
14900 : static const uint8_t expand_encoding[] = {
14901 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x03, 0x01,
14902 : 0x01, 0x01, 0x02, 0x32, 0x54, 0x61, 0x57, 0x01,
14903 : 0x03, 0x01, 0x04, 0x00, 0x34
14904 : };
14905 : return complete_seq (expand_encoding, operands);
14906 : }
14907 :
14908 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4685 */
14909 : extern rtx_insn *gen_split_1405 (rtx_insn *, rtx *);
14910 : rtx_insn *
14911 : gen_split_1405 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14912 : {
14913 : if (dump_file)
14914 : fprintf (dump_file, "Splitting with gen_split_1405 (sse.md:4685)\n");
14915 : start_sequence ();
14916 : #define FAIL return (end_sequence (), nullptr)
14917 : #define DONE return end_sequence ()
14918 : #line 4714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14919 : {
14920 : operands[5] = lowpart_subreg (QImode,
14921 : operands[0], DImode);
14922 : if (SUBREG_P (operands[5]))
14923 : {
14924 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
14925 : SUBREG_PROMOTED_SET (operands[5], 1);
14926 : }
14927 : }
14928 : #undef DONE
14929 : #undef FAIL
14930 : static const uint8_t expand_encoding[] = {
14931 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x0f,
14932 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
14933 : 0x1f, 0x01, 0x04, 0x01, 0x05
14934 : };
14935 : return complete_seq (expand_encoding, operands);
14936 : }
14937 :
14938 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4685 */
14939 : extern rtx_insn *gen_split_1415 (rtx_insn *, rtx *);
14940 : rtx_insn *
14941 : gen_split_1415 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14942 : {
14943 : if (dump_file)
14944 : fprintf (dump_file, "Splitting with gen_split_1415 (sse.md:4685)\n");
14945 : start_sequence ();
14946 : #define FAIL return (end_sequence (), nullptr)
14947 : #define DONE return end_sequence ()
14948 : #line 4714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14949 : {
14950 : operands[5] = lowpart_subreg (HImode,
14951 : operands[0], HImode);
14952 : if (SUBREG_P (operands[5]))
14953 : {
14954 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
14955 : SUBREG_PROMOTED_SET (operands[5], 1);
14956 : }
14957 : }
14958 : #undef DONE
14959 : #undef FAIL
14960 : static const uint8_t expand_encoding[] = {
14961 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x10, 0x1a, 0x10,
14962 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
14963 : 0x1f, 0x01, 0x04, 0x01, 0x05
14964 : };
14965 : return complete_seq (expand_encoding, operands);
14966 : }
14967 :
14968 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4685 */
14969 : extern rtx_insn *gen_split_1425 (rtx_insn *, rtx *);
14970 : rtx_insn *
14971 : gen_split_1425 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14972 : {
14973 : if (dump_file)
14974 : fprintf (dump_file, "Splitting with gen_split_1425 (sse.md:4685)\n");
14975 : start_sequence ();
14976 : #define FAIL return (end_sequence (), nullptr)
14977 : #define DONE return end_sequence ()
14978 : #line 4714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14979 : {
14980 : operands[5] = lowpart_subreg (QImode,
14981 : operands[0], SImode);
14982 : if (SUBREG_P (operands[5]))
14983 : {
14984 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
14985 : SUBREG_PROMOTED_SET (operands[5], 1);
14986 : }
14987 : }
14988 : #undef DONE
14989 : #undef FAIL
14990 : static const uint8_t expand_encoding[] = {
14991 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x11, 0x1a, 0x0f,
14992 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
14993 : 0x1f, 0x01, 0x04, 0x01, 0x05
14994 : };
14995 : return complete_seq (expand_encoding, operands);
14996 : }
14997 :
14998 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4685 */
14999 : extern rtx_insn *gen_split_1435 (rtx_insn *, rtx *);
15000 : rtx_insn *
15001 : gen_split_1435 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15002 : {
15003 : if (dump_file)
15004 : fprintf (dump_file, "Splitting with gen_split_1435 (sse.md:4685)\n");
15005 : start_sequence ();
15006 : #define FAIL return (end_sequence (), nullptr)
15007 : #define DONE return end_sequence ()
15008 : #line 4714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15009 : {
15010 : operands[5] = lowpart_subreg (QImode,
15011 : operands[0], DImode);
15012 : if (SUBREG_P (operands[5]))
15013 : {
15014 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15015 : SUBREG_PROMOTED_SET (operands[5], 1);
15016 : }
15017 : }
15018 : #undef DONE
15019 : #undef FAIL
15020 : static const uint8_t expand_encoding[] = {
15021 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x0f,
15022 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
15023 : 0x1f, 0x01, 0x04, 0x01, 0x05
15024 : };
15025 : return complete_seq (expand_encoding, operands);
15026 : }
15027 :
15028 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4724 */
15029 : extern rtx_insn *gen_split_1445 (rtx_insn *, rtx *);
15030 : rtx_insn *
15031 : gen_split_1445 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15032 : {
15033 : if (dump_file)
15034 : fprintf (dump_file, "Splitting with gen_split_1445 (sse.md:4724)\n");
15035 : start_sequence ();
15036 : #define FAIL return (end_sequence (), nullptr)
15037 : #define DONE return end_sequence ()
15038 : #line 4742 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15039 : operands[4] = GEN_INT (INTVAL (operands[3]) ^ 4);
15040 : #undef DONE
15041 : #undef FAIL
15042 : static const uint8_t expand_encoding[] = {
15043 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x03, 0x01,
15044 : 0x01, 0x01, 0x02, 0x01, 0x04, 0x3c
15045 : };
15046 : return complete_seq (expand_encoding, operands);
15047 : }
15048 :
15049 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4877 */
15050 : extern rtx_insn *gen_split_1455 (rtx_insn *, rtx *);
15051 : rtx_insn *
15052 : gen_split_1455 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15053 : {
15054 : if (dump_file)
15055 : fprintf (dump_file, "Splitting with gen_split_1455 (sse.md:4877)\n");
15056 : start_sequence ();
15057 : #define FAIL return (end_sequence (), nullptr)
15058 : #define DONE return end_sequence ()
15059 : #line 4905 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15060 : {
15061 : operands[5] = lowpart_subreg (DImode,
15062 : operands[0], SImode);
15063 : if (SUBREG_P (operands[5]))
15064 : {
15065 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15066 : SUBREG_PROMOTED_SET (operands[5], 1);
15067 : }
15068 : }
15069 : #undef DONE
15070 : #undef FAIL
15071 : static const uint8_t expand_encoding[] = {
15072 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x11, 0x1a, 0x12,
15073 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
15074 : 0x1f, 0x01, 0x04, 0x01, 0x05
15075 : };
15076 : return complete_seq (expand_encoding, operands);
15077 : }
15078 :
15079 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4877 */
15080 : extern rtx_insn *gen_split_1465 (rtx_insn *, rtx *);
15081 : rtx_insn *
15082 : gen_split_1465 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15083 : {
15084 : if (dump_file)
15085 : fprintf (dump_file, "Splitting with gen_split_1465 (sse.md:4877)\n");
15086 : start_sequence ();
15087 : #define FAIL return (end_sequence (), nullptr)
15088 : #define DONE return end_sequence ()
15089 : #line 4905 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15090 : {
15091 : operands[5] = lowpart_subreg (SImode,
15092 : operands[0], DImode);
15093 : if (SUBREG_P (operands[5]))
15094 : {
15095 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15096 : SUBREG_PROMOTED_SET (operands[5], 1);
15097 : }
15098 : }
15099 : #undef DONE
15100 : #undef FAIL
15101 : static const uint8_t expand_encoding[] = {
15102 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x11,
15103 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
15104 : 0x1f, 0x01, 0x04, 0x01, 0x05
15105 : };
15106 : return complete_seq (expand_encoding, operands);
15107 : }
15108 :
15109 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4919 */
15110 : extern rtx_insn *gen_split_1475 (rtx_insn *, rtx *);
15111 : rtx_insn *
15112 : gen_split_1475 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15113 : {
15114 : if (dump_file)
15115 : fprintf (dump_file, "Splitting with gen_split_1475 (sse.md:4919)\n");
15116 : start_sequence ();
15117 : #define FAIL return (end_sequence (), nullptr)
15118 : #define DONE return end_sequence ()
15119 : #line 4936 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15120 : operands[4] = GEN_INT (INTVAL (operands[3]) ^ 4);
15121 : #undef DONE
15122 : #undef FAIL
15123 : static const uint8_t expand_encoding[] = {
15124 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x03, 0x01,
15125 : 0x01, 0x01, 0x02, 0x01, 0x04, 0x81, 0x1e
15126 : };
15127 : return complete_seq (expand_encoding, operands);
15128 : }
15129 :
15130 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4938 */
15131 : extern rtx_insn *gen_split_1485 (rtx_insn *, rtx *);
15132 : rtx_insn *
15133 : gen_split_1485 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15134 : {
15135 : if (dump_file)
15136 : fprintf (dump_file, "Splitting with gen_split_1485 (sse.md:4938)\n");
15137 : start_sequence ();
15138 : #define FAIL return (end_sequence (), nullptr)
15139 : #define DONE return end_sequence ()
15140 : #line 4951 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15141 : {
15142 : int cmp_imm = INTVAL (operands[3]);
15143 : rtx res = CONST0_RTX (DImode);
15144 : /* EQ/LE/NLT/TRUE. */
15145 : if (cmp_imm == 0 || cmp_imm == 2 || cmp_imm == 5 || cmp_imm == 7)
15146 : {
15147 : int nelts = GET_MODE_NUNITS (V64QImode);
15148 : if (nelts >= 8)
15149 : res = CONSTM1_RTX (DImode);
15150 : else
15151 : res = gen_int_mode ((1u << nelts) - 1, QImode);
15152 : }
15153 : operands[4] = res;
15154 : }
15155 : #undef DONE
15156 : #undef FAIL
15157 : static const uint8_t expand_encoding[] = {
15158 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x04
15159 : };
15160 : return complete_seq (expand_encoding, operands);
15161 : }
15162 :
15163 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4938 */
15164 : extern rtx_insn *gen_split_1495 (rtx_insn *, rtx *);
15165 : rtx_insn *
15166 : gen_split_1495 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15167 : {
15168 : if (dump_file)
15169 : fprintf (dump_file, "Splitting with gen_split_1495 (sse.md:4938)\n");
15170 : start_sequence ();
15171 : #define FAIL return (end_sequence (), nullptr)
15172 : #define DONE return end_sequence ()
15173 : #line 4951 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15174 : {
15175 : int cmp_imm = INTVAL (operands[3]);
15176 : rtx res = CONST0_RTX (QImode);
15177 : /* EQ/LE/NLT/TRUE. */
15178 : if (cmp_imm == 0 || cmp_imm == 2 || cmp_imm == 5 || cmp_imm == 7)
15179 : {
15180 : int nelts = GET_MODE_NUNITS (V8HImode);
15181 : if (nelts >= 8)
15182 : res = CONSTM1_RTX (QImode);
15183 : else
15184 : res = gen_int_mode ((1u << nelts) - 1, QImode);
15185 : }
15186 : operands[4] = res;
15187 : }
15188 : #undef DONE
15189 : #undef FAIL
15190 : static const uint8_t expand_encoding[] = {
15191 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x04
15192 : };
15193 : return complete_seq (expand_encoding, operands);
15194 : }
15195 :
15196 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4938 */
15197 : extern rtx_insn *gen_split_1505 (rtx_insn *, rtx *);
15198 : rtx_insn *
15199 : gen_split_1505 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15200 : {
15201 : if (dump_file)
15202 : fprintf (dump_file, "Splitting with gen_split_1505 (sse.md:4938)\n");
15203 : start_sequence ();
15204 : #define FAIL return (end_sequence (), nullptr)
15205 : #define DONE return end_sequence ()
15206 : #line 4951 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15207 : {
15208 : int cmp_imm = INTVAL (operands[3]);
15209 : rtx res = CONST0_RTX (QImode);
15210 : /* EQ/LE/NLT/TRUE. */
15211 : if (cmp_imm == 0 || cmp_imm == 2 || cmp_imm == 5 || cmp_imm == 7)
15212 : {
15213 : int nelts = GET_MODE_NUNITS (V4DImode);
15214 : if (nelts >= 8)
15215 : res = CONSTM1_RTX (QImode);
15216 : else
15217 : res = gen_int_mode ((1u << nelts) - 1, QImode);
15218 : }
15219 : operands[4] = res;
15220 : }
15221 : #undef DONE
15222 : #undef FAIL
15223 : static const uint8_t expand_encoding[] = {
15224 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x04
15225 : };
15226 : return complete_seq (expand_encoding, operands);
15227 : }
15228 :
15229 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4999 */
15230 : extern rtx_insn *gen_split_1515 (rtx_insn *, rtx *);
15231 : rtx_insn *
15232 : gen_split_1515 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15233 : {
15234 : if (dump_file)
15235 : fprintf (dump_file, "Splitting with gen_split_1515 (sse.md:4999)\n");
15236 : start_sequence ();
15237 : #define FAIL return (end_sequence (), nullptr)
15238 : #define DONE return end_sequence ()
15239 : #line 5028 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15240 : {
15241 : operands[5] = lowpart_subreg (SImode,
15242 : operands[0], SImode);
15243 : if (SUBREG_P (operands[5]))
15244 : {
15245 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15246 : SUBREG_PROMOTED_SET (operands[5], 1);
15247 : }
15248 : }
15249 : #undef DONE
15250 : #undef FAIL
15251 : static const uint8_t expand_encoding[] = {
15252 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x11, 0x1a, 0x11,
15253 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
15254 : 0x1e, 0x1f, 0x01, 0x04, 0x01, 0x05
15255 : };
15256 : return complete_seq (expand_encoding, operands);
15257 : }
15258 :
15259 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4999 */
15260 : extern rtx_insn *gen_split_1525 (rtx_insn *, rtx *);
15261 : rtx_insn *
15262 : gen_split_1525 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15263 : {
15264 : if (dump_file)
15265 : fprintf (dump_file, "Splitting with gen_split_1525 (sse.md:4999)\n");
15266 : start_sequence ();
15267 : #define FAIL return (end_sequence (), nullptr)
15268 : #define DONE return end_sequence ()
15269 : #line 5028 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15270 : {
15271 : operands[5] = lowpart_subreg (QImode,
15272 : operands[0], DImode);
15273 : if (SUBREG_P (operands[5]))
15274 : {
15275 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15276 : SUBREG_PROMOTED_SET (operands[5], 1);
15277 : }
15278 : }
15279 : #undef DONE
15280 : #undef FAIL
15281 : static const uint8_t expand_encoding[] = {
15282 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x0f,
15283 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
15284 : 0x1e, 0x1f, 0x01, 0x04, 0x01, 0x05
15285 : };
15286 : return complete_seq (expand_encoding, operands);
15287 : }
15288 :
15289 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5091 */
15290 : extern rtx_insn *gen_split_1535 (rtx_insn *, rtx *);
15291 : rtx_insn *
15292 : gen_split_1535 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15293 : {
15294 : if (dump_file)
15295 : fprintf (dump_file, "Splitting with gen_split_1535 (sse.md:5091)\n");
15296 : start_sequence ();
15297 : #define FAIL return (end_sequence (), nullptr)
15298 : #define DONE return end_sequence ()
15299 : #line 5120 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15300 : {
15301 : operands[5] = lowpart_subreg (QImode,
15302 : operands[0], SImode);
15303 : if (SUBREG_P (operands[5]))
15304 : {
15305 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15306 : SUBREG_PROMOTED_SET (operands[5], 1);
15307 : }
15308 : }
15309 : #undef DONE
15310 : #undef FAIL
15311 : static const uint8_t expand_encoding[] = {
15312 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x11, 0x1a, 0x0f,
15313 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
15314 : 0x1e, 0x1f, 0x01, 0x04, 0x01, 0x05
15315 : };
15316 : return complete_seq (expand_encoding, operands);
15317 : }
15318 :
15319 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5134 */
15320 : extern rtx_insn *gen_split_1545 (rtx_insn *, rtx *);
15321 : rtx_insn *
15322 : gen_split_1545 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15323 : {
15324 : if (dump_file)
15325 : fprintf (dump_file, "Splitting with gen_split_1545 (sse.md:5134)\n");
15326 : start_sequence ();
15327 : #define FAIL return (end_sequence (), nullptr)
15328 : #define DONE return end_sequence ()
15329 : #line 5152 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15330 : operands[4] = GEN_INT (INTVAL (operands[3]) ^ 4);
15331 : #undef DONE
15332 : #undef FAIL
15333 : static const uint8_t expand_encoding[] = {
15334 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01,
15335 : 0x01, 0x01, 0x02, 0x01, 0x04, 0x81, 0x1e
15336 : };
15337 : return complete_seq (expand_encoding, operands);
15338 : }
15339 :
15340 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5161 */
15341 : extern rtx_insn *gen_split_1555 (rtx_insn *, rtx *);
15342 : rtx_insn *
15343 : gen_split_1555 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
15344 : {
15345 : if (dump_file)
15346 : fprintf (dump_file, "Splitting with gen_split_1555 (sse.md:5161)\n");
15347 : start_sequence ();
15348 : #define FAIL return (end_sequence (), nullptr)
15349 : #define DONE return end_sequence ()
15350 : #line 5176 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15351 : {
15352 : /* LE: 2, NLT: 5, NLE: 6, LT: 1 */
15353 : int cmp_predicate = 2; /* LE */
15354 : if (MEM_P (operands[1]))
15355 : {
15356 : std::swap (operands[1], operands[2]);
15357 : cmp_predicate = 5; /* NLT (GE) */
15358 : }
15359 : if ((INTVAL (operands[4]) & 4) != 0)
15360 : cmp_predicate ^= 4; /* Invert the comparison to NLE (GT) or LT. */
15361 : emit_insn (gen_avx512vl_ucmpv32qi3 (operands[0], operands[1],operands[2],
15362 : GEN_INT (cmp_predicate)));
15363 : DONE;
15364 : }
15365 : #undef DONE
15366 : #undef FAIL
15367 : static const uint8_t expand_encoding[] = {
15368 : 0x01, 0x27, 0x00
15369 : };
15370 : return complete_seq (expand_encoding, operands);
15371 : }
15372 :
15373 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5275 */
15374 : rtx
15375 : gen_vec_cmpv8diqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15376 : {
15377 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15378 : start_sequence ();
15379 : {
15380 : #define FAIL return (end_sequence (), nullptr)
15381 : #define DONE return end_sequence ()
15382 : #line 5281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15383 : {
15384 : bool ok = ix86_expand_mask_vec_cmp (operands[0], GET_CODE (operands[1]),
15385 : operands[2], operands[3]);
15386 : gcc_assert (ok);
15387 : DONE;
15388 : }
15389 : #undef DONE
15390 : #undef FAIL
15391 : }
15392 : static const uint8_t expand_encoding[] = {
15393 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x0f, 0x01, 0x01,
15394 : 0x02, 0x01, 0x03
15395 : };
15396 : return complete_seq (expand_encoding, operands);
15397 : }
15398 :
15399 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5275 */
15400 : rtx
15401 : gen_vec_cmpv4dfqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15402 : {
15403 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15404 : start_sequence ();
15405 : {
15406 : #define FAIL return (end_sequence (), nullptr)
15407 : #define DONE return end_sequence ()
15408 : #line 5281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15409 : {
15410 : bool ok = ix86_expand_mask_vec_cmp (operands[0], GET_CODE (operands[1]),
15411 : operands[2], operands[3]);
15412 : gcc_assert (ok);
15413 : DONE;
15414 : }
15415 : #undef DONE
15416 : #undef FAIL
15417 : }
15418 : static const uint8_t expand_encoding[] = {
15419 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x0f, 0x01, 0x01,
15420 : 0x02, 0x01, 0x03
15421 : };
15422 : return complete_seq (expand_encoding, operands);
15423 : }
15424 :
15425 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5301 */
15426 : rtx
15427 : gen_vec_cmpv8bfqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15428 : {
15429 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15430 : start_sequence ();
15431 : {
15432 : #define FAIL return (end_sequence (), nullptr)
15433 : #define DONE return end_sequence ()
15434 : #line 5307 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15435 : {
15436 : bool ok = ix86_expand_mask_vec_cmp (operands[0], GET_CODE (operands[1]),
15437 : operands[2], operands[3]);
15438 : gcc_assert (ok);
15439 : DONE;
15440 : }
15441 : #undef DONE
15442 : #undef FAIL
15443 : }
15444 : static const uint8_t expand_encoding[] = {
15445 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x0f, 0x01, 0x01,
15446 : 0x02, 0x01, 0x03
15447 : };
15448 : return complete_seq (expand_encoding, operands);
15449 : }
15450 :
15451 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5350 */
15452 : rtx
15453 : gen_vec_cmpv4dfv4di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15454 : {
15455 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15456 : start_sequence ();
15457 : {
15458 : #define FAIL return (end_sequence (), nullptr)
15459 : #define DONE return end_sequence ()
15460 : #line 5356 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15461 : {
15462 : bool ok = ix86_expand_fp_vec_cmp (operands);
15463 : gcc_assert (ok);
15464 : DONE;
15465 : }
15466 : #undef DONE
15467 : #undef FAIL
15468 : }
15469 : static const uint8_t expand_encoding[] = {
15470 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x57, 0x01, 0x01,
15471 : 0x02, 0x01, 0x03
15472 : };
15473 : return complete_seq (expand_encoding, operands);
15474 : }
15475 :
15476 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5387 */
15477 : rtx
15478 : gen_vec_cmpuv16qihi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15479 : {
15480 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15481 : start_sequence ();
15482 : {
15483 : #define FAIL return (end_sequence (), nullptr)
15484 : #define DONE return end_sequence ()
15485 : #line 5393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15486 : {
15487 : bool ok = ix86_expand_mask_vec_cmp (operands[0], GET_CODE (operands[1]),
15488 : operands[2], operands[3]);
15489 : gcc_assert (ok);
15490 : DONE;
15491 : }
15492 : #undef DONE
15493 : #undef FAIL
15494 : }
15495 : static const uint8_t expand_encoding[] = {
15496 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x10, 0x01, 0x01,
15497 : 0x02, 0x01, 0x03
15498 : };
15499 : return complete_seq (expand_encoding, operands);
15500 : }
15501 :
15502 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5412 */
15503 : rtx
15504 : gen_vec_cmpuv8hiv8hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15505 : {
15506 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15507 : start_sequence ();
15508 : {
15509 : #define FAIL return (end_sequence (), nullptr)
15510 : #define DONE return end_sequence ()
15511 : #line 5418 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15512 : {
15513 : bool ok = ix86_expand_int_vec_cmp (operands);
15514 : gcc_assert (ok);
15515 : DONE;
15516 : }
15517 : #undef DONE
15518 : #undef FAIL
15519 : }
15520 : static const uint8_t expand_encoding[] = {
15521 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x50, 0x01, 0x01,
15522 : 0x02, 0x01, 0x03
15523 : };
15524 : return complete_seq (expand_encoding, operands);
15525 : }
15526 :
15527 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5498 */
15528 : rtx
15529 : gen_vcond_mask_v2diqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15530 : {
15531 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15532 : static const uint8_t expand_encoding[] = {
15533 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x01, 0x01,
15534 : 0x01, 0x02, 0x01, 0x03
15535 : };
15536 : return expand_rtx (expand_encoding, operands);
15537 : }
15538 :
15539 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5506 */
15540 : rtx
15541 : gen_vcond_mask_v16qihi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15542 : {
15543 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15544 : static const uint8_t expand_encoding[] = {
15545 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x01, 0x01,
15546 : 0x01, 0x02, 0x01, 0x03
15547 : };
15548 : return expand_rtx (expand_encoding, operands);
15549 : }
15550 :
15551 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5506 */
15552 : rtx
15553 : gen_vcond_mask_v32bfsi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15554 : {
15555 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15556 : static const uint8_t expand_encoding[] = {
15557 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x01, 0x01,
15558 : 0x01, 0x02, 0x01, 0x03
15559 : };
15560 : return expand_rtx (expand_encoding, operands);
15561 : }
15562 :
15563 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5533 */
15564 : rtx
15565 : gen_vcond_mask_v2div2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15566 : {
15567 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15568 : start_sequence ();
15569 : {
15570 : #define FAIL _Pragma ("GCC error \"vcond_mask_v2div2di cannot FAIL\"") (void)0
15571 : #define DONE return end_sequence ()
15572 : #line 5540 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15573 : {
15574 : ix86_expand_sse_movcc (operands[0], operands[3],
15575 : operands[1], operands[2]);
15576 : DONE;
15577 : }
15578 : #undef DONE
15579 : #undef FAIL
15580 : }
15581 : static const uint8_t expand_encoding[] = {
15582 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x01,
15583 : 0x01, 0x01, 0x02, 0x01, 0x03
15584 : };
15585 : return complete_seq (expand_encoding, operands);
15586 : }
15587 :
15588 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5724 */
15589 : rtx
15590 : gen_andv16bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15591 : {
15592 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15593 : start_sequence ();
15594 : {
15595 : #define FAIL return (end_sequence (), nullptr)
15596 : #define DONE return end_sequence ()
15597 : #line 5731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15598 : ix86_fixup_binary_operands_no_copy (AND, V16BFmode, operands);
15599 : #undef DONE
15600 : #undef FAIL
15601 : }
15602 : static const uint8_t expand_encoding[] = {
15603 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x6d, 0x01, 0x01,
15604 : 0x01, 0x02
15605 : };
15606 : return complete_seq (expand_encoding, operands);
15607 : }
15608 :
15609 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5724 */
15610 : rtx
15611 : gen_andv16hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15612 : {
15613 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15614 : start_sequence ();
15615 : {
15616 : #define FAIL return (end_sequence (), nullptr)
15617 : #define DONE return end_sequence ()
15618 : #line 5731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15619 : ix86_fixup_binary_operands_no_copy (AND, V16HFmode, operands);
15620 : #undef DONE
15621 : #undef FAIL
15622 : }
15623 : static const uint8_t expand_encoding[] = {
15624 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x6e, 0x01, 0x01,
15625 : 0x01, 0x02
15626 : };
15627 : return complete_seq (expand_encoding, operands);
15628 : }
15629 :
15630 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5724 */
15631 : rtx
15632 : gen_xorv8sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15633 : {
15634 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15635 : start_sequence ();
15636 : {
15637 : #define FAIL return (end_sequence (), nullptr)
15638 : #define DONE return end_sequence ()
15639 : #line 5731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15640 : ix86_fixup_binary_operands_no_copy (XOR, V8SFmode, operands);
15641 : #undef DONE
15642 : #undef FAIL
15643 : }
15644 : static const uint8_t expand_encoding[] = {
15645 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x6f, 0x01, 0x01,
15646 : 0x01, 0x02
15647 : };
15648 : return complete_seq (expand_encoding, operands);
15649 : }
15650 :
15651 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5724 */
15652 : rtx
15653 : gen_iorv4df3 (const rtx operand0, const rtx operand1, const rtx operand2)
15654 : {
15655 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15656 : start_sequence ();
15657 : {
15658 : #define FAIL return (end_sequence (), nullptr)
15659 : #define DONE return end_sequence ()
15660 : #line 5731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15661 : ix86_fixup_binary_operands_no_copy (IOR, V4DFmode, operands);
15662 : #undef DONE
15663 : #undef FAIL
15664 : }
15665 : static const uint8_t expand_encoding[] = {
15666 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x70, 0x01, 0x01,
15667 : 0x01, 0x02
15668 : };
15669 : return complete_seq (expand_encoding, operands);
15670 : }
15671 :
15672 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5733 */
15673 : rtx
15674 : gen_andv32bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15675 : {
15676 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15677 : start_sequence ();
15678 : {
15679 : #define FAIL return (end_sequence (), nullptr)
15680 : #define DONE return end_sequence ()
15681 : #line 5739 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15682 : ix86_fixup_binary_operands_no_copy (AND, V32BFmode, operands);
15683 : #undef DONE
15684 : #undef FAIL
15685 : }
15686 : static const uint8_t expand_encoding[] = {
15687 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x72, 0x01, 0x01,
15688 : 0x01, 0x02
15689 : };
15690 : return complete_seq (expand_encoding, operands);
15691 : }
15692 :
15693 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5733 */
15694 : rtx
15695 : gen_iorv16sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
15696 : {
15697 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
15698 : start_sequence ();
15699 : {
15700 : #define FAIL return (end_sequence (), nullptr)
15701 : #define DONE return end_sequence ()
15702 : #line 5739 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15703 : ix86_fixup_binary_operands_no_copy (IOR, V16SFmode, operands);
15704 : #undef DONE
15705 : #undef FAIL
15706 : }
15707 : static const uint8_t expand_encoding[] = {
15708 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x4a,
15709 : 0x74, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
15710 : 0x04
15711 : };
15712 : return complete_seq (expand_encoding, operands);
15713 : }
15714 :
15715 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5852 */
15716 : extern rtx_insn *gen_split_1564 (rtx_insn *, rtx *);
15717 : rtx_insn *
15718 : gen_split_1564 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15719 : {
15720 : if (dump_file)
15721 : fprintf (dump_file, "Splitting with gen_split_1564 (sse.md:5852)\n");
15722 : start_sequence ();
15723 : #define FAIL return (end_sequence (), nullptr)
15724 : #define DONE return end_sequence ()
15725 : #line 5860 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15726 : operands[1] = force_reg (V8BFmode, operands[1]);
15727 : #undef DONE
15728 : #undef FAIL
15729 : static const uint8_t expand_encoding[] = {
15730 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
15731 : };
15732 : return complete_seq (expand_encoding, operands);
15733 : }
15734 :
15735 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5862 */
15736 : rtx
15737 : gen_copysignv32bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15738 : {
15739 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15740 : start_sequence ();
15741 : {
15742 : #define FAIL _Pragma ("GCC error \"copysignv32bf3 cannot FAIL\"") (void)0
15743 : #define DONE return end_sequence ()
15744 : #line 5873 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15745 : {
15746 : operands[3] = ix86_build_signbit_mask (V32BFmode, 1, 0);
15747 :
15748 : operands[4] = gen_reg_rtx (V32BFmode);
15749 : operands[5] = gen_reg_rtx (V32BFmode);
15750 : }
15751 : #undef DONE
15752 : #undef FAIL
15753 : }
15754 : static const uint8_t expand_encoding[] = {
15755 : 0x03, 0x1f, 0x01, 0x04, 0x49, 0x72, 0x4c, 0x72,
15756 : 0x01, 0x03, 0x01, 0x01, 0x1f, 0x01, 0x05, 0x49,
15757 : 0x72, 0x01, 0x03, 0x01, 0x02, 0x1f, 0x01, 0x00,
15758 : 0x4a, 0x72, 0x01, 0x04, 0x01, 0x05
15759 : };
15760 : return complete_seq (expand_encoding, operands);
15761 : }
15762 :
15763 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5862 */
15764 : rtx
15765 : gen_copysignv4df3 (const rtx operand0, const rtx operand1, const rtx operand2)
15766 : {
15767 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15768 : start_sequence ();
15769 : {
15770 : #define FAIL _Pragma ("GCC error \"copysignv4df3 cannot FAIL\"") (void)0
15771 : #define DONE return end_sequence ()
15772 : #line 5873 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15773 : {
15774 : operands[3] = ix86_build_signbit_mask (V4DFmode, 1, 0);
15775 :
15776 : operands[4] = gen_reg_rtx (V4DFmode);
15777 : operands[5] = gen_reg_rtx (V4DFmode);
15778 : }
15779 : #undef DONE
15780 : #undef FAIL
15781 : }
15782 : static const uint8_t expand_encoding[] = {
15783 : 0x03, 0x1f, 0x01, 0x04, 0x49, 0x70, 0x4c, 0x70,
15784 : 0x01, 0x03, 0x01, 0x01, 0x1f, 0x01, 0x05, 0x49,
15785 : 0x70, 0x01, 0x03, 0x01, 0x02, 0x1f, 0x01, 0x00,
15786 : 0x4a, 0x70, 0x01, 0x04, 0x01, 0x05
15787 : };
15788 : return complete_seq (expand_encoding, operands);
15789 : }
15790 :
15791 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5880 */
15792 : rtx
15793 : gen_xorsignv4sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15794 : {
15795 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15796 : start_sequence ();
15797 : {
15798 : #define FAIL _Pragma ("GCC error \"xorsignv4sf3 cannot FAIL\"") (void)0
15799 : #define DONE return end_sequence ()
15800 : #line 5888 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15801 : {
15802 : operands[3] = ix86_build_signbit_mask (V4SFmode, 1, 0);
15803 :
15804 : operands[4] = gen_reg_rtx (V4SFmode);
15805 : }
15806 : #undef DONE
15807 : #undef FAIL
15808 : }
15809 : static const uint8_t expand_encoding[] = {
15810 : 0x02, 0x1f, 0x01, 0x04, 0x49, 0x6b, 0x01, 0x03,
15811 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x4b, 0x6b, 0x01,
15812 : 0x04, 0x01, 0x01
15813 : };
15814 : return complete_seq (expand_encoding, operands);
15815 : }
15816 :
15817 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6204 */
15818 : rtx
15819 : gen_fmasf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15820 : {
15821 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15822 : static const uint8_t expand_encoding[] = {
15823 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x2d, 0x01, 0x01,
15824 : 0x01, 0x02, 0x01, 0x03
15825 : };
15826 : return expand_rtx (expand_encoding, operands);
15827 : }
15828 :
15829 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6204 */
15830 : rtx
15831 : gen_fmav16hf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15832 : {
15833 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15834 : static const uint8_t expand_encoding[] = {
15835 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6e, 0x01, 0x01,
15836 : 0x01, 0x02, 0x01, 0x03
15837 : };
15838 : return expand_rtx (expand_encoding, operands);
15839 : }
15840 :
15841 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6211 */
15842 : rtx
15843 : gen_fmsv4df4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15844 : {
15845 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15846 : static const uint8_t expand_encoding[] = {
15847 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x70, 0x01, 0x01,
15848 : 0x01, 0x02, 0x3d, 0x70, 0x01, 0x03
15849 : };
15850 : return expand_rtx (expand_encoding, operands);
15851 : }
15852 :
15853 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6218 */
15854 : rtx
15855 : gen_fnmasf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15856 : {
15857 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15858 : static const uint8_t expand_encoding[] = {
15859 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x2d, 0x3d, 0x2d,
15860 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
15861 : };
15862 : return expand_rtx (expand_encoding, operands);
15863 : }
15864 :
15865 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6218 */
15866 : rtx
15867 : gen_fnmav16hf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15868 : {
15869 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15870 : static const uint8_t expand_encoding[] = {
15871 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6e, 0x3d, 0x6e,
15872 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
15873 : };
15874 : return expand_rtx (expand_encoding, operands);
15875 : }
15876 :
15877 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6225 */
15878 : rtx
15879 : gen_fnmsv4df4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15880 : {
15881 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15882 : static const uint8_t expand_encoding[] = {
15883 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x70, 0x3d, 0x70,
15884 : 0x01, 0x01, 0x01, 0x02, 0x3d, 0x70, 0x01, 0x03
15885 : };
15886 : return expand_rtx (expand_encoding, operands);
15887 : }
15888 :
15889 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6245 */
15890 : rtx
15891 : gen_fma4i_fmadd_sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15892 : {
15893 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15894 : static const uint8_t expand_encoding[] = {
15895 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x2d, 0x01, 0x01,
15896 : 0x01, 0x02, 0x01, 0x03
15897 : };
15898 : return expand_rtx (expand_encoding, operands);
15899 : }
15900 :
15901 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6252 */
15902 : rtx
15903 : gen_fma4i_fmsub_df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15904 : {
15905 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15906 : static const uint8_t expand_encoding[] = {
15907 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x2e, 0x01, 0x01,
15908 : 0x01, 0x02, 0x3d, 0x2e, 0x01, 0x03
15909 : };
15910 : return expand_rtx (expand_encoding, operands);
15911 : }
15912 :
15913 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6260 */
15914 : rtx
15915 : gen_fma4i_fnmadd_v2df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15916 : {
15917 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15918 : static const uint8_t expand_encoding[] = {
15919 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6c, 0x3d, 0x6c,
15920 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
15921 : };
15922 : return expand_rtx (expand_encoding, operands);
15923 : }
15924 :
15925 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6268 */
15926 : rtx
15927 : gen_fma4i_fnmsub_v4df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15928 : {
15929 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15930 : static const uint8_t expand_encoding[] = {
15931 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x70, 0x3d, 0x70,
15932 : 0x01, 0x01, 0x01, 0x02, 0x3d, 0x70, 0x01, 0x03
15933 : };
15934 : return expand_rtx (expand_encoding, operands);
15935 : }
15936 :
15937 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6277 */
15938 : rtx
15939 : gen_avx512f_fmadd_v16sf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
15940 : {
15941 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
15942 : start_sequence ();
15943 : {
15944 : #define FAIL return (end_sequence (), nullptr)
15945 : #define DONE return end_sequence ()
15946 : #line 6284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15947 : {
15948 : emit_insn (gen_fma_fmadd_v16sf_maskz_1_round (
15949 : operands[0], operands[1], operands[2], operands[3],
15950 : CONST0_RTX (V16SFmode), operands[4], operands[5]));
15951 : DONE;
15952 : }
15953 : #undef DONE
15954 : #undef FAIL
15955 : }
15956 : static const uint8_t expand_encoding[] = {
15957 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
15958 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
15959 : 0x81, 0x33
15960 : };
15961 : return complete_seq (expand_encoding, operands);
15962 : }
15963 :
15964 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6332 */
15965 : rtx
15966 : gen_cond_fmav32hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
15967 : {
15968 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
15969 : start_sequence ();
15970 : {
15971 : #define FAIL _Pragma ("GCC error \"cond_fmav32hf cannot FAIL\"") (void)0
15972 : #define DONE return end_sequence ()
15973 : #line 6342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15974 : {
15975 : rtx tmp = gen_reg_rtx (V32HFmode);
15976 : emit_insn (gen_fmav32hf4 (tmp,
15977 : operands[2],
15978 : operands[3],
15979 : operands[4]));
15980 : emit_move_insn (operands[0], gen_rtx_VEC_MERGE (V32HFmode,
15981 : tmp,
15982 : operands[5],
15983 : operands[1]));
15984 : DONE;
15985 : }
15986 : #undef DONE
15987 : #undef FAIL
15988 : }
15989 : static const uint8_t expand_encoding[] = {
15990 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x81,
15991 : 0x19, 0x73, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04,
15992 : 0x01, 0x05, 0x01, 0x01
15993 : };
15994 : return complete_seq (expand_encoding, operands);
15995 : }
15996 :
15997 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6405 */
15998 : rtx
15999 : gen_avx512bw_fmsub_v32hf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16000 : {
16001 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16002 : start_sequence ();
16003 : {
16004 : #define FAIL return (end_sequence (), nullptr)
16005 : #define DONE return end_sequence ()
16006 : #line 6412 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16007 : {
16008 : emit_insn (gen_fma_fmsub_v32hf_maskz_1_round (
16009 : operands[0], operands[1], operands[2], operands[3],
16010 : CONST0_RTX (V32HFmode), operands[4], operands[5]));
16011 : DONE;
16012 : }
16013 : #undef DONE
16014 : #undef FAIL
16015 : }
16016 : static const uint8_t expand_encoding[] = {
16017 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16018 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16019 : 0x81, 0x33
16020 : };
16021 : return complete_seq (expand_encoding, operands);
16022 : }
16023 :
16024 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6405 */
16025 : rtx
16026 : gen_avx512f_fmsub_v8df_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16027 : {
16028 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16029 : start_sequence ();
16030 : {
16031 : #define FAIL return (end_sequence (), nullptr)
16032 : #define DONE return end_sequence ()
16033 : #line 6412 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16034 : {
16035 : emit_insn (gen_fma_fmsub_v8df_maskz_1 (
16036 : operands[0], operands[1], operands[2], operands[3],
16037 : CONST0_RTX (V8DFmode), operands[4]));
16038 : DONE;
16039 : }
16040 : #undef DONE
16041 : #undef FAIL
16042 : }
16043 : static const uint8_t expand_encoding[] = {
16044 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16045 : 0x03, 0x01, 0x04
16046 : };
16047 : return complete_seq (expand_encoding, operands);
16048 : }
16049 :
16050 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6435 */
16051 : rtx
16052 : gen_cond_fmsv16sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16053 : {
16054 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16055 : start_sequence ();
16056 : {
16057 : #define FAIL _Pragma ("GCC error \"cond_fmsv16sf cannot FAIL\"") (void)0
16058 : #define DONE return end_sequence ()
16059 : #line 6446 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16060 : {
16061 : rtx tmp = gen_reg_rtx (V16SFmode);
16062 : emit_insn (gen_fmsv16sf4 (tmp,
16063 : operands[2],
16064 : operands[3],
16065 : operands[4]));
16066 : emit_move_insn (operands[0], gen_rtx_VEC_MERGE (V16SFmode,
16067 : tmp,
16068 : operands[5],
16069 : operands[1]));
16070 : DONE;
16071 : }
16072 : #undef DONE
16073 : #undef FAIL
16074 : }
16075 : static const uint8_t expand_encoding[] = {
16076 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x81,
16077 : 0x19, 0x74, 0x01, 0x02, 0x01, 0x03, 0x3d, 0x74,
16078 : 0x01, 0x04, 0x01, 0x05, 0x01, 0x01
16079 : };
16080 : return complete_seq (expand_encoding, operands);
16081 : }
16082 :
16083 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6511 */
16084 : rtx
16085 : gen_avx512fp16_fnmadd_v8hf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16086 : {
16087 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16088 : start_sequence ();
16089 : {
16090 : #define FAIL return (end_sequence (), nullptr)
16091 : #define DONE return end_sequence ()
16092 : #line 6518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16093 : {
16094 : emit_insn (gen_fma_fnmadd_v8hf_maskz_1 (
16095 : operands[0], operands[1], operands[2], operands[3],
16096 : CONST0_RTX (V8HFmode), operands[4]));
16097 : DONE;
16098 : }
16099 : #undef DONE
16100 : #undef FAIL
16101 : }
16102 : static const uint8_t expand_encoding[] = {
16103 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16104 : 0x03, 0x01, 0x04
16105 : };
16106 : return complete_seq (expand_encoding, operands);
16107 : }
16108 :
16109 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6511 */
16110 : rtx
16111 : gen_avx512vl_fnmadd_v4df_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16112 : {
16113 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16114 : start_sequence ();
16115 : {
16116 : #define FAIL return (end_sequence (), nullptr)
16117 : #define DONE return end_sequence ()
16118 : #line 6518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16119 : {
16120 : emit_insn (gen_fma_fnmadd_v4df_maskz_1 (
16121 : operands[0], operands[1], operands[2], operands[3],
16122 : CONST0_RTX (V4DFmode), operands[4]));
16123 : DONE;
16124 : }
16125 : #undef DONE
16126 : #undef FAIL
16127 : }
16128 : static const uint8_t expand_encoding[] = {
16129 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16130 : 0x03, 0x01, 0x04
16131 : };
16132 : return complete_seq (expand_encoding, operands);
16133 : }
16134 :
16135 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6541 */
16136 : rtx
16137 : gen_cond_fnmav4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16138 : {
16139 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16140 : start_sequence ();
16141 : {
16142 : #define FAIL _Pragma ("GCC error \"cond_fnmav4sf cannot FAIL\"") (void)0
16143 : #define DONE return end_sequence ()
16144 : #line 6552 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16145 : {
16146 : rtx tmp = gen_reg_rtx (V4SFmode);
16147 : emit_insn (gen_fnmav4sf4 (tmp,
16148 : operands[2],
16149 : operands[3],
16150 : operands[4]));
16151 : emit_move_insn (operands[0], gen_rtx_VEC_MERGE (V4SFmode,
16152 : tmp,
16153 : operands[5],
16154 : operands[1]));
16155 : DONE;
16156 : }
16157 : #undef DONE
16158 : #undef FAIL
16159 : }
16160 : static const uint8_t expand_encoding[] = {
16161 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81,
16162 : 0x19, 0x6b, 0x3d, 0x6b, 0x01, 0x02, 0x01, 0x03,
16163 : 0x01, 0x04, 0x01, 0x05, 0x01, 0x01
16164 : };
16165 : return complete_seq (expand_encoding, operands);
16166 : }
16167 :
16168 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6618 */
16169 : rtx
16170 : gen_avx512f_fnmsub_v16sf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16171 : {
16172 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16173 : start_sequence ();
16174 : {
16175 : #define FAIL return (end_sequence (), nullptr)
16176 : #define DONE return end_sequence ()
16177 : #line 6625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16178 : {
16179 : emit_insn (gen_fma_fnmsub_v16sf_maskz_1 (
16180 : operands[0], operands[1], operands[2], operands[3],
16181 : CONST0_RTX (V16SFmode), operands[4]));
16182 : DONE;
16183 : }
16184 : #undef DONE
16185 : #undef FAIL
16186 : }
16187 : static const uint8_t expand_encoding[] = {
16188 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16189 : 0x03, 0x01, 0x04
16190 : };
16191 : return complete_seq (expand_encoding, operands);
16192 : }
16193 :
16194 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6618 */
16195 : rtx
16196 : gen_avx512vl_fnmsub_v4df_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16197 : {
16198 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16199 : start_sequence ();
16200 : {
16201 : #define FAIL return (end_sequence (), nullptr)
16202 : #define DONE return end_sequence ()
16203 : #line 6625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16204 : {
16205 : emit_insn (gen_fma_fnmsub_v4df_maskz_1_round (
16206 : operands[0], operands[1], operands[2], operands[3],
16207 : CONST0_RTX (V4DFmode), operands[4], operands[5]));
16208 : DONE;
16209 : }
16210 : #undef DONE
16211 : #undef FAIL
16212 : }
16213 : static const uint8_t expand_encoding[] = {
16214 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16215 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16216 : 0x81, 0x33
16217 : };
16218 : return complete_seq (expand_encoding, operands);
16219 : }
16220 :
16221 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6649 */
16222 : rtx
16223 : gen_cond_fnmsv2df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16224 : {
16225 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16226 : start_sequence ();
16227 : {
16228 : #define FAIL _Pragma ("GCC error \"cond_fnmsv2df cannot FAIL\"") (void)0
16229 : #define DONE return end_sequence ()
16230 : #line 6661 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16231 : {
16232 : rtx tmp = gen_reg_rtx (V2DFmode);
16233 : emit_insn (gen_fnmsv2df4 (tmp,
16234 : operands[2],
16235 : operands[3],
16236 : operands[4]));
16237 : emit_move_insn (operands[0], gen_rtx_VEC_MERGE (V2DFmode,
16238 : tmp,
16239 : operands[5],
16240 : operands[1]));
16241 : DONE;
16242 : }
16243 : #undef DONE
16244 : #undef FAIL
16245 : }
16246 : static const uint8_t expand_encoding[] = {
16247 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81,
16248 : 0x19, 0x6c, 0x3d, 0x6c, 0x01, 0x02, 0x01, 0x03,
16249 : 0x3d, 0x6c, 0x01, 0x04, 0x01, 0x05, 0x01, 0x01
16250 : };
16251 : return complete_seq (expand_encoding, operands);
16252 : }
16253 :
16254 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6730 */
16255 : rtx
16256 : gen_vec_fmsubaddv8sf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16257 : {
16258 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16259 : static const uint8_t expand_encoding[] = {
16260 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x03, 0x01, 0x01,
16261 : 0x01, 0x02, 0x3d, 0x6f, 0x01, 0x03, 0x81, 0x06
16262 : };
16263 : return expand_rtx (expand_encoding, operands);
16264 : }
16265 :
16266 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6740 */
16267 : rtx
16268 : gen_fmaddsub_v2df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16269 : {
16270 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16271 : static const uint8_t expand_encoding[] = {
16272 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x03, 0x01, 0x01,
16273 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x06
16274 : };
16275 : return expand_rtx (expand_encoding, operands);
16276 : }
16277 :
16278 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6749 */
16279 : rtx
16280 : gen_avx512vl_fmaddsub_v8sf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16281 : {
16282 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16283 : start_sequence ();
16284 : {
16285 : #define FAIL return (end_sequence (), nullptr)
16286 : #define DONE return end_sequence ()
16287 : #line 6756 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16288 : {
16289 : emit_insn (gen_fma_fmaddsub_v8sf_maskz_1_round (
16290 : operands[0], operands[1], operands[2], operands[3],
16291 : CONST0_RTX (V8SFmode), operands[4], operands[5]));
16292 : DONE;
16293 : }
16294 : #undef DONE
16295 : #undef FAIL
16296 : }
16297 : static const uint8_t expand_encoding[] = {
16298 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16299 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16300 : 0x81, 0x33
16301 : };
16302 : return complete_seq (expand_encoding, operands);
16303 : }
16304 :
16305 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6763 */
16306 : rtx
16307 : gen_avx512bw_fmsubadd_v32hf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16308 : {
16309 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16310 : start_sequence ();
16311 : {
16312 : #define FAIL return (end_sequence (), nullptr)
16313 : #define DONE return end_sequence ()
16314 : #line 6770 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16315 : {
16316 : emit_insn (gen_fma_fmsubadd_v32hf_maskz_1_round (
16317 : operands[0], operands[1], operands[2], operands[3],
16318 : CONST0_RTX (V32HFmode), operands[4], operands[5]));
16319 : DONE;
16320 : }
16321 : #undef DONE
16322 : #undef FAIL
16323 : }
16324 : static const uint8_t expand_encoding[] = {
16325 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16326 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16327 : 0x81, 0x33
16328 : };
16329 : return complete_seq (expand_encoding, operands);
16330 : }
16331 :
16332 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6763 */
16333 : rtx
16334 : gen_avx512vl_fmsubadd_v4sf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16335 : {
16336 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16337 : start_sequence ();
16338 : {
16339 : #define FAIL return (end_sequence (), nullptr)
16340 : #define DONE return end_sequence ()
16341 : #line 6770 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16342 : {
16343 : emit_insn (gen_fma_fmsubadd_v4sf_maskz_1_round (
16344 : operands[0], operands[1], operands[2], operands[3],
16345 : CONST0_RTX (V4SFmode), operands[4], operands[5]));
16346 : DONE;
16347 : }
16348 : #undef DONE
16349 : #undef FAIL
16350 : }
16351 : static const uint8_t expand_encoding[] = {
16352 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16353 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16354 : 0x81, 0x33
16355 : };
16356 : return complete_seq (expand_encoding, operands);
16357 : }
16358 :
16359 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6920 */
16360 : rtx
16361 : gen_fmai_vmfmadd_v4sf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16362 : {
16363 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16364 : static const uint8_t expand_encoding[] = {
16365 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
16366 : 0x6b, 0x81, 0x19, 0x6b, 0x01, 0x01, 0x01, 0x02,
16367 : 0x01, 0x03, 0x01, 0x01, 0x27, 0x01, 0x01, 0x04,
16368 : 0x81, 0x33
16369 : };
16370 : return expand_rtx (expand_encoding, operands);
16371 : }
16372 :
16373 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6943 */
16374 : rtx
16375 : gen_fmai_vmfnmadd_v8hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16376 : {
16377 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16378 : static const uint8_t expand_encoding[] = {
16379 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x19,
16380 : 0x6a, 0x3d, 0x6a, 0x01, 0x01, 0x01, 0x02, 0x01,
16381 : 0x03, 0x01, 0x01, 0x27, 0x01
16382 : };
16383 : return expand_rtx (expand_encoding, operands);
16384 : }
16385 :
16386 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6955 */
16387 : rtx
16388 : gen_fmai_vmfnmsub_v4sf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16389 : {
16390 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16391 : static const uint8_t expand_encoding[] = {
16392 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
16393 : 0x6b, 0x81, 0x19, 0x6b, 0x3d, 0x6b, 0x01, 0x01,
16394 : 0x01, 0x02, 0x3d, 0x6b, 0x01, 0x03, 0x01, 0x01,
16395 : 0x27, 0x01, 0x01, 0x04, 0x81, 0x33
16396 : };
16397 : return expand_rtx (expand_encoding, operands);
16398 : }
16399 :
16400 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7213 */
16401 : rtx
16402 : gen_avx512f_vmfnmadd_v4sf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16403 : {
16404 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16405 : start_sequence ();
16406 : {
16407 : #define FAIL return (end_sequence (), nullptr)
16408 : #define DONE return end_sequence ()
16409 : #line 7220 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16410 : {
16411 : emit_insn (gen_avx512f_vmfnmadd_v4sf_maskz_1 (
16412 : operands[0], operands[1], operands[2], operands[3],
16413 : CONST0_RTX (V4SFmode), operands[4]));
16414 : DONE;
16415 : }
16416 : #undef DONE
16417 : #undef FAIL
16418 : }
16419 : static const uint8_t expand_encoding[] = {
16420 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16421 : 0x03, 0x01, 0x04
16422 : };
16423 : return complete_seq (expand_encoding, operands);
16424 : }
16425 :
16426 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7435 */
16427 : rtx
16428 : gen_avx512vl_fmaddc_v16hf_mask1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16429 : {
16430 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16431 : start_sequence ();
16432 : {
16433 : #define FAIL return (end_sequence (), nullptr)
16434 : #define DONE return end_sequence ()
16435 : #line 7442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16436 : {
16437 : rtx op0, op1, dest;
16438 : if (0)
16439 : emit_insn (gen_avx512vl_fmaddc_v16hf_mask (
16440 : operands[0], operands[1], operands[2], operands[3],
16441 : operands[4]));
16442 : else
16443 : emit_insn (gen_avx512vl_fmaddc_v16hf_mask (operands[0],
16444 : operands[1], operands[2], operands[3], operands[4]));
16445 :
16446 : op0 = lowpart_subreg (V8SFmode,
16447 : force_reg (V16HFmode, operands[0]),
16448 : V16HFmode);
16449 : dest = gen_reg_rtx (V8SFmode);
16450 : if (!MEM_P (operands[1]))
16451 : operands[1] = force_reg (V16HFmode, operands[1]);
16452 : op1 = lowpart_subreg (V8SFmode, operands[1], V16HFmode);
16453 : emit_insn (gen_avx512vl_loadv8sf_mask (dest, op0, op1, operands[4]));
16454 : emit_move_insn (operands[0],
16455 : lowpart_subreg (V16HFmode, dest, V8SFmode));
16456 : DONE;
16457 : }
16458 : #undef DONE
16459 : #undef FAIL
16460 : }
16461 : static const uint8_t expand_encoding[] = {
16462 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16463 : 0x03, 0x01, 0x04
16464 : };
16465 : return complete_seq (expand_encoding, operands);
16466 : }
16467 :
16468 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7479 */
16469 : rtx
16470 : gen_avx512bw_fcmaddc_v32hf_mask1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16471 : {
16472 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16473 : start_sequence ();
16474 : {
16475 : #define FAIL return (end_sequence (), nullptr)
16476 : #define DONE return end_sequence ()
16477 : #line 7486 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16478 : {
16479 : rtx op0, op1, dest;
16480 : if (0)
16481 : emit_insn (gen_avx512bw_fcmaddc_v32hf_mask (
16482 : operands[0], operands[1], operands[2], operands[3],
16483 : operands[4]));
16484 : else
16485 : {
16486 : emit_insn (gen_avx512bw_fcmaddc_v32hf_mask (operands[0],
16487 : operands[1], operands[2], operands[3], operands[4]));
16488 : }
16489 :
16490 : op0 = lowpart_subreg (V16SFmode,
16491 : force_reg (V32HFmode, operands[0]),
16492 : V32HFmode);
16493 : dest = gen_reg_rtx (V16SFmode);
16494 : if (!MEM_P (operands[1]))
16495 : operands[1] = force_reg (V32HFmode, operands[1]);
16496 : op1 = lowpart_subreg (V16SFmode, operands[1], V32HFmode);
16497 : emit_insn (gen_avx512f_loadv16sf_mask (dest, op0, op1, operands[4]));
16498 : emit_move_insn (operands[0],
16499 : lowpart_subreg (V32HFmode, dest, V16SFmode));
16500 : DONE;
16501 : }
16502 : #undef DONE
16503 : #undef FAIL
16504 : }
16505 : static const uint8_t expand_encoding[] = {
16506 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16507 : 0x03, 0x01, 0x04
16508 : };
16509 : return complete_seq (expand_encoding, operands);
16510 : }
16511 :
16512 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7525 */
16513 : rtx
16514 : gen_cmlav32hf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16515 : {
16516 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16517 : static const uint8_t expand_encoding[] = {
16518 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x03, 0x01, 0x01,
16519 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x5a
16520 : };
16521 : return expand_rtx (expand_encoding, operands);
16522 : }
16523 :
16524 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7547 */
16525 : extern rtx_insn *gen_split_1576 (rtx_insn *, rtx *);
16526 : rtx_insn *
16527 : gen_split_1576 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
16528 : {
16529 : if (dump_file)
16530 : fprintf (dump_file, "Splitting with gen_split_1576 (sse.md:7547)\n");
16531 : start_sequence ();
16532 : static const uint8_t expand_encoding[] = {
16533 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x03, 0x01,
16534 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x5a
16535 : };
16536 : return complete_seq (expand_encoding, operands);
16537 : }
16538 :
16539 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7612 */
16540 : extern rtx_insn *gen_split_1586 (rtx_insn *, rtx *);
16541 : rtx_insn *
16542 : gen_split_1586 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
16543 : {
16544 : if (dump_file)
16545 : fprintf (dump_file, "Splitting with gen_split_1586 (sse.md:7612)\n");
16546 : start_sequence ();
16547 : #define FAIL return (end_sequence (), nullptr)
16548 : #define DONE return end_sequence ()
16549 : #line 7624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16550 : {
16551 : if (!MEM_P (operands[1]))
16552 : operands[1] = force_reg (V32HFmode, operands[1]);
16553 : if (!MEM_P (operands[3]))
16554 : operands[3] = force_reg (V32HFmode, operands[3]);
16555 : operands[1] = lowpart_subreg (V16SFmode, operands[1], V32HFmode);
16556 : operands[3] = lowpart_subreg (V16SFmode, operands[3], V32HFmode);
16557 : rtx dest = gen_reg_rtx (V16SFmode);
16558 : emit_insn (gen_fma_fmaddc_v16sf_pair (dest, operands[1],
16559 : operands[2], operands[3]));
16560 : emit_move_insn (operands[0],
16561 : lowpart_subreg (V32HFmode, dest, V16SFmode));
16562 : DONE;
16563 : }
16564 : #undef DONE
16565 : #undef FAIL
16566 : static const uint8_t expand_encoding[] = {
16567 : 0x01, 0x27, 0x00
16568 : };
16569 : return complete_seq (expand_encoding, operands);
16570 : }
16571 :
16572 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7754 */
16573 : rtx
16574 : gen_avx512fp16_fcmaddcsh_v8hf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16575 : {
16576 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16577 : start_sequence ();
16578 : {
16579 : #define FAIL return (end_sequence (), nullptr)
16580 : #define DONE return end_sequence ()
16581 : #line 7761 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16582 : {
16583 : emit_insn (gen_avx512fp16_fma_fcmaddcsh_v8hf_maskz (
16584 : operands[0], operands[1], operands[2], operands[3],
16585 : CONST0_RTX (V8HFmode), operands[4]));
16586 : DONE;
16587 : }
16588 : #undef DONE
16589 : #undef FAIL
16590 : }
16591 : static const uint8_t expand_encoding[] = {
16592 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16593 : 0x03, 0x01, 0x04
16594 : };
16595 : return complete_seq (expand_encoding, operands);
16596 : }
16597 :
16598 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7937 */
16599 : rtx
16600 : gen_vec_unpacks_lo_v32hf (const rtx operand0, const rtx operand1)
16601 : {
16602 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16603 : start_sequence ();
16604 : {
16605 : #define FAIL return (end_sequence (), nullptr)
16606 : #define DONE return end_sequence ()
16607 : #line 7941 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16608 : {
16609 : rtx tem = operands[1];
16610 : rtx (*gen) (rtx, rtx);
16611 : if (V32HFmode != V8HFmode)
16612 : {
16613 : tem = gen_reg_rtx (V16HFmode);
16614 : emit_insn (gen_vec_extract_lo_v32hf (tem,
16615 : operands[1]));
16616 : gen = gen_extendv16hfv16sf2;
16617 : }
16618 : else
16619 : gen = gen_avx512fp16_float_extend_phv4sf2;
16620 :
16621 : emit_insn (gen (operands[0], tem));
16622 : DONE;
16623 : }
16624 : #undef DONE
16625 : #undef FAIL
16626 : }
16627 : static const uint8_t expand_encoding[] = {
16628 : 0x02, 0x01, 0x00, 0x01, 0x01
16629 : };
16630 : return complete_seq (expand_encoding, operands);
16631 : }
16632 :
16633 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7989 */
16634 : rtx
16635 : gen_lrintv16hfv16hi2 (const rtx operand0, const rtx operand1)
16636 : {
16637 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16638 : static const uint8_t expand_encoding[] = {
16639 : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x01, 0x01, 0x01,
16640 : 0x2f
16641 : };
16642 : return expand_rtx (expand_encoding, operands);
16643 : }
16644 :
16645 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8017 */
16646 : rtx
16647 : gen_floatunsv16hiv16hf2 (const rtx operand0, const rtx operand1)
16648 : {
16649 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16650 : static const uint8_t expand_encoding[] = {
16651 : 0x1f, 0x01, 0x00, 0x75, 0x6e, 0x01, 0x01
16652 : };
16653 : return expand_rtx (expand_encoding, operands);
16654 : }
16655 :
16656 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8017 */
16657 : rtx
16658 : gen_floatv8div8hf2 (const rtx operand0, const rtx operand1)
16659 : {
16660 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16661 : static const uint8_t expand_encoding[] = {
16662 : 0x1f, 0x01, 0x00, 0x73, 0x6a, 0x01, 0x01
16663 : };
16664 : return expand_rtx (expand_encoding, operands);
16665 : }
16666 :
16667 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8065 */
16668 : rtx
16669 : gen_avx512fp16_vcvtdq2ph_v4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16670 : {
16671 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16672 : start_sequence ();
16673 : {
16674 : #define FAIL return (end_sequence (), nullptr)
16675 : #define DONE return end_sequence ()
16676 : #line 8076 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16677 : operands[4] = CONST0_RTX (V4HFmode);
16678 : #undef DONE
16679 : #undef FAIL
16680 : }
16681 : static const uint8_t expand_encoding[] = {
16682 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6a, 0x81,
16683 : 0x09, 0x66, 0x73, 0x66, 0x01, 0x01, 0x81, 0x0a,
16684 : 0x66, 0x01, 0x02, 0x17, 0x00, 0x04, 0x27, 0x00,
16685 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x01, 0x03,
16686 : 0x01, 0x04
16687 : };
16688 : return complete_seq (expand_encoding, operands);
16689 : }
16690 :
16691 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8225 */
16692 : rtx
16693 : gen_fix_truncv8hfv8hi2 (const rtx operand0, const rtx operand1)
16694 : {
16695 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16696 : static const uint8_t expand_encoding[] = {
16697 : 0x1f, 0x01, 0x00, 0x74, 0x50, 0x01, 0x01
16698 : };
16699 : return expand_rtx (expand_encoding, operands);
16700 : }
16701 :
16702 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8225 */
16703 : rtx
16704 : gen_fix_truncv32hfv32hi2 (const rtx operand0, const rtx operand1)
16705 : {
16706 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16707 : static const uint8_t expand_encoding[] = {
16708 : 0x1f, 0x01, 0x00, 0x74, 0x5a, 0x01, 0x01
16709 : };
16710 : return expand_rtx (expand_encoding, operands);
16711 : }
16712 :
16713 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8252 */
16714 : rtx
16715 : gen_fix_truncv4hfv4di2 (const rtx operand0, const rtx operand1)
16716 : {
16717 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16718 : start_sequence ();
16719 : {
16720 : #define FAIL return (end_sequence (), nullptr)
16721 : #define DONE return end_sequence ()
16722 : #line 8257 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16723 : {
16724 : if (!MEM_P (operands[1]))
16725 : {
16726 : operands[1] = lowpart_subreg (V8HFmode,
16727 : force_reg (V4HFmode, operands[1]),
16728 : V4HFmode);
16729 : emit_insn (gen_avx512fp16_fix_truncv4di2 (operands[0],
16730 : operands[1]));
16731 : DONE;
16732 : }
16733 : }
16734 : #undef DONE
16735 : #undef FAIL
16736 : }
16737 : static const uint8_t expand_encoding[] = {
16738 : 0x01, 0x1f, 0x01, 0x00, 0x74, 0x57, 0x01, 0x01
16739 : };
16740 : return complete_seq (expand_encoding, operands);
16741 : }
16742 :
16743 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8499 */
16744 : rtx
16745 : gen_truncv4dfv4hf2 (const rtx operand0, const rtx operand1)
16746 : {
16747 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16748 : start_sequence ();
16749 : {
16750 : #define FAIL return (end_sequence (), nullptr)
16751 : #define DONE return end_sequence ()
16752 : #line 8503 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16753 : {
16754 : rtx dest = gen_reg_rtx (V8HFmode);
16755 :
16756 : emit_insn (gen_avx512fp16_truncv4dfv4hf2 (dest, operands[1]));
16757 : emit_move_insn (operands[0], lowpart_subreg (V4HFmode, dest, V8HFmode));
16758 : DONE;
16759 : }
16760 : #undef DONE
16761 : #undef FAIL
16762 : }
16763 : static const uint8_t expand_encoding[] = {
16764 : 0x01, 0x1f, 0x01, 0x00, 0x72, 0x66, 0x01, 0x01
16765 : };
16766 : return complete_seq (expand_encoding, operands);
16767 : }
16768 :
16769 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8845 */
16770 : extern rtx_insn *gen_split_1595 (rtx_insn *, rtx *);
16771 : rtx_insn *
16772 : gen_split_1595 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
16773 : {
16774 : if (dump_file)
16775 : fprintf (dump_file, "Splitting with gen_split_1595 (sse.md:8845)\n");
16776 : start_sequence ();
16777 : #define FAIL return (end_sequence (), nullptr)
16778 : #define DONE return end_sequence ()
16779 : #line 8857 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16780 : {
16781 : rtx op1 = lowpart_subreg (V2SFmode, operands[1],
16782 : GET_MODE (operands[1]));
16783 : rtx tmp = lowpart_subreg (V4SFmode, operands[0],
16784 : GET_MODE (operands[0]));
16785 :
16786 : op1 = gen_rtx_VEC_CONCAT (V4SFmode, op1, CONST0_RTX (V2SFmode));
16787 : emit_insn (gen_rtx_SET (tmp, op1));
16788 :
16789 : rtx dest = lowpart_subreg (V4SImode, operands[0],
16790 : GET_MODE (operands[0]));
16791 : emit_insn (gen_fix_truncv4sfv4si2 (dest, tmp));
16792 : DONE;
16793 : }
16794 : #undef DONE
16795 : #undef FAIL
16796 : static const uint8_t expand_encoding[] = {
16797 : 0x01, 0x27, 0x00
16798 : };
16799 : return complete_seq (expand_encoding, operands);
16800 : }
16801 :
16802 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9606 */
16803 : rtx
16804 : gen_vec_packu_float_v8di (const rtx operand0, const rtx operand1, const rtx operand2)
16805 : {
16806 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
16807 : start_sequence ();
16808 : {
16809 : #define FAIL return (end_sequence (), nullptr)
16810 : #define DONE return end_sequence ()
16811 : #line 9612 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16812 : {
16813 : rtx r1 = gen_reg_rtx (V8SFmode);
16814 : rtx r2 = gen_reg_rtx (V8SFmode);
16815 : rtx (*gen) (rtx, rtx);
16816 :
16817 : if (V8DImode == V2DImode)
16818 : gen = gen_avx512dq_floatunsv2div2sf2;
16819 : else
16820 : gen = gen_floatunsv8div8sf2;
16821 : emit_insn (gen (r1, operands[1]));
16822 : emit_insn (gen (r2, operands[2]));
16823 : if (V8DImode == V2DImode)
16824 : emit_insn (gen_sse_movlhps (operands[0], r1, r2));
16825 : else
16826 : emit_insn (gen_avx_vec_concatv16sf (operands[0],
16827 : r1, r2));
16828 : DONE;
16829 : }
16830 : #undef DONE
16831 : #undef FAIL
16832 : }
16833 : static const uint8_t expand_encoding[] = {
16834 : 0x03, 0x01, 0x00, 0x75, 0x74, 0x01, 0x01, 0x01,
16835 : 0x02
16836 : };
16837 : return complete_seq (expand_encoding, operands);
16838 : }
16839 :
16840 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9631 */
16841 : rtx
16842 : gen_vec_packu_float_v4si (const rtx operand0, const rtx operand1, const rtx operand2)
16843 : {
16844 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
16845 : start_sequence ();
16846 : {
16847 : #define FAIL return (end_sequence (), nullptr)
16848 : #define DONE return end_sequence ()
16849 : #line 9637 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16850 : {
16851 : rtx r1 = gen_reg_rtx (V8HFmode);
16852 : rtx r2 = gen_reg_rtx (V8HFmode);
16853 : rtx (*gen) (rtx, rtx);
16854 :
16855 : if (V4SImode == V4SImode)
16856 : gen = gen_avx512fp16_floatunsv4siv4hf2;
16857 : else
16858 : gen = gen_floatunsv4siv4hf2;
16859 : emit_insn (gen (r1, operands[1]));
16860 : emit_insn (gen (r2, operands[2]));
16861 : if (V4SImode == V4SImode)
16862 : emit_insn (gen_sse_movlhps_v8hf (operands[0], r1, r2));
16863 : else
16864 : emit_insn (gen_avx_vec_concatv16hf (operands[0],
16865 : r1, r2));
16866 : DONE;
16867 : }
16868 : #undef DONE
16869 : #undef FAIL
16870 : }
16871 : static const uint8_t expand_encoding[] = {
16872 : 0x03, 0x01, 0x00, 0x75, 0x6a, 0x01, 0x01, 0x01,
16873 : 0x02
16874 : };
16875 : return complete_seq (expand_encoding, operands);
16876 : }
16877 :
16878 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10183 */
16879 : rtx
16880 : gen_vec_unpack_ufix_trunc_hi_v16sf (const rtx operand0, const rtx operand1)
16881 : {
16882 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16883 : start_sequence ();
16884 : {
16885 : #define FAIL return (end_sequence (), nullptr)
16886 : #define DONE return end_sequence ()
16887 : #line 10188 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16888 : {
16889 : rtx tem;
16890 : rtx (*gen) (rtx, rtx);
16891 :
16892 : if (V16SFmode != V4SFmode)
16893 : {
16894 : tem = gen_reg_rtx (V8SFmode);
16895 : emit_insn (gen_vec_extract_hi_v16sf (tem,
16896 : operands[1]));
16897 : gen = gen_fixuns_truncv8sfv8di2;
16898 : }
16899 : else
16900 : {
16901 : tem = gen_reg_rtx (V4SFmode);
16902 : emit_insn (gen_avx_vpermilv4sf (tem, operands[1], GEN_INT (0x4e)));
16903 : gen = gen_avx512dq_fixuns_truncv2sfv2di2;
16904 : }
16905 :
16906 : emit_insn (gen (operands[0], tem));
16907 : DONE;
16908 : }
16909 : #undef DONE
16910 : #undef FAIL
16911 : }
16912 : static const uint8_t expand_encoding[] = {
16913 : 0x02, 0x01, 0x00, 0x76, 0x5c, 0x01, 0x01
16914 : };
16915 : return complete_seq (expand_encoding, operands);
16916 : }
16917 :
16918 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10210 */
16919 : rtx
16920 : gen_vec_unpack_ufix_trunc_lo_v8hf (const rtx operand0, const rtx operand1)
16921 : {
16922 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16923 : start_sequence ();
16924 : {
16925 : #define FAIL return (end_sequence (), nullptr)
16926 : #define DONE return end_sequence ()
16927 : #line 10215 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16928 : {
16929 : rtx tem = operands[1];
16930 : rtx (*gen) (rtx, rtx);
16931 : if (V8HFmode != V8HFmode)
16932 : {
16933 : tem = gen_reg_rtx (V4HFmode);
16934 : emit_insn (gen_vec_extract_lo_v16hf (tem,
16935 : operands[1]));
16936 : gen = gen_fixuns_truncv4hfv4si2;
16937 : }
16938 : else
16939 : gen = gen_avx512fp16_fixuns_truncv4si2;
16940 :
16941 : emit_insn (gen (operands[0], tem));
16942 : DONE;
16943 : }
16944 : #undef DONE
16945 : #undef FAIL
16946 : }
16947 : static const uint8_t expand_encoding[] = {
16948 : 0x02, 0x01, 0x00, 0x76, 0x51, 0x01, 0x01
16949 : };
16950 : return complete_seq (expand_encoding, operands);
16951 : }
16952 :
16953 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10570 */
16954 : rtx
16955 : gen_truncv8dfv8sf2 (const rtx operand0, const rtx operand1)
16956 : {
16957 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16958 : static const uint8_t expand_encoding[] = {
16959 : 0x1f, 0x01, 0x00, 0x72, 0x6f, 0x01, 0x01
16960 : };
16961 : return expand_rtx (expand_encoding, operands);
16962 : }
16963 :
16964 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10576 */
16965 : rtx
16966 : gen_extendv8sfv8df2 (const rtx operand0, const rtx operand1)
16967 : {
16968 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16969 : static const uint8_t expand_encoding[] = {
16970 : 0x1f, 0x01, 0x00, 0x71, 0x75, 0x01, 0x01
16971 : };
16972 : return expand_rtx (expand_encoding, operands);
16973 : }
16974 :
16975 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10640 */
16976 : rtx
16977 : gen_avx512bw_cvtmask2wv32hi (const rtx operand0, const rtx operand1)
16978 : {
16979 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1 };
16980 : start_sequence ();
16981 : {
16982 : #define FAIL return (end_sequence (), nullptr)
16983 : #define DONE return end_sequence ()
16984 : #line 10647 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16985 : {
16986 : operands[2] = CONSTM1_RTX (V32HImode);
16987 : operands[3] = CONST0_RTX (V32HImode);
16988 : }
16989 : #undef DONE
16990 : #undef FAIL
16991 : }
16992 : static const uint8_t expand_encoding[] = {
16993 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x01,
16994 : 0x02, 0x01, 0x03, 0x01, 0x01
16995 : };
16996 : return complete_seq (expand_encoding, operands);
16997 : }
16998 :
16999 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10675 */
17000 : extern rtx_insn *gen_split_1597 (rtx_insn *, rtx *);
17001 : rtx_insn *
17002 : gen_split_1597 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17003 : {
17004 : if (dump_file)
17005 : fprintf (dump_file, "Splitting with gen_split_1597 (sse.md:10675)\n");
17006 : start_sequence ();
17007 : #define FAIL return (end_sequence (), nullptr)
17008 : #define DONE return end_sequence ()
17009 : #line 10695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17010 : operands[4] = CONST0_RTX (V8SImode);
17011 : #undef DONE
17012 : #undef FAIL
17013 : static const uint8_t expand_encoding[] = {
17014 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x04, 0x17, 0x00,
17015 : 0x02, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x01,
17016 : 0x02, 0x01, 0x03, 0x01, 0x01, 0x1a, 0x00, 0x01,
17017 : 0x01, 0x00, 0x27
17018 : };
17019 : return complete_seq (expand_encoding, operands);
17020 : }
17021 :
17022 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10701 */
17023 : extern rtx_insn *gen_split_1607 (rtx_insn *, rtx *);
17024 : rtx_insn *
17025 : gen_split_1607 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17026 : {
17027 : if (dump_file)
17028 : fprintf (dump_file, "Splitting with gen_split_1607 (sse.md:10701)\n");
17029 : start_sequence ();
17030 : #define FAIL return (end_sequence (), nullptr)
17031 : #define DONE return end_sequence ()
17032 : #line 10717 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17033 : operands[4] = gen_reg_rtx (QImode);
17034 : #undef DONE
17035 : #undef FAIL
17036 : static const uint8_t expand_encoding[] = {
17037 : 0x02, 0x1f, 0x01, 0x04, 0x4c, 0x0f, 0x01, 0x01,
17038 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x01, 0x03,
17039 : 0x01, 0x02, 0x01, 0x04
17040 : };
17041 : return complete_seq (expand_encoding, operands);
17042 : }
17043 :
17044 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10809 */
17045 : rtx
17046 : gen_vec_unpacks_hi_v16sf (const rtx operand0, const rtx operand1)
17047 : {
17048 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
17049 : start_sequence ();
17050 : {
17051 : #define FAIL return (end_sequence (), nullptr)
17052 : #define DONE return end_sequence ()
17053 : #line 10821 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17054 : operands[2] = gen_reg_rtx (V8SFmode);
17055 : #undef DONE
17056 : #undef FAIL
17057 : }
17058 : static const uint8_t expand_encoding[] = {
17059 : 0x02, 0x1f, 0x01, 0x02, 0x81, 0x0a, 0x6f, 0x01,
17060 : 0x01, 0x17, 0x00, 0x08, 0x27, 0x08, 0x27, 0x09,
17061 : 0x27, 0x0a, 0x27, 0x0b, 0x27, 0x0c, 0x27, 0x0d,
17062 : 0x27, 0x0e, 0x27, 0x0f, 0x1f, 0x01, 0x00, 0x71,
17063 : 0x75, 0x01, 0x02
17064 : };
17065 : return complete_seq (expand_encoding, operands);
17066 : }
17067 :
17068 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10878 */
17069 : rtx
17070 : gen_vec_unpacku_float_hi_v8hi (const rtx operand0, const rtx operand1)
17071 : {
17072 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
17073 : start_sequence ();
17074 : {
17075 : #define FAIL return (end_sequence (), nullptr)
17076 : #define DONE return end_sequence ()
17077 : #line 10882 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17078 : {
17079 : rtx tmp = gen_reg_rtx (V4SImode);
17080 :
17081 : emit_insn (gen_vec_unpacku_hi_v8hi (tmp, operands[1]));
17082 : emit_insn (gen_rtx_SET (operands[0],
17083 : gen_rtx_FLOAT (V4SFmode, tmp)));
17084 : DONE;
17085 : }
17086 : #undef DONE
17087 : #undef FAIL
17088 : }
17089 : static const uint8_t expand_encoding[] = {
17090 : 0x02, 0x01, 0x00, 0x01, 0x01
17091 : };
17092 : return complete_seq (expand_encoding, operands);
17093 : }
17094 :
17095 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11008 */
17096 : rtx
17097 : gen_vec_unpacku_float_lo_v4si (const rtx operand0, const rtx operand1)
17098 : {
17099 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1 };
17100 : start_sequence ();
17101 : {
17102 : #define FAIL return (end_sequence (), nullptr)
17103 : #define DONE return end_sequence ()
17104 : #line 11021 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17105 : {
17106 : REAL_VALUE_TYPE TWO32r;
17107 : rtx x;
17108 : int i;
17109 :
17110 : real_ldexp (&TWO32r, &dconst1, 32);
17111 : x = const_double_from_real_value (TWO32r, DFmode);
17112 :
17113 : operands[3] = force_reg (V2DFmode, CONST0_RTX (V2DFmode));
17114 : operands[4] = force_reg (V2DFmode,
17115 : ix86_build_const_vector (V2DFmode, 1, x));
17116 :
17117 : for (i = 5; i < 8; i++)
17118 : operands[i] = gen_reg_rtx (V2DFmode);
17119 : }
17120 : #undef DONE
17121 : #undef FAIL
17122 : }
17123 : static const uint8_t expand_encoding[] = {
17124 : 0x04, 0x1f, 0x01, 0x05, 0x73, 0x6c, 0x81, 0x0a,
17125 : 0x4a, 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x00,
17126 : 0x27, 0x01, 0x1f, 0x01, 0x06, 0x61, 0x6c, 0x01,
17127 : 0x05, 0x01, 0x03, 0x1f, 0x01, 0x07, 0x49, 0x6c,
17128 : 0x01, 0x06, 0x01, 0x04, 0x1f, 0x01, 0x00, 0x3b,
17129 : 0x6c, 0x01, 0x05, 0x01, 0x07
17130 : };
17131 : return complete_seq (expand_encoding, operands);
17132 : }
17133 :
17134 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11205 */
17135 : rtx
17136 : gen_vec_pack_sfix_trunc_v8df (const rtx operand0, const rtx operand1, const rtx operand2)
17137 : {
17138 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17139 : start_sequence ();
17140 : {
17141 : #define FAIL return (end_sequence (), nullptr)
17142 : #define DONE return end_sequence ()
17143 : #line 11210 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17144 : {
17145 : rtx r1, r2;
17146 :
17147 : r1 = gen_reg_rtx (V8SImode);
17148 : r2 = gen_reg_rtx (V8SImode);
17149 :
17150 : emit_insn (gen_fix_truncv8dfv8si2 (r1, operands[1]));
17151 : emit_insn (gen_fix_truncv8dfv8si2 (r2, operands[2]));
17152 : emit_insn (gen_avx_vec_concatv16si (operands[0], r1, r2));
17153 : DONE;
17154 : }
17155 : #undef DONE
17156 : #undef FAIL
17157 : }
17158 : static const uint8_t expand_encoding[] = {
17159 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17160 : };
17161 : return complete_seq (expand_encoding, operands);
17162 : }
17163 :
17164 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11392 */
17165 : rtx
17166 : gen_sse_movhlps_exp (const rtx operand0, const rtx operand1, const rtx operand2)
17167 : {
17168 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17169 : start_sequence ();
17170 : {
17171 : #define FAIL return (end_sequence (), nullptr)
17172 : #define DONE return end_sequence ()
17173 : #line 11403 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17174 : {
17175 : rtx dst = ix86_fixup_binary_operands (UNKNOWN, V4SFmode, operands);
17176 :
17177 : emit_insn (gen_sse_movhlps (dst, operands[1], operands[2]));
17178 :
17179 : /* Fix up the destination if needed. */
17180 : if (dst != operands[0])
17181 : emit_move_insn (operands[0], dst);
17182 :
17183 : DONE;
17184 : }
17185 : #undef DONE
17186 : #undef FAIL
17187 : }
17188 : static const uint8_t expand_encoding[] = {
17189 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6b, 0x81,
17190 : 0x0b, 0x6f, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00,
17191 : 0x04, 0x27, 0x06, 0x27, 0x07, 0x27, 0x02, 0x27,
17192 : 0x03
17193 : };
17194 : return complete_seq (expand_encoding, operands);
17195 : }
17196 :
17197 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11863 */
17198 : rtx
17199 : gen_sse_shufps (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
17200 : {
17201 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
17202 : start_sequence ();
17203 : {
17204 : #define FAIL return (end_sequence (), nullptr)
17205 : #define DONE return end_sequence ()
17206 : #line 11869 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17207 : {
17208 : int mask = INTVAL (operands[3]);
17209 : emit_insn (gen_sse_shufps_v4sf (operands[0],
17210 : operands[1],
17211 : operands[2],
17212 : GEN_INT ((mask >> 0) & 3),
17213 : GEN_INT ((mask >> 2) & 3),
17214 : GEN_INT (((mask >> 4) & 3) + 4),
17215 : GEN_INT (((mask >> 6) & 3) + 4)
17216 : ));
17217 : DONE;
17218 : }
17219 : #undef DONE
17220 : #undef FAIL
17221 : }
17222 : static const uint8_t expand_encoding[] = {
17223 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
17224 : 0x03
17225 : };
17226 : return complete_seq (expand_encoding, operands);
17227 : }
17228 :
17229 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12445 */
17230 : extern rtx_insn *gen_split_1621 (rtx_insn *, rtx *);
17231 : rtx_insn *
17232 : gen_split_1621 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
17233 : {
17234 : if (dump_file)
17235 : fprintf (dump_file, "Splitting with gen_split_1621 (sse.md:12445)\n");
17236 : start_sequence ();
17237 : #define FAIL return (end_sequence (), nullptr)
17238 : #define DONE return end_sequence ()
17239 : #line 12457 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17240 : {
17241 : rtx dest = gen_reg_rtx (V16HImode);
17242 : emit_insn (gen_vec_setv16hi_0 (dest,
17243 : CONST0_RTX (V16HImode),
17244 : operands[1]));
17245 : emit_move_insn (operands[0],
17246 : lowpart_subreg (V4DImode, dest, V16HImode));
17247 : DONE;
17248 : }
17249 : #undef DONE
17250 : #undef FAIL
17251 : static const uint8_t expand_encoding[] = {
17252 : 0x01, 0x27, 0x00
17253 : };
17254 : return complete_seq (expand_encoding, operands);
17255 : }
17256 :
17257 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12666 */
17258 : rtx
17259 : gen_vec_setv8hi (const rtx operand0, const rtx operand1, const rtx operand2)
17260 : {
17261 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17262 : start_sequence ();
17263 : {
17264 : #define FAIL _Pragma ("GCC error \"vec_setv8hi cannot FAIL\"") (void)0
17265 : #define DONE return end_sequence ()
17266 : #line 12671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17267 : {
17268 : if (CONST_INT_P (operands[2]))
17269 : ix86_expand_vector_set (false, operands[0], operands[1],
17270 : INTVAL (operands[2]));
17271 : else
17272 : ix86_expand_vector_set_var (operands[0], operands[1], operands[2]);
17273 : DONE;
17274 : }
17275 : #undef DONE
17276 : #undef FAIL
17277 : }
17278 : static const uint8_t expand_encoding[] = {
17279 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17280 : };
17281 : return complete_seq (expand_encoding, operands);
17282 : }
17283 :
17284 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12680 */
17285 : rtx
17286 : gen_vec_setv16bf (const rtx operand0, const rtx operand1, const rtx operand2)
17287 : {
17288 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17289 : start_sequence ();
17290 : {
17291 : #define FAIL _Pragma ("GCC error \"vec_setv16bf cannot FAIL\"") (void)0
17292 : #define DONE return end_sequence ()
17293 : #line 12685 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17294 : {
17295 : if (CONST_INT_P (operands[2]))
17296 : ix86_expand_vector_set (false, operands[0], operands[1],
17297 : INTVAL (operands[2]));
17298 : else
17299 : ix86_expand_vector_set_var (operands[0], operands[1], operands[2]);
17300 : DONE;
17301 : }
17302 : #undef DONE
17303 : #undef FAIL
17304 : }
17305 : static const uint8_t expand_encoding[] = {
17306 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17307 : };
17308 : return complete_seq (expand_encoding, operands);
17309 : }
17310 :
17311 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12680 */
17312 : rtx
17313 : gen_vec_setv8di (const rtx operand0, const rtx operand1, const rtx operand2)
17314 : {
17315 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17316 : start_sequence ();
17317 : {
17318 : #define FAIL _Pragma ("GCC error \"vec_setv8di cannot FAIL\"") (void)0
17319 : #define DONE return end_sequence ()
17320 : #line 12685 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17321 : {
17322 : if (CONST_INT_P (operands[2]))
17323 : ix86_expand_vector_set (false, operands[0], operands[1],
17324 : INTVAL (operands[2]));
17325 : else
17326 : ix86_expand_vector_set_var (operands[0], operands[1], operands[2]);
17327 : DONE;
17328 : }
17329 : #undef DONE
17330 : #undef FAIL
17331 : }
17332 : static const uint8_t expand_encoding[] = {
17333 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17334 : };
17335 : return complete_seq (expand_encoding, operands);
17336 : }
17337 :
17338 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12841 */
17339 : extern rtx_insn *gen_split_1634 (rtx_insn *, rtx *);
17340 : rtx_insn *
17341 : gen_split_1634 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17342 : {
17343 : if (dump_file)
17344 : fprintf (dump_file, "Splitting with gen_split_1634 (sse.md:12841)\n");
17345 : start_sequence ();
17346 : #define FAIL return (end_sequence (), nullptr)
17347 : #define DONE return end_sequence ()
17348 : #line 12852 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17349 : {
17350 : if (!TARGET_AVX512VL
17351 : && REG_P (operands[0])
17352 : && EXT_REX_SSE_REG_P (operands[1]))
17353 : operands[0]
17354 : = lowpart_subreg (V8DImode, operands[0], V2DImode);
17355 : else
17356 : operands[1] = gen_lowpart (V2DImode, operands[1]);
17357 : }
17358 : #undef DONE
17359 : #undef FAIL
17360 : static const uint8_t expand_encoding[] = {
17361 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
17362 : };
17363 : return complete_seq (expand_encoding, operands);
17364 : }
17365 :
17366 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12941 */
17367 : rtx
17368 : gen_avx512f_vextracti64x4_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
17369 : {
17370 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
17371 : start_sequence ();
17372 : {
17373 : #define FAIL return (end_sequence (), nullptr)
17374 : #define DONE return end_sequence ()
17375 : #line 12948 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17376 : {
17377 : rtx (*insn)(rtx, rtx, rtx, rtx);
17378 : rtx dest = operands[0];
17379 :
17380 : if (MEM_P (dest) && !rtx_equal_p (dest, operands[3]))
17381 : dest = gen_reg_rtx (V4DImode);
17382 :
17383 : switch (INTVAL (operands[2]))
17384 : {
17385 : case 0:
17386 : insn = gen_vec_extract_lo_v8di_mask;
17387 : break;
17388 : case 1:
17389 : insn = gen_vec_extract_hi_v8di_mask;
17390 : break;
17391 : default:
17392 : gcc_unreachable ();
17393 : }
17394 :
17395 : emit_insn (insn (dest, operands[1], operands[3], operands[4]));
17396 : if (dest != operands[0])
17397 : emit_move_insn (operands[0], dest);
17398 : DONE;
17399 : }
17400 : #undef DONE
17401 : #undef FAIL
17402 : }
17403 : static const uint8_t expand_encoding[] = {
17404 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
17405 : 0x03, 0x01, 0x04
17406 : };
17407 : return complete_seq (expand_encoding, operands);
17408 : }
17409 :
17410 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13133 */
17411 : rtx
17412 : gen_avx_vextractf128v4df (const rtx operand0, const rtx operand1, const rtx operand2)
17413 : {
17414 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17415 : start_sequence ();
17416 : {
17417 : #define FAIL return (end_sequence (), nullptr)
17418 : #define DONE return end_sequence ()
17419 : #line 13138 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17420 : {
17421 : rtx (*insn)(rtx, rtx);
17422 :
17423 : switch (INTVAL (operands[2]))
17424 : {
17425 : case 0:
17426 : insn = gen_vec_extract_lo_v4df;
17427 : break;
17428 : case 1:
17429 : insn = gen_vec_extract_hi_v4df;
17430 : break;
17431 : default:
17432 : gcc_unreachable ();
17433 : }
17434 :
17435 : emit_insn (insn (operands[0], operands[1]));
17436 : DONE;
17437 : }
17438 : #undef DONE
17439 : #undef FAIL
17440 : }
17441 : static const uint8_t expand_encoding[] = {
17442 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17443 : };
17444 : return complete_seq (expand_encoding, operands);
17445 : }
17446 :
17447 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13386 */
17448 : extern rtx_insn *gen_split_1646 (rtx_insn *, rtx *);
17449 : rtx_insn *
17450 : gen_split_1646 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17451 : {
17452 : if (dump_file)
17453 : fprintf (dump_file, "Splitting with gen_split_1646 (sse.md:13386)\n");
17454 : start_sequence ();
17455 : #define FAIL return (end_sequence (), nullptr)
17456 : #define DONE return end_sequence ()
17457 : #line 13412 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17458 : {
17459 : if (!TARGET_AVX512VL
17460 : && REG_P (operands[0])
17461 : && EXT_REX_SSE_REG_P (operands[1]))
17462 : operands[0] = lowpart_subreg (V32HFmode, operands[0],
17463 : V16HFmode);
17464 : else
17465 : operands[1] = gen_lowpart (V16HFmode, operands[1]);
17466 : }
17467 : #undef DONE
17468 : #undef FAIL
17469 : static const uint8_t expand_encoding[] = {
17470 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
17471 : };
17472 : return complete_seq (expand_encoding, operands);
17473 : }
17474 :
17475 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13600 */
17476 : extern rtx_insn *gen_split_1656 (rtx_insn *, rtx *);
17477 : rtx_insn *
17478 : gen_split_1656 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17479 : {
17480 : if (dump_file)
17481 : fprintf (dump_file, "Splitting with gen_split_1656 (sse.md:13600)\n");
17482 : start_sequence ();
17483 : #define FAIL return (end_sequence (), nullptr)
17484 : #define DONE return end_sequence ()
17485 : #line 13609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17486 : operands[1] = gen_lowpart (BFmode, operands[1]);
17487 : #undef DONE
17488 : #undef FAIL
17489 : static const uint8_t expand_encoding[] = {
17490 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
17491 : };
17492 : return complete_seq (expand_encoding, operands);
17493 : }
17494 :
17495 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13658 */
17496 : rtx
17497 : gen_vec_extractv8sisi (const rtx operand0, const rtx operand1, const rtx operand2)
17498 : {
17499 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17500 : start_sequence ();
17501 : {
17502 : #define FAIL _Pragma ("GCC error \"vec_extractv8sisi cannot FAIL\"") (void)0
17503 : #define DONE return end_sequence ()
17504 : #line 13663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17505 : {
17506 : ix86_expand_vector_extract (false, operands[0], operands[1],
17507 : INTVAL (operands[2]));
17508 : DONE;
17509 : }
17510 : #undef DONE
17511 : #undef FAIL
17512 : }
17513 : static const uint8_t expand_encoding[] = {
17514 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17515 : };
17516 : return complete_seq (expand_encoding, operands);
17517 : }
17518 :
17519 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13658 */
17520 : rtx
17521 : gen_vec_extractv8bfbf (const rtx operand0, const rtx operand1, const rtx operand2)
17522 : {
17523 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17524 : start_sequence ();
17525 : {
17526 : #define FAIL _Pragma ("GCC error \"vec_extractv8bfbf cannot FAIL\"") (void)0
17527 : #define DONE return end_sequence ()
17528 : #line 13663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17529 : {
17530 : ix86_expand_vector_extract (false, operands[0], operands[1],
17531 : INTVAL (operands[2]));
17532 : DONE;
17533 : }
17534 : #undef DONE
17535 : #undef FAIL
17536 : }
17537 : static const uint8_t expand_encoding[] = {
17538 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17539 : };
17540 : return complete_seq (expand_encoding, operands);
17541 : }
17542 :
17543 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13669 */
17544 : rtx
17545 : gen_vec_extractv16hiv8hi (const rtx operand0, const rtx operand1, const rtx operand2)
17546 : {
17547 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17548 : start_sequence ();
17549 : {
17550 : #define FAIL _Pragma ("GCC error \"vec_extractv16hiv8hi cannot FAIL\"") (void)0
17551 : #define DONE return end_sequence ()
17552 : #line 13674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17553 : {
17554 : if (INTVAL (operands[2]))
17555 : emit_insn (gen_vec_extract_hi_v16hi (operands[0], operands[1]));
17556 : else
17557 : emit_insn (gen_vec_extract_lo_v16hi (operands[0], operands[1]));
17558 : DONE;
17559 : }
17560 : #undef DONE
17561 : #undef FAIL
17562 : }
17563 : static const uint8_t expand_encoding[] = {
17564 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17565 : };
17566 : return complete_seq (expand_encoding, operands);
17567 : }
17568 :
17569 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13669 */
17570 : rtx
17571 : gen_vec_extractv32bfv16bf (const rtx operand0, const rtx operand1, const rtx operand2)
17572 : {
17573 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17574 : start_sequence ();
17575 : {
17576 : #define FAIL _Pragma ("GCC error \"vec_extractv32bfv16bf cannot FAIL\"") (void)0
17577 : #define DONE return end_sequence ()
17578 : #line 13674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17579 : {
17580 : if (INTVAL (operands[2]))
17581 : emit_insn (gen_vec_extract_hi_v32bf (operands[0], operands[1]));
17582 : else
17583 : emit_insn (gen_vec_extract_lo_v32bf (operands[0], operands[1]));
17584 : DONE;
17585 : }
17586 : #undef DONE
17587 : #undef FAIL
17588 : }
17589 : static const uint8_t expand_encoding[] = {
17590 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17591 : };
17592 : return complete_seq (expand_encoding, operands);
17593 : }
17594 :
17595 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13963 */
17596 : extern rtx_insn *gen_split_1660 (rtx_insn *, rtx *);
17597 : rtx_insn *
17598 : gen_split_1660 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17599 : {
17600 : if (dump_file)
17601 : fprintf (dump_file, "Splitting with gen_split_1660 (sse.md:13963)\n");
17602 : start_sequence ();
17603 : #define FAIL return (end_sequence (), nullptr)
17604 : #define DONE return end_sequence ()
17605 : #line 13973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17606 : {
17607 : operands[1] = adjust_address (operands[1], DFmode, INTVAL (operands[2]) * 8);
17608 : }
17609 : #undef DONE
17610 : #undef FAIL
17611 : static const uint8_t expand_encoding[] = {
17612 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x6c, 0x01,
17613 : 0x01
17614 : };
17615 : return complete_seq (expand_encoding, operands);
17616 : }
17617 :
17618 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14065 */
17619 : extern rtx_insn *gen_split_1663 (rtx_insn *, rtx *);
17620 : rtx_insn *
17621 : gen_split_1663 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17622 : {
17623 : if (dump_file)
17624 : fprintf (dump_file, "Splitting with gen_split_1663 (sse.md:14065)\n");
17625 : start_sequence ();
17626 : static const uint8_t expand_encoding[] = {
17627 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x03, 0x1f, 0x01,
17628 : 0x00, 0x1a, 0x4f, 0x04, 0x01, 0x00, 0x01, 0x00,
17629 : 0x01, 0x00, 0x01, 0x04, 0x81, 0x25
17630 : };
17631 : return complete_seq (expand_encoding, operands);
17632 : }
17633 :
17634 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14065 */
17635 : extern rtx_insn *gen_split_1672 (rtx_insn *, rtx *);
17636 : rtx_insn *
17637 : gen_split_1672 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17638 : {
17639 : if (dump_file)
17640 : fprintf (dump_file, "Splitting with gen_split_1672 (sse.md:14065)\n");
17641 : start_sequence ();
17642 : static const uint8_t expand_encoding[] = {
17643 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x03, 0x1f, 0x01,
17644 : 0x00, 0x1a, 0x52, 0x04, 0x01, 0x00, 0x01, 0x00,
17645 : 0x01, 0x00, 0x01, 0x04, 0x81, 0x25
17646 : };
17647 : return complete_seq (expand_encoding, operands);
17648 : }
17649 :
17650 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14065 */
17651 : extern rtx_insn *gen_split_1682 (rtx_insn *, rtx *);
17652 : rtx_insn *
17653 : gen_split_1682 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17654 : {
17655 : if (dump_file)
17656 : fprintf (dump_file, "Splitting with gen_split_1682 (sse.md:14065)\n");
17657 : start_sequence ();
17658 : static const uint8_t expand_encoding[] = {
17659 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x03, 0x1f, 0x01,
17660 : 0x00, 0x1a, 0x75, 0x04, 0x01, 0x00, 0x01, 0x00,
17661 : 0x01, 0x00, 0x01, 0x04, 0x81, 0x25
17662 : };
17663 : return complete_seq (expand_encoding, operands);
17664 : }
17665 :
17666 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14086 */
17667 : extern rtx_insn *gen_split_1692 (rtx_insn *, rtx *);
17668 : rtx_insn *
17669 : gen_split_1692 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17670 : {
17671 : if (dump_file)
17672 : fprintf (dump_file, "Splitting with gen_split_1692 (sse.md:14086)\n");
17673 : start_sequence ();
17674 : #define FAIL return (end_sequence (), nullptr)
17675 : #define DONE return end_sequence ()
17676 : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17677 : substitute_vpternlog_operands (operands);
17678 : #undef DONE
17679 : #undef FAIL
17680 : static const uint8_t expand_encoding[] = {
17681 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
17682 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81,
17683 : 0x25
17684 : };
17685 : return complete_seq (expand_encoding, operands);
17686 : }
17687 :
17688 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14086 */
17689 : extern rtx_insn *gen_split_1702 (rtx_insn *, rtx *);
17690 : rtx_insn *
17691 : gen_split_1702 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17692 : {
17693 : if (dump_file)
17694 : fprintf (dump_file, "Splitting with gen_split_1702 (sse.md:14086)\n");
17695 : start_sequence ();
17696 : #define FAIL return (end_sequence (), nullptr)
17697 : #define DONE return end_sequence ()
17698 : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17699 : substitute_vpternlog_operands (operands);
17700 : #undef DONE
17701 : #undef FAIL
17702 : static const uint8_t expand_encoding[] = {
17703 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
17704 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81,
17705 : 0x25
17706 : };
17707 : return complete_seq (expand_encoding, operands);
17708 : }
17709 :
17710 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14118 */
17711 : extern rtx_insn *gen_split_1712 (rtx_insn *, rtx *);
17712 : rtx_insn *
17713 : gen_split_1712 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
17714 : {
17715 : if (dump_file)
17716 : fprintf (dump_file, "Splitting with gen_split_1712 (sse.md:14118)\n");
17717 : start_sequence ();
17718 : #define FAIL return (end_sequence (), nullptr)
17719 : #define DONE return end_sequence ()
17720 : #line 14127 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17721 : {
17722 : rtx args[3];
17723 : args[0] = NULL_RTX;
17724 : args[1] = NULL_RTX;
17725 : args[2] = NULL_RTX;
17726 : int idx = ix86_ternlog_idx (operands[1], args);
17727 : ix86_expand_ternlog (V32HImode, args[0], args[1], args[2], idx,
17728 : operands[0]);
17729 : DONE;
17730 : }
17731 : #undef DONE
17732 : #undef FAIL
17733 : static const uint8_t expand_encoding[] = {
17734 : 0x01, 0x27, 0x00
17735 : };
17736 : return complete_seq (expand_encoding, operands);
17737 : }
17738 :
17739 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14118 */
17740 : extern rtx_insn *gen_split_1722 (rtx_insn *, rtx *);
17741 : rtx_insn *
17742 : gen_split_1722 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
17743 : {
17744 : if (dump_file)
17745 : fprintf (dump_file, "Splitting with gen_split_1722 (sse.md:14118)\n");
17746 : start_sequence ();
17747 : #define FAIL return (end_sequence (), nullptr)
17748 : #define DONE return end_sequence ()
17749 : #line 14127 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17750 : {
17751 : rtx args[3];
17752 : args[0] = NULL_RTX;
17753 : args[1] = NULL_RTX;
17754 : args[2] = NULL_RTX;
17755 : int idx = ix86_ternlog_idx (operands[1], args);
17756 : ix86_expand_ternlog (V16HFmode, args[0], args[1], args[2], idx,
17757 : operands[0]);
17758 : DONE;
17759 : }
17760 : #undef DONE
17761 : #undef FAIL
17762 : static const uint8_t expand_encoding[] = {
17763 : 0x01, 0x27, 0x00
17764 : };
17765 : return complete_seq (expand_encoding, operands);
17766 : }
17767 :
17768 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14118 */
17769 : extern rtx_insn *gen_split_1732 (rtx_insn *, rtx *);
17770 : rtx_insn *
17771 : gen_split_1732 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
17772 : {
17773 : if (dump_file)
17774 : fprintf (dump_file, "Splitting with gen_split_1732 (sse.md:14118)\n");
17775 : start_sequence ();
17776 : #define FAIL return (end_sequence (), nullptr)
17777 : #define DONE return end_sequence ()
17778 : #line 14127 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17779 : {
17780 : rtx args[3];
17781 : args[0] = NULL_RTX;
17782 : args[1] = NULL_RTX;
17783 : args[2] = NULL_RTX;
17784 : int idx = ix86_ternlog_idx (operands[1], args);
17785 : ix86_expand_ternlog (V2DFmode, args[0], args[1], args[2], idx,
17786 : operands[0]);
17787 : DONE;
17788 : }
17789 : #undef DONE
17790 : #undef FAIL
17791 : static const uint8_t expand_encoding[] = {
17792 : 0x01, 0x27, 0x00
17793 : };
17794 : return complete_seq (expand_encoding, operands);
17795 : }
17796 :
17797 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
17798 : extern rtx_insn *gen_split_1742 (rtx_insn *, rtx *);
17799 : rtx_insn *
17800 : gen_split_1742 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17801 : {
17802 : if (dump_file)
17803 : fprintf (dump_file, "Splitting with gen_split_1742 (sse.md:14142)\n");
17804 : start_sequence ();
17805 : #define FAIL return (end_sequence (), nullptr)
17806 : #define DONE return end_sequence ()
17807 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17808 : {
17809 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
17810 : int reg6 = 0xF0;
17811 : int reg2 = 0xCC;
17812 : int reg1 = 0xAA;
17813 : int reg3 = 0;
17814 : int reg4 = 0;
17815 : int reg_mask, tmp1, tmp2;
17816 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
17817 : STRIP_UNARY (operands[4])))
17818 : {
17819 : reg4 = reg1;
17820 : reg3 = reg6;
17821 : operands[6] = operands[3];
17822 : }
17823 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
17824 : STRIP_UNARY (operands[4])))
17825 : {
17826 : reg4 = reg2;
17827 : reg3 = reg6;
17828 : operands[6] = operands[3];
17829 : }
17830 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
17831 : STRIP_UNARY (operands[3])))
17832 : {
17833 : reg4 = reg6;
17834 : reg3 = reg1;
17835 : operands[6] = operands[4];
17836 : }
17837 : else
17838 : {
17839 : reg4 = reg6;
17840 : reg3 = reg2;
17841 : operands[6] = operands[4];
17842 : }
17843 :
17844 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
17845 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
17846 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
17847 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
17848 :
17849 : tmp1 = reg1 | reg2;
17850 : tmp2 = reg3 & reg4;
17851 : reg_mask = tmp1 & tmp2;
17852 : reg_mask &= 0xFF;
17853 :
17854 : operands[1] = STRIP_UNARY (operands[1]);
17855 : operands[2] = STRIP_UNARY (operands[2]);
17856 : operands[6] = STRIP_UNARY (operands[6]);
17857 : if (!register_operand (operands[2], V64QImode))
17858 : operands[2] = force_reg (V64QImode, operands[2]);
17859 : if (!register_operand (operands[6], V64QImode))
17860 : operands[6] = force_reg (V64QImode, operands[6]);
17861 : operands[5] = GEN_INT (reg_mask);
17862 : }
17863 : #undef DONE
17864 : #undef FAIL
17865 : static const uint8_t expand_encoding[] = {
17866 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
17867 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
17868 : 0x25
17869 : };
17870 : return complete_seq (expand_encoding, operands);
17871 : }
17872 :
17873 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
17874 : extern rtx_insn *gen_split_1752 (rtx_insn *, rtx *);
17875 : rtx_insn *
17876 : gen_split_1752 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17877 : {
17878 : if (dump_file)
17879 : fprintf (dump_file, "Splitting with gen_split_1752 (sse.md:14142)\n");
17880 : start_sequence ();
17881 : #define FAIL return (end_sequence (), nullptr)
17882 : #define DONE return end_sequence ()
17883 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17884 : {
17885 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
17886 : int reg6 = 0xF0;
17887 : int reg2 = 0xCC;
17888 : int reg1 = 0xAA;
17889 : int reg3 = 0;
17890 : int reg4 = 0;
17891 : int reg_mask, tmp1, tmp2;
17892 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
17893 : STRIP_UNARY (operands[4])))
17894 : {
17895 : reg4 = reg1;
17896 : reg3 = reg6;
17897 : operands[6] = operands[3];
17898 : }
17899 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
17900 : STRIP_UNARY (operands[4])))
17901 : {
17902 : reg4 = reg2;
17903 : reg3 = reg6;
17904 : operands[6] = operands[3];
17905 : }
17906 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
17907 : STRIP_UNARY (operands[3])))
17908 : {
17909 : reg4 = reg6;
17910 : reg3 = reg1;
17911 : operands[6] = operands[4];
17912 : }
17913 : else
17914 : {
17915 : reg4 = reg6;
17916 : reg3 = reg2;
17917 : operands[6] = operands[4];
17918 : }
17919 :
17920 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
17921 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
17922 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
17923 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
17924 :
17925 : tmp1 = reg1 ^ reg2;
17926 : tmp2 = reg3 & reg4;
17927 : reg_mask = tmp1 | tmp2;
17928 : reg_mask &= 0xFF;
17929 :
17930 : operands[1] = STRIP_UNARY (operands[1]);
17931 : operands[2] = STRIP_UNARY (operands[2]);
17932 : operands[6] = STRIP_UNARY (operands[6]);
17933 : if (!register_operand (operands[2], V64QImode))
17934 : operands[2] = force_reg (V64QImode, operands[2]);
17935 : if (!register_operand (operands[6], V64QImode))
17936 : operands[6] = force_reg (V64QImode, operands[6]);
17937 : operands[5] = GEN_INT (reg_mask);
17938 : }
17939 : #undef DONE
17940 : #undef FAIL
17941 : static const uint8_t expand_encoding[] = {
17942 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
17943 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
17944 : 0x25
17945 : };
17946 : return complete_seq (expand_encoding, operands);
17947 : }
17948 :
17949 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
17950 : extern rtx_insn *gen_split_1762 (rtx_insn *, rtx *);
17951 : rtx_insn *
17952 : gen_split_1762 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17953 : {
17954 : if (dump_file)
17955 : fprintf (dump_file, "Splitting with gen_split_1762 (sse.md:14142)\n");
17956 : start_sequence ();
17957 : #define FAIL return (end_sequence (), nullptr)
17958 : #define DONE return end_sequence ()
17959 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17960 : {
17961 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
17962 : int reg6 = 0xF0;
17963 : int reg2 = 0xCC;
17964 : int reg1 = 0xAA;
17965 : int reg3 = 0;
17966 : int reg4 = 0;
17967 : int reg_mask, tmp1, tmp2;
17968 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
17969 : STRIP_UNARY (operands[4])))
17970 : {
17971 : reg4 = reg1;
17972 : reg3 = reg6;
17973 : operands[6] = operands[3];
17974 : }
17975 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
17976 : STRIP_UNARY (operands[4])))
17977 : {
17978 : reg4 = reg2;
17979 : reg3 = reg6;
17980 : operands[6] = operands[3];
17981 : }
17982 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
17983 : STRIP_UNARY (operands[3])))
17984 : {
17985 : reg4 = reg6;
17986 : reg3 = reg1;
17987 : operands[6] = operands[4];
17988 : }
17989 : else
17990 : {
17991 : reg4 = reg6;
17992 : reg3 = reg2;
17993 : operands[6] = operands[4];
17994 : }
17995 :
17996 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
17997 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
17998 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
17999 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18000 :
18001 : tmp1 = reg1 & reg2;
18002 : tmp2 = reg3 & reg4;
18003 : reg_mask = tmp1 ^ tmp2;
18004 : reg_mask &= 0xFF;
18005 :
18006 : operands[1] = STRIP_UNARY (operands[1]);
18007 : operands[2] = STRIP_UNARY (operands[2]);
18008 : operands[6] = STRIP_UNARY (operands[6]);
18009 : if (!register_operand (operands[2], V32QImode))
18010 : operands[2] = force_reg (V32QImode, operands[2]);
18011 : if (!register_operand (operands[6], V32QImode))
18012 : operands[6] = force_reg (V32QImode, operands[6]);
18013 : operands[5] = GEN_INT (reg_mask);
18014 : }
18015 : #undef DONE
18016 : #undef FAIL
18017 : static const uint8_t expand_encoding[] = {
18018 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
18019 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18020 : 0x25
18021 : };
18022 : return complete_seq (expand_encoding, operands);
18023 : }
18024 :
18025 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18026 : extern rtx_insn *gen_split_1772 (rtx_insn *, rtx *);
18027 : rtx_insn *
18028 : gen_split_1772 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18029 : {
18030 : if (dump_file)
18031 : fprintf (dump_file, "Splitting with gen_split_1772 (sse.md:14142)\n");
18032 : start_sequence ();
18033 : #define FAIL return (end_sequence (), nullptr)
18034 : #define DONE return end_sequence ()
18035 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18036 : {
18037 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18038 : int reg6 = 0xF0;
18039 : int reg2 = 0xCC;
18040 : int reg1 = 0xAA;
18041 : int reg3 = 0;
18042 : int reg4 = 0;
18043 : int reg_mask, tmp1, tmp2;
18044 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18045 : STRIP_UNARY (operands[4])))
18046 : {
18047 : reg4 = reg1;
18048 : reg3 = reg6;
18049 : operands[6] = operands[3];
18050 : }
18051 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18052 : STRIP_UNARY (operands[4])))
18053 : {
18054 : reg4 = reg2;
18055 : reg3 = reg6;
18056 : operands[6] = operands[3];
18057 : }
18058 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18059 : STRIP_UNARY (operands[3])))
18060 : {
18061 : reg4 = reg6;
18062 : reg3 = reg1;
18063 : operands[6] = operands[4];
18064 : }
18065 : else
18066 : {
18067 : reg4 = reg6;
18068 : reg3 = reg2;
18069 : operands[6] = operands[4];
18070 : }
18071 :
18072 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18073 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18074 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18075 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18076 :
18077 : tmp1 = reg1 | reg2;
18078 : tmp2 = reg3 | reg4;
18079 : reg_mask = tmp1 & tmp2;
18080 : reg_mask &= 0xFF;
18081 :
18082 : operands[1] = STRIP_UNARY (operands[1]);
18083 : operands[2] = STRIP_UNARY (operands[2]);
18084 : operands[6] = STRIP_UNARY (operands[6]);
18085 : if (!register_operand (operands[2], V32QImode))
18086 : operands[2] = force_reg (V32QImode, operands[2]);
18087 : if (!register_operand (operands[6], V32QImode))
18088 : operands[6] = force_reg (V32QImode, operands[6]);
18089 : operands[5] = GEN_INT (reg_mask);
18090 : }
18091 : #undef DONE
18092 : #undef FAIL
18093 : static const uint8_t expand_encoding[] = {
18094 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
18095 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18096 : 0x25
18097 : };
18098 : return complete_seq (expand_encoding, operands);
18099 : }
18100 :
18101 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18102 : extern rtx_insn *gen_split_1782 (rtx_insn *, rtx *);
18103 : rtx_insn *
18104 : gen_split_1782 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18105 : {
18106 : if (dump_file)
18107 : fprintf (dump_file, "Splitting with gen_split_1782 (sse.md:14142)\n");
18108 : start_sequence ();
18109 : #define FAIL return (end_sequence (), nullptr)
18110 : #define DONE return end_sequence ()
18111 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18112 : {
18113 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18114 : int reg6 = 0xF0;
18115 : int reg2 = 0xCC;
18116 : int reg1 = 0xAA;
18117 : int reg3 = 0;
18118 : int reg4 = 0;
18119 : int reg_mask, tmp1, tmp2;
18120 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18121 : STRIP_UNARY (operands[4])))
18122 : {
18123 : reg4 = reg1;
18124 : reg3 = reg6;
18125 : operands[6] = operands[3];
18126 : }
18127 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18128 : STRIP_UNARY (operands[4])))
18129 : {
18130 : reg4 = reg2;
18131 : reg3 = reg6;
18132 : operands[6] = operands[3];
18133 : }
18134 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18135 : STRIP_UNARY (operands[3])))
18136 : {
18137 : reg4 = reg6;
18138 : reg3 = reg1;
18139 : operands[6] = operands[4];
18140 : }
18141 : else
18142 : {
18143 : reg4 = reg6;
18144 : reg3 = reg2;
18145 : operands[6] = operands[4];
18146 : }
18147 :
18148 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18149 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18150 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18151 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18152 :
18153 : tmp1 = reg1 ^ reg2;
18154 : tmp2 = reg3 | reg4;
18155 : reg_mask = tmp1 | tmp2;
18156 : reg_mask &= 0xFF;
18157 :
18158 : operands[1] = STRIP_UNARY (operands[1]);
18159 : operands[2] = STRIP_UNARY (operands[2]);
18160 : operands[6] = STRIP_UNARY (operands[6]);
18161 : if (!register_operand (operands[2], V32QImode))
18162 : operands[2] = force_reg (V32QImode, operands[2]);
18163 : if (!register_operand (operands[6], V32QImode))
18164 : operands[6] = force_reg (V32QImode, operands[6]);
18165 : operands[5] = GEN_INT (reg_mask);
18166 : }
18167 : #undef DONE
18168 : #undef FAIL
18169 : static const uint8_t expand_encoding[] = {
18170 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
18171 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18172 : 0x25
18173 : };
18174 : return complete_seq (expand_encoding, operands);
18175 : }
18176 :
18177 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18178 : extern rtx_insn *gen_split_1792 (rtx_insn *, rtx *);
18179 : rtx_insn *
18180 : gen_split_1792 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18181 : {
18182 : if (dump_file)
18183 : fprintf (dump_file, "Splitting with gen_split_1792 (sse.md:14142)\n");
18184 : start_sequence ();
18185 : #define FAIL return (end_sequence (), nullptr)
18186 : #define DONE return end_sequence ()
18187 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18188 : {
18189 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18190 : int reg6 = 0xF0;
18191 : int reg2 = 0xCC;
18192 : int reg1 = 0xAA;
18193 : int reg3 = 0;
18194 : int reg4 = 0;
18195 : int reg_mask, tmp1, tmp2;
18196 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18197 : STRIP_UNARY (operands[4])))
18198 : {
18199 : reg4 = reg1;
18200 : reg3 = reg6;
18201 : operands[6] = operands[3];
18202 : }
18203 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18204 : STRIP_UNARY (operands[4])))
18205 : {
18206 : reg4 = reg2;
18207 : reg3 = reg6;
18208 : operands[6] = operands[3];
18209 : }
18210 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18211 : STRIP_UNARY (operands[3])))
18212 : {
18213 : reg4 = reg6;
18214 : reg3 = reg1;
18215 : operands[6] = operands[4];
18216 : }
18217 : else
18218 : {
18219 : reg4 = reg6;
18220 : reg3 = reg2;
18221 : operands[6] = operands[4];
18222 : }
18223 :
18224 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18225 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18226 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18227 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18228 :
18229 : tmp1 = reg1 & reg2;
18230 : tmp2 = reg3 | reg4;
18231 : reg_mask = tmp1 ^ tmp2;
18232 : reg_mask &= 0xFF;
18233 :
18234 : operands[1] = STRIP_UNARY (operands[1]);
18235 : operands[2] = STRIP_UNARY (operands[2]);
18236 : operands[6] = STRIP_UNARY (operands[6]);
18237 : if (!register_operand (operands[2], V16QImode))
18238 : operands[2] = force_reg (V16QImode, operands[2]);
18239 : if (!register_operand (operands[6], V16QImode))
18240 : operands[6] = force_reg (V16QImode, operands[6]);
18241 : operands[5] = GEN_INT (reg_mask);
18242 : }
18243 : #undef DONE
18244 : #undef FAIL
18245 : static const uint8_t expand_encoding[] = {
18246 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
18247 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18248 : 0x25
18249 : };
18250 : return complete_seq (expand_encoding, operands);
18251 : }
18252 :
18253 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18254 : extern rtx_insn *gen_split_1802 (rtx_insn *, rtx *);
18255 : rtx_insn *
18256 : gen_split_1802 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18257 : {
18258 : if (dump_file)
18259 : fprintf (dump_file, "Splitting with gen_split_1802 (sse.md:14142)\n");
18260 : start_sequence ();
18261 : #define FAIL return (end_sequence (), nullptr)
18262 : #define DONE return end_sequence ()
18263 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18264 : {
18265 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18266 : int reg6 = 0xF0;
18267 : int reg2 = 0xCC;
18268 : int reg1 = 0xAA;
18269 : int reg3 = 0;
18270 : int reg4 = 0;
18271 : int reg_mask, tmp1, tmp2;
18272 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18273 : STRIP_UNARY (operands[4])))
18274 : {
18275 : reg4 = reg1;
18276 : reg3 = reg6;
18277 : operands[6] = operands[3];
18278 : }
18279 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18280 : STRIP_UNARY (operands[4])))
18281 : {
18282 : reg4 = reg2;
18283 : reg3 = reg6;
18284 : operands[6] = operands[3];
18285 : }
18286 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18287 : STRIP_UNARY (operands[3])))
18288 : {
18289 : reg4 = reg6;
18290 : reg3 = reg1;
18291 : operands[6] = operands[4];
18292 : }
18293 : else
18294 : {
18295 : reg4 = reg6;
18296 : reg3 = reg2;
18297 : operands[6] = operands[4];
18298 : }
18299 :
18300 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18301 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18302 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18303 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18304 :
18305 : tmp1 = reg1 | reg2;
18306 : tmp2 = reg3 ^ reg4;
18307 : reg_mask = tmp1 & tmp2;
18308 : reg_mask &= 0xFF;
18309 :
18310 : operands[1] = STRIP_UNARY (operands[1]);
18311 : operands[2] = STRIP_UNARY (operands[2]);
18312 : operands[6] = STRIP_UNARY (operands[6]);
18313 : if (!register_operand (operands[2], V16QImode))
18314 : operands[2] = force_reg (V16QImode, operands[2]);
18315 : if (!register_operand (operands[6], V16QImode))
18316 : operands[6] = force_reg (V16QImode, operands[6]);
18317 : operands[5] = GEN_INT (reg_mask);
18318 : }
18319 : #undef DONE
18320 : #undef FAIL
18321 : static const uint8_t expand_encoding[] = {
18322 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
18323 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18324 : 0x25
18325 : };
18326 : return complete_seq (expand_encoding, operands);
18327 : }
18328 :
18329 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18330 : extern rtx_insn *gen_split_1812 (rtx_insn *, rtx *);
18331 : rtx_insn *
18332 : gen_split_1812 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18333 : {
18334 : if (dump_file)
18335 : fprintf (dump_file, "Splitting with gen_split_1812 (sse.md:14142)\n");
18336 : start_sequence ();
18337 : #define FAIL return (end_sequence (), nullptr)
18338 : #define DONE return end_sequence ()
18339 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18340 : {
18341 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18342 : int reg6 = 0xF0;
18343 : int reg2 = 0xCC;
18344 : int reg1 = 0xAA;
18345 : int reg3 = 0;
18346 : int reg4 = 0;
18347 : int reg_mask, tmp1, tmp2;
18348 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18349 : STRIP_UNARY (operands[4])))
18350 : {
18351 : reg4 = reg1;
18352 : reg3 = reg6;
18353 : operands[6] = operands[3];
18354 : }
18355 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18356 : STRIP_UNARY (operands[4])))
18357 : {
18358 : reg4 = reg2;
18359 : reg3 = reg6;
18360 : operands[6] = operands[3];
18361 : }
18362 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18363 : STRIP_UNARY (operands[3])))
18364 : {
18365 : reg4 = reg6;
18366 : reg3 = reg1;
18367 : operands[6] = operands[4];
18368 : }
18369 : else
18370 : {
18371 : reg4 = reg6;
18372 : reg3 = reg2;
18373 : operands[6] = operands[4];
18374 : }
18375 :
18376 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18377 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18378 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18379 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18380 :
18381 : tmp1 = reg1 ^ reg2;
18382 : tmp2 = reg3 ^ reg4;
18383 : reg_mask = tmp1 | tmp2;
18384 : reg_mask &= 0xFF;
18385 :
18386 : operands[1] = STRIP_UNARY (operands[1]);
18387 : operands[2] = STRIP_UNARY (operands[2]);
18388 : operands[6] = STRIP_UNARY (operands[6]);
18389 : if (!register_operand (operands[2], V16QImode))
18390 : operands[2] = force_reg (V16QImode, operands[2]);
18391 : if (!register_operand (operands[6], V16QImode))
18392 : operands[6] = force_reg (V16QImode, operands[6]);
18393 : operands[5] = GEN_INT (reg_mask);
18394 : }
18395 : #undef DONE
18396 : #undef FAIL
18397 : static const uint8_t expand_encoding[] = {
18398 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
18399 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18400 : 0x25
18401 : };
18402 : return complete_seq (expand_encoding, operands);
18403 : }
18404 :
18405 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18406 : extern rtx_insn *gen_split_1822 (rtx_insn *, rtx *);
18407 : rtx_insn *
18408 : gen_split_1822 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18409 : {
18410 : if (dump_file)
18411 : fprintf (dump_file, "Splitting with gen_split_1822 (sse.md:14142)\n");
18412 : start_sequence ();
18413 : #define FAIL return (end_sequence (), nullptr)
18414 : #define DONE return end_sequence ()
18415 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18416 : {
18417 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18418 : int reg6 = 0xF0;
18419 : int reg2 = 0xCC;
18420 : int reg1 = 0xAA;
18421 : int reg3 = 0;
18422 : int reg4 = 0;
18423 : int reg_mask, tmp1, tmp2;
18424 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18425 : STRIP_UNARY (operands[4])))
18426 : {
18427 : reg4 = reg1;
18428 : reg3 = reg6;
18429 : operands[6] = operands[3];
18430 : }
18431 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18432 : STRIP_UNARY (operands[4])))
18433 : {
18434 : reg4 = reg2;
18435 : reg3 = reg6;
18436 : operands[6] = operands[3];
18437 : }
18438 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18439 : STRIP_UNARY (operands[3])))
18440 : {
18441 : reg4 = reg6;
18442 : reg3 = reg1;
18443 : operands[6] = operands[4];
18444 : }
18445 : else
18446 : {
18447 : reg4 = reg6;
18448 : reg3 = reg2;
18449 : operands[6] = operands[4];
18450 : }
18451 :
18452 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18453 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18454 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18455 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18456 :
18457 : tmp1 = reg1 & reg2;
18458 : tmp2 = reg3 ^ reg4;
18459 : reg_mask = tmp1 ^ tmp2;
18460 : reg_mask &= 0xFF;
18461 :
18462 : operands[1] = STRIP_UNARY (operands[1]);
18463 : operands[2] = STRIP_UNARY (operands[2]);
18464 : operands[6] = STRIP_UNARY (operands[6]);
18465 : if (!register_operand (operands[2], V32HImode))
18466 : operands[2] = force_reg (V32HImode, operands[2]);
18467 : if (!register_operand (operands[6], V32HImode))
18468 : operands[6] = force_reg (V32HImode, operands[6]);
18469 : operands[5] = GEN_INT (reg_mask);
18470 : }
18471 : #undef DONE
18472 : #undef FAIL
18473 : static const uint8_t expand_encoding[] = {
18474 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
18475 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18476 : 0x25
18477 : };
18478 : return complete_seq (expand_encoding, operands);
18479 : }
18480 :
18481 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18482 : extern rtx_insn *gen_split_1832 (rtx_insn *, rtx *);
18483 : rtx_insn *
18484 : gen_split_1832 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18485 : {
18486 : if (dump_file)
18487 : fprintf (dump_file, "Splitting with gen_split_1832 (sse.md:14142)\n");
18488 : start_sequence ();
18489 : #define FAIL return (end_sequence (), nullptr)
18490 : #define DONE return end_sequence ()
18491 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18492 : {
18493 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18494 : int reg6 = 0xF0;
18495 : int reg2 = 0xCC;
18496 : int reg1 = 0xAA;
18497 : int reg3 = 0;
18498 : int reg4 = 0;
18499 : int reg_mask, tmp1, tmp2;
18500 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18501 : STRIP_UNARY (operands[4])))
18502 : {
18503 : reg4 = reg1;
18504 : reg3 = reg6;
18505 : operands[6] = operands[3];
18506 : }
18507 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18508 : STRIP_UNARY (operands[4])))
18509 : {
18510 : reg4 = reg2;
18511 : reg3 = reg6;
18512 : operands[6] = operands[3];
18513 : }
18514 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18515 : STRIP_UNARY (operands[3])))
18516 : {
18517 : reg4 = reg6;
18518 : reg3 = reg1;
18519 : operands[6] = operands[4];
18520 : }
18521 : else
18522 : {
18523 : reg4 = reg6;
18524 : reg3 = reg2;
18525 : operands[6] = operands[4];
18526 : }
18527 :
18528 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18529 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18530 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18531 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18532 :
18533 : tmp1 = reg1 ^ reg2;
18534 : tmp2 = reg3 & reg4;
18535 : reg_mask = tmp1 & tmp2;
18536 : reg_mask &= 0xFF;
18537 :
18538 : operands[1] = STRIP_UNARY (operands[1]);
18539 : operands[2] = STRIP_UNARY (operands[2]);
18540 : operands[6] = STRIP_UNARY (operands[6]);
18541 : if (!register_operand (operands[2], V32HImode))
18542 : operands[2] = force_reg (V32HImode, operands[2]);
18543 : if (!register_operand (operands[6], V32HImode))
18544 : operands[6] = force_reg (V32HImode, operands[6]);
18545 : operands[5] = GEN_INT (reg_mask);
18546 : }
18547 : #undef DONE
18548 : #undef FAIL
18549 : static const uint8_t expand_encoding[] = {
18550 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
18551 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18552 : 0x25
18553 : };
18554 : return complete_seq (expand_encoding, operands);
18555 : }
18556 :
18557 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18558 : extern rtx_insn *gen_split_1842 (rtx_insn *, rtx *);
18559 : rtx_insn *
18560 : gen_split_1842 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18561 : {
18562 : if (dump_file)
18563 : fprintf (dump_file, "Splitting with gen_split_1842 (sse.md:14142)\n");
18564 : start_sequence ();
18565 : #define FAIL return (end_sequence (), nullptr)
18566 : #define DONE return end_sequence ()
18567 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18568 : {
18569 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18570 : int reg6 = 0xF0;
18571 : int reg2 = 0xCC;
18572 : int reg1 = 0xAA;
18573 : int reg3 = 0;
18574 : int reg4 = 0;
18575 : int reg_mask, tmp1, tmp2;
18576 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18577 : STRIP_UNARY (operands[4])))
18578 : {
18579 : reg4 = reg1;
18580 : reg3 = reg6;
18581 : operands[6] = operands[3];
18582 : }
18583 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18584 : STRIP_UNARY (operands[4])))
18585 : {
18586 : reg4 = reg2;
18587 : reg3 = reg6;
18588 : operands[6] = operands[3];
18589 : }
18590 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18591 : STRIP_UNARY (operands[3])))
18592 : {
18593 : reg4 = reg6;
18594 : reg3 = reg1;
18595 : operands[6] = operands[4];
18596 : }
18597 : else
18598 : {
18599 : reg4 = reg6;
18600 : reg3 = reg2;
18601 : operands[6] = operands[4];
18602 : }
18603 :
18604 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18605 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18606 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18607 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18608 :
18609 : tmp1 = reg1 & reg2;
18610 : tmp2 = reg3 & reg4;
18611 : reg_mask = tmp1 | tmp2;
18612 : reg_mask &= 0xFF;
18613 :
18614 : operands[1] = STRIP_UNARY (operands[1]);
18615 : operands[2] = STRIP_UNARY (operands[2]);
18616 : operands[6] = STRIP_UNARY (operands[6]);
18617 : if (!register_operand (operands[2], V16HImode))
18618 : operands[2] = force_reg (V16HImode, operands[2]);
18619 : if (!register_operand (operands[6], V16HImode))
18620 : operands[6] = force_reg (V16HImode, operands[6]);
18621 : operands[5] = GEN_INT (reg_mask);
18622 : }
18623 : #undef DONE
18624 : #undef FAIL
18625 : static const uint8_t expand_encoding[] = {
18626 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
18627 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18628 : 0x25
18629 : };
18630 : return complete_seq (expand_encoding, operands);
18631 : }
18632 :
18633 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18634 : extern rtx_insn *gen_split_1852 (rtx_insn *, rtx *);
18635 : rtx_insn *
18636 : gen_split_1852 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18637 : {
18638 : if (dump_file)
18639 : fprintf (dump_file, "Splitting with gen_split_1852 (sse.md:14142)\n");
18640 : start_sequence ();
18641 : #define FAIL return (end_sequence (), nullptr)
18642 : #define DONE return end_sequence ()
18643 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18644 : {
18645 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18646 : int reg6 = 0xF0;
18647 : int reg2 = 0xCC;
18648 : int reg1 = 0xAA;
18649 : int reg3 = 0;
18650 : int reg4 = 0;
18651 : int reg_mask, tmp1, tmp2;
18652 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18653 : STRIP_UNARY (operands[4])))
18654 : {
18655 : reg4 = reg1;
18656 : reg3 = reg6;
18657 : operands[6] = operands[3];
18658 : }
18659 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18660 : STRIP_UNARY (operands[4])))
18661 : {
18662 : reg4 = reg2;
18663 : reg3 = reg6;
18664 : operands[6] = operands[3];
18665 : }
18666 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18667 : STRIP_UNARY (operands[3])))
18668 : {
18669 : reg4 = reg6;
18670 : reg3 = reg1;
18671 : operands[6] = operands[4];
18672 : }
18673 : else
18674 : {
18675 : reg4 = reg6;
18676 : reg3 = reg2;
18677 : operands[6] = operands[4];
18678 : }
18679 :
18680 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18681 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18682 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18683 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18684 :
18685 : tmp1 = reg1 | reg2;
18686 : tmp2 = reg3 & reg4;
18687 : reg_mask = tmp1 ^ tmp2;
18688 : reg_mask &= 0xFF;
18689 :
18690 : operands[1] = STRIP_UNARY (operands[1]);
18691 : operands[2] = STRIP_UNARY (operands[2]);
18692 : operands[6] = STRIP_UNARY (operands[6]);
18693 : if (!register_operand (operands[2], V16HImode))
18694 : operands[2] = force_reg (V16HImode, operands[2]);
18695 : if (!register_operand (operands[6], V16HImode))
18696 : operands[6] = force_reg (V16HImode, operands[6]);
18697 : operands[5] = GEN_INT (reg_mask);
18698 : }
18699 : #undef DONE
18700 : #undef FAIL
18701 : static const uint8_t expand_encoding[] = {
18702 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
18703 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18704 : 0x25
18705 : };
18706 : return complete_seq (expand_encoding, operands);
18707 : }
18708 :
18709 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18710 : extern rtx_insn *gen_split_1862 (rtx_insn *, rtx *);
18711 : rtx_insn *
18712 : gen_split_1862 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18713 : {
18714 : if (dump_file)
18715 : fprintf (dump_file, "Splitting with gen_split_1862 (sse.md:14142)\n");
18716 : start_sequence ();
18717 : #define FAIL return (end_sequence (), nullptr)
18718 : #define DONE return end_sequence ()
18719 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18720 : {
18721 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18722 : int reg6 = 0xF0;
18723 : int reg2 = 0xCC;
18724 : int reg1 = 0xAA;
18725 : int reg3 = 0;
18726 : int reg4 = 0;
18727 : int reg_mask, tmp1, tmp2;
18728 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18729 : STRIP_UNARY (operands[4])))
18730 : {
18731 : reg4 = reg1;
18732 : reg3 = reg6;
18733 : operands[6] = operands[3];
18734 : }
18735 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18736 : STRIP_UNARY (operands[4])))
18737 : {
18738 : reg4 = reg2;
18739 : reg3 = reg6;
18740 : operands[6] = operands[3];
18741 : }
18742 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18743 : STRIP_UNARY (operands[3])))
18744 : {
18745 : reg4 = reg6;
18746 : reg3 = reg1;
18747 : operands[6] = operands[4];
18748 : }
18749 : else
18750 : {
18751 : reg4 = reg6;
18752 : reg3 = reg2;
18753 : operands[6] = operands[4];
18754 : }
18755 :
18756 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18757 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18758 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18759 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18760 :
18761 : tmp1 = reg1 ^ reg2;
18762 : tmp2 = reg3 | reg4;
18763 : reg_mask = tmp1 & tmp2;
18764 : reg_mask &= 0xFF;
18765 :
18766 : operands[1] = STRIP_UNARY (operands[1]);
18767 : operands[2] = STRIP_UNARY (operands[2]);
18768 : operands[6] = STRIP_UNARY (operands[6]);
18769 : if (!register_operand (operands[2], V16HImode))
18770 : operands[2] = force_reg (V16HImode, operands[2]);
18771 : if (!register_operand (operands[6], V16HImode))
18772 : operands[6] = force_reg (V16HImode, operands[6]);
18773 : operands[5] = GEN_INT (reg_mask);
18774 : }
18775 : #undef DONE
18776 : #undef FAIL
18777 : static const uint8_t expand_encoding[] = {
18778 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
18779 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18780 : 0x25
18781 : };
18782 : return complete_seq (expand_encoding, operands);
18783 : }
18784 :
18785 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18786 : extern rtx_insn *gen_split_1872 (rtx_insn *, rtx *);
18787 : rtx_insn *
18788 : gen_split_1872 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18789 : {
18790 : if (dump_file)
18791 : fprintf (dump_file, "Splitting with gen_split_1872 (sse.md:14142)\n");
18792 : start_sequence ();
18793 : #define FAIL return (end_sequence (), nullptr)
18794 : #define DONE return end_sequence ()
18795 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18796 : {
18797 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18798 : int reg6 = 0xF0;
18799 : int reg2 = 0xCC;
18800 : int reg1 = 0xAA;
18801 : int reg3 = 0;
18802 : int reg4 = 0;
18803 : int reg_mask, tmp1, tmp2;
18804 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18805 : STRIP_UNARY (operands[4])))
18806 : {
18807 : reg4 = reg1;
18808 : reg3 = reg6;
18809 : operands[6] = operands[3];
18810 : }
18811 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18812 : STRIP_UNARY (operands[4])))
18813 : {
18814 : reg4 = reg2;
18815 : reg3 = reg6;
18816 : operands[6] = operands[3];
18817 : }
18818 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18819 : STRIP_UNARY (operands[3])))
18820 : {
18821 : reg4 = reg6;
18822 : reg3 = reg1;
18823 : operands[6] = operands[4];
18824 : }
18825 : else
18826 : {
18827 : reg4 = reg6;
18828 : reg3 = reg2;
18829 : operands[6] = operands[4];
18830 : }
18831 :
18832 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18833 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18834 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18835 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18836 :
18837 : tmp1 = reg1 & reg2;
18838 : tmp2 = reg3 | reg4;
18839 : reg_mask = tmp1 | tmp2;
18840 : reg_mask &= 0xFF;
18841 :
18842 : operands[1] = STRIP_UNARY (operands[1]);
18843 : operands[2] = STRIP_UNARY (operands[2]);
18844 : operands[6] = STRIP_UNARY (operands[6]);
18845 : if (!register_operand (operands[2], V8HImode))
18846 : operands[2] = force_reg (V8HImode, operands[2]);
18847 : if (!register_operand (operands[6], V8HImode))
18848 : operands[6] = force_reg (V8HImode, operands[6]);
18849 : operands[5] = GEN_INT (reg_mask);
18850 : }
18851 : #undef DONE
18852 : #undef FAIL
18853 : static const uint8_t expand_encoding[] = {
18854 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
18855 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18856 : 0x25
18857 : };
18858 : return complete_seq (expand_encoding, operands);
18859 : }
18860 :
18861 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18862 : extern rtx_insn *gen_split_1882 (rtx_insn *, rtx *);
18863 : rtx_insn *
18864 : gen_split_1882 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18865 : {
18866 : if (dump_file)
18867 : fprintf (dump_file, "Splitting with gen_split_1882 (sse.md:14142)\n");
18868 : start_sequence ();
18869 : #define FAIL return (end_sequence (), nullptr)
18870 : #define DONE return end_sequence ()
18871 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18872 : {
18873 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18874 : int reg6 = 0xF0;
18875 : int reg2 = 0xCC;
18876 : int reg1 = 0xAA;
18877 : int reg3 = 0;
18878 : int reg4 = 0;
18879 : int reg_mask, tmp1, tmp2;
18880 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18881 : STRIP_UNARY (operands[4])))
18882 : {
18883 : reg4 = reg1;
18884 : reg3 = reg6;
18885 : operands[6] = operands[3];
18886 : }
18887 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18888 : STRIP_UNARY (operands[4])))
18889 : {
18890 : reg4 = reg2;
18891 : reg3 = reg6;
18892 : operands[6] = operands[3];
18893 : }
18894 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18895 : STRIP_UNARY (operands[3])))
18896 : {
18897 : reg4 = reg6;
18898 : reg3 = reg1;
18899 : operands[6] = operands[4];
18900 : }
18901 : else
18902 : {
18903 : reg4 = reg6;
18904 : reg3 = reg2;
18905 : operands[6] = operands[4];
18906 : }
18907 :
18908 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18909 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18910 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18911 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18912 :
18913 : tmp1 = reg1 | reg2;
18914 : tmp2 = reg3 | reg4;
18915 : reg_mask = tmp1 ^ tmp2;
18916 : reg_mask &= 0xFF;
18917 :
18918 : operands[1] = STRIP_UNARY (operands[1]);
18919 : operands[2] = STRIP_UNARY (operands[2]);
18920 : operands[6] = STRIP_UNARY (operands[6]);
18921 : if (!register_operand (operands[2], V8HImode))
18922 : operands[2] = force_reg (V8HImode, operands[2]);
18923 : if (!register_operand (operands[6], V8HImode))
18924 : operands[6] = force_reg (V8HImode, operands[6]);
18925 : operands[5] = GEN_INT (reg_mask);
18926 : }
18927 : #undef DONE
18928 : #undef FAIL
18929 : static const uint8_t expand_encoding[] = {
18930 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
18931 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18932 : 0x25
18933 : };
18934 : return complete_seq (expand_encoding, operands);
18935 : }
18936 :
18937 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18938 : extern rtx_insn *gen_split_1892 (rtx_insn *, rtx *);
18939 : rtx_insn *
18940 : gen_split_1892 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18941 : {
18942 : if (dump_file)
18943 : fprintf (dump_file, "Splitting with gen_split_1892 (sse.md:14142)\n");
18944 : start_sequence ();
18945 : #define FAIL return (end_sequence (), nullptr)
18946 : #define DONE return end_sequence ()
18947 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18948 : {
18949 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18950 : int reg6 = 0xF0;
18951 : int reg2 = 0xCC;
18952 : int reg1 = 0xAA;
18953 : int reg3 = 0;
18954 : int reg4 = 0;
18955 : int reg_mask, tmp1, tmp2;
18956 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18957 : STRIP_UNARY (operands[4])))
18958 : {
18959 : reg4 = reg1;
18960 : reg3 = reg6;
18961 : operands[6] = operands[3];
18962 : }
18963 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18964 : STRIP_UNARY (operands[4])))
18965 : {
18966 : reg4 = reg2;
18967 : reg3 = reg6;
18968 : operands[6] = operands[3];
18969 : }
18970 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18971 : STRIP_UNARY (operands[3])))
18972 : {
18973 : reg4 = reg6;
18974 : reg3 = reg1;
18975 : operands[6] = operands[4];
18976 : }
18977 : else
18978 : {
18979 : reg4 = reg6;
18980 : reg3 = reg2;
18981 : operands[6] = operands[4];
18982 : }
18983 :
18984 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18985 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18986 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18987 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18988 :
18989 : tmp1 = reg1 ^ reg2;
18990 : tmp2 = reg3 ^ reg4;
18991 : reg_mask = tmp1 & tmp2;
18992 : reg_mask &= 0xFF;
18993 :
18994 : operands[1] = STRIP_UNARY (operands[1]);
18995 : operands[2] = STRIP_UNARY (operands[2]);
18996 : operands[6] = STRIP_UNARY (operands[6]);
18997 : if (!register_operand (operands[2], V8HImode))
18998 : operands[2] = force_reg (V8HImode, operands[2]);
18999 : if (!register_operand (operands[6], V8HImode))
19000 : operands[6] = force_reg (V8HImode, operands[6]);
19001 : operands[5] = GEN_INT (reg_mask);
19002 : }
19003 : #undef DONE
19004 : #undef FAIL
19005 : static const uint8_t expand_encoding[] = {
19006 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
19007 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19008 : 0x25
19009 : };
19010 : return complete_seq (expand_encoding, operands);
19011 : }
19012 :
19013 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19014 : extern rtx_insn *gen_split_1902 (rtx_insn *, rtx *);
19015 : rtx_insn *
19016 : gen_split_1902 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19017 : {
19018 : if (dump_file)
19019 : fprintf (dump_file, "Splitting with gen_split_1902 (sse.md:14142)\n");
19020 : start_sequence ();
19021 : #define FAIL return (end_sequence (), nullptr)
19022 : #define DONE return end_sequence ()
19023 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19024 : {
19025 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19026 : int reg6 = 0xF0;
19027 : int reg2 = 0xCC;
19028 : int reg1 = 0xAA;
19029 : int reg3 = 0;
19030 : int reg4 = 0;
19031 : int reg_mask, tmp1, tmp2;
19032 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19033 : STRIP_UNARY (operands[4])))
19034 : {
19035 : reg4 = reg1;
19036 : reg3 = reg6;
19037 : operands[6] = operands[3];
19038 : }
19039 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19040 : STRIP_UNARY (operands[4])))
19041 : {
19042 : reg4 = reg2;
19043 : reg3 = reg6;
19044 : operands[6] = operands[3];
19045 : }
19046 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19047 : STRIP_UNARY (operands[3])))
19048 : {
19049 : reg4 = reg6;
19050 : reg3 = reg1;
19051 : operands[6] = operands[4];
19052 : }
19053 : else
19054 : {
19055 : reg4 = reg6;
19056 : reg3 = reg2;
19057 : operands[6] = operands[4];
19058 : }
19059 :
19060 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19061 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19062 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19063 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19064 :
19065 : tmp1 = reg1 & reg2;
19066 : tmp2 = reg3 ^ reg4;
19067 : reg_mask = tmp1 | tmp2;
19068 : reg_mask &= 0xFF;
19069 :
19070 : operands[1] = STRIP_UNARY (operands[1]);
19071 : operands[2] = STRIP_UNARY (operands[2]);
19072 : operands[6] = STRIP_UNARY (operands[6]);
19073 : if (!register_operand (operands[2], V16SImode))
19074 : operands[2] = force_reg (V16SImode, operands[2]);
19075 : if (!register_operand (operands[6], V16SImode))
19076 : operands[6] = force_reg (V16SImode, operands[6]);
19077 : operands[5] = GEN_INT (reg_mask);
19078 : }
19079 : #undef DONE
19080 : #undef FAIL
19081 : static const uint8_t expand_encoding[] = {
19082 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
19083 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19084 : 0x25
19085 : };
19086 : return complete_seq (expand_encoding, operands);
19087 : }
19088 :
19089 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19090 : extern rtx_insn *gen_split_1912 (rtx_insn *, rtx *);
19091 : rtx_insn *
19092 : gen_split_1912 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19093 : {
19094 : if (dump_file)
19095 : fprintf (dump_file, "Splitting with gen_split_1912 (sse.md:14142)\n");
19096 : start_sequence ();
19097 : #define FAIL return (end_sequence (), nullptr)
19098 : #define DONE return end_sequence ()
19099 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19100 : {
19101 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19102 : int reg6 = 0xF0;
19103 : int reg2 = 0xCC;
19104 : int reg1 = 0xAA;
19105 : int reg3 = 0;
19106 : int reg4 = 0;
19107 : int reg_mask, tmp1, tmp2;
19108 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19109 : STRIP_UNARY (operands[4])))
19110 : {
19111 : reg4 = reg1;
19112 : reg3 = reg6;
19113 : operands[6] = operands[3];
19114 : }
19115 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19116 : STRIP_UNARY (operands[4])))
19117 : {
19118 : reg4 = reg2;
19119 : reg3 = reg6;
19120 : operands[6] = operands[3];
19121 : }
19122 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19123 : STRIP_UNARY (operands[3])))
19124 : {
19125 : reg4 = reg6;
19126 : reg3 = reg1;
19127 : operands[6] = operands[4];
19128 : }
19129 : else
19130 : {
19131 : reg4 = reg6;
19132 : reg3 = reg2;
19133 : operands[6] = operands[4];
19134 : }
19135 :
19136 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19137 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19138 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19139 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19140 :
19141 : tmp1 = reg1 | reg2;
19142 : tmp2 = reg3 ^ reg4;
19143 : reg_mask = tmp1 ^ tmp2;
19144 : reg_mask &= 0xFF;
19145 :
19146 : operands[1] = STRIP_UNARY (operands[1]);
19147 : operands[2] = STRIP_UNARY (operands[2]);
19148 : operands[6] = STRIP_UNARY (operands[6]);
19149 : if (!register_operand (operands[2], V16SImode))
19150 : operands[2] = force_reg (V16SImode, operands[2]);
19151 : if (!register_operand (operands[6], V16SImode))
19152 : operands[6] = force_reg (V16SImode, operands[6]);
19153 : operands[5] = GEN_INT (reg_mask);
19154 : }
19155 : #undef DONE
19156 : #undef FAIL
19157 : static const uint8_t expand_encoding[] = {
19158 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
19159 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19160 : 0x25
19161 : };
19162 : return complete_seq (expand_encoding, operands);
19163 : }
19164 :
19165 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19166 : extern rtx_insn *gen_split_1922 (rtx_insn *, rtx *);
19167 : rtx_insn *
19168 : gen_split_1922 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19169 : {
19170 : if (dump_file)
19171 : fprintf (dump_file, "Splitting with gen_split_1922 (sse.md:14142)\n");
19172 : start_sequence ();
19173 : #define FAIL return (end_sequence (), nullptr)
19174 : #define DONE return end_sequence ()
19175 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19176 : {
19177 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19178 : int reg6 = 0xF0;
19179 : int reg2 = 0xCC;
19180 : int reg1 = 0xAA;
19181 : int reg3 = 0;
19182 : int reg4 = 0;
19183 : int reg_mask, tmp1, tmp2;
19184 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19185 : STRIP_UNARY (operands[4])))
19186 : {
19187 : reg4 = reg1;
19188 : reg3 = reg6;
19189 : operands[6] = operands[3];
19190 : }
19191 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19192 : STRIP_UNARY (operands[4])))
19193 : {
19194 : reg4 = reg2;
19195 : reg3 = reg6;
19196 : operands[6] = operands[3];
19197 : }
19198 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19199 : STRIP_UNARY (operands[3])))
19200 : {
19201 : reg4 = reg6;
19202 : reg3 = reg1;
19203 : operands[6] = operands[4];
19204 : }
19205 : else
19206 : {
19207 : reg4 = reg6;
19208 : reg3 = reg2;
19209 : operands[6] = operands[4];
19210 : }
19211 :
19212 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19213 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19214 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19215 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19216 :
19217 : tmp1 = reg1 & reg2;
19218 : tmp2 = reg3 & reg4;
19219 : reg_mask = tmp1 & tmp2;
19220 : reg_mask &= 0xFF;
19221 :
19222 : operands[1] = STRIP_UNARY (operands[1]);
19223 : operands[2] = STRIP_UNARY (operands[2]);
19224 : operands[6] = STRIP_UNARY (operands[6]);
19225 : if (!register_operand (operands[2], V8SImode))
19226 : operands[2] = force_reg (V8SImode, operands[2]);
19227 : if (!register_operand (operands[6], V8SImode))
19228 : operands[6] = force_reg (V8SImode, operands[6]);
19229 : operands[5] = GEN_INT (reg_mask);
19230 : }
19231 : #undef DONE
19232 : #undef FAIL
19233 : static const uint8_t expand_encoding[] = {
19234 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
19235 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19236 : 0x25
19237 : };
19238 : return complete_seq (expand_encoding, operands);
19239 : }
19240 :
19241 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19242 : extern rtx_insn *gen_split_1931 (rtx_insn *, rtx *);
19243 : rtx_insn *
19244 : gen_split_1931 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19245 : {
19246 : if (dump_file)
19247 : fprintf (dump_file, "Splitting with gen_split_1931 (sse.md:14142)\n");
19248 : start_sequence ();
19249 : #define FAIL return (end_sequence (), nullptr)
19250 : #define DONE return end_sequence ()
19251 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19252 : {
19253 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19254 : int reg6 = 0xF0;
19255 : int reg2 = 0xCC;
19256 : int reg1 = 0xAA;
19257 : int reg3 = 0;
19258 : int reg4 = 0;
19259 : int reg_mask, tmp1, tmp2;
19260 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19261 : STRIP_UNARY (operands[4])))
19262 : {
19263 : reg4 = reg1;
19264 : reg3 = reg6;
19265 : operands[6] = operands[3];
19266 : }
19267 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19268 : STRIP_UNARY (operands[4])))
19269 : {
19270 : reg4 = reg2;
19271 : reg3 = reg6;
19272 : operands[6] = operands[3];
19273 : }
19274 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19275 : STRIP_UNARY (operands[3])))
19276 : {
19277 : reg4 = reg6;
19278 : reg3 = reg1;
19279 : operands[6] = operands[4];
19280 : }
19281 : else
19282 : {
19283 : reg4 = reg6;
19284 : reg3 = reg2;
19285 : operands[6] = operands[4];
19286 : }
19287 :
19288 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19289 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19290 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19291 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19292 :
19293 : tmp1 = reg1 | reg2;
19294 : tmp2 = reg3 & reg4;
19295 : reg_mask = tmp1 & tmp2;
19296 : reg_mask &= 0xFF;
19297 :
19298 : operands[1] = STRIP_UNARY (operands[1]);
19299 : operands[2] = STRIP_UNARY (operands[2]);
19300 : operands[6] = STRIP_UNARY (operands[6]);
19301 : if (!register_operand (operands[2], V8SImode))
19302 : operands[2] = force_reg (V8SImode, operands[2]);
19303 : if (!register_operand (operands[6], V8SImode))
19304 : operands[6] = force_reg (V8SImode, operands[6]);
19305 : operands[5] = GEN_INT (reg_mask);
19306 : }
19307 : #undef DONE
19308 : #undef FAIL
19309 : static const uint8_t expand_encoding[] = {
19310 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
19311 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19312 : 0x25
19313 : };
19314 : return complete_seq (expand_encoding, operands);
19315 : }
19316 :
19317 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19318 : extern rtx_insn *gen_split_1941 (rtx_insn *, rtx *);
19319 : rtx_insn *
19320 : gen_split_1941 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19321 : {
19322 : if (dump_file)
19323 : fprintf (dump_file, "Splitting with gen_split_1941 (sse.md:14142)\n");
19324 : start_sequence ();
19325 : #define FAIL return (end_sequence (), nullptr)
19326 : #define DONE return end_sequence ()
19327 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19328 : {
19329 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19330 : int reg6 = 0xF0;
19331 : int reg2 = 0xCC;
19332 : int reg1 = 0xAA;
19333 : int reg3 = 0;
19334 : int reg4 = 0;
19335 : int reg_mask, tmp1, tmp2;
19336 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19337 : STRIP_UNARY (operands[4])))
19338 : {
19339 : reg4 = reg1;
19340 : reg3 = reg6;
19341 : operands[6] = operands[3];
19342 : }
19343 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19344 : STRIP_UNARY (operands[4])))
19345 : {
19346 : reg4 = reg2;
19347 : reg3 = reg6;
19348 : operands[6] = operands[3];
19349 : }
19350 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19351 : STRIP_UNARY (operands[3])))
19352 : {
19353 : reg4 = reg6;
19354 : reg3 = reg1;
19355 : operands[6] = operands[4];
19356 : }
19357 : else
19358 : {
19359 : reg4 = reg6;
19360 : reg3 = reg2;
19361 : operands[6] = operands[4];
19362 : }
19363 :
19364 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19365 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19366 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19367 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19368 :
19369 : tmp1 = reg1 ^ reg2;
19370 : tmp2 = reg3 & reg4;
19371 : reg_mask = tmp1 | tmp2;
19372 : reg_mask &= 0xFF;
19373 :
19374 : operands[1] = STRIP_UNARY (operands[1]);
19375 : operands[2] = STRIP_UNARY (operands[2]);
19376 : operands[6] = STRIP_UNARY (operands[6]);
19377 : if (!register_operand (operands[2], V8SImode))
19378 : operands[2] = force_reg (V8SImode, operands[2]);
19379 : if (!register_operand (operands[6], V8SImode))
19380 : operands[6] = force_reg (V8SImode, operands[6]);
19381 : operands[5] = GEN_INT (reg_mask);
19382 : }
19383 : #undef DONE
19384 : #undef FAIL
19385 : static const uint8_t expand_encoding[] = {
19386 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
19387 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19388 : 0x25
19389 : };
19390 : return complete_seq (expand_encoding, operands);
19391 : }
19392 :
19393 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19394 : extern rtx_insn *gen_split_1951 (rtx_insn *, rtx *);
19395 : rtx_insn *
19396 : gen_split_1951 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19397 : {
19398 : if (dump_file)
19399 : fprintf (dump_file, "Splitting with gen_split_1951 (sse.md:14142)\n");
19400 : start_sequence ();
19401 : #define FAIL return (end_sequence (), nullptr)
19402 : #define DONE return end_sequence ()
19403 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19404 : {
19405 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19406 : int reg6 = 0xF0;
19407 : int reg2 = 0xCC;
19408 : int reg1 = 0xAA;
19409 : int reg3 = 0;
19410 : int reg4 = 0;
19411 : int reg_mask, tmp1, tmp2;
19412 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19413 : STRIP_UNARY (operands[4])))
19414 : {
19415 : reg4 = reg1;
19416 : reg3 = reg6;
19417 : operands[6] = operands[3];
19418 : }
19419 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19420 : STRIP_UNARY (operands[4])))
19421 : {
19422 : reg4 = reg2;
19423 : reg3 = reg6;
19424 : operands[6] = operands[3];
19425 : }
19426 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19427 : STRIP_UNARY (operands[3])))
19428 : {
19429 : reg4 = reg6;
19430 : reg3 = reg1;
19431 : operands[6] = operands[4];
19432 : }
19433 : else
19434 : {
19435 : reg4 = reg6;
19436 : reg3 = reg2;
19437 : operands[6] = operands[4];
19438 : }
19439 :
19440 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19441 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19442 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19443 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19444 :
19445 : tmp1 = reg1 & reg2;
19446 : tmp2 = reg3 & reg4;
19447 : reg_mask = tmp1 ^ tmp2;
19448 : reg_mask &= 0xFF;
19449 :
19450 : operands[1] = STRIP_UNARY (operands[1]);
19451 : operands[2] = STRIP_UNARY (operands[2]);
19452 : operands[6] = STRIP_UNARY (operands[6]);
19453 : if (!register_operand (operands[2], V4SImode))
19454 : operands[2] = force_reg (V4SImode, operands[2]);
19455 : if (!register_operand (operands[6], V4SImode))
19456 : operands[6] = force_reg (V4SImode, operands[6]);
19457 : operands[5] = GEN_INT (reg_mask);
19458 : }
19459 : #undef DONE
19460 : #undef FAIL
19461 : static const uint8_t expand_encoding[] = {
19462 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
19463 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19464 : 0x25
19465 : };
19466 : return complete_seq (expand_encoding, operands);
19467 : }
19468 :
19469 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19470 : extern rtx_insn *gen_split_1961 (rtx_insn *, rtx *);
19471 : rtx_insn *
19472 : gen_split_1961 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19473 : {
19474 : if (dump_file)
19475 : fprintf (dump_file, "Splitting with gen_split_1961 (sse.md:14142)\n");
19476 : start_sequence ();
19477 : #define FAIL return (end_sequence (), nullptr)
19478 : #define DONE return end_sequence ()
19479 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19480 : {
19481 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19482 : int reg6 = 0xF0;
19483 : int reg2 = 0xCC;
19484 : int reg1 = 0xAA;
19485 : int reg3 = 0;
19486 : int reg4 = 0;
19487 : int reg_mask, tmp1, tmp2;
19488 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19489 : STRIP_UNARY (operands[4])))
19490 : {
19491 : reg4 = reg1;
19492 : reg3 = reg6;
19493 : operands[6] = operands[3];
19494 : }
19495 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19496 : STRIP_UNARY (operands[4])))
19497 : {
19498 : reg4 = reg2;
19499 : reg3 = reg6;
19500 : operands[6] = operands[3];
19501 : }
19502 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19503 : STRIP_UNARY (operands[3])))
19504 : {
19505 : reg4 = reg6;
19506 : reg3 = reg1;
19507 : operands[6] = operands[4];
19508 : }
19509 : else
19510 : {
19511 : reg4 = reg6;
19512 : reg3 = reg2;
19513 : operands[6] = operands[4];
19514 : }
19515 :
19516 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19517 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19518 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19519 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19520 :
19521 : tmp1 = reg1 | reg2;
19522 : tmp2 = reg3 | reg4;
19523 : reg_mask = tmp1 & tmp2;
19524 : reg_mask &= 0xFF;
19525 :
19526 : operands[1] = STRIP_UNARY (operands[1]);
19527 : operands[2] = STRIP_UNARY (operands[2]);
19528 : operands[6] = STRIP_UNARY (operands[6]);
19529 : if (!register_operand (operands[2], V4SImode))
19530 : operands[2] = force_reg (V4SImode, operands[2]);
19531 : if (!register_operand (operands[6], V4SImode))
19532 : operands[6] = force_reg (V4SImode, operands[6]);
19533 : operands[5] = GEN_INT (reg_mask);
19534 : }
19535 : #undef DONE
19536 : #undef FAIL
19537 : static const uint8_t expand_encoding[] = {
19538 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
19539 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19540 : 0x25
19541 : };
19542 : return complete_seq (expand_encoding, operands);
19543 : }
19544 :
19545 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19546 : extern rtx_insn *gen_split_1971 (rtx_insn *, rtx *);
19547 : rtx_insn *
19548 : gen_split_1971 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19549 : {
19550 : if (dump_file)
19551 : fprintf (dump_file, "Splitting with gen_split_1971 (sse.md:14142)\n");
19552 : start_sequence ();
19553 : #define FAIL return (end_sequence (), nullptr)
19554 : #define DONE return end_sequence ()
19555 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19556 : {
19557 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19558 : int reg6 = 0xF0;
19559 : int reg2 = 0xCC;
19560 : int reg1 = 0xAA;
19561 : int reg3 = 0;
19562 : int reg4 = 0;
19563 : int reg_mask, tmp1, tmp2;
19564 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19565 : STRIP_UNARY (operands[4])))
19566 : {
19567 : reg4 = reg1;
19568 : reg3 = reg6;
19569 : operands[6] = operands[3];
19570 : }
19571 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19572 : STRIP_UNARY (operands[4])))
19573 : {
19574 : reg4 = reg2;
19575 : reg3 = reg6;
19576 : operands[6] = operands[3];
19577 : }
19578 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19579 : STRIP_UNARY (operands[3])))
19580 : {
19581 : reg4 = reg6;
19582 : reg3 = reg1;
19583 : operands[6] = operands[4];
19584 : }
19585 : else
19586 : {
19587 : reg4 = reg6;
19588 : reg3 = reg2;
19589 : operands[6] = operands[4];
19590 : }
19591 :
19592 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19593 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19594 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19595 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19596 :
19597 : tmp1 = reg1 ^ reg2;
19598 : tmp2 = reg3 | reg4;
19599 : reg_mask = tmp1 | tmp2;
19600 : reg_mask &= 0xFF;
19601 :
19602 : operands[1] = STRIP_UNARY (operands[1]);
19603 : operands[2] = STRIP_UNARY (operands[2]);
19604 : operands[6] = STRIP_UNARY (operands[6]);
19605 : if (!register_operand (operands[2], V4SImode))
19606 : operands[2] = force_reg (V4SImode, operands[2]);
19607 : if (!register_operand (operands[6], V4SImode))
19608 : operands[6] = force_reg (V4SImode, operands[6]);
19609 : operands[5] = GEN_INT (reg_mask);
19610 : }
19611 : #undef DONE
19612 : #undef FAIL
19613 : static const uint8_t expand_encoding[] = {
19614 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
19615 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19616 : 0x25
19617 : };
19618 : return complete_seq (expand_encoding, operands);
19619 : }
19620 :
19621 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19622 : extern rtx_insn *gen_split_1981 (rtx_insn *, rtx *);
19623 : rtx_insn *
19624 : gen_split_1981 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19625 : {
19626 : if (dump_file)
19627 : fprintf (dump_file, "Splitting with gen_split_1981 (sse.md:14142)\n");
19628 : start_sequence ();
19629 : #define FAIL return (end_sequence (), nullptr)
19630 : #define DONE return end_sequence ()
19631 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19632 : {
19633 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19634 : int reg6 = 0xF0;
19635 : int reg2 = 0xCC;
19636 : int reg1 = 0xAA;
19637 : int reg3 = 0;
19638 : int reg4 = 0;
19639 : int reg_mask, tmp1, tmp2;
19640 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19641 : STRIP_UNARY (operands[4])))
19642 : {
19643 : reg4 = reg1;
19644 : reg3 = reg6;
19645 : operands[6] = operands[3];
19646 : }
19647 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19648 : STRIP_UNARY (operands[4])))
19649 : {
19650 : reg4 = reg2;
19651 : reg3 = reg6;
19652 : operands[6] = operands[3];
19653 : }
19654 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19655 : STRIP_UNARY (operands[3])))
19656 : {
19657 : reg4 = reg6;
19658 : reg3 = reg1;
19659 : operands[6] = operands[4];
19660 : }
19661 : else
19662 : {
19663 : reg4 = reg6;
19664 : reg3 = reg2;
19665 : operands[6] = operands[4];
19666 : }
19667 :
19668 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19669 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19670 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19671 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19672 :
19673 : tmp1 = reg1 & reg2;
19674 : tmp2 = reg3 | reg4;
19675 : reg_mask = tmp1 ^ tmp2;
19676 : reg_mask &= 0xFF;
19677 :
19678 : operands[1] = STRIP_UNARY (operands[1]);
19679 : operands[2] = STRIP_UNARY (operands[2]);
19680 : operands[6] = STRIP_UNARY (operands[6]);
19681 : if (!register_operand (operands[2], V8DImode))
19682 : operands[2] = force_reg (V8DImode, operands[2]);
19683 : if (!register_operand (operands[6], V8DImode))
19684 : operands[6] = force_reg (V8DImode, operands[6]);
19685 : operands[5] = GEN_INT (reg_mask);
19686 : }
19687 : #undef DONE
19688 : #undef FAIL
19689 : static const uint8_t expand_encoding[] = {
19690 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
19691 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19692 : 0x25
19693 : };
19694 : return complete_seq (expand_encoding, operands);
19695 : }
19696 :
19697 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19698 : extern rtx_insn *gen_split_1991 (rtx_insn *, rtx *);
19699 : rtx_insn *
19700 : gen_split_1991 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19701 : {
19702 : if (dump_file)
19703 : fprintf (dump_file, "Splitting with gen_split_1991 (sse.md:14142)\n");
19704 : start_sequence ();
19705 : #define FAIL return (end_sequence (), nullptr)
19706 : #define DONE return end_sequence ()
19707 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19708 : {
19709 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19710 : int reg6 = 0xF0;
19711 : int reg2 = 0xCC;
19712 : int reg1 = 0xAA;
19713 : int reg3 = 0;
19714 : int reg4 = 0;
19715 : int reg_mask, tmp1, tmp2;
19716 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19717 : STRIP_UNARY (operands[4])))
19718 : {
19719 : reg4 = reg1;
19720 : reg3 = reg6;
19721 : operands[6] = operands[3];
19722 : }
19723 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19724 : STRIP_UNARY (operands[4])))
19725 : {
19726 : reg4 = reg2;
19727 : reg3 = reg6;
19728 : operands[6] = operands[3];
19729 : }
19730 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19731 : STRIP_UNARY (operands[3])))
19732 : {
19733 : reg4 = reg6;
19734 : reg3 = reg1;
19735 : operands[6] = operands[4];
19736 : }
19737 : else
19738 : {
19739 : reg4 = reg6;
19740 : reg3 = reg2;
19741 : operands[6] = operands[4];
19742 : }
19743 :
19744 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19745 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19746 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19747 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19748 :
19749 : tmp1 = reg1 | reg2;
19750 : tmp2 = reg3 ^ reg4;
19751 : reg_mask = tmp1 & tmp2;
19752 : reg_mask &= 0xFF;
19753 :
19754 : operands[1] = STRIP_UNARY (operands[1]);
19755 : operands[2] = STRIP_UNARY (operands[2]);
19756 : operands[6] = STRIP_UNARY (operands[6]);
19757 : if (!register_operand (operands[2], V8DImode))
19758 : operands[2] = force_reg (V8DImode, operands[2]);
19759 : if (!register_operand (operands[6], V8DImode))
19760 : operands[6] = force_reg (V8DImode, operands[6]);
19761 : operands[5] = GEN_INT (reg_mask);
19762 : }
19763 : #undef DONE
19764 : #undef FAIL
19765 : static const uint8_t expand_encoding[] = {
19766 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
19767 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19768 : 0x25
19769 : };
19770 : return complete_seq (expand_encoding, operands);
19771 : }
19772 :
19773 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19774 : extern rtx_insn *gen_split_2001 (rtx_insn *, rtx *);
19775 : rtx_insn *
19776 : gen_split_2001 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19777 : {
19778 : if (dump_file)
19779 : fprintf (dump_file, "Splitting with gen_split_2001 (sse.md:14142)\n");
19780 : start_sequence ();
19781 : #define FAIL return (end_sequence (), nullptr)
19782 : #define DONE return end_sequence ()
19783 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19784 : {
19785 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19786 : int reg6 = 0xF0;
19787 : int reg2 = 0xCC;
19788 : int reg1 = 0xAA;
19789 : int reg3 = 0;
19790 : int reg4 = 0;
19791 : int reg_mask, tmp1, tmp2;
19792 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19793 : STRIP_UNARY (operands[4])))
19794 : {
19795 : reg4 = reg1;
19796 : reg3 = reg6;
19797 : operands[6] = operands[3];
19798 : }
19799 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19800 : STRIP_UNARY (operands[4])))
19801 : {
19802 : reg4 = reg2;
19803 : reg3 = reg6;
19804 : operands[6] = operands[3];
19805 : }
19806 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19807 : STRIP_UNARY (operands[3])))
19808 : {
19809 : reg4 = reg6;
19810 : reg3 = reg1;
19811 : operands[6] = operands[4];
19812 : }
19813 : else
19814 : {
19815 : reg4 = reg6;
19816 : reg3 = reg2;
19817 : operands[6] = operands[4];
19818 : }
19819 :
19820 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19821 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19822 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19823 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19824 :
19825 : tmp1 = reg1 ^ reg2;
19826 : tmp2 = reg3 ^ reg4;
19827 : reg_mask = tmp1 | tmp2;
19828 : reg_mask &= 0xFF;
19829 :
19830 : operands[1] = STRIP_UNARY (operands[1]);
19831 : operands[2] = STRIP_UNARY (operands[2]);
19832 : operands[6] = STRIP_UNARY (operands[6]);
19833 : if (!register_operand (operands[2], V8DImode))
19834 : operands[2] = force_reg (V8DImode, operands[2]);
19835 : if (!register_operand (operands[6], V8DImode))
19836 : operands[6] = force_reg (V8DImode, operands[6]);
19837 : operands[5] = GEN_INT (reg_mask);
19838 : }
19839 : #undef DONE
19840 : #undef FAIL
19841 : static const uint8_t expand_encoding[] = {
19842 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
19843 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19844 : 0x25
19845 : };
19846 : return complete_seq (expand_encoding, operands);
19847 : }
19848 :
19849 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19850 : extern rtx_insn *gen_split_2011 (rtx_insn *, rtx *);
19851 : rtx_insn *
19852 : gen_split_2011 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19853 : {
19854 : if (dump_file)
19855 : fprintf (dump_file, "Splitting with gen_split_2011 (sse.md:14142)\n");
19856 : start_sequence ();
19857 : #define FAIL return (end_sequence (), nullptr)
19858 : #define DONE return end_sequence ()
19859 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19860 : {
19861 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19862 : int reg6 = 0xF0;
19863 : int reg2 = 0xCC;
19864 : int reg1 = 0xAA;
19865 : int reg3 = 0;
19866 : int reg4 = 0;
19867 : int reg_mask, tmp1, tmp2;
19868 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19869 : STRIP_UNARY (operands[4])))
19870 : {
19871 : reg4 = reg1;
19872 : reg3 = reg6;
19873 : operands[6] = operands[3];
19874 : }
19875 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19876 : STRIP_UNARY (operands[4])))
19877 : {
19878 : reg4 = reg2;
19879 : reg3 = reg6;
19880 : operands[6] = operands[3];
19881 : }
19882 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19883 : STRIP_UNARY (operands[3])))
19884 : {
19885 : reg4 = reg6;
19886 : reg3 = reg1;
19887 : operands[6] = operands[4];
19888 : }
19889 : else
19890 : {
19891 : reg4 = reg6;
19892 : reg3 = reg2;
19893 : operands[6] = operands[4];
19894 : }
19895 :
19896 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19897 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19898 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19899 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19900 :
19901 : tmp1 = reg1 & reg2;
19902 : tmp2 = reg3 ^ reg4;
19903 : reg_mask = tmp1 ^ tmp2;
19904 : reg_mask &= 0xFF;
19905 :
19906 : operands[1] = STRIP_UNARY (operands[1]);
19907 : operands[2] = STRIP_UNARY (operands[2]);
19908 : operands[6] = STRIP_UNARY (operands[6]);
19909 : if (!register_operand (operands[2], V4DImode))
19910 : operands[2] = force_reg (V4DImode, operands[2]);
19911 : if (!register_operand (operands[6], V4DImode))
19912 : operands[6] = force_reg (V4DImode, operands[6]);
19913 : operands[5] = GEN_INT (reg_mask);
19914 : }
19915 : #undef DONE
19916 : #undef FAIL
19917 : static const uint8_t expand_encoding[] = {
19918 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
19919 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19920 : 0x25
19921 : };
19922 : return complete_seq (expand_encoding, operands);
19923 : }
19924 :
19925 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19926 : extern rtx_insn *gen_split_2021 (rtx_insn *, rtx *);
19927 : rtx_insn *
19928 : gen_split_2021 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19929 : {
19930 : if (dump_file)
19931 : fprintf (dump_file, "Splitting with gen_split_2021 (sse.md:14142)\n");
19932 : start_sequence ();
19933 : #define FAIL return (end_sequence (), nullptr)
19934 : #define DONE return end_sequence ()
19935 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19936 : {
19937 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19938 : int reg6 = 0xF0;
19939 : int reg2 = 0xCC;
19940 : int reg1 = 0xAA;
19941 : int reg3 = 0;
19942 : int reg4 = 0;
19943 : int reg_mask, tmp1, tmp2;
19944 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19945 : STRIP_UNARY (operands[4])))
19946 : {
19947 : reg4 = reg1;
19948 : reg3 = reg6;
19949 : operands[6] = operands[3];
19950 : }
19951 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19952 : STRIP_UNARY (operands[4])))
19953 : {
19954 : reg4 = reg2;
19955 : reg3 = reg6;
19956 : operands[6] = operands[3];
19957 : }
19958 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19959 : STRIP_UNARY (operands[3])))
19960 : {
19961 : reg4 = reg6;
19962 : reg3 = reg1;
19963 : operands[6] = operands[4];
19964 : }
19965 : else
19966 : {
19967 : reg4 = reg6;
19968 : reg3 = reg2;
19969 : operands[6] = operands[4];
19970 : }
19971 :
19972 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19973 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19974 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19975 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19976 :
19977 : tmp1 = reg1 ^ reg2;
19978 : tmp2 = reg3 & reg4;
19979 : reg_mask = tmp1 & tmp2;
19980 : reg_mask &= 0xFF;
19981 :
19982 : operands[1] = STRIP_UNARY (operands[1]);
19983 : operands[2] = STRIP_UNARY (operands[2]);
19984 : operands[6] = STRIP_UNARY (operands[6]);
19985 : if (!register_operand (operands[2], V4DImode))
19986 : operands[2] = force_reg (V4DImode, operands[2]);
19987 : if (!register_operand (operands[6], V4DImode))
19988 : operands[6] = force_reg (V4DImode, operands[6]);
19989 : operands[5] = GEN_INT (reg_mask);
19990 : }
19991 : #undef DONE
19992 : #undef FAIL
19993 : static const uint8_t expand_encoding[] = {
19994 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
19995 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19996 : 0x25
19997 : };
19998 : return complete_seq (expand_encoding, operands);
19999 : }
20000 :
20001 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20002 : extern rtx_insn *gen_split_2031 (rtx_insn *, rtx *);
20003 : rtx_insn *
20004 : gen_split_2031 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20005 : {
20006 : if (dump_file)
20007 : fprintf (dump_file, "Splitting with gen_split_2031 (sse.md:14142)\n");
20008 : start_sequence ();
20009 : #define FAIL return (end_sequence (), nullptr)
20010 : #define DONE return end_sequence ()
20011 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20012 : {
20013 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20014 : int reg6 = 0xF0;
20015 : int reg2 = 0xCC;
20016 : int reg1 = 0xAA;
20017 : int reg3 = 0;
20018 : int reg4 = 0;
20019 : int reg_mask, tmp1, tmp2;
20020 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20021 : STRIP_UNARY (operands[4])))
20022 : {
20023 : reg4 = reg1;
20024 : reg3 = reg6;
20025 : operands[6] = operands[3];
20026 : }
20027 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20028 : STRIP_UNARY (operands[4])))
20029 : {
20030 : reg4 = reg2;
20031 : reg3 = reg6;
20032 : operands[6] = operands[3];
20033 : }
20034 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20035 : STRIP_UNARY (operands[3])))
20036 : {
20037 : reg4 = reg6;
20038 : reg3 = reg1;
20039 : operands[6] = operands[4];
20040 : }
20041 : else
20042 : {
20043 : reg4 = reg6;
20044 : reg3 = reg2;
20045 : operands[6] = operands[4];
20046 : }
20047 :
20048 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20049 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20050 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20051 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20052 :
20053 : tmp1 = reg1 & reg2;
20054 : tmp2 = reg3 & reg4;
20055 : reg_mask = tmp1 | tmp2;
20056 : reg_mask &= 0xFF;
20057 :
20058 : operands[1] = STRIP_UNARY (operands[1]);
20059 : operands[2] = STRIP_UNARY (operands[2]);
20060 : operands[6] = STRIP_UNARY (operands[6]);
20061 : if (!register_operand (operands[2], V2DImode))
20062 : operands[2] = force_reg (V2DImode, operands[2]);
20063 : if (!register_operand (operands[6], V2DImode))
20064 : operands[6] = force_reg (V2DImode, operands[6]);
20065 : operands[5] = GEN_INT (reg_mask);
20066 : }
20067 : #undef DONE
20068 : #undef FAIL
20069 : static const uint8_t expand_encoding[] = {
20070 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
20071 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20072 : 0x25
20073 : };
20074 : return complete_seq (expand_encoding, operands);
20075 : }
20076 :
20077 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20078 : extern rtx_insn *gen_split_2041 (rtx_insn *, rtx *);
20079 : rtx_insn *
20080 : gen_split_2041 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20081 : {
20082 : if (dump_file)
20083 : fprintf (dump_file, "Splitting with gen_split_2041 (sse.md:14142)\n");
20084 : start_sequence ();
20085 : #define FAIL return (end_sequence (), nullptr)
20086 : #define DONE return end_sequence ()
20087 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20088 : {
20089 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20090 : int reg6 = 0xF0;
20091 : int reg2 = 0xCC;
20092 : int reg1 = 0xAA;
20093 : int reg3 = 0;
20094 : int reg4 = 0;
20095 : int reg_mask, tmp1, tmp2;
20096 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20097 : STRIP_UNARY (operands[4])))
20098 : {
20099 : reg4 = reg1;
20100 : reg3 = reg6;
20101 : operands[6] = operands[3];
20102 : }
20103 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20104 : STRIP_UNARY (operands[4])))
20105 : {
20106 : reg4 = reg2;
20107 : reg3 = reg6;
20108 : operands[6] = operands[3];
20109 : }
20110 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20111 : STRIP_UNARY (operands[3])))
20112 : {
20113 : reg4 = reg6;
20114 : reg3 = reg1;
20115 : operands[6] = operands[4];
20116 : }
20117 : else
20118 : {
20119 : reg4 = reg6;
20120 : reg3 = reg2;
20121 : operands[6] = operands[4];
20122 : }
20123 :
20124 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20125 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20126 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20127 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20128 :
20129 : tmp1 = reg1 | reg2;
20130 : tmp2 = reg3 & reg4;
20131 : reg_mask = tmp1 ^ tmp2;
20132 : reg_mask &= 0xFF;
20133 :
20134 : operands[1] = STRIP_UNARY (operands[1]);
20135 : operands[2] = STRIP_UNARY (operands[2]);
20136 : operands[6] = STRIP_UNARY (operands[6]);
20137 : if (!register_operand (operands[2], V2DImode))
20138 : operands[2] = force_reg (V2DImode, operands[2]);
20139 : if (!register_operand (operands[6], V2DImode))
20140 : operands[6] = force_reg (V2DImode, operands[6]);
20141 : operands[5] = GEN_INT (reg_mask);
20142 : }
20143 : #undef DONE
20144 : #undef FAIL
20145 : static const uint8_t expand_encoding[] = {
20146 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
20147 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20148 : 0x25
20149 : };
20150 : return complete_seq (expand_encoding, operands);
20151 : }
20152 :
20153 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20154 : extern rtx_insn *gen_split_2051 (rtx_insn *, rtx *);
20155 : rtx_insn *
20156 : gen_split_2051 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20157 : {
20158 : if (dump_file)
20159 : fprintf (dump_file, "Splitting with gen_split_2051 (sse.md:14142)\n");
20160 : start_sequence ();
20161 : #define FAIL return (end_sequence (), nullptr)
20162 : #define DONE return end_sequence ()
20163 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20164 : {
20165 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20166 : int reg6 = 0xF0;
20167 : int reg2 = 0xCC;
20168 : int reg1 = 0xAA;
20169 : int reg3 = 0;
20170 : int reg4 = 0;
20171 : int reg_mask, tmp1, tmp2;
20172 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20173 : STRIP_UNARY (operands[4])))
20174 : {
20175 : reg4 = reg1;
20176 : reg3 = reg6;
20177 : operands[6] = operands[3];
20178 : }
20179 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20180 : STRIP_UNARY (operands[4])))
20181 : {
20182 : reg4 = reg2;
20183 : reg3 = reg6;
20184 : operands[6] = operands[3];
20185 : }
20186 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20187 : STRIP_UNARY (operands[3])))
20188 : {
20189 : reg4 = reg6;
20190 : reg3 = reg1;
20191 : operands[6] = operands[4];
20192 : }
20193 : else
20194 : {
20195 : reg4 = reg6;
20196 : reg3 = reg2;
20197 : operands[6] = operands[4];
20198 : }
20199 :
20200 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20201 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20202 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20203 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20204 :
20205 : tmp1 = reg1 ^ reg2;
20206 : tmp2 = reg3 | reg4;
20207 : reg_mask = tmp1 & tmp2;
20208 : reg_mask &= 0xFF;
20209 :
20210 : operands[1] = STRIP_UNARY (operands[1]);
20211 : operands[2] = STRIP_UNARY (operands[2]);
20212 : operands[6] = STRIP_UNARY (operands[6]);
20213 : if (!register_operand (operands[2], V2DImode))
20214 : operands[2] = force_reg (V2DImode, operands[2]);
20215 : if (!register_operand (operands[6], V2DImode))
20216 : operands[6] = force_reg (V2DImode, operands[6]);
20217 : operands[5] = GEN_INT (reg_mask);
20218 : }
20219 : #undef DONE
20220 : #undef FAIL
20221 : static const uint8_t expand_encoding[] = {
20222 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
20223 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20224 : 0x25
20225 : };
20226 : return complete_seq (expand_encoding, operands);
20227 : }
20228 :
20229 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20230 : extern rtx_insn *gen_split_2061 (rtx_insn *, rtx *);
20231 : rtx_insn *
20232 : gen_split_2061 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20233 : {
20234 : if (dump_file)
20235 : fprintf (dump_file, "Splitting with gen_split_2061 (sse.md:14142)\n");
20236 : start_sequence ();
20237 : #define FAIL return (end_sequence (), nullptr)
20238 : #define DONE return end_sequence ()
20239 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20240 : {
20241 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20242 : int reg6 = 0xF0;
20243 : int reg2 = 0xCC;
20244 : int reg1 = 0xAA;
20245 : int reg3 = 0;
20246 : int reg4 = 0;
20247 : int reg_mask, tmp1, tmp2;
20248 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20249 : STRIP_UNARY (operands[4])))
20250 : {
20251 : reg4 = reg1;
20252 : reg3 = reg6;
20253 : operands[6] = operands[3];
20254 : }
20255 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20256 : STRIP_UNARY (operands[4])))
20257 : {
20258 : reg4 = reg2;
20259 : reg3 = reg6;
20260 : operands[6] = operands[3];
20261 : }
20262 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20263 : STRIP_UNARY (operands[3])))
20264 : {
20265 : reg4 = reg6;
20266 : reg3 = reg1;
20267 : operands[6] = operands[4];
20268 : }
20269 : else
20270 : {
20271 : reg4 = reg6;
20272 : reg3 = reg2;
20273 : operands[6] = operands[4];
20274 : }
20275 :
20276 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20277 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20278 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20279 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20280 :
20281 : tmp1 = reg1 & reg2;
20282 : tmp2 = reg3 | reg4;
20283 : reg_mask = tmp1 | tmp2;
20284 : reg_mask &= 0xFF;
20285 :
20286 : operands[1] = STRIP_UNARY (operands[1]);
20287 : operands[2] = STRIP_UNARY (operands[2]);
20288 : operands[6] = STRIP_UNARY (operands[6]);
20289 : if (!register_operand (operands[2], V32HFmode))
20290 : operands[2] = force_reg (V32HFmode, operands[2]);
20291 : if (!register_operand (operands[6], V32HFmode))
20292 : operands[6] = force_reg (V32HFmode, operands[6]);
20293 : operands[5] = GEN_INT (reg_mask);
20294 : }
20295 : #undef DONE
20296 : #undef FAIL
20297 : static const uint8_t expand_encoding[] = {
20298 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
20299 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20300 : 0x25
20301 : };
20302 : return complete_seq (expand_encoding, operands);
20303 : }
20304 :
20305 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20306 : extern rtx_insn *gen_split_2071 (rtx_insn *, rtx *);
20307 : rtx_insn *
20308 : gen_split_2071 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20309 : {
20310 : if (dump_file)
20311 : fprintf (dump_file, "Splitting with gen_split_2071 (sse.md:14142)\n");
20312 : start_sequence ();
20313 : #define FAIL return (end_sequence (), nullptr)
20314 : #define DONE return end_sequence ()
20315 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20316 : {
20317 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20318 : int reg6 = 0xF0;
20319 : int reg2 = 0xCC;
20320 : int reg1 = 0xAA;
20321 : int reg3 = 0;
20322 : int reg4 = 0;
20323 : int reg_mask, tmp1, tmp2;
20324 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20325 : STRIP_UNARY (operands[4])))
20326 : {
20327 : reg4 = reg1;
20328 : reg3 = reg6;
20329 : operands[6] = operands[3];
20330 : }
20331 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20332 : STRIP_UNARY (operands[4])))
20333 : {
20334 : reg4 = reg2;
20335 : reg3 = reg6;
20336 : operands[6] = operands[3];
20337 : }
20338 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20339 : STRIP_UNARY (operands[3])))
20340 : {
20341 : reg4 = reg6;
20342 : reg3 = reg1;
20343 : operands[6] = operands[4];
20344 : }
20345 : else
20346 : {
20347 : reg4 = reg6;
20348 : reg3 = reg2;
20349 : operands[6] = operands[4];
20350 : }
20351 :
20352 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20353 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20354 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20355 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20356 :
20357 : tmp1 = reg1 | reg2;
20358 : tmp2 = reg3 | reg4;
20359 : reg_mask = tmp1 ^ tmp2;
20360 : reg_mask &= 0xFF;
20361 :
20362 : operands[1] = STRIP_UNARY (operands[1]);
20363 : operands[2] = STRIP_UNARY (operands[2]);
20364 : operands[6] = STRIP_UNARY (operands[6]);
20365 : if (!register_operand (operands[2], V32HFmode))
20366 : operands[2] = force_reg (V32HFmode, operands[2]);
20367 : if (!register_operand (operands[6], V32HFmode))
20368 : operands[6] = force_reg (V32HFmode, operands[6]);
20369 : operands[5] = GEN_INT (reg_mask);
20370 : }
20371 : #undef DONE
20372 : #undef FAIL
20373 : static const uint8_t expand_encoding[] = {
20374 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
20375 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20376 : 0x25
20377 : };
20378 : return complete_seq (expand_encoding, operands);
20379 : }
20380 :
20381 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20382 : extern rtx_insn *gen_split_2081 (rtx_insn *, rtx *);
20383 : rtx_insn *
20384 : gen_split_2081 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20385 : {
20386 : if (dump_file)
20387 : fprintf (dump_file, "Splitting with gen_split_2081 (sse.md:14142)\n");
20388 : start_sequence ();
20389 : #define FAIL return (end_sequence (), nullptr)
20390 : #define DONE return end_sequence ()
20391 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20392 : {
20393 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20394 : int reg6 = 0xF0;
20395 : int reg2 = 0xCC;
20396 : int reg1 = 0xAA;
20397 : int reg3 = 0;
20398 : int reg4 = 0;
20399 : int reg_mask, tmp1, tmp2;
20400 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20401 : STRIP_UNARY (operands[4])))
20402 : {
20403 : reg4 = reg1;
20404 : reg3 = reg6;
20405 : operands[6] = operands[3];
20406 : }
20407 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20408 : STRIP_UNARY (operands[4])))
20409 : {
20410 : reg4 = reg2;
20411 : reg3 = reg6;
20412 : operands[6] = operands[3];
20413 : }
20414 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20415 : STRIP_UNARY (operands[3])))
20416 : {
20417 : reg4 = reg6;
20418 : reg3 = reg1;
20419 : operands[6] = operands[4];
20420 : }
20421 : else
20422 : {
20423 : reg4 = reg6;
20424 : reg3 = reg2;
20425 : operands[6] = operands[4];
20426 : }
20427 :
20428 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20429 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20430 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20431 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20432 :
20433 : tmp1 = reg1 ^ reg2;
20434 : tmp2 = reg3 ^ reg4;
20435 : reg_mask = tmp1 & tmp2;
20436 : reg_mask &= 0xFF;
20437 :
20438 : operands[1] = STRIP_UNARY (operands[1]);
20439 : operands[2] = STRIP_UNARY (operands[2]);
20440 : operands[6] = STRIP_UNARY (operands[6]);
20441 : if (!register_operand (operands[2], V32HFmode))
20442 : operands[2] = force_reg (V32HFmode, operands[2]);
20443 : if (!register_operand (operands[6], V32HFmode))
20444 : operands[6] = force_reg (V32HFmode, operands[6]);
20445 : operands[5] = GEN_INT (reg_mask);
20446 : }
20447 : #undef DONE
20448 : #undef FAIL
20449 : static const uint8_t expand_encoding[] = {
20450 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
20451 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20452 : 0x25
20453 : };
20454 : return complete_seq (expand_encoding, operands);
20455 : }
20456 :
20457 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20458 : extern rtx_insn *gen_split_2091 (rtx_insn *, rtx *);
20459 : rtx_insn *
20460 : gen_split_2091 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20461 : {
20462 : if (dump_file)
20463 : fprintf (dump_file, "Splitting with gen_split_2091 (sse.md:14142)\n");
20464 : start_sequence ();
20465 : #define FAIL return (end_sequence (), nullptr)
20466 : #define DONE return end_sequence ()
20467 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20468 : {
20469 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20470 : int reg6 = 0xF0;
20471 : int reg2 = 0xCC;
20472 : int reg1 = 0xAA;
20473 : int reg3 = 0;
20474 : int reg4 = 0;
20475 : int reg_mask, tmp1, tmp2;
20476 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20477 : STRIP_UNARY (operands[4])))
20478 : {
20479 : reg4 = reg1;
20480 : reg3 = reg6;
20481 : operands[6] = operands[3];
20482 : }
20483 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20484 : STRIP_UNARY (operands[4])))
20485 : {
20486 : reg4 = reg2;
20487 : reg3 = reg6;
20488 : operands[6] = operands[3];
20489 : }
20490 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20491 : STRIP_UNARY (operands[3])))
20492 : {
20493 : reg4 = reg6;
20494 : reg3 = reg1;
20495 : operands[6] = operands[4];
20496 : }
20497 : else
20498 : {
20499 : reg4 = reg6;
20500 : reg3 = reg2;
20501 : operands[6] = operands[4];
20502 : }
20503 :
20504 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20505 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20506 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20507 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20508 :
20509 : tmp1 = reg1 & reg2;
20510 : tmp2 = reg3 ^ reg4;
20511 : reg_mask = tmp1 | tmp2;
20512 : reg_mask &= 0xFF;
20513 :
20514 : operands[1] = STRIP_UNARY (operands[1]);
20515 : operands[2] = STRIP_UNARY (operands[2]);
20516 : operands[6] = STRIP_UNARY (operands[6]);
20517 : if (!register_operand (operands[2], V16HFmode))
20518 : operands[2] = force_reg (V16HFmode, operands[2]);
20519 : if (!register_operand (operands[6], V16HFmode))
20520 : operands[6] = force_reg (V16HFmode, operands[6]);
20521 : operands[5] = GEN_INT (reg_mask);
20522 : }
20523 : #undef DONE
20524 : #undef FAIL
20525 : static const uint8_t expand_encoding[] = {
20526 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
20527 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20528 : 0x25
20529 : };
20530 : return complete_seq (expand_encoding, operands);
20531 : }
20532 :
20533 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20534 : extern rtx_insn *gen_split_2101 (rtx_insn *, rtx *);
20535 : rtx_insn *
20536 : gen_split_2101 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20537 : {
20538 : if (dump_file)
20539 : fprintf (dump_file, "Splitting with gen_split_2101 (sse.md:14142)\n");
20540 : start_sequence ();
20541 : #define FAIL return (end_sequence (), nullptr)
20542 : #define DONE return end_sequence ()
20543 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20544 : {
20545 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20546 : int reg6 = 0xF0;
20547 : int reg2 = 0xCC;
20548 : int reg1 = 0xAA;
20549 : int reg3 = 0;
20550 : int reg4 = 0;
20551 : int reg_mask, tmp1, tmp2;
20552 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20553 : STRIP_UNARY (operands[4])))
20554 : {
20555 : reg4 = reg1;
20556 : reg3 = reg6;
20557 : operands[6] = operands[3];
20558 : }
20559 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20560 : STRIP_UNARY (operands[4])))
20561 : {
20562 : reg4 = reg2;
20563 : reg3 = reg6;
20564 : operands[6] = operands[3];
20565 : }
20566 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20567 : STRIP_UNARY (operands[3])))
20568 : {
20569 : reg4 = reg6;
20570 : reg3 = reg1;
20571 : operands[6] = operands[4];
20572 : }
20573 : else
20574 : {
20575 : reg4 = reg6;
20576 : reg3 = reg2;
20577 : operands[6] = operands[4];
20578 : }
20579 :
20580 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20581 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20582 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20583 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20584 :
20585 : tmp1 = reg1 | reg2;
20586 : tmp2 = reg3 ^ reg4;
20587 : reg_mask = tmp1 ^ tmp2;
20588 : reg_mask &= 0xFF;
20589 :
20590 : operands[1] = STRIP_UNARY (operands[1]);
20591 : operands[2] = STRIP_UNARY (operands[2]);
20592 : operands[6] = STRIP_UNARY (operands[6]);
20593 : if (!register_operand (operands[2], V16HFmode))
20594 : operands[2] = force_reg (V16HFmode, operands[2]);
20595 : if (!register_operand (operands[6], V16HFmode))
20596 : operands[6] = force_reg (V16HFmode, operands[6]);
20597 : operands[5] = GEN_INT (reg_mask);
20598 : }
20599 : #undef DONE
20600 : #undef FAIL
20601 : static const uint8_t expand_encoding[] = {
20602 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
20603 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20604 : 0x25
20605 : };
20606 : return complete_seq (expand_encoding, operands);
20607 : }
20608 :
20609 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20610 : extern rtx_insn *gen_split_2111 (rtx_insn *, rtx *);
20611 : rtx_insn *
20612 : gen_split_2111 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20613 : {
20614 : if (dump_file)
20615 : fprintf (dump_file, "Splitting with gen_split_2111 (sse.md:14142)\n");
20616 : start_sequence ();
20617 : #define FAIL return (end_sequence (), nullptr)
20618 : #define DONE return end_sequence ()
20619 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20620 : {
20621 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20622 : int reg6 = 0xF0;
20623 : int reg2 = 0xCC;
20624 : int reg1 = 0xAA;
20625 : int reg3 = 0;
20626 : int reg4 = 0;
20627 : int reg_mask, tmp1, tmp2;
20628 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20629 : STRIP_UNARY (operands[4])))
20630 : {
20631 : reg4 = reg1;
20632 : reg3 = reg6;
20633 : operands[6] = operands[3];
20634 : }
20635 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20636 : STRIP_UNARY (operands[4])))
20637 : {
20638 : reg4 = reg2;
20639 : reg3 = reg6;
20640 : operands[6] = operands[3];
20641 : }
20642 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20643 : STRIP_UNARY (operands[3])))
20644 : {
20645 : reg4 = reg6;
20646 : reg3 = reg1;
20647 : operands[6] = operands[4];
20648 : }
20649 : else
20650 : {
20651 : reg4 = reg6;
20652 : reg3 = reg2;
20653 : operands[6] = operands[4];
20654 : }
20655 :
20656 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20657 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20658 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20659 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20660 :
20661 : tmp1 = reg1 & reg2;
20662 : tmp2 = reg3 & reg4;
20663 : reg_mask = tmp1 & tmp2;
20664 : reg_mask &= 0xFF;
20665 :
20666 : operands[1] = STRIP_UNARY (operands[1]);
20667 : operands[2] = STRIP_UNARY (operands[2]);
20668 : operands[6] = STRIP_UNARY (operands[6]);
20669 : if (!register_operand (operands[2], V8HFmode))
20670 : operands[2] = force_reg (V8HFmode, operands[2]);
20671 : if (!register_operand (operands[6], V8HFmode))
20672 : operands[6] = force_reg (V8HFmode, operands[6]);
20673 : operands[5] = GEN_INT (reg_mask);
20674 : }
20675 : #undef DONE
20676 : #undef FAIL
20677 : static const uint8_t expand_encoding[] = {
20678 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
20679 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20680 : 0x25
20681 : };
20682 : return complete_seq (expand_encoding, operands);
20683 : }
20684 :
20685 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20686 : extern rtx_insn *gen_split_2121 (rtx_insn *, rtx *);
20687 : rtx_insn *
20688 : gen_split_2121 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20689 : {
20690 : if (dump_file)
20691 : fprintf (dump_file, "Splitting with gen_split_2121 (sse.md:14142)\n");
20692 : start_sequence ();
20693 : #define FAIL return (end_sequence (), nullptr)
20694 : #define DONE return end_sequence ()
20695 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20696 : {
20697 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20698 : int reg6 = 0xF0;
20699 : int reg2 = 0xCC;
20700 : int reg1 = 0xAA;
20701 : int reg3 = 0;
20702 : int reg4 = 0;
20703 : int reg_mask, tmp1, tmp2;
20704 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20705 : STRIP_UNARY (operands[4])))
20706 : {
20707 : reg4 = reg1;
20708 : reg3 = reg6;
20709 : operands[6] = operands[3];
20710 : }
20711 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20712 : STRIP_UNARY (operands[4])))
20713 : {
20714 : reg4 = reg2;
20715 : reg3 = reg6;
20716 : operands[6] = operands[3];
20717 : }
20718 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20719 : STRIP_UNARY (operands[3])))
20720 : {
20721 : reg4 = reg6;
20722 : reg3 = reg1;
20723 : operands[6] = operands[4];
20724 : }
20725 : else
20726 : {
20727 : reg4 = reg6;
20728 : reg3 = reg2;
20729 : operands[6] = operands[4];
20730 : }
20731 :
20732 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20733 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20734 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20735 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20736 :
20737 : tmp1 = reg1 | reg2;
20738 : tmp2 = reg3 & reg4;
20739 : reg_mask = tmp1 | tmp2;
20740 : reg_mask &= 0xFF;
20741 :
20742 : operands[1] = STRIP_UNARY (operands[1]);
20743 : operands[2] = STRIP_UNARY (operands[2]);
20744 : operands[6] = STRIP_UNARY (operands[6]);
20745 : if (!register_operand (operands[2], V8HFmode))
20746 : operands[2] = force_reg (V8HFmode, operands[2]);
20747 : if (!register_operand (operands[6], V8HFmode))
20748 : operands[6] = force_reg (V8HFmode, operands[6]);
20749 : operands[5] = GEN_INT (reg_mask);
20750 : }
20751 : #undef DONE
20752 : #undef FAIL
20753 : static const uint8_t expand_encoding[] = {
20754 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
20755 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20756 : 0x25
20757 : };
20758 : return complete_seq (expand_encoding, operands);
20759 : }
20760 :
20761 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20762 : extern rtx_insn *gen_split_2131 (rtx_insn *, rtx *);
20763 : rtx_insn *
20764 : gen_split_2131 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20765 : {
20766 : if (dump_file)
20767 : fprintf (dump_file, "Splitting with gen_split_2131 (sse.md:14142)\n");
20768 : start_sequence ();
20769 : #define FAIL return (end_sequence (), nullptr)
20770 : #define DONE return end_sequence ()
20771 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20772 : {
20773 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20774 : int reg6 = 0xF0;
20775 : int reg2 = 0xCC;
20776 : int reg1 = 0xAA;
20777 : int reg3 = 0;
20778 : int reg4 = 0;
20779 : int reg_mask, tmp1, tmp2;
20780 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20781 : STRIP_UNARY (operands[4])))
20782 : {
20783 : reg4 = reg1;
20784 : reg3 = reg6;
20785 : operands[6] = operands[3];
20786 : }
20787 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20788 : STRIP_UNARY (operands[4])))
20789 : {
20790 : reg4 = reg2;
20791 : reg3 = reg6;
20792 : operands[6] = operands[3];
20793 : }
20794 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20795 : STRIP_UNARY (operands[3])))
20796 : {
20797 : reg4 = reg6;
20798 : reg3 = reg1;
20799 : operands[6] = operands[4];
20800 : }
20801 : else
20802 : {
20803 : reg4 = reg6;
20804 : reg3 = reg2;
20805 : operands[6] = operands[4];
20806 : }
20807 :
20808 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20809 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20810 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20811 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20812 :
20813 : tmp1 = reg1 ^ reg2;
20814 : tmp2 = reg3 & reg4;
20815 : reg_mask = tmp1 ^ tmp2;
20816 : reg_mask &= 0xFF;
20817 :
20818 : operands[1] = STRIP_UNARY (operands[1]);
20819 : operands[2] = STRIP_UNARY (operands[2]);
20820 : operands[6] = STRIP_UNARY (operands[6]);
20821 : if (!register_operand (operands[2], V8HFmode))
20822 : operands[2] = force_reg (V8HFmode, operands[2]);
20823 : if (!register_operand (operands[6], V8HFmode))
20824 : operands[6] = force_reg (V8HFmode, operands[6]);
20825 : operands[5] = GEN_INT (reg_mask);
20826 : }
20827 : #undef DONE
20828 : #undef FAIL
20829 : static const uint8_t expand_encoding[] = {
20830 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
20831 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20832 : 0x25
20833 : };
20834 : return complete_seq (expand_encoding, operands);
20835 : }
20836 :
20837 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20838 : extern rtx_insn *gen_split_2141 (rtx_insn *, rtx *);
20839 : rtx_insn *
20840 : gen_split_2141 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20841 : {
20842 : if (dump_file)
20843 : fprintf (dump_file, "Splitting with gen_split_2141 (sse.md:14142)\n");
20844 : start_sequence ();
20845 : #define FAIL return (end_sequence (), nullptr)
20846 : #define DONE return end_sequence ()
20847 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20848 : {
20849 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20850 : int reg6 = 0xF0;
20851 : int reg2 = 0xCC;
20852 : int reg1 = 0xAA;
20853 : int reg3 = 0;
20854 : int reg4 = 0;
20855 : int reg_mask, tmp1, tmp2;
20856 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20857 : STRIP_UNARY (operands[4])))
20858 : {
20859 : reg4 = reg1;
20860 : reg3 = reg6;
20861 : operands[6] = operands[3];
20862 : }
20863 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20864 : STRIP_UNARY (operands[4])))
20865 : {
20866 : reg4 = reg2;
20867 : reg3 = reg6;
20868 : operands[6] = operands[3];
20869 : }
20870 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20871 : STRIP_UNARY (operands[3])))
20872 : {
20873 : reg4 = reg6;
20874 : reg3 = reg1;
20875 : operands[6] = operands[4];
20876 : }
20877 : else
20878 : {
20879 : reg4 = reg6;
20880 : reg3 = reg2;
20881 : operands[6] = operands[4];
20882 : }
20883 :
20884 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20885 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20886 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20887 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20888 :
20889 : tmp1 = reg1 & reg2;
20890 : tmp2 = reg3 | reg4;
20891 : reg_mask = tmp1 & tmp2;
20892 : reg_mask &= 0xFF;
20893 :
20894 : operands[1] = STRIP_UNARY (operands[1]);
20895 : operands[2] = STRIP_UNARY (operands[2]);
20896 : operands[6] = STRIP_UNARY (operands[6]);
20897 : if (!register_operand (operands[2], V32BFmode))
20898 : operands[2] = force_reg (V32BFmode, operands[2]);
20899 : if (!register_operand (operands[6], V32BFmode))
20900 : operands[6] = force_reg (V32BFmode, operands[6]);
20901 : operands[5] = GEN_INT (reg_mask);
20902 : }
20903 : #undef DONE
20904 : #undef FAIL
20905 : static const uint8_t expand_encoding[] = {
20906 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
20907 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20908 : 0x25
20909 : };
20910 : return complete_seq (expand_encoding, operands);
20911 : }
20912 :
20913 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20914 : extern rtx_insn *gen_split_2151 (rtx_insn *, rtx *);
20915 : rtx_insn *
20916 : gen_split_2151 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20917 : {
20918 : if (dump_file)
20919 : fprintf (dump_file, "Splitting with gen_split_2151 (sse.md:14142)\n");
20920 : start_sequence ();
20921 : #define FAIL return (end_sequence (), nullptr)
20922 : #define DONE return end_sequence ()
20923 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20924 : {
20925 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20926 : int reg6 = 0xF0;
20927 : int reg2 = 0xCC;
20928 : int reg1 = 0xAA;
20929 : int reg3 = 0;
20930 : int reg4 = 0;
20931 : int reg_mask, tmp1, tmp2;
20932 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20933 : STRIP_UNARY (operands[4])))
20934 : {
20935 : reg4 = reg1;
20936 : reg3 = reg6;
20937 : operands[6] = operands[3];
20938 : }
20939 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20940 : STRIP_UNARY (operands[4])))
20941 : {
20942 : reg4 = reg2;
20943 : reg3 = reg6;
20944 : operands[6] = operands[3];
20945 : }
20946 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20947 : STRIP_UNARY (operands[3])))
20948 : {
20949 : reg4 = reg6;
20950 : reg3 = reg1;
20951 : operands[6] = operands[4];
20952 : }
20953 : else
20954 : {
20955 : reg4 = reg6;
20956 : reg3 = reg2;
20957 : operands[6] = operands[4];
20958 : }
20959 :
20960 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20961 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20962 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20963 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20964 :
20965 : tmp1 = reg1 | reg2;
20966 : tmp2 = reg3 | reg4;
20967 : reg_mask = tmp1 | tmp2;
20968 : reg_mask &= 0xFF;
20969 :
20970 : operands[1] = STRIP_UNARY (operands[1]);
20971 : operands[2] = STRIP_UNARY (operands[2]);
20972 : operands[6] = STRIP_UNARY (operands[6]);
20973 : if (!register_operand (operands[2], V32BFmode))
20974 : operands[2] = force_reg (V32BFmode, operands[2]);
20975 : if (!register_operand (operands[6], V32BFmode))
20976 : operands[6] = force_reg (V32BFmode, operands[6]);
20977 : operands[5] = GEN_INT (reg_mask);
20978 : }
20979 : #undef DONE
20980 : #undef FAIL
20981 : static const uint8_t expand_encoding[] = {
20982 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
20983 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20984 : 0x25
20985 : };
20986 : return complete_seq (expand_encoding, operands);
20987 : }
20988 :
20989 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20990 : extern rtx_insn *gen_split_2161 (rtx_insn *, rtx *);
20991 : rtx_insn *
20992 : gen_split_2161 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20993 : {
20994 : if (dump_file)
20995 : fprintf (dump_file, "Splitting with gen_split_2161 (sse.md:14142)\n");
20996 : start_sequence ();
20997 : #define FAIL return (end_sequence (), nullptr)
20998 : #define DONE return end_sequence ()
20999 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21000 : {
21001 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21002 : int reg6 = 0xF0;
21003 : int reg2 = 0xCC;
21004 : int reg1 = 0xAA;
21005 : int reg3 = 0;
21006 : int reg4 = 0;
21007 : int reg_mask, tmp1, tmp2;
21008 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21009 : STRIP_UNARY (operands[4])))
21010 : {
21011 : reg4 = reg1;
21012 : reg3 = reg6;
21013 : operands[6] = operands[3];
21014 : }
21015 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21016 : STRIP_UNARY (operands[4])))
21017 : {
21018 : reg4 = reg2;
21019 : reg3 = reg6;
21020 : operands[6] = operands[3];
21021 : }
21022 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21023 : STRIP_UNARY (operands[3])))
21024 : {
21025 : reg4 = reg6;
21026 : reg3 = reg1;
21027 : operands[6] = operands[4];
21028 : }
21029 : else
21030 : {
21031 : reg4 = reg6;
21032 : reg3 = reg2;
21033 : operands[6] = operands[4];
21034 : }
21035 :
21036 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21037 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21038 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21039 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21040 :
21041 : tmp1 = reg1 ^ reg2;
21042 : tmp2 = reg3 | reg4;
21043 : reg_mask = tmp1 ^ tmp2;
21044 : reg_mask &= 0xFF;
21045 :
21046 : operands[1] = STRIP_UNARY (operands[1]);
21047 : operands[2] = STRIP_UNARY (operands[2]);
21048 : operands[6] = STRIP_UNARY (operands[6]);
21049 : if (!register_operand (operands[2], V32BFmode))
21050 : operands[2] = force_reg (V32BFmode, operands[2]);
21051 : if (!register_operand (operands[6], V32BFmode))
21052 : operands[6] = force_reg (V32BFmode, operands[6]);
21053 : operands[5] = GEN_INT (reg_mask);
21054 : }
21055 : #undef DONE
21056 : #undef FAIL
21057 : static const uint8_t expand_encoding[] = {
21058 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
21059 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21060 : 0x25
21061 : };
21062 : return complete_seq (expand_encoding, operands);
21063 : }
21064 :
21065 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21066 : extern rtx_insn *gen_split_2171 (rtx_insn *, rtx *);
21067 : rtx_insn *
21068 : gen_split_2171 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21069 : {
21070 : if (dump_file)
21071 : fprintf (dump_file, "Splitting with gen_split_2171 (sse.md:14142)\n");
21072 : start_sequence ();
21073 : #define FAIL return (end_sequence (), nullptr)
21074 : #define DONE return end_sequence ()
21075 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21076 : {
21077 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21078 : int reg6 = 0xF0;
21079 : int reg2 = 0xCC;
21080 : int reg1 = 0xAA;
21081 : int reg3 = 0;
21082 : int reg4 = 0;
21083 : int reg_mask, tmp1, tmp2;
21084 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21085 : STRIP_UNARY (operands[4])))
21086 : {
21087 : reg4 = reg1;
21088 : reg3 = reg6;
21089 : operands[6] = operands[3];
21090 : }
21091 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21092 : STRIP_UNARY (operands[4])))
21093 : {
21094 : reg4 = reg2;
21095 : reg3 = reg6;
21096 : operands[6] = operands[3];
21097 : }
21098 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21099 : STRIP_UNARY (operands[3])))
21100 : {
21101 : reg4 = reg6;
21102 : reg3 = reg1;
21103 : operands[6] = operands[4];
21104 : }
21105 : else
21106 : {
21107 : reg4 = reg6;
21108 : reg3 = reg2;
21109 : operands[6] = operands[4];
21110 : }
21111 :
21112 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21113 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21114 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21115 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21116 :
21117 : tmp1 = reg1 & reg2;
21118 : tmp2 = reg3 ^ reg4;
21119 : reg_mask = tmp1 & tmp2;
21120 : reg_mask &= 0xFF;
21121 :
21122 : operands[1] = STRIP_UNARY (operands[1]);
21123 : operands[2] = STRIP_UNARY (operands[2]);
21124 : operands[6] = STRIP_UNARY (operands[6]);
21125 : if (!register_operand (operands[2], V16BFmode))
21126 : operands[2] = force_reg (V16BFmode, operands[2]);
21127 : if (!register_operand (operands[6], V16BFmode))
21128 : operands[6] = force_reg (V16BFmode, operands[6]);
21129 : operands[5] = GEN_INT (reg_mask);
21130 : }
21131 : #undef DONE
21132 : #undef FAIL
21133 : static const uint8_t expand_encoding[] = {
21134 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
21135 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21136 : 0x25
21137 : };
21138 : return complete_seq (expand_encoding, operands);
21139 : }
21140 :
21141 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21142 : extern rtx_insn *gen_split_2181 (rtx_insn *, rtx *);
21143 : rtx_insn *
21144 : gen_split_2181 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21145 : {
21146 : if (dump_file)
21147 : fprintf (dump_file, "Splitting with gen_split_2181 (sse.md:14142)\n");
21148 : start_sequence ();
21149 : #define FAIL return (end_sequence (), nullptr)
21150 : #define DONE return end_sequence ()
21151 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21152 : {
21153 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21154 : int reg6 = 0xF0;
21155 : int reg2 = 0xCC;
21156 : int reg1 = 0xAA;
21157 : int reg3 = 0;
21158 : int reg4 = 0;
21159 : int reg_mask, tmp1, tmp2;
21160 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21161 : STRIP_UNARY (operands[4])))
21162 : {
21163 : reg4 = reg1;
21164 : reg3 = reg6;
21165 : operands[6] = operands[3];
21166 : }
21167 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21168 : STRIP_UNARY (operands[4])))
21169 : {
21170 : reg4 = reg2;
21171 : reg3 = reg6;
21172 : operands[6] = operands[3];
21173 : }
21174 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21175 : STRIP_UNARY (operands[3])))
21176 : {
21177 : reg4 = reg6;
21178 : reg3 = reg1;
21179 : operands[6] = operands[4];
21180 : }
21181 : else
21182 : {
21183 : reg4 = reg6;
21184 : reg3 = reg2;
21185 : operands[6] = operands[4];
21186 : }
21187 :
21188 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21189 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21190 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21191 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21192 :
21193 : tmp1 = reg1 | reg2;
21194 : tmp2 = reg3 ^ reg4;
21195 : reg_mask = tmp1 | tmp2;
21196 : reg_mask &= 0xFF;
21197 :
21198 : operands[1] = STRIP_UNARY (operands[1]);
21199 : operands[2] = STRIP_UNARY (operands[2]);
21200 : operands[6] = STRIP_UNARY (operands[6]);
21201 : if (!register_operand (operands[2], V16BFmode))
21202 : operands[2] = force_reg (V16BFmode, operands[2]);
21203 : if (!register_operand (operands[6], V16BFmode))
21204 : operands[6] = force_reg (V16BFmode, operands[6]);
21205 : operands[5] = GEN_INT (reg_mask);
21206 : }
21207 : #undef DONE
21208 : #undef FAIL
21209 : static const uint8_t expand_encoding[] = {
21210 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
21211 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21212 : 0x25
21213 : };
21214 : return complete_seq (expand_encoding, operands);
21215 : }
21216 :
21217 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21218 : extern rtx_insn *gen_split_2191 (rtx_insn *, rtx *);
21219 : rtx_insn *
21220 : gen_split_2191 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21221 : {
21222 : if (dump_file)
21223 : fprintf (dump_file, "Splitting with gen_split_2191 (sse.md:14142)\n");
21224 : start_sequence ();
21225 : #define FAIL return (end_sequence (), nullptr)
21226 : #define DONE return end_sequence ()
21227 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21228 : {
21229 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21230 : int reg6 = 0xF0;
21231 : int reg2 = 0xCC;
21232 : int reg1 = 0xAA;
21233 : int reg3 = 0;
21234 : int reg4 = 0;
21235 : int reg_mask, tmp1, tmp2;
21236 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21237 : STRIP_UNARY (operands[4])))
21238 : {
21239 : reg4 = reg1;
21240 : reg3 = reg6;
21241 : operands[6] = operands[3];
21242 : }
21243 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21244 : STRIP_UNARY (operands[4])))
21245 : {
21246 : reg4 = reg2;
21247 : reg3 = reg6;
21248 : operands[6] = operands[3];
21249 : }
21250 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21251 : STRIP_UNARY (operands[3])))
21252 : {
21253 : reg4 = reg6;
21254 : reg3 = reg1;
21255 : operands[6] = operands[4];
21256 : }
21257 : else
21258 : {
21259 : reg4 = reg6;
21260 : reg3 = reg2;
21261 : operands[6] = operands[4];
21262 : }
21263 :
21264 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21265 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21266 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21267 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21268 :
21269 : tmp1 = reg1 ^ reg2;
21270 : tmp2 = reg3 ^ reg4;
21271 : reg_mask = tmp1 ^ tmp2;
21272 : reg_mask &= 0xFF;
21273 :
21274 : operands[1] = STRIP_UNARY (operands[1]);
21275 : operands[2] = STRIP_UNARY (operands[2]);
21276 : operands[6] = STRIP_UNARY (operands[6]);
21277 : if (!register_operand (operands[2], V16BFmode))
21278 : operands[2] = force_reg (V16BFmode, operands[2]);
21279 : if (!register_operand (operands[6], V16BFmode))
21280 : operands[6] = force_reg (V16BFmode, operands[6]);
21281 : operands[5] = GEN_INT (reg_mask);
21282 : }
21283 : #undef DONE
21284 : #undef FAIL
21285 : static const uint8_t expand_encoding[] = {
21286 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
21287 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21288 : 0x25
21289 : };
21290 : return complete_seq (expand_encoding, operands);
21291 : }
21292 :
21293 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21294 : extern rtx_insn *gen_split_2202 (rtx_insn *, rtx *);
21295 : rtx_insn *
21296 : gen_split_2202 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21297 : {
21298 : if (dump_file)
21299 : fprintf (dump_file, "Splitting with gen_split_2202 (sse.md:14142)\n");
21300 : start_sequence ();
21301 : #define FAIL return (end_sequence (), nullptr)
21302 : #define DONE return end_sequence ()
21303 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21304 : {
21305 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21306 : int reg6 = 0xF0;
21307 : int reg2 = 0xCC;
21308 : int reg1 = 0xAA;
21309 : int reg3 = 0;
21310 : int reg4 = 0;
21311 : int reg_mask, tmp1, tmp2;
21312 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21313 : STRIP_UNARY (operands[4])))
21314 : {
21315 : reg4 = reg1;
21316 : reg3 = reg6;
21317 : operands[6] = operands[3];
21318 : }
21319 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21320 : STRIP_UNARY (operands[4])))
21321 : {
21322 : reg4 = reg2;
21323 : reg3 = reg6;
21324 : operands[6] = operands[3];
21325 : }
21326 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21327 : STRIP_UNARY (operands[3])))
21328 : {
21329 : reg4 = reg6;
21330 : reg3 = reg1;
21331 : operands[6] = operands[4];
21332 : }
21333 : else
21334 : {
21335 : reg4 = reg6;
21336 : reg3 = reg2;
21337 : operands[6] = operands[4];
21338 : }
21339 :
21340 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21341 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21342 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21343 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21344 :
21345 : tmp1 = reg1 | reg2;
21346 : tmp2 = reg3 & reg4;
21347 : reg_mask = tmp1 | tmp2;
21348 : reg_mask &= 0xFF;
21349 :
21350 : operands[1] = STRIP_UNARY (operands[1]);
21351 : operands[2] = STRIP_UNARY (operands[2]);
21352 : operands[6] = STRIP_UNARY (operands[6]);
21353 : if (!register_operand (operands[2], V8BFmode))
21354 : operands[2] = force_reg (V8BFmode, operands[2]);
21355 : if (!register_operand (operands[6], V8BFmode))
21356 : operands[6] = force_reg (V8BFmode, operands[6]);
21357 : operands[5] = GEN_INT (reg_mask);
21358 : }
21359 : #undef DONE
21360 : #undef FAIL
21361 : static const uint8_t expand_encoding[] = {
21362 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
21363 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21364 : 0x25
21365 : };
21366 : return complete_seq (expand_encoding, operands);
21367 : }
21368 :
21369 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21370 : extern rtx_insn *gen_split_2212 (rtx_insn *, rtx *);
21371 : rtx_insn *
21372 : gen_split_2212 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21373 : {
21374 : if (dump_file)
21375 : fprintf (dump_file, "Splitting with gen_split_2212 (sse.md:14142)\n");
21376 : start_sequence ();
21377 : #define FAIL return (end_sequence (), nullptr)
21378 : #define DONE return end_sequence ()
21379 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21380 : {
21381 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21382 : int reg6 = 0xF0;
21383 : int reg2 = 0xCC;
21384 : int reg1 = 0xAA;
21385 : int reg3 = 0;
21386 : int reg4 = 0;
21387 : int reg_mask, tmp1, tmp2;
21388 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21389 : STRIP_UNARY (operands[4])))
21390 : {
21391 : reg4 = reg1;
21392 : reg3 = reg6;
21393 : operands[6] = operands[3];
21394 : }
21395 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21396 : STRIP_UNARY (operands[4])))
21397 : {
21398 : reg4 = reg2;
21399 : reg3 = reg6;
21400 : operands[6] = operands[3];
21401 : }
21402 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21403 : STRIP_UNARY (operands[3])))
21404 : {
21405 : reg4 = reg6;
21406 : reg3 = reg1;
21407 : operands[6] = operands[4];
21408 : }
21409 : else
21410 : {
21411 : reg4 = reg6;
21412 : reg3 = reg2;
21413 : operands[6] = operands[4];
21414 : }
21415 :
21416 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21417 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21418 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21419 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21420 :
21421 : tmp1 = reg1 ^ reg2;
21422 : tmp2 = reg3 & reg4;
21423 : reg_mask = tmp1 ^ tmp2;
21424 : reg_mask &= 0xFF;
21425 :
21426 : operands[1] = STRIP_UNARY (operands[1]);
21427 : operands[2] = STRIP_UNARY (operands[2]);
21428 : operands[6] = STRIP_UNARY (operands[6]);
21429 : if (!register_operand (operands[2], V8BFmode))
21430 : operands[2] = force_reg (V8BFmode, operands[2]);
21431 : if (!register_operand (operands[6], V8BFmode))
21432 : operands[6] = force_reg (V8BFmode, operands[6]);
21433 : operands[5] = GEN_INT (reg_mask);
21434 : }
21435 : #undef DONE
21436 : #undef FAIL
21437 : static const uint8_t expand_encoding[] = {
21438 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
21439 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21440 : 0x25
21441 : };
21442 : return complete_seq (expand_encoding, operands);
21443 : }
21444 :
21445 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21446 : extern rtx_insn *gen_split_2222 (rtx_insn *, rtx *);
21447 : rtx_insn *
21448 : gen_split_2222 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21449 : {
21450 : if (dump_file)
21451 : fprintf (dump_file, "Splitting with gen_split_2222 (sse.md:14142)\n");
21452 : start_sequence ();
21453 : #define FAIL return (end_sequence (), nullptr)
21454 : #define DONE return end_sequence ()
21455 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21456 : {
21457 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21458 : int reg6 = 0xF0;
21459 : int reg2 = 0xCC;
21460 : int reg1 = 0xAA;
21461 : int reg3 = 0;
21462 : int reg4 = 0;
21463 : int reg_mask, tmp1, tmp2;
21464 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21465 : STRIP_UNARY (operands[4])))
21466 : {
21467 : reg4 = reg1;
21468 : reg3 = reg6;
21469 : operands[6] = operands[3];
21470 : }
21471 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21472 : STRIP_UNARY (operands[4])))
21473 : {
21474 : reg4 = reg2;
21475 : reg3 = reg6;
21476 : operands[6] = operands[3];
21477 : }
21478 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21479 : STRIP_UNARY (operands[3])))
21480 : {
21481 : reg4 = reg6;
21482 : reg3 = reg1;
21483 : operands[6] = operands[4];
21484 : }
21485 : else
21486 : {
21487 : reg4 = reg6;
21488 : reg3 = reg2;
21489 : operands[6] = operands[4];
21490 : }
21491 :
21492 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21493 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21494 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21495 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21496 :
21497 : tmp1 = reg1 & reg2;
21498 : tmp2 = reg3 | reg4;
21499 : reg_mask = tmp1 & tmp2;
21500 : reg_mask &= 0xFF;
21501 :
21502 : operands[1] = STRIP_UNARY (operands[1]);
21503 : operands[2] = STRIP_UNARY (operands[2]);
21504 : operands[6] = STRIP_UNARY (operands[6]);
21505 : if (!register_operand (operands[2], V16SFmode))
21506 : operands[2] = force_reg (V16SFmode, operands[2]);
21507 : if (!register_operand (operands[6], V16SFmode))
21508 : operands[6] = force_reg (V16SFmode, operands[6]);
21509 : operands[5] = GEN_INT (reg_mask);
21510 : }
21511 : #undef DONE
21512 : #undef FAIL
21513 : static const uint8_t expand_encoding[] = {
21514 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
21515 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21516 : 0x25
21517 : };
21518 : return complete_seq (expand_encoding, operands);
21519 : }
21520 :
21521 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21522 : extern rtx_insn *gen_split_2232 (rtx_insn *, rtx *);
21523 : rtx_insn *
21524 : gen_split_2232 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21525 : {
21526 : if (dump_file)
21527 : fprintf (dump_file, "Splitting with gen_split_2232 (sse.md:14142)\n");
21528 : start_sequence ();
21529 : #define FAIL return (end_sequence (), nullptr)
21530 : #define DONE return end_sequence ()
21531 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21532 : {
21533 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21534 : int reg6 = 0xF0;
21535 : int reg2 = 0xCC;
21536 : int reg1 = 0xAA;
21537 : int reg3 = 0;
21538 : int reg4 = 0;
21539 : int reg_mask, tmp1, tmp2;
21540 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21541 : STRIP_UNARY (operands[4])))
21542 : {
21543 : reg4 = reg1;
21544 : reg3 = reg6;
21545 : operands[6] = operands[3];
21546 : }
21547 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21548 : STRIP_UNARY (operands[4])))
21549 : {
21550 : reg4 = reg2;
21551 : reg3 = reg6;
21552 : operands[6] = operands[3];
21553 : }
21554 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21555 : STRIP_UNARY (operands[3])))
21556 : {
21557 : reg4 = reg6;
21558 : reg3 = reg1;
21559 : operands[6] = operands[4];
21560 : }
21561 : else
21562 : {
21563 : reg4 = reg6;
21564 : reg3 = reg2;
21565 : operands[6] = operands[4];
21566 : }
21567 :
21568 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21569 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21570 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21571 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21572 :
21573 : tmp1 = reg1 | reg2;
21574 : tmp2 = reg3 | reg4;
21575 : reg_mask = tmp1 | tmp2;
21576 : reg_mask &= 0xFF;
21577 :
21578 : operands[1] = STRIP_UNARY (operands[1]);
21579 : operands[2] = STRIP_UNARY (operands[2]);
21580 : operands[6] = STRIP_UNARY (operands[6]);
21581 : if (!register_operand (operands[2], V16SFmode))
21582 : operands[2] = force_reg (V16SFmode, operands[2]);
21583 : if (!register_operand (operands[6], V16SFmode))
21584 : operands[6] = force_reg (V16SFmode, operands[6]);
21585 : operands[5] = GEN_INT (reg_mask);
21586 : }
21587 : #undef DONE
21588 : #undef FAIL
21589 : static const uint8_t expand_encoding[] = {
21590 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
21591 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21592 : 0x25
21593 : };
21594 : return complete_seq (expand_encoding, operands);
21595 : }
21596 :
21597 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21598 : extern rtx_insn *gen_split_2242 (rtx_insn *, rtx *);
21599 : rtx_insn *
21600 : gen_split_2242 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21601 : {
21602 : if (dump_file)
21603 : fprintf (dump_file, "Splitting with gen_split_2242 (sse.md:14142)\n");
21604 : start_sequence ();
21605 : #define FAIL return (end_sequence (), nullptr)
21606 : #define DONE return end_sequence ()
21607 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21608 : {
21609 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21610 : int reg6 = 0xF0;
21611 : int reg2 = 0xCC;
21612 : int reg1 = 0xAA;
21613 : int reg3 = 0;
21614 : int reg4 = 0;
21615 : int reg_mask, tmp1, tmp2;
21616 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21617 : STRIP_UNARY (operands[4])))
21618 : {
21619 : reg4 = reg1;
21620 : reg3 = reg6;
21621 : operands[6] = operands[3];
21622 : }
21623 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21624 : STRIP_UNARY (operands[4])))
21625 : {
21626 : reg4 = reg2;
21627 : reg3 = reg6;
21628 : operands[6] = operands[3];
21629 : }
21630 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21631 : STRIP_UNARY (operands[3])))
21632 : {
21633 : reg4 = reg6;
21634 : reg3 = reg1;
21635 : operands[6] = operands[4];
21636 : }
21637 : else
21638 : {
21639 : reg4 = reg6;
21640 : reg3 = reg2;
21641 : operands[6] = operands[4];
21642 : }
21643 :
21644 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21645 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21646 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21647 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21648 :
21649 : tmp1 = reg1 ^ reg2;
21650 : tmp2 = reg3 | reg4;
21651 : reg_mask = tmp1 ^ tmp2;
21652 : reg_mask &= 0xFF;
21653 :
21654 : operands[1] = STRIP_UNARY (operands[1]);
21655 : operands[2] = STRIP_UNARY (operands[2]);
21656 : operands[6] = STRIP_UNARY (operands[6]);
21657 : if (!register_operand (operands[2], V16SFmode))
21658 : operands[2] = force_reg (V16SFmode, operands[2]);
21659 : if (!register_operand (operands[6], V16SFmode))
21660 : operands[6] = force_reg (V16SFmode, operands[6]);
21661 : operands[5] = GEN_INT (reg_mask);
21662 : }
21663 : #undef DONE
21664 : #undef FAIL
21665 : static const uint8_t expand_encoding[] = {
21666 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
21667 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21668 : 0x25
21669 : };
21670 : return complete_seq (expand_encoding, operands);
21671 : }
21672 :
21673 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21674 : extern rtx_insn *gen_split_2252 (rtx_insn *, rtx *);
21675 : rtx_insn *
21676 : gen_split_2252 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21677 : {
21678 : if (dump_file)
21679 : fprintf (dump_file, "Splitting with gen_split_2252 (sse.md:14142)\n");
21680 : start_sequence ();
21681 : #define FAIL return (end_sequence (), nullptr)
21682 : #define DONE return end_sequence ()
21683 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21684 : {
21685 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21686 : int reg6 = 0xF0;
21687 : int reg2 = 0xCC;
21688 : int reg1 = 0xAA;
21689 : int reg3 = 0;
21690 : int reg4 = 0;
21691 : int reg_mask, tmp1, tmp2;
21692 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21693 : STRIP_UNARY (operands[4])))
21694 : {
21695 : reg4 = reg1;
21696 : reg3 = reg6;
21697 : operands[6] = operands[3];
21698 : }
21699 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21700 : STRIP_UNARY (operands[4])))
21701 : {
21702 : reg4 = reg2;
21703 : reg3 = reg6;
21704 : operands[6] = operands[3];
21705 : }
21706 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21707 : STRIP_UNARY (operands[3])))
21708 : {
21709 : reg4 = reg6;
21710 : reg3 = reg1;
21711 : operands[6] = operands[4];
21712 : }
21713 : else
21714 : {
21715 : reg4 = reg6;
21716 : reg3 = reg2;
21717 : operands[6] = operands[4];
21718 : }
21719 :
21720 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21721 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21722 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21723 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21724 :
21725 : tmp1 = reg1 & reg2;
21726 : tmp2 = reg3 ^ reg4;
21727 : reg_mask = tmp1 & tmp2;
21728 : reg_mask &= 0xFF;
21729 :
21730 : operands[1] = STRIP_UNARY (operands[1]);
21731 : operands[2] = STRIP_UNARY (operands[2]);
21732 : operands[6] = STRIP_UNARY (operands[6]);
21733 : if (!register_operand (operands[2], V8SFmode))
21734 : operands[2] = force_reg (V8SFmode, operands[2]);
21735 : if (!register_operand (operands[6], V8SFmode))
21736 : operands[6] = force_reg (V8SFmode, operands[6]);
21737 : operands[5] = GEN_INT (reg_mask);
21738 : }
21739 : #undef DONE
21740 : #undef FAIL
21741 : static const uint8_t expand_encoding[] = {
21742 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
21743 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21744 : 0x25
21745 : };
21746 : return complete_seq (expand_encoding, operands);
21747 : }
21748 :
21749 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21750 : extern rtx_insn *gen_split_2262 (rtx_insn *, rtx *);
21751 : rtx_insn *
21752 : gen_split_2262 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21753 : {
21754 : if (dump_file)
21755 : fprintf (dump_file, "Splitting with gen_split_2262 (sse.md:14142)\n");
21756 : start_sequence ();
21757 : #define FAIL return (end_sequence (), nullptr)
21758 : #define DONE return end_sequence ()
21759 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21760 : {
21761 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21762 : int reg6 = 0xF0;
21763 : int reg2 = 0xCC;
21764 : int reg1 = 0xAA;
21765 : int reg3 = 0;
21766 : int reg4 = 0;
21767 : int reg_mask, tmp1, tmp2;
21768 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21769 : STRIP_UNARY (operands[4])))
21770 : {
21771 : reg4 = reg1;
21772 : reg3 = reg6;
21773 : operands[6] = operands[3];
21774 : }
21775 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21776 : STRIP_UNARY (operands[4])))
21777 : {
21778 : reg4 = reg2;
21779 : reg3 = reg6;
21780 : operands[6] = operands[3];
21781 : }
21782 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21783 : STRIP_UNARY (operands[3])))
21784 : {
21785 : reg4 = reg6;
21786 : reg3 = reg1;
21787 : operands[6] = operands[4];
21788 : }
21789 : else
21790 : {
21791 : reg4 = reg6;
21792 : reg3 = reg2;
21793 : operands[6] = operands[4];
21794 : }
21795 :
21796 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21797 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21798 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21799 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21800 :
21801 : tmp1 = reg1 | reg2;
21802 : tmp2 = reg3 ^ reg4;
21803 : reg_mask = tmp1 | tmp2;
21804 : reg_mask &= 0xFF;
21805 :
21806 : operands[1] = STRIP_UNARY (operands[1]);
21807 : operands[2] = STRIP_UNARY (operands[2]);
21808 : operands[6] = STRIP_UNARY (operands[6]);
21809 : if (!register_operand (operands[2], V8SFmode))
21810 : operands[2] = force_reg (V8SFmode, operands[2]);
21811 : if (!register_operand (operands[6], V8SFmode))
21812 : operands[6] = force_reg (V8SFmode, operands[6]);
21813 : operands[5] = GEN_INT (reg_mask);
21814 : }
21815 : #undef DONE
21816 : #undef FAIL
21817 : static const uint8_t expand_encoding[] = {
21818 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
21819 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21820 : 0x25
21821 : };
21822 : return complete_seq (expand_encoding, operands);
21823 : }
21824 :
21825 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21826 : extern rtx_insn *gen_split_2272 (rtx_insn *, rtx *);
21827 : rtx_insn *
21828 : gen_split_2272 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21829 : {
21830 : if (dump_file)
21831 : fprintf (dump_file, "Splitting with gen_split_2272 (sse.md:14142)\n");
21832 : start_sequence ();
21833 : #define FAIL return (end_sequence (), nullptr)
21834 : #define DONE return end_sequence ()
21835 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21836 : {
21837 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21838 : int reg6 = 0xF0;
21839 : int reg2 = 0xCC;
21840 : int reg1 = 0xAA;
21841 : int reg3 = 0;
21842 : int reg4 = 0;
21843 : int reg_mask, tmp1, tmp2;
21844 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21845 : STRIP_UNARY (operands[4])))
21846 : {
21847 : reg4 = reg1;
21848 : reg3 = reg6;
21849 : operands[6] = operands[3];
21850 : }
21851 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21852 : STRIP_UNARY (operands[4])))
21853 : {
21854 : reg4 = reg2;
21855 : reg3 = reg6;
21856 : operands[6] = operands[3];
21857 : }
21858 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21859 : STRIP_UNARY (operands[3])))
21860 : {
21861 : reg4 = reg6;
21862 : reg3 = reg1;
21863 : operands[6] = operands[4];
21864 : }
21865 : else
21866 : {
21867 : reg4 = reg6;
21868 : reg3 = reg2;
21869 : operands[6] = operands[4];
21870 : }
21871 :
21872 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21873 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21874 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21875 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21876 :
21877 : tmp1 = reg1 ^ reg2;
21878 : tmp2 = reg3 ^ reg4;
21879 : reg_mask = tmp1 ^ tmp2;
21880 : reg_mask &= 0xFF;
21881 :
21882 : operands[1] = STRIP_UNARY (operands[1]);
21883 : operands[2] = STRIP_UNARY (operands[2]);
21884 : operands[6] = STRIP_UNARY (operands[6]);
21885 : if (!register_operand (operands[2], V8SFmode))
21886 : operands[2] = force_reg (V8SFmode, operands[2]);
21887 : if (!register_operand (operands[6], V8SFmode))
21888 : operands[6] = force_reg (V8SFmode, operands[6]);
21889 : operands[5] = GEN_INT (reg_mask);
21890 : }
21891 : #undef DONE
21892 : #undef FAIL
21893 : static const uint8_t expand_encoding[] = {
21894 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
21895 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21896 : 0x25
21897 : };
21898 : return complete_seq (expand_encoding, operands);
21899 : }
21900 :
21901 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21902 : extern rtx_insn *gen_split_2282 (rtx_insn *, rtx *);
21903 : rtx_insn *
21904 : gen_split_2282 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21905 : {
21906 : if (dump_file)
21907 : fprintf (dump_file, "Splitting with gen_split_2282 (sse.md:14142)\n");
21908 : start_sequence ();
21909 : #define FAIL return (end_sequence (), nullptr)
21910 : #define DONE return end_sequence ()
21911 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21912 : {
21913 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21914 : int reg6 = 0xF0;
21915 : int reg2 = 0xCC;
21916 : int reg1 = 0xAA;
21917 : int reg3 = 0;
21918 : int reg4 = 0;
21919 : int reg_mask, tmp1, tmp2;
21920 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21921 : STRIP_UNARY (operands[4])))
21922 : {
21923 : reg4 = reg1;
21924 : reg3 = reg6;
21925 : operands[6] = operands[3];
21926 : }
21927 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21928 : STRIP_UNARY (operands[4])))
21929 : {
21930 : reg4 = reg2;
21931 : reg3 = reg6;
21932 : operands[6] = operands[3];
21933 : }
21934 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21935 : STRIP_UNARY (operands[3])))
21936 : {
21937 : reg4 = reg6;
21938 : reg3 = reg1;
21939 : operands[6] = operands[4];
21940 : }
21941 : else
21942 : {
21943 : reg4 = reg6;
21944 : reg3 = reg2;
21945 : operands[6] = operands[4];
21946 : }
21947 :
21948 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21949 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21950 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21951 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21952 :
21953 : tmp1 = reg1 | reg2;
21954 : tmp2 = reg3 & reg4;
21955 : reg_mask = tmp1 & tmp2;
21956 : reg_mask &= 0xFF;
21957 :
21958 : operands[1] = STRIP_UNARY (operands[1]);
21959 : operands[2] = STRIP_UNARY (operands[2]);
21960 : operands[6] = STRIP_UNARY (operands[6]);
21961 : if (!register_operand (operands[2], V4SFmode))
21962 : operands[2] = force_reg (V4SFmode, operands[2]);
21963 : if (!register_operand (operands[6], V4SFmode))
21964 : operands[6] = force_reg (V4SFmode, operands[6]);
21965 : operands[5] = GEN_INT (reg_mask);
21966 : }
21967 : #undef DONE
21968 : #undef FAIL
21969 : static const uint8_t expand_encoding[] = {
21970 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
21971 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21972 : 0x25
21973 : };
21974 : return complete_seq (expand_encoding, operands);
21975 : }
21976 :
21977 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21978 : extern rtx_insn *gen_split_2292 (rtx_insn *, rtx *);
21979 : rtx_insn *
21980 : gen_split_2292 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21981 : {
21982 : if (dump_file)
21983 : fprintf (dump_file, "Splitting with gen_split_2292 (sse.md:14142)\n");
21984 : start_sequence ();
21985 : #define FAIL return (end_sequence (), nullptr)
21986 : #define DONE return end_sequence ()
21987 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21988 : {
21989 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21990 : int reg6 = 0xF0;
21991 : int reg2 = 0xCC;
21992 : int reg1 = 0xAA;
21993 : int reg3 = 0;
21994 : int reg4 = 0;
21995 : int reg_mask, tmp1, tmp2;
21996 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21997 : STRIP_UNARY (operands[4])))
21998 : {
21999 : reg4 = reg1;
22000 : reg3 = reg6;
22001 : operands[6] = operands[3];
22002 : }
22003 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22004 : STRIP_UNARY (operands[4])))
22005 : {
22006 : reg4 = reg2;
22007 : reg3 = reg6;
22008 : operands[6] = operands[3];
22009 : }
22010 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22011 : STRIP_UNARY (operands[3])))
22012 : {
22013 : reg4 = reg6;
22014 : reg3 = reg1;
22015 : operands[6] = operands[4];
22016 : }
22017 : else
22018 : {
22019 : reg4 = reg6;
22020 : reg3 = reg2;
22021 : operands[6] = operands[4];
22022 : }
22023 :
22024 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22025 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22026 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22027 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22028 :
22029 : tmp1 = reg1 ^ reg2;
22030 : tmp2 = reg3 & reg4;
22031 : reg_mask = tmp1 | tmp2;
22032 : reg_mask &= 0xFF;
22033 :
22034 : operands[1] = STRIP_UNARY (operands[1]);
22035 : operands[2] = STRIP_UNARY (operands[2]);
22036 : operands[6] = STRIP_UNARY (operands[6]);
22037 : if (!register_operand (operands[2], V4SFmode))
22038 : operands[2] = force_reg (V4SFmode, operands[2]);
22039 : if (!register_operand (operands[6], V4SFmode))
22040 : operands[6] = force_reg (V4SFmode, operands[6]);
22041 : operands[5] = GEN_INT (reg_mask);
22042 : }
22043 : #undef DONE
22044 : #undef FAIL
22045 : static const uint8_t expand_encoding[] = {
22046 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
22047 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22048 : 0x25
22049 : };
22050 : return complete_seq (expand_encoding, operands);
22051 : }
22052 :
22053 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22054 : extern rtx_insn *gen_split_2302 (rtx_insn *, rtx *);
22055 : rtx_insn *
22056 : gen_split_2302 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22057 : {
22058 : if (dump_file)
22059 : fprintf (dump_file, "Splitting with gen_split_2302 (sse.md:14142)\n");
22060 : start_sequence ();
22061 : #define FAIL return (end_sequence (), nullptr)
22062 : #define DONE return end_sequence ()
22063 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22064 : {
22065 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22066 : int reg6 = 0xF0;
22067 : int reg2 = 0xCC;
22068 : int reg1 = 0xAA;
22069 : int reg3 = 0;
22070 : int reg4 = 0;
22071 : int reg_mask, tmp1, tmp2;
22072 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22073 : STRIP_UNARY (operands[4])))
22074 : {
22075 : reg4 = reg1;
22076 : reg3 = reg6;
22077 : operands[6] = operands[3];
22078 : }
22079 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22080 : STRIP_UNARY (operands[4])))
22081 : {
22082 : reg4 = reg2;
22083 : reg3 = reg6;
22084 : operands[6] = operands[3];
22085 : }
22086 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22087 : STRIP_UNARY (operands[3])))
22088 : {
22089 : reg4 = reg6;
22090 : reg3 = reg1;
22091 : operands[6] = operands[4];
22092 : }
22093 : else
22094 : {
22095 : reg4 = reg6;
22096 : reg3 = reg2;
22097 : operands[6] = operands[4];
22098 : }
22099 :
22100 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22101 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22102 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22103 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22104 :
22105 : tmp1 = reg1 & reg2;
22106 : tmp2 = reg3 & reg4;
22107 : reg_mask = tmp1 ^ tmp2;
22108 : reg_mask &= 0xFF;
22109 :
22110 : operands[1] = STRIP_UNARY (operands[1]);
22111 : operands[2] = STRIP_UNARY (operands[2]);
22112 : operands[6] = STRIP_UNARY (operands[6]);
22113 : if (!register_operand (operands[2], V8DFmode))
22114 : operands[2] = force_reg (V8DFmode, operands[2]);
22115 : if (!register_operand (operands[6], V8DFmode))
22116 : operands[6] = force_reg (V8DFmode, operands[6]);
22117 : operands[5] = GEN_INT (reg_mask);
22118 : }
22119 : #undef DONE
22120 : #undef FAIL
22121 : static const uint8_t expand_encoding[] = {
22122 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
22123 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22124 : 0x25
22125 : };
22126 : return complete_seq (expand_encoding, operands);
22127 : }
22128 :
22129 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22130 : extern rtx_insn *gen_split_2312 (rtx_insn *, rtx *);
22131 : rtx_insn *
22132 : gen_split_2312 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22133 : {
22134 : if (dump_file)
22135 : fprintf (dump_file, "Splitting with gen_split_2312 (sse.md:14142)\n");
22136 : start_sequence ();
22137 : #define FAIL return (end_sequence (), nullptr)
22138 : #define DONE return end_sequence ()
22139 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22140 : {
22141 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22142 : int reg6 = 0xF0;
22143 : int reg2 = 0xCC;
22144 : int reg1 = 0xAA;
22145 : int reg3 = 0;
22146 : int reg4 = 0;
22147 : int reg_mask, tmp1, tmp2;
22148 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22149 : STRIP_UNARY (operands[4])))
22150 : {
22151 : reg4 = reg1;
22152 : reg3 = reg6;
22153 : operands[6] = operands[3];
22154 : }
22155 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22156 : STRIP_UNARY (operands[4])))
22157 : {
22158 : reg4 = reg2;
22159 : reg3 = reg6;
22160 : operands[6] = operands[3];
22161 : }
22162 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22163 : STRIP_UNARY (operands[3])))
22164 : {
22165 : reg4 = reg6;
22166 : reg3 = reg1;
22167 : operands[6] = operands[4];
22168 : }
22169 : else
22170 : {
22171 : reg4 = reg6;
22172 : reg3 = reg2;
22173 : operands[6] = operands[4];
22174 : }
22175 :
22176 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22177 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22178 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22179 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22180 :
22181 : tmp1 = reg1 | reg2;
22182 : tmp2 = reg3 | reg4;
22183 : reg_mask = tmp1 & tmp2;
22184 : reg_mask &= 0xFF;
22185 :
22186 : operands[1] = STRIP_UNARY (operands[1]);
22187 : operands[2] = STRIP_UNARY (operands[2]);
22188 : operands[6] = STRIP_UNARY (operands[6]);
22189 : if (!register_operand (operands[2], V8DFmode))
22190 : operands[2] = force_reg (V8DFmode, operands[2]);
22191 : if (!register_operand (operands[6], V8DFmode))
22192 : operands[6] = force_reg (V8DFmode, operands[6]);
22193 : operands[5] = GEN_INT (reg_mask);
22194 : }
22195 : #undef DONE
22196 : #undef FAIL
22197 : static const uint8_t expand_encoding[] = {
22198 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
22199 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22200 : 0x25
22201 : };
22202 : return complete_seq (expand_encoding, operands);
22203 : }
22204 :
22205 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22206 : extern rtx_insn *gen_split_2322 (rtx_insn *, rtx *);
22207 : rtx_insn *
22208 : gen_split_2322 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22209 : {
22210 : if (dump_file)
22211 : fprintf (dump_file, "Splitting with gen_split_2322 (sse.md:14142)\n");
22212 : start_sequence ();
22213 : #define FAIL return (end_sequence (), nullptr)
22214 : #define DONE return end_sequence ()
22215 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22216 : {
22217 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22218 : int reg6 = 0xF0;
22219 : int reg2 = 0xCC;
22220 : int reg1 = 0xAA;
22221 : int reg3 = 0;
22222 : int reg4 = 0;
22223 : int reg_mask, tmp1, tmp2;
22224 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22225 : STRIP_UNARY (operands[4])))
22226 : {
22227 : reg4 = reg1;
22228 : reg3 = reg6;
22229 : operands[6] = operands[3];
22230 : }
22231 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22232 : STRIP_UNARY (operands[4])))
22233 : {
22234 : reg4 = reg2;
22235 : reg3 = reg6;
22236 : operands[6] = operands[3];
22237 : }
22238 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22239 : STRIP_UNARY (operands[3])))
22240 : {
22241 : reg4 = reg6;
22242 : reg3 = reg1;
22243 : operands[6] = operands[4];
22244 : }
22245 : else
22246 : {
22247 : reg4 = reg6;
22248 : reg3 = reg2;
22249 : operands[6] = operands[4];
22250 : }
22251 :
22252 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22253 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22254 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22255 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22256 :
22257 : tmp1 = reg1 ^ reg2;
22258 : tmp2 = reg3 | reg4;
22259 : reg_mask = tmp1 | tmp2;
22260 : reg_mask &= 0xFF;
22261 :
22262 : operands[1] = STRIP_UNARY (operands[1]);
22263 : operands[2] = STRIP_UNARY (operands[2]);
22264 : operands[6] = STRIP_UNARY (operands[6]);
22265 : if (!register_operand (operands[2], V8DFmode))
22266 : operands[2] = force_reg (V8DFmode, operands[2]);
22267 : if (!register_operand (operands[6], V8DFmode))
22268 : operands[6] = force_reg (V8DFmode, operands[6]);
22269 : operands[5] = GEN_INT (reg_mask);
22270 : }
22271 : #undef DONE
22272 : #undef FAIL
22273 : static const uint8_t expand_encoding[] = {
22274 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
22275 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22276 : 0x25
22277 : };
22278 : return complete_seq (expand_encoding, operands);
22279 : }
22280 :
22281 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22282 : extern rtx_insn *gen_split_2332 (rtx_insn *, rtx *);
22283 : rtx_insn *
22284 : gen_split_2332 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22285 : {
22286 : if (dump_file)
22287 : fprintf (dump_file, "Splitting with gen_split_2332 (sse.md:14142)\n");
22288 : start_sequence ();
22289 : #define FAIL return (end_sequence (), nullptr)
22290 : #define DONE return end_sequence ()
22291 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22292 : {
22293 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22294 : int reg6 = 0xF0;
22295 : int reg2 = 0xCC;
22296 : int reg1 = 0xAA;
22297 : int reg3 = 0;
22298 : int reg4 = 0;
22299 : int reg_mask, tmp1, tmp2;
22300 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22301 : STRIP_UNARY (operands[4])))
22302 : {
22303 : reg4 = reg1;
22304 : reg3 = reg6;
22305 : operands[6] = operands[3];
22306 : }
22307 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22308 : STRIP_UNARY (operands[4])))
22309 : {
22310 : reg4 = reg2;
22311 : reg3 = reg6;
22312 : operands[6] = operands[3];
22313 : }
22314 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22315 : STRIP_UNARY (operands[3])))
22316 : {
22317 : reg4 = reg6;
22318 : reg3 = reg1;
22319 : operands[6] = operands[4];
22320 : }
22321 : else
22322 : {
22323 : reg4 = reg6;
22324 : reg3 = reg2;
22325 : operands[6] = operands[4];
22326 : }
22327 :
22328 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22329 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22330 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22331 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22332 :
22333 : tmp1 = reg1 & reg2;
22334 : tmp2 = reg3 | reg4;
22335 : reg_mask = tmp1 ^ tmp2;
22336 : reg_mask &= 0xFF;
22337 :
22338 : operands[1] = STRIP_UNARY (operands[1]);
22339 : operands[2] = STRIP_UNARY (operands[2]);
22340 : operands[6] = STRIP_UNARY (operands[6]);
22341 : if (!register_operand (operands[2], V4DFmode))
22342 : operands[2] = force_reg (V4DFmode, operands[2]);
22343 : if (!register_operand (operands[6], V4DFmode))
22344 : operands[6] = force_reg (V4DFmode, operands[6]);
22345 : operands[5] = GEN_INT (reg_mask);
22346 : }
22347 : #undef DONE
22348 : #undef FAIL
22349 : static const uint8_t expand_encoding[] = {
22350 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
22351 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22352 : 0x25
22353 : };
22354 : return complete_seq (expand_encoding, operands);
22355 : }
22356 :
22357 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22358 : extern rtx_insn *gen_split_2342 (rtx_insn *, rtx *);
22359 : rtx_insn *
22360 : gen_split_2342 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22361 : {
22362 : if (dump_file)
22363 : fprintf (dump_file, "Splitting with gen_split_2342 (sse.md:14142)\n");
22364 : start_sequence ();
22365 : #define FAIL return (end_sequence (), nullptr)
22366 : #define DONE return end_sequence ()
22367 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22368 : {
22369 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22370 : int reg6 = 0xF0;
22371 : int reg2 = 0xCC;
22372 : int reg1 = 0xAA;
22373 : int reg3 = 0;
22374 : int reg4 = 0;
22375 : int reg_mask, tmp1, tmp2;
22376 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22377 : STRIP_UNARY (operands[4])))
22378 : {
22379 : reg4 = reg1;
22380 : reg3 = reg6;
22381 : operands[6] = operands[3];
22382 : }
22383 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22384 : STRIP_UNARY (operands[4])))
22385 : {
22386 : reg4 = reg2;
22387 : reg3 = reg6;
22388 : operands[6] = operands[3];
22389 : }
22390 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22391 : STRIP_UNARY (operands[3])))
22392 : {
22393 : reg4 = reg6;
22394 : reg3 = reg1;
22395 : operands[6] = operands[4];
22396 : }
22397 : else
22398 : {
22399 : reg4 = reg6;
22400 : reg3 = reg2;
22401 : operands[6] = operands[4];
22402 : }
22403 :
22404 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22405 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22406 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22407 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22408 :
22409 : tmp1 = reg1 | reg2;
22410 : tmp2 = reg3 ^ reg4;
22411 : reg_mask = tmp1 & tmp2;
22412 : reg_mask &= 0xFF;
22413 :
22414 : operands[1] = STRIP_UNARY (operands[1]);
22415 : operands[2] = STRIP_UNARY (operands[2]);
22416 : operands[6] = STRIP_UNARY (operands[6]);
22417 : if (!register_operand (operands[2], V4DFmode))
22418 : operands[2] = force_reg (V4DFmode, operands[2]);
22419 : if (!register_operand (operands[6], V4DFmode))
22420 : operands[6] = force_reg (V4DFmode, operands[6]);
22421 : operands[5] = GEN_INT (reg_mask);
22422 : }
22423 : #undef DONE
22424 : #undef FAIL
22425 : static const uint8_t expand_encoding[] = {
22426 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
22427 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22428 : 0x25
22429 : };
22430 : return complete_seq (expand_encoding, operands);
22431 : }
22432 :
22433 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22434 : extern rtx_insn *gen_split_2352 (rtx_insn *, rtx *);
22435 : rtx_insn *
22436 : gen_split_2352 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22437 : {
22438 : if (dump_file)
22439 : fprintf (dump_file, "Splitting with gen_split_2352 (sse.md:14142)\n");
22440 : start_sequence ();
22441 : #define FAIL return (end_sequence (), nullptr)
22442 : #define DONE return end_sequence ()
22443 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22444 : {
22445 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22446 : int reg6 = 0xF0;
22447 : int reg2 = 0xCC;
22448 : int reg1 = 0xAA;
22449 : int reg3 = 0;
22450 : int reg4 = 0;
22451 : int reg_mask, tmp1, tmp2;
22452 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22453 : STRIP_UNARY (operands[4])))
22454 : {
22455 : reg4 = reg1;
22456 : reg3 = reg6;
22457 : operands[6] = operands[3];
22458 : }
22459 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22460 : STRIP_UNARY (operands[4])))
22461 : {
22462 : reg4 = reg2;
22463 : reg3 = reg6;
22464 : operands[6] = operands[3];
22465 : }
22466 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22467 : STRIP_UNARY (operands[3])))
22468 : {
22469 : reg4 = reg6;
22470 : reg3 = reg1;
22471 : operands[6] = operands[4];
22472 : }
22473 : else
22474 : {
22475 : reg4 = reg6;
22476 : reg3 = reg2;
22477 : operands[6] = operands[4];
22478 : }
22479 :
22480 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22481 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22482 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22483 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22484 :
22485 : tmp1 = reg1 ^ reg2;
22486 : tmp2 = reg3 ^ reg4;
22487 : reg_mask = tmp1 | tmp2;
22488 : reg_mask &= 0xFF;
22489 :
22490 : operands[1] = STRIP_UNARY (operands[1]);
22491 : operands[2] = STRIP_UNARY (operands[2]);
22492 : operands[6] = STRIP_UNARY (operands[6]);
22493 : if (!register_operand (operands[2], V4DFmode))
22494 : operands[2] = force_reg (V4DFmode, operands[2]);
22495 : if (!register_operand (operands[6], V4DFmode))
22496 : operands[6] = force_reg (V4DFmode, operands[6]);
22497 : operands[5] = GEN_INT (reg_mask);
22498 : }
22499 : #undef DONE
22500 : #undef FAIL
22501 : static const uint8_t expand_encoding[] = {
22502 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
22503 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22504 : 0x25
22505 : };
22506 : return complete_seq (expand_encoding, operands);
22507 : }
22508 :
22509 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22510 : extern rtx_insn *gen_split_2362 (rtx_insn *, rtx *);
22511 : rtx_insn *
22512 : gen_split_2362 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22513 : {
22514 : if (dump_file)
22515 : fprintf (dump_file, "Splitting with gen_split_2362 (sse.md:14142)\n");
22516 : start_sequence ();
22517 : #define FAIL return (end_sequence (), nullptr)
22518 : #define DONE return end_sequence ()
22519 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22520 : {
22521 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22522 : int reg6 = 0xF0;
22523 : int reg2 = 0xCC;
22524 : int reg1 = 0xAA;
22525 : int reg3 = 0;
22526 : int reg4 = 0;
22527 : int reg_mask, tmp1, tmp2;
22528 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22529 : STRIP_UNARY (operands[4])))
22530 : {
22531 : reg4 = reg1;
22532 : reg3 = reg6;
22533 : operands[6] = operands[3];
22534 : }
22535 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22536 : STRIP_UNARY (operands[4])))
22537 : {
22538 : reg4 = reg2;
22539 : reg3 = reg6;
22540 : operands[6] = operands[3];
22541 : }
22542 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22543 : STRIP_UNARY (operands[3])))
22544 : {
22545 : reg4 = reg6;
22546 : reg3 = reg1;
22547 : operands[6] = operands[4];
22548 : }
22549 : else
22550 : {
22551 : reg4 = reg6;
22552 : reg3 = reg2;
22553 : operands[6] = operands[4];
22554 : }
22555 :
22556 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22557 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22558 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22559 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22560 :
22561 : tmp1 = reg1 & reg2;
22562 : tmp2 = reg3 ^ reg4;
22563 : reg_mask = tmp1 ^ tmp2;
22564 : reg_mask &= 0xFF;
22565 :
22566 : operands[1] = STRIP_UNARY (operands[1]);
22567 : operands[2] = STRIP_UNARY (operands[2]);
22568 : operands[6] = STRIP_UNARY (operands[6]);
22569 : if (!register_operand (operands[2], V2DFmode))
22570 : operands[2] = force_reg (V2DFmode, operands[2]);
22571 : if (!register_operand (operands[6], V2DFmode))
22572 : operands[6] = force_reg (V2DFmode, operands[6]);
22573 : operands[5] = GEN_INT (reg_mask);
22574 : }
22575 : #undef DONE
22576 : #undef FAIL
22577 : static const uint8_t expand_encoding[] = {
22578 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
22579 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22580 : 0x25
22581 : };
22582 : return complete_seq (expand_encoding, operands);
22583 : }
22584 :
22585 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22586 : extern rtx_insn *gen_split_2372 (rtx_insn *, rtx *);
22587 : rtx_insn *
22588 : gen_split_2372 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22589 : {
22590 : if (dump_file)
22591 : fprintf (dump_file, "Splitting with gen_split_2372 (sse.md:14142)\n");
22592 : start_sequence ();
22593 : #define FAIL return (end_sequence (), nullptr)
22594 : #define DONE return end_sequence ()
22595 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22596 : {
22597 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22598 : int reg6 = 0xF0;
22599 : int reg2 = 0xCC;
22600 : int reg1 = 0xAA;
22601 : int reg3 = 0;
22602 : int reg4 = 0;
22603 : int reg_mask, tmp1, tmp2;
22604 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22605 : STRIP_UNARY (operands[4])))
22606 : {
22607 : reg4 = reg1;
22608 : reg3 = reg6;
22609 : operands[6] = operands[3];
22610 : }
22611 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22612 : STRIP_UNARY (operands[4])))
22613 : {
22614 : reg4 = reg2;
22615 : reg3 = reg6;
22616 : operands[6] = operands[3];
22617 : }
22618 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22619 : STRIP_UNARY (operands[3])))
22620 : {
22621 : reg4 = reg6;
22622 : reg3 = reg1;
22623 : operands[6] = operands[4];
22624 : }
22625 : else
22626 : {
22627 : reg4 = reg6;
22628 : reg3 = reg2;
22629 : operands[6] = operands[4];
22630 : }
22631 :
22632 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22633 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22634 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22635 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22636 :
22637 : tmp1 = reg1 ^ reg2;
22638 : tmp2 = reg3 & reg4;
22639 : reg_mask = tmp1 & tmp2;
22640 : reg_mask &= 0xFF;
22641 :
22642 : operands[1] = STRIP_UNARY (operands[1]);
22643 : operands[2] = STRIP_UNARY (operands[2]);
22644 : operands[6] = STRIP_UNARY (operands[6]);
22645 : if (!register_operand (operands[2], V2DFmode))
22646 : operands[2] = force_reg (V2DFmode, operands[2]);
22647 : if (!register_operand (operands[6], V2DFmode))
22648 : operands[6] = force_reg (V2DFmode, operands[6]);
22649 : operands[5] = GEN_INT (reg_mask);
22650 : }
22651 : #undef DONE
22652 : #undef FAIL
22653 : static const uint8_t expand_encoding[] = {
22654 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
22655 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22656 : 0x25
22657 : };
22658 : return complete_seq (expand_encoding, operands);
22659 : }
22660 :
22661 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
22662 : extern rtx_insn *gen_split_2382 (rtx_insn *, rtx *);
22663 : rtx_insn *
22664 : gen_split_2382 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22665 : {
22666 : if (dump_file)
22667 : fprintf (dump_file, "Splitting with gen_split_2382 (sse.md:14227)\n");
22668 : start_sequence ();
22669 : #define FAIL return (end_sequence (), nullptr)
22670 : #define DONE return end_sequence ()
22671 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22672 : {
22673 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22674 : int reg6 = 0xF0;
22675 : int reg2 = 0xCC;
22676 : int reg1 = 0xAA;
22677 : int reg3 = 0;
22678 : int reg4 = 0;
22679 : int reg_mask, tmp1, tmp2;
22680 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22681 : STRIP_UNARY (operands[4])))
22682 : {
22683 : reg4 = reg1;
22684 : reg3 = reg6;
22685 : operands[6] = operands[3];
22686 : }
22687 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22688 : STRIP_UNARY (operands[4])))
22689 : {
22690 : reg4 = reg2;
22691 : reg3 = reg6;
22692 : operands[6] = operands[3];
22693 : }
22694 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22695 : STRIP_UNARY (operands[3])))
22696 : {
22697 : reg4 = reg6;
22698 : reg3 = reg1;
22699 : operands[6] = operands[4];
22700 : }
22701 : else
22702 : {
22703 : reg4 = reg6;
22704 : reg3 = reg2;
22705 : operands[6] = operands[4];
22706 : }
22707 :
22708 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22709 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22710 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22711 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22712 :
22713 : tmp1 = reg1 & reg2;
22714 : tmp2 = tmp1 & reg3;
22715 : reg_mask = tmp2 | reg4;
22716 : reg_mask &= 0xFF;
22717 :
22718 : operands[1] = STRIP_UNARY (operands[1]);
22719 : operands[2] = STRIP_UNARY (operands[2]);
22720 : operands[6] = STRIP_UNARY (operands[6]);
22721 : operands[5] = GEN_INT (reg_mask);
22722 : if (!register_operand (operands[2], V64QImode))
22723 : operands[2] = force_reg (V64QImode, operands[2]);
22724 : if (!register_operand (operands[6], V64QImode))
22725 : operands[6] = force_reg (V64QImode, operands[6]);
22726 :
22727 : }
22728 : #undef DONE
22729 : #undef FAIL
22730 : static const uint8_t expand_encoding[] = {
22731 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
22732 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22733 : 0x25
22734 : };
22735 : return complete_seq (expand_encoding, operands);
22736 : }
22737 :
22738 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
22739 : extern rtx_insn *gen_split_2392 (rtx_insn *, rtx *);
22740 : rtx_insn *
22741 : gen_split_2392 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22742 : {
22743 : if (dump_file)
22744 : fprintf (dump_file, "Splitting with gen_split_2392 (sse.md:14227)\n");
22745 : start_sequence ();
22746 : #define FAIL return (end_sequence (), nullptr)
22747 : #define DONE return end_sequence ()
22748 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22749 : {
22750 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22751 : int reg6 = 0xF0;
22752 : int reg2 = 0xCC;
22753 : int reg1 = 0xAA;
22754 : int reg3 = 0;
22755 : int reg4 = 0;
22756 : int reg_mask, tmp1, tmp2;
22757 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22758 : STRIP_UNARY (operands[4])))
22759 : {
22760 : reg4 = reg1;
22761 : reg3 = reg6;
22762 : operands[6] = operands[3];
22763 : }
22764 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22765 : STRIP_UNARY (operands[4])))
22766 : {
22767 : reg4 = reg2;
22768 : reg3 = reg6;
22769 : operands[6] = operands[3];
22770 : }
22771 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22772 : STRIP_UNARY (operands[3])))
22773 : {
22774 : reg4 = reg6;
22775 : reg3 = reg1;
22776 : operands[6] = operands[4];
22777 : }
22778 : else
22779 : {
22780 : reg4 = reg6;
22781 : reg3 = reg2;
22782 : operands[6] = operands[4];
22783 : }
22784 :
22785 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22786 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22787 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22788 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22789 :
22790 : tmp1 = reg1 & reg2;
22791 : tmp2 = tmp1 | reg3;
22792 : reg_mask = tmp2 ^ reg4;
22793 : reg_mask &= 0xFF;
22794 :
22795 : operands[1] = STRIP_UNARY (operands[1]);
22796 : operands[2] = STRIP_UNARY (operands[2]);
22797 : operands[6] = STRIP_UNARY (operands[6]);
22798 : operands[5] = GEN_INT (reg_mask);
22799 : if (!register_operand (operands[2], V64QImode))
22800 : operands[2] = force_reg (V64QImode, operands[2]);
22801 : if (!register_operand (operands[6], V64QImode))
22802 : operands[6] = force_reg (V64QImode, operands[6]);
22803 :
22804 : }
22805 : #undef DONE
22806 : #undef FAIL
22807 : static const uint8_t expand_encoding[] = {
22808 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
22809 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22810 : 0x25
22811 : };
22812 : return complete_seq (expand_encoding, operands);
22813 : }
22814 :
22815 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
22816 : extern rtx_insn *gen_split_2402 (rtx_insn *, rtx *);
22817 : rtx_insn *
22818 : gen_split_2402 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22819 : {
22820 : if (dump_file)
22821 : fprintf (dump_file, "Splitting with gen_split_2402 (sse.md:14227)\n");
22822 : start_sequence ();
22823 : #define FAIL return (end_sequence (), nullptr)
22824 : #define DONE return end_sequence ()
22825 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22826 : {
22827 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22828 : int reg6 = 0xF0;
22829 : int reg2 = 0xCC;
22830 : int reg1 = 0xAA;
22831 : int reg3 = 0;
22832 : int reg4 = 0;
22833 : int reg_mask, tmp1, tmp2;
22834 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22835 : STRIP_UNARY (operands[4])))
22836 : {
22837 : reg4 = reg1;
22838 : reg3 = reg6;
22839 : operands[6] = operands[3];
22840 : }
22841 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22842 : STRIP_UNARY (operands[4])))
22843 : {
22844 : reg4 = reg2;
22845 : reg3 = reg6;
22846 : operands[6] = operands[3];
22847 : }
22848 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22849 : STRIP_UNARY (operands[3])))
22850 : {
22851 : reg4 = reg6;
22852 : reg3 = reg1;
22853 : operands[6] = operands[4];
22854 : }
22855 : else
22856 : {
22857 : reg4 = reg6;
22858 : reg3 = reg2;
22859 : operands[6] = operands[4];
22860 : }
22861 :
22862 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22863 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22864 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22865 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22866 :
22867 : tmp1 = reg1 | reg2;
22868 : tmp2 = tmp1 ^ reg3;
22869 : reg_mask = tmp2 & reg4;
22870 : reg_mask &= 0xFF;
22871 :
22872 : operands[1] = STRIP_UNARY (operands[1]);
22873 : operands[2] = STRIP_UNARY (operands[2]);
22874 : operands[6] = STRIP_UNARY (operands[6]);
22875 : operands[5] = GEN_INT (reg_mask);
22876 : if (!register_operand (operands[2], V64QImode))
22877 : operands[2] = force_reg (V64QImode, operands[2]);
22878 : if (!register_operand (operands[6], V64QImode))
22879 : operands[6] = force_reg (V64QImode, operands[6]);
22880 :
22881 : }
22882 : #undef DONE
22883 : #undef FAIL
22884 : static const uint8_t expand_encoding[] = {
22885 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
22886 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22887 : 0x25
22888 : };
22889 : return complete_seq (expand_encoding, operands);
22890 : }
22891 :
22892 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
22893 : extern rtx_insn *gen_split_2412 (rtx_insn *, rtx *);
22894 : rtx_insn *
22895 : gen_split_2412 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22896 : {
22897 : if (dump_file)
22898 : fprintf (dump_file, "Splitting with gen_split_2412 (sse.md:14227)\n");
22899 : start_sequence ();
22900 : #define FAIL return (end_sequence (), nullptr)
22901 : #define DONE return end_sequence ()
22902 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22903 : {
22904 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22905 : int reg6 = 0xF0;
22906 : int reg2 = 0xCC;
22907 : int reg1 = 0xAA;
22908 : int reg3 = 0;
22909 : int reg4 = 0;
22910 : int reg_mask, tmp1, tmp2;
22911 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22912 : STRIP_UNARY (operands[4])))
22913 : {
22914 : reg4 = reg1;
22915 : reg3 = reg6;
22916 : operands[6] = operands[3];
22917 : }
22918 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22919 : STRIP_UNARY (operands[4])))
22920 : {
22921 : reg4 = reg2;
22922 : reg3 = reg6;
22923 : operands[6] = operands[3];
22924 : }
22925 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22926 : STRIP_UNARY (operands[3])))
22927 : {
22928 : reg4 = reg6;
22929 : reg3 = reg1;
22930 : operands[6] = operands[4];
22931 : }
22932 : else
22933 : {
22934 : reg4 = reg6;
22935 : reg3 = reg2;
22936 : operands[6] = operands[4];
22937 : }
22938 :
22939 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22940 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22941 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22942 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22943 :
22944 : tmp1 = reg1 | reg2;
22945 : tmp2 = tmp1 & reg3;
22946 : reg_mask = tmp2 | reg4;
22947 : reg_mask &= 0xFF;
22948 :
22949 : operands[1] = STRIP_UNARY (operands[1]);
22950 : operands[2] = STRIP_UNARY (operands[2]);
22951 : operands[6] = STRIP_UNARY (operands[6]);
22952 : operands[5] = GEN_INT (reg_mask);
22953 : if (!register_operand (operands[2], V32QImode))
22954 : operands[2] = force_reg (V32QImode, operands[2]);
22955 : if (!register_operand (operands[6], V32QImode))
22956 : operands[6] = force_reg (V32QImode, operands[6]);
22957 :
22958 : }
22959 : #undef DONE
22960 : #undef FAIL
22961 : static const uint8_t expand_encoding[] = {
22962 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
22963 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22964 : 0x25
22965 : };
22966 : return complete_seq (expand_encoding, operands);
22967 : }
22968 :
22969 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
22970 : extern rtx_insn *gen_split_2422 (rtx_insn *, rtx *);
22971 : rtx_insn *
22972 : gen_split_2422 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22973 : {
22974 : if (dump_file)
22975 : fprintf (dump_file, "Splitting with gen_split_2422 (sse.md:14227)\n");
22976 : start_sequence ();
22977 : #define FAIL return (end_sequence (), nullptr)
22978 : #define DONE return end_sequence ()
22979 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22980 : {
22981 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22982 : int reg6 = 0xF0;
22983 : int reg2 = 0xCC;
22984 : int reg1 = 0xAA;
22985 : int reg3 = 0;
22986 : int reg4 = 0;
22987 : int reg_mask, tmp1, tmp2;
22988 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22989 : STRIP_UNARY (operands[4])))
22990 : {
22991 : reg4 = reg1;
22992 : reg3 = reg6;
22993 : operands[6] = operands[3];
22994 : }
22995 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22996 : STRIP_UNARY (operands[4])))
22997 : {
22998 : reg4 = reg2;
22999 : reg3 = reg6;
23000 : operands[6] = operands[3];
23001 : }
23002 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23003 : STRIP_UNARY (operands[3])))
23004 : {
23005 : reg4 = reg6;
23006 : reg3 = reg1;
23007 : operands[6] = operands[4];
23008 : }
23009 : else
23010 : {
23011 : reg4 = reg6;
23012 : reg3 = reg2;
23013 : operands[6] = operands[4];
23014 : }
23015 :
23016 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23017 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23018 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23019 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23020 :
23021 : tmp1 = reg1 | reg2;
23022 : tmp2 = tmp1 | reg3;
23023 : reg_mask = tmp2 ^ reg4;
23024 : reg_mask &= 0xFF;
23025 :
23026 : operands[1] = STRIP_UNARY (operands[1]);
23027 : operands[2] = STRIP_UNARY (operands[2]);
23028 : operands[6] = STRIP_UNARY (operands[6]);
23029 : operands[5] = GEN_INT (reg_mask);
23030 : if (!register_operand (operands[2], V32QImode))
23031 : operands[2] = force_reg (V32QImode, operands[2]);
23032 : if (!register_operand (operands[6], V32QImode))
23033 : operands[6] = force_reg (V32QImode, operands[6]);
23034 :
23035 : }
23036 : #undef DONE
23037 : #undef FAIL
23038 : static const uint8_t expand_encoding[] = {
23039 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
23040 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23041 : 0x25
23042 : };
23043 : return complete_seq (expand_encoding, operands);
23044 : }
23045 :
23046 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23047 : extern rtx_insn *gen_split_2432 (rtx_insn *, rtx *);
23048 : rtx_insn *
23049 : gen_split_2432 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23050 : {
23051 : if (dump_file)
23052 : fprintf (dump_file, "Splitting with gen_split_2432 (sse.md:14227)\n");
23053 : start_sequence ();
23054 : #define FAIL return (end_sequence (), nullptr)
23055 : #define DONE return end_sequence ()
23056 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23057 : {
23058 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23059 : int reg6 = 0xF0;
23060 : int reg2 = 0xCC;
23061 : int reg1 = 0xAA;
23062 : int reg3 = 0;
23063 : int reg4 = 0;
23064 : int reg_mask, tmp1, tmp2;
23065 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23066 : STRIP_UNARY (operands[4])))
23067 : {
23068 : reg4 = reg1;
23069 : reg3 = reg6;
23070 : operands[6] = operands[3];
23071 : }
23072 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23073 : STRIP_UNARY (operands[4])))
23074 : {
23075 : reg4 = reg2;
23076 : reg3 = reg6;
23077 : operands[6] = operands[3];
23078 : }
23079 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23080 : STRIP_UNARY (operands[3])))
23081 : {
23082 : reg4 = reg6;
23083 : reg3 = reg1;
23084 : operands[6] = operands[4];
23085 : }
23086 : else
23087 : {
23088 : reg4 = reg6;
23089 : reg3 = reg2;
23090 : operands[6] = operands[4];
23091 : }
23092 :
23093 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23094 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23095 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23096 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23097 :
23098 : tmp1 = reg1 ^ reg2;
23099 : tmp2 = tmp1 ^ reg3;
23100 : reg_mask = tmp2 & reg4;
23101 : reg_mask &= 0xFF;
23102 :
23103 : operands[1] = STRIP_UNARY (operands[1]);
23104 : operands[2] = STRIP_UNARY (operands[2]);
23105 : operands[6] = STRIP_UNARY (operands[6]);
23106 : operands[5] = GEN_INT (reg_mask);
23107 : if (!register_operand (operands[2], V32QImode))
23108 : operands[2] = force_reg (V32QImode, operands[2]);
23109 : if (!register_operand (operands[6], V32QImode))
23110 : operands[6] = force_reg (V32QImode, operands[6]);
23111 :
23112 : }
23113 : #undef DONE
23114 : #undef FAIL
23115 : static const uint8_t expand_encoding[] = {
23116 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
23117 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23118 : 0x25
23119 : };
23120 : return complete_seq (expand_encoding, operands);
23121 : }
23122 :
23123 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23124 : extern rtx_insn *gen_split_2442 (rtx_insn *, rtx *);
23125 : rtx_insn *
23126 : gen_split_2442 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23127 : {
23128 : if (dump_file)
23129 : fprintf (dump_file, "Splitting with gen_split_2442 (sse.md:14227)\n");
23130 : start_sequence ();
23131 : #define FAIL return (end_sequence (), nullptr)
23132 : #define DONE return end_sequence ()
23133 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23134 : {
23135 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23136 : int reg6 = 0xF0;
23137 : int reg2 = 0xCC;
23138 : int reg1 = 0xAA;
23139 : int reg3 = 0;
23140 : int reg4 = 0;
23141 : int reg_mask, tmp1, tmp2;
23142 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23143 : STRIP_UNARY (operands[4])))
23144 : {
23145 : reg4 = reg1;
23146 : reg3 = reg6;
23147 : operands[6] = operands[3];
23148 : }
23149 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23150 : STRIP_UNARY (operands[4])))
23151 : {
23152 : reg4 = reg2;
23153 : reg3 = reg6;
23154 : operands[6] = operands[3];
23155 : }
23156 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23157 : STRIP_UNARY (operands[3])))
23158 : {
23159 : reg4 = reg6;
23160 : reg3 = reg1;
23161 : operands[6] = operands[4];
23162 : }
23163 : else
23164 : {
23165 : reg4 = reg6;
23166 : reg3 = reg2;
23167 : operands[6] = operands[4];
23168 : }
23169 :
23170 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23171 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23172 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23173 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23174 :
23175 : tmp1 = reg1 ^ reg2;
23176 : tmp2 = tmp1 & reg3;
23177 : reg_mask = tmp2 | reg4;
23178 : reg_mask &= 0xFF;
23179 :
23180 : operands[1] = STRIP_UNARY (operands[1]);
23181 : operands[2] = STRIP_UNARY (operands[2]);
23182 : operands[6] = STRIP_UNARY (operands[6]);
23183 : operands[5] = GEN_INT (reg_mask);
23184 : if (!register_operand (operands[2], V16QImode))
23185 : operands[2] = force_reg (V16QImode, operands[2]);
23186 : if (!register_operand (operands[6], V16QImode))
23187 : operands[6] = force_reg (V16QImode, operands[6]);
23188 :
23189 : }
23190 : #undef DONE
23191 : #undef FAIL
23192 : static const uint8_t expand_encoding[] = {
23193 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
23194 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23195 : 0x25
23196 : };
23197 : return complete_seq (expand_encoding, operands);
23198 : }
23199 :
23200 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23201 : extern rtx_insn *gen_split_2452 (rtx_insn *, rtx *);
23202 : rtx_insn *
23203 : gen_split_2452 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23204 : {
23205 : if (dump_file)
23206 : fprintf (dump_file, "Splitting with gen_split_2452 (sse.md:14227)\n");
23207 : start_sequence ();
23208 : #define FAIL return (end_sequence (), nullptr)
23209 : #define DONE return end_sequence ()
23210 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23211 : {
23212 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23213 : int reg6 = 0xF0;
23214 : int reg2 = 0xCC;
23215 : int reg1 = 0xAA;
23216 : int reg3 = 0;
23217 : int reg4 = 0;
23218 : int reg_mask, tmp1, tmp2;
23219 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23220 : STRIP_UNARY (operands[4])))
23221 : {
23222 : reg4 = reg1;
23223 : reg3 = reg6;
23224 : operands[6] = operands[3];
23225 : }
23226 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23227 : STRIP_UNARY (operands[4])))
23228 : {
23229 : reg4 = reg2;
23230 : reg3 = reg6;
23231 : operands[6] = operands[3];
23232 : }
23233 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23234 : STRIP_UNARY (operands[3])))
23235 : {
23236 : reg4 = reg6;
23237 : reg3 = reg1;
23238 : operands[6] = operands[4];
23239 : }
23240 : else
23241 : {
23242 : reg4 = reg6;
23243 : reg3 = reg2;
23244 : operands[6] = operands[4];
23245 : }
23246 :
23247 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23248 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23249 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23250 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23251 :
23252 : tmp1 = reg1 ^ reg2;
23253 : tmp2 = tmp1 | reg3;
23254 : reg_mask = tmp2 ^ reg4;
23255 : reg_mask &= 0xFF;
23256 :
23257 : operands[1] = STRIP_UNARY (operands[1]);
23258 : operands[2] = STRIP_UNARY (operands[2]);
23259 : operands[6] = STRIP_UNARY (operands[6]);
23260 : operands[5] = GEN_INT (reg_mask);
23261 : if (!register_operand (operands[2], V16QImode))
23262 : operands[2] = force_reg (V16QImode, operands[2]);
23263 : if (!register_operand (operands[6], V16QImode))
23264 : operands[6] = force_reg (V16QImode, operands[6]);
23265 :
23266 : }
23267 : #undef DONE
23268 : #undef FAIL
23269 : static const uint8_t expand_encoding[] = {
23270 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
23271 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23272 : 0x25
23273 : };
23274 : return complete_seq (expand_encoding, operands);
23275 : }
23276 :
23277 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23278 : extern rtx_insn *gen_split_2462 (rtx_insn *, rtx *);
23279 : rtx_insn *
23280 : gen_split_2462 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23281 : {
23282 : if (dump_file)
23283 : fprintf (dump_file, "Splitting with gen_split_2462 (sse.md:14227)\n");
23284 : start_sequence ();
23285 : #define FAIL return (end_sequence (), nullptr)
23286 : #define DONE return end_sequence ()
23287 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23288 : {
23289 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23290 : int reg6 = 0xF0;
23291 : int reg2 = 0xCC;
23292 : int reg1 = 0xAA;
23293 : int reg3 = 0;
23294 : int reg4 = 0;
23295 : int reg_mask, tmp1, tmp2;
23296 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23297 : STRIP_UNARY (operands[4])))
23298 : {
23299 : reg4 = reg1;
23300 : reg3 = reg6;
23301 : operands[6] = operands[3];
23302 : }
23303 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23304 : STRIP_UNARY (operands[4])))
23305 : {
23306 : reg4 = reg2;
23307 : reg3 = reg6;
23308 : operands[6] = operands[3];
23309 : }
23310 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23311 : STRIP_UNARY (operands[3])))
23312 : {
23313 : reg4 = reg6;
23314 : reg3 = reg1;
23315 : operands[6] = operands[4];
23316 : }
23317 : else
23318 : {
23319 : reg4 = reg6;
23320 : reg3 = reg2;
23321 : operands[6] = operands[4];
23322 : }
23323 :
23324 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23325 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23326 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23327 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23328 :
23329 : tmp1 = reg1 & reg2;
23330 : tmp2 = tmp1 & reg3;
23331 : reg_mask = tmp2 & reg4;
23332 : reg_mask &= 0xFF;
23333 :
23334 : operands[1] = STRIP_UNARY (operands[1]);
23335 : operands[2] = STRIP_UNARY (operands[2]);
23336 : operands[6] = STRIP_UNARY (operands[6]);
23337 : operands[5] = GEN_INT (reg_mask);
23338 : if (!register_operand (operands[2], V32HImode))
23339 : operands[2] = force_reg (V32HImode, operands[2]);
23340 : if (!register_operand (operands[6], V32HImode))
23341 : operands[6] = force_reg (V32HImode, operands[6]);
23342 :
23343 : }
23344 : #undef DONE
23345 : #undef FAIL
23346 : static const uint8_t expand_encoding[] = {
23347 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
23348 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23349 : 0x25
23350 : };
23351 : return complete_seq (expand_encoding, operands);
23352 : }
23353 :
23354 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23355 : extern rtx_insn *gen_split_2472 (rtx_insn *, rtx *);
23356 : rtx_insn *
23357 : gen_split_2472 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23358 : {
23359 : if (dump_file)
23360 : fprintf (dump_file, "Splitting with gen_split_2472 (sse.md:14227)\n");
23361 : start_sequence ();
23362 : #define FAIL return (end_sequence (), nullptr)
23363 : #define DONE return end_sequence ()
23364 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23365 : {
23366 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23367 : int reg6 = 0xF0;
23368 : int reg2 = 0xCC;
23369 : int reg1 = 0xAA;
23370 : int reg3 = 0;
23371 : int reg4 = 0;
23372 : int reg_mask, tmp1, tmp2;
23373 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23374 : STRIP_UNARY (operands[4])))
23375 : {
23376 : reg4 = reg1;
23377 : reg3 = reg6;
23378 : operands[6] = operands[3];
23379 : }
23380 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23381 : STRIP_UNARY (operands[4])))
23382 : {
23383 : reg4 = reg2;
23384 : reg3 = reg6;
23385 : operands[6] = operands[3];
23386 : }
23387 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23388 : STRIP_UNARY (operands[3])))
23389 : {
23390 : reg4 = reg6;
23391 : reg3 = reg1;
23392 : operands[6] = operands[4];
23393 : }
23394 : else
23395 : {
23396 : reg4 = reg6;
23397 : reg3 = reg2;
23398 : operands[6] = operands[4];
23399 : }
23400 :
23401 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23402 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23403 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23404 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23405 :
23406 : tmp1 = reg1 & reg2;
23407 : tmp2 = tmp1 | reg3;
23408 : reg_mask = tmp2 | reg4;
23409 : reg_mask &= 0xFF;
23410 :
23411 : operands[1] = STRIP_UNARY (operands[1]);
23412 : operands[2] = STRIP_UNARY (operands[2]);
23413 : operands[6] = STRIP_UNARY (operands[6]);
23414 : operands[5] = GEN_INT (reg_mask);
23415 : if (!register_operand (operands[2], V32HImode))
23416 : operands[2] = force_reg (V32HImode, operands[2]);
23417 : if (!register_operand (operands[6], V32HImode))
23418 : operands[6] = force_reg (V32HImode, operands[6]);
23419 :
23420 : }
23421 : #undef DONE
23422 : #undef FAIL
23423 : static const uint8_t expand_encoding[] = {
23424 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
23425 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23426 : 0x25
23427 : };
23428 : return complete_seq (expand_encoding, operands);
23429 : }
23430 :
23431 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23432 : extern rtx_insn *gen_split_2482 (rtx_insn *, rtx *);
23433 : rtx_insn *
23434 : gen_split_2482 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23435 : {
23436 : if (dump_file)
23437 : fprintf (dump_file, "Splitting with gen_split_2482 (sse.md:14227)\n");
23438 : start_sequence ();
23439 : #define FAIL return (end_sequence (), nullptr)
23440 : #define DONE return end_sequence ()
23441 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23442 : {
23443 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23444 : int reg6 = 0xF0;
23445 : int reg2 = 0xCC;
23446 : int reg1 = 0xAA;
23447 : int reg3 = 0;
23448 : int reg4 = 0;
23449 : int reg_mask, tmp1, tmp2;
23450 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23451 : STRIP_UNARY (operands[4])))
23452 : {
23453 : reg4 = reg1;
23454 : reg3 = reg6;
23455 : operands[6] = operands[3];
23456 : }
23457 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23458 : STRIP_UNARY (operands[4])))
23459 : {
23460 : reg4 = reg2;
23461 : reg3 = reg6;
23462 : operands[6] = operands[3];
23463 : }
23464 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23465 : STRIP_UNARY (operands[3])))
23466 : {
23467 : reg4 = reg6;
23468 : reg3 = reg1;
23469 : operands[6] = operands[4];
23470 : }
23471 : else
23472 : {
23473 : reg4 = reg6;
23474 : reg3 = reg2;
23475 : operands[6] = operands[4];
23476 : }
23477 :
23478 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23479 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23480 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23481 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23482 :
23483 : tmp1 = reg1 & reg2;
23484 : tmp2 = tmp1 ^ reg3;
23485 : reg_mask = tmp2 ^ reg4;
23486 : reg_mask &= 0xFF;
23487 :
23488 : operands[1] = STRIP_UNARY (operands[1]);
23489 : operands[2] = STRIP_UNARY (operands[2]);
23490 : operands[6] = STRIP_UNARY (operands[6]);
23491 : operands[5] = GEN_INT (reg_mask);
23492 : if (!register_operand (operands[2], V32HImode))
23493 : operands[2] = force_reg (V32HImode, operands[2]);
23494 : if (!register_operand (operands[6], V32HImode))
23495 : operands[6] = force_reg (V32HImode, operands[6]);
23496 :
23497 : }
23498 : #undef DONE
23499 : #undef FAIL
23500 : static const uint8_t expand_encoding[] = {
23501 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
23502 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23503 : 0x25
23504 : };
23505 : return complete_seq (expand_encoding, operands);
23506 : }
23507 :
23508 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23509 : extern rtx_insn *gen_split_2492 (rtx_insn *, rtx *);
23510 : rtx_insn *
23511 : gen_split_2492 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23512 : {
23513 : if (dump_file)
23514 : fprintf (dump_file, "Splitting with gen_split_2492 (sse.md:14227)\n");
23515 : start_sequence ();
23516 : #define FAIL return (end_sequence (), nullptr)
23517 : #define DONE return end_sequence ()
23518 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23519 : {
23520 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23521 : int reg6 = 0xF0;
23522 : int reg2 = 0xCC;
23523 : int reg1 = 0xAA;
23524 : int reg3 = 0;
23525 : int reg4 = 0;
23526 : int reg_mask, tmp1, tmp2;
23527 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23528 : STRIP_UNARY (operands[4])))
23529 : {
23530 : reg4 = reg1;
23531 : reg3 = reg6;
23532 : operands[6] = operands[3];
23533 : }
23534 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23535 : STRIP_UNARY (operands[4])))
23536 : {
23537 : reg4 = reg2;
23538 : reg3 = reg6;
23539 : operands[6] = operands[3];
23540 : }
23541 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23542 : STRIP_UNARY (operands[3])))
23543 : {
23544 : reg4 = reg6;
23545 : reg3 = reg1;
23546 : operands[6] = operands[4];
23547 : }
23548 : else
23549 : {
23550 : reg4 = reg6;
23551 : reg3 = reg2;
23552 : operands[6] = operands[4];
23553 : }
23554 :
23555 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23556 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23557 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23558 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23559 :
23560 : tmp1 = reg1 | reg2;
23561 : tmp2 = tmp1 & reg3;
23562 : reg_mask = tmp2 & reg4;
23563 : reg_mask &= 0xFF;
23564 :
23565 : operands[1] = STRIP_UNARY (operands[1]);
23566 : operands[2] = STRIP_UNARY (operands[2]);
23567 : operands[6] = STRIP_UNARY (operands[6]);
23568 : operands[5] = GEN_INT (reg_mask);
23569 : if (!register_operand (operands[2], V16HImode))
23570 : operands[2] = force_reg (V16HImode, operands[2]);
23571 : if (!register_operand (operands[6], V16HImode))
23572 : operands[6] = force_reg (V16HImode, operands[6]);
23573 :
23574 : }
23575 : #undef DONE
23576 : #undef FAIL
23577 : static const uint8_t expand_encoding[] = {
23578 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
23579 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23580 : 0x25
23581 : };
23582 : return complete_seq (expand_encoding, operands);
23583 : }
23584 :
23585 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23586 : extern rtx_insn *gen_split_2502 (rtx_insn *, rtx *);
23587 : rtx_insn *
23588 : gen_split_2502 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23589 : {
23590 : if (dump_file)
23591 : fprintf (dump_file, "Splitting with gen_split_2502 (sse.md:14227)\n");
23592 : start_sequence ();
23593 : #define FAIL return (end_sequence (), nullptr)
23594 : #define DONE return end_sequence ()
23595 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23596 : {
23597 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23598 : int reg6 = 0xF0;
23599 : int reg2 = 0xCC;
23600 : int reg1 = 0xAA;
23601 : int reg3 = 0;
23602 : int reg4 = 0;
23603 : int reg_mask, tmp1, tmp2;
23604 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23605 : STRIP_UNARY (operands[4])))
23606 : {
23607 : reg4 = reg1;
23608 : reg3 = reg6;
23609 : operands[6] = operands[3];
23610 : }
23611 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23612 : STRIP_UNARY (operands[4])))
23613 : {
23614 : reg4 = reg2;
23615 : reg3 = reg6;
23616 : operands[6] = operands[3];
23617 : }
23618 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23619 : STRIP_UNARY (operands[3])))
23620 : {
23621 : reg4 = reg6;
23622 : reg3 = reg1;
23623 : operands[6] = operands[4];
23624 : }
23625 : else
23626 : {
23627 : reg4 = reg6;
23628 : reg3 = reg2;
23629 : operands[6] = operands[4];
23630 : }
23631 :
23632 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23633 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23634 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23635 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23636 :
23637 : tmp1 = reg1 | reg2;
23638 : tmp2 = tmp1 | reg3;
23639 : reg_mask = tmp2 | reg4;
23640 : reg_mask &= 0xFF;
23641 :
23642 : operands[1] = STRIP_UNARY (operands[1]);
23643 : operands[2] = STRIP_UNARY (operands[2]);
23644 : operands[6] = STRIP_UNARY (operands[6]);
23645 : operands[5] = GEN_INT (reg_mask);
23646 : if (!register_operand (operands[2], V16HImode))
23647 : operands[2] = force_reg (V16HImode, operands[2]);
23648 : if (!register_operand (operands[6], V16HImode))
23649 : operands[6] = force_reg (V16HImode, operands[6]);
23650 :
23651 : }
23652 : #undef DONE
23653 : #undef FAIL
23654 : static const uint8_t expand_encoding[] = {
23655 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
23656 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23657 : 0x25
23658 : };
23659 : return complete_seq (expand_encoding, operands);
23660 : }
23661 :
23662 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23663 : extern rtx_insn *gen_split_2512 (rtx_insn *, rtx *);
23664 : rtx_insn *
23665 : gen_split_2512 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23666 : {
23667 : if (dump_file)
23668 : fprintf (dump_file, "Splitting with gen_split_2512 (sse.md:14227)\n");
23669 : start_sequence ();
23670 : #define FAIL return (end_sequence (), nullptr)
23671 : #define DONE return end_sequence ()
23672 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23673 : {
23674 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23675 : int reg6 = 0xF0;
23676 : int reg2 = 0xCC;
23677 : int reg1 = 0xAA;
23678 : int reg3 = 0;
23679 : int reg4 = 0;
23680 : int reg_mask, tmp1, tmp2;
23681 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23682 : STRIP_UNARY (operands[4])))
23683 : {
23684 : reg4 = reg1;
23685 : reg3 = reg6;
23686 : operands[6] = operands[3];
23687 : }
23688 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23689 : STRIP_UNARY (operands[4])))
23690 : {
23691 : reg4 = reg2;
23692 : reg3 = reg6;
23693 : operands[6] = operands[3];
23694 : }
23695 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23696 : STRIP_UNARY (operands[3])))
23697 : {
23698 : reg4 = reg6;
23699 : reg3 = reg1;
23700 : operands[6] = operands[4];
23701 : }
23702 : else
23703 : {
23704 : reg4 = reg6;
23705 : reg3 = reg2;
23706 : operands[6] = operands[4];
23707 : }
23708 :
23709 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23710 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23711 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23712 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23713 :
23714 : tmp1 = reg1 | reg2;
23715 : tmp2 = tmp1 ^ reg3;
23716 : reg_mask = tmp2 ^ reg4;
23717 : reg_mask &= 0xFF;
23718 :
23719 : operands[1] = STRIP_UNARY (operands[1]);
23720 : operands[2] = STRIP_UNARY (operands[2]);
23721 : operands[6] = STRIP_UNARY (operands[6]);
23722 : operands[5] = GEN_INT (reg_mask);
23723 : if (!register_operand (operands[2], V16HImode))
23724 : operands[2] = force_reg (V16HImode, operands[2]);
23725 : if (!register_operand (operands[6], V16HImode))
23726 : operands[6] = force_reg (V16HImode, operands[6]);
23727 :
23728 : }
23729 : #undef DONE
23730 : #undef FAIL
23731 : static const uint8_t expand_encoding[] = {
23732 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
23733 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23734 : 0x25
23735 : };
23736 : return complete_seq (expand_encoding, operands);
23737 : }
23738 :
23739 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23740 : extern rtx_insn *gen_split_2522 (rtx_insn *, rtx *);
23741 : rtx_insn *
23742 : gen_split_2522 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23743 : {
23744 : if (dump_file)
23745 : fprintf (dump_file, "Splitting with gen_split_2522 (sse.md:14227)\n");
23746 : start_sequence ();
23747 : #define FAIL return (end_sequence (), nullptr)
23748 : #define DONE return end_sequence ()
23749 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23750 : {
23751 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23752 : int reg6 = 0xF0;
23753 : int reg2 = 0xCC;
23754 : int reg1 = 0xAA;
23755 : int reg3 = 0;
23756 : int reg4 = 0;
23757 : int reg_mask, tmp1, tmp2;
23758 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23759 : STRIP_UNARY (operands[4])))
23760 : {
23761 : reg4 = reg1;
23762 : reg3 = reg6;
23763 : operands[6] = operands[3];
23764 : }
23765 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23766 : STRIP_UNARY (operands[4])))
23767 : {
23768 : reg4 = reg2;
23769 : reg3 = reg6;
23770 : operands[6] = operands[3];
23771 : }
23772 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23773 : STRIP_UNARY (operands[3])))
23774 : {
23775 : reg4 = reg6;
23776 : reg3 = reg1;
23777 : operands[6] = operands[4];
23778 : }
23779 : else
23780 : {
23781 : reg4 = reg6;
23782 : reg3 = reg2;
23783 : operands[6] = operands[4];
23784 : }
23785 :
23786 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23787 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23788 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23789 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23790 :
23791 : tmp1 = reg1 ^ reg2;
23792 : tmp2 = tmp1 & reg3;
23793 : reg_mask = tmp2 & reg4;
23794 : reg_mask &= 0xFF;
23795 :
23796 : operands[1] = STRIP_UNARY (operands[1]);
23797 : operands[2] = STRIP_UNARY (operands[2]);
23798 : operands[6] = STRIP_UNARY (operands[6]);
23799 : operands[5] = GEN_INT (reg_mask);
23800 : if (!register_operand (operands[2], V8HImode))
23801 : operands[2] = force_reg (V8HImode, operands[2]);
23802 : if (!register_operand (operands[6], V8HImode))
23803 : operands[6] = force_reg (V8HImode, operands[6]);
23804 :
23805 : }
23806 : #undef DONE
23807 : #undef FAIL
23808 : static const uint8_t expand_encoding[] = {
23809 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
23810 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23811 : 0x25
23812 : };
23813 : return complete_seq (expand_encoding, operands);
23814 : }
23815 :
23816 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23817 : extern rtx_insn *gen_split_2532 (rtx_insn *, rtx *);
23818 : rtx_insn *
23819 : gen_split_2532 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23820 : {
23821 : if (dump_file)
23822 : fprintf (dump_file, "Splitting with gen_split_2532 (sse.md:14227)\n");
23823 : start_sequence ();
23824 : #define FAIL return (end_sequence (), nullptr)
23825 : #define DONE return end_sequence ()
23826 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23827 : {
23828 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23829 : int reg6 = 0xF0;
23830 : int reg2 = 0xCC;
23831 : int reg1 = 0xAA;
23832 : int reg3 = 0;
23833 : int reg4 = 0;
23834 : int reg_mask, tmp1, tmp2;
23835 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23836 : STRIP_UNARY (operands[4])))
23837 : {
23838 : reg4 = reg1;
23839 : reg3 = reg6;
23840 : operands[6] = operands[3];
23841 : }
23842 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23843 : STRIP_UNARY (operands[4])))
23844 : {
23845 : reg4 = reg2;
23846 : reg3 = reg6;
23847 : operands[6] = operands[3];
23848 : }
23849 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23850 : STRIP_UNARY (operands[3])))
23851 : {
23852 : reg4 = reg6;
23853 : reg3 = reg1;
23854 : operands[6] = operands[4];
23855 : }
23856 : else
23857 : {
23858 : reg4 = reg6;
23859 : reg3 = reg2;
23860 : operands[6] = operands[4];
23861 : }
23862 :
23863 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23864 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23865 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23866 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23867 :
23868 : tmp1 = reg1 ^ reg2;
23869 : tmp2 = tmp1 | reg3;
23870 : reg_mask = tmp2 | reg4;
23871 : reg_mask &= 0xFF;
23872 :
23873 : operands[1] = STRIP_UNARY (operands[1]);
23874 : operands[2] = STRIP_UNARY (operands[2]);
23875 : operands[6] = STRIP_UNARY (operands[6]);
23876 : operands[5] = GEN_INT (reg_mask);
23877 : if (!register_operand (operands[2], V8HImode))
23878 : operands[2] = force_reg (V8HImode, operands[2]);
23879 : if (!register_operand (operands[6], V8HImode))
23880 : operands[6] = force_reg (V8HImode, operands[6]);
23881 :
23882 : }
23883 : #undef DONE
23884 : #undef FAIL
23885 : static const uint8_t expand_encoding[] = {
23886 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
23887 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23888 : 0x25
23889 : };
23890 : return complete_seq (expand_encoding, operands);
23891 : }
23892 :
23893 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23894 : extern rtx_insn *gen_split_2542 (rtx_insn *, rtx *);
23895 : rtx_insn *
23896 : gen_split_2542 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23897 : {
23898 : if (dump_file)
23899 : fprintf (dump_file, "Splitting with gen_split_2542 (sse.md:14227)\n");
23900 : start_sequence ();
23901 : #define FAIL return (end_sequence (), nullptr)
23902 : #define DONE return end_sequence ()
23903 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23904 : {
23905 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23906 : int reg6 = 0xF0;
23907 : int reg2 = 0xCC;
23908 : int reg1 = 0xAA;
23909 : int reg3 = 0;
23910 : int reg4 = 0;
23911 : int reg_mask, tmp1, tmp2;
23912 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23913 : STRIP_UNARY (operands[4])))
23914 : {
23915 : reg4 = reg1;
23916 : reg3 = reg6;
23917 : operands[6] = operands[3];
23918 : }
23919 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23920 : STRIP_UNARY (operands[4])))
23921 : {
23922 : reg4 = reg2;
23923 : reg3 = reg6;
23924 : operands[6] = operands[3];
23925 : }
23926 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23927 : STRIP_UNARY (operands[3])))
23928 : {
23929 : reg4 = reg6;
23930 : reg3 = reg1;
23931 : operands[6] = operands[4];
23932 : }
23933 : else
23934 : {
23935 : reg4 = reg6;
23936 : reg3 = reg2;
23937 : operands[6] = operands[4];
23938 : }
23939 :
23940 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23941 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23942 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23943 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23944 :
23945 : tmp1 = reg1 ^ reg2;
23946 : tmp2 = tmp1 ^ reg3;
23947 : reg_mask = tmp2 ^ reg4;
23948 : reg_mask &= 0xFF;
23949 :
23950 : operands[1] = STRIP_UNARY (operands[1]);
23951 : operands[2] = STRIP_UNARY (operands[2]);
23952 : operands[6] = STRIP_UNARY (operands[6]);
23953 : operands[5] = GEN_INT (reg_mask);
23954 : if (!register_operand (operands[2], V8HImode))
23955 : operands[2] = force_reg (V8HImode, operands[2]);
23956 : if (!register_operand (operands[6], V8HImode))
23957 : operands[6] = force_reg (V8HImode, operands[6]);
23958 :
23959 : }
23960 : #undef DONE
23961 : #undef FAIL
23962 : static const uint8_t expand_encoding[] = {
23963 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
23964 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23965 : 0x25
23966 : };
23967 : return complete_seq (expand_encoding, operands);
23968 : }
23969 :
23970 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23971 : extern rtx_insn *gen_split_2552 (rtx_insn *, rtx *);
23972 : rtx_insn *
23973 : gen_split_2552 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23974 : {
23975 : if (dump_file)
23976 : fprintf (dump_file, "Splitting with gen_split_2552 (sse.md:14227)\n");
23977 : start_sequence ();
23978 : #define FAIL return (end_sequence (), nullptr)
23979 : #define DONE return end_sequence ()
23980 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23981 : {
23982 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23983 : int reg6 = 0xF0;
23984 : int reg2 = 0xCC;
23985 : int reg1 = 0xAA;
23986 : int reg3 = 0;
23987 : int reg4 = 0;
23988 : int reg_mask, tmp1, tmp2;
23989 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23990 : STRIP_UNARY (operands[4])))
23991 : {
23992 : reg4 = reg1;
23993 : reg3 = reg6;
23994 : operands[6] = operands[3];
23995 : }
23996 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23997 : STRIP_UNARY (operands[4])))
23998 : {
23999 : reg4 = reg2;
24000 : reg3 = reg6;
24001 : operands[6] = operands[3];
24002 : }
24003 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24004 : STRIP_UNARY (operands[3])))
24005 : {
24006 : reg4 = reg6;
24007 : reg3 = reg1;
24008 : operands[6] = operands[4];
24009 : }
24010 : else
24011 : {
24012 : reg4 = reg6;
24013 : reg3 = reg2;
24014 : operands[6] = operands[4];
24015 : }
24016 :
24017 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24018 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24019 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24020 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24021 :
24022 : tmp1 = reg1 & reg2;
24023 : tmp2 = tmp1 | reg3;
24024 : reg_mask = tmp2 & reg4;
24025 : reg_mask &= 0xFF;
24026 :
24027 : operands[1] = STRIP_UNARY (operands[1]);
24028 : operands[2] = STRIP_UNARY (operands[2]);
24029 : operands[6] = STRIP_UNARY (operands[6]);
24030 : operands[5] = GEN_INT (reg_mask);
24031 : if (!register_operand (operands[2], V16SImode))
24032 : operands[2] = force_reg (V16SImode, operands[2]);
24033 : if (!register_operand (operands[6], V16SImode))
24034 : operands[6] = force_reg (V16SImode, operands[6]);
24035 :
24036 : }
24037 : #undef DONE
24038 : #undef FAIL
24039 : static const uint8_t expand_encoding[] = {
24040 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
24041 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24042 : 0x25
24043 : };
24044 : return complete_seq (expand_encoding, operands);
24045 : }
24046 :
24047 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24048 : extern rtx_insn *gen_split_2562 (rtx_insn *, rtx *);
24049 : rtx_insn *
24050 : gen_split_2562 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24051 : {
24052 : if (dump_file)
24053 : fprintf (dump_file, "Splitting with gen_split_2562 (sse.md:14227)\n");
24054 : start_sequence ();
24055 : #define FAIL return (end_sequence (), nullptr)
24056 : #define DONE return end_sequence ()
24057 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24058 : {
24059 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24060 : int reg6 = 0xF0;
24061 : int reg2 = 0xCC;
24062 : int reg1 = 0xAA;
24063 : int reg3 = 0;
24064 : int reg4 = 0;
24065 : int reg_mask, tmp1, tmp2;
24066 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24067 : STRIP_UNARY (operands[4])))
24068 : {
24069 : reg4 = reg1;
24070 : reg3 = reg6;
24071 : operands[6] = operands[3];
24072 : }
24073 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24074 : STRIP_UNARY (operands[4])))
24075 : {
24076 : reg4 = reg2;
24077 : reg3 = reg6;
24078 : operands[6] = operands[3];
24079 : }
24080 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24081 : STRIP_UNARY (operands[3])))
24082 : {
24083 : reg4 = reg6;
24084 : reg3 = reg1;
24085 : operands[6] = operands[4];
24086 : }
24087 : else
24088 : {
24089 : reg4 = reg6;
24090 : reg3 = reg2;
24091 : operands[6] = operands[4];
24092 : }
24093 :
24094 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24095 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24096 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24097 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24098 :
24099 : tmp1 = reg1 & reg2;
24100 : tmp2 = tmp1 ^ reg3;
24101 : reg_mask = tmp2 | reg4;
24102 : reg_mask &= 0xFF;
24103 :
24104 : operands[1] = STRIP_UNARY (operands[1]);
24105 : operands[2] = STRIP_UNARY (operands[2]);
24106 : operands[6] = STRIP_UNARY (operands[6]);
24107 : operands[5] = GEN_INT (reg_mask);
24108 : if (!register_operand (operands[2], V16SImode))
24109 : operands[2] = force_reg (V16SImode, operands[2]);
24110 : if (!register_operand (operands[6], V16SImode))
24111 : operands[6] = force_reg (V16SImode, operands[6]);
24112 :
24113 : }
24114 : #undef DONE
24115 : #undef FAIL
24116 : static const uint8_t expand_encoding[] = {
24117 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
24118 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24119 : 0x25
24120 : };
24121 : return complete_seq (expand_encoding, operands);
24122 : }
24123 :
24124 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24125 : extern rtx_insn *gen_split_2572 (rtx_insn *, rtx *);
24126 : rtx_insn *
24127 : gen_split_2572 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24128 : {
24129 : if (dump_file)
24130 : fprintf (dump_file, "Splitting with gen_split_2572 (sse.md:14227)\n");
24131 : start_sequence ();
24132 : #define FAIL return (end_sequence (), nullptr)
24133 : #define DONE return end_sequence ()
24134 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24135 : {
24136 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24137 : int reg6 = 0xF0;
24138 : int reg2 = 0xCC;
24139 : int reg1 = 0xAA;
24140 : int reg3 = 0;
24141 : int reg4 = 0;
24142 : int reg_mask, tmp1, tmp2;
24143 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24144 : STRIP_UNARY (operands[4])))
24145 : {
24146 : reg4 = reg1;
24147 : reg3 = reg6;
24148 : operands[6] = operands[3];
24149 : }
24150 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24151 : STRIP_UNARY (operands[4])))
24152 : {
24153 : reg4 = reg2;
24154 : reg3 = reg6;
24155 : operands[6] = operands[3];
24156 : }
24157 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24158 : STRIP_UNARY (operands[3])))
24159 : {
24160 : reg4 = reg6;
24161 : reg3 = reg1;
24162 : operands[6] = operands[4];
24163 : }
24164 : else
24165 : {
24166 : reg4 = reg6;
24167 : reg3 = reg2;
24168 : operands[6] = operands[4];
24169 : }
24170 :
24171 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24172 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24173 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24174 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24175 :
24176 : tmp1 = reg1 & reg2;
24177 : tmp2 = tmp1 & reg3;
24178 : reg_mask = tmp2 ^ reg4;
24179 : reg_mask &= 0xFF;
24180 :
24181 : operands[1] = STRIP_UNARY (operands[1]);
24182 : operands[2] = STRIP_UNARY (operands[2]);
24183 : operands[6] = STRIP_UNARY (operands[6]);
24184 : operands[5] = GEN_INT (reg_mask);
24185 : if (!register_operand (operands[2], V8SImode))
24186 : operands[2] = force_reg (V8SImode, operands[2]);
24187 : if (!register_operand (operands[6], V8SImode))
24188 : operands[6] = force_reg (V8SImode, operands[6]);
24189 :
24190 : }
24191 : #undef DONE
24192 : #undef FAIL
24193 : static const uint8_t expand_encoding[] = {
24194 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
24195 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24196 : 0x25
24197 : };
24198 : return complete_seq (expand_encoding, operands);
24199 : }
24200 :
24201 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24202 : extern rtx_insn *gen_split_2582 (rtx_insn *, rtx *);
24203 : rtx_insn *
24204 : gen_split_2582 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24205 : {
24206 : if (dump_file)
24207 : fprintf (dump_file, "Splitting with gen_split_2582 (sse.md:14227)\n");
24208 : start_sequence ();
24209 : #define FAIL return (end_sequence (), nullptr)
24210 : #define DONE return end_sequence ()
24211 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24212 : {
24213 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24214 : int reg6 = 0xF0;
24215 : int reg2 = 0xCC;
24216 : int reg1 = 0xAA;
24217 : int reg3 = 0;
24218 : int reg4 = 0;
24219 : int reg_mask, tmp1, tmp2;
24220 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24221 : STRIP_UNARY (operands[4])))
24222 : {
24223 : reg4 = reg1;
24224 : reg3 = reg6;
24225 : operands[6] = operands[3];
24226 : }
24227 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24228 : STRIP_UNARY (operands[4])))
24229 : {
24230 : reg4 = reg2;
24231 : reg3 = reg6;
24232 : operands[6] = operands[3];
24233 : }
24234 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24235 : STRIP_UNARY (operands[3])))
24236 : {
24237 : reg4 = reg6;
24238 : reg3 = reg1;
24239 : operands[6] = operands[4];
24240 : }
24241 : else
24242 : {
24243 : reg4 = reg6;
24244 : reg3 = reg2;
24245 : operands[6] = operands[4];
24246 : }
24247 :
24248 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24249 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24250 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24251 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24252 :
24253 : tmp1 = reg1 | reg2;
24254 : tmp2 = tmp1 | reg3;
24255 : reg_mask = tmp2 & reg4;
24256 : reg_mask &= 0xFF;
24257 :
24258 : operands[1] = STRIP_UNARY (operands[1]);
24259 : operands[2] = STRIP_UNARY (operands[2]);
24260 : operands[6] = STRIP_UNARY (operands[6]);
24261 : operands[5] = GEN_INT (reg_mask);
24262 : if (!register_operand (operands[2], V8SImode))
24263 : operands[2] = force_reg (V8SImode, operands[2]);
24264 : if (!register_operand (operands[6], V8SImode))
24265 : operands[6] = force_reg (V8SImode, operands[6]);
24266 :
24267 : }
24268 : #undef DONE
24269 : #undef FAIL
24270 : static const uint8_t expand_encoding[] = {
24271 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
24272 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24273 : 0x25
24274 : };
24275 : return complete_seq (expand_encoding, operands);
24276 : }
24277 :
24278 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24279 : extern rtx_insn *gen_split_2592 (rtx_insn *, rtx *);
24280 : rtx_insn *
24281 : gen_split_2592 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24282 : {
24283 : if (dump_file)
24284 : fprintf (dump_file, "Splitting with gen_split_2592 (sse.md:14227)\n");
24285 : start_sequence ();
24286 : #define FAIL return (end_sequence (), nullptr)
24287 : #define DONE return end_sequence ()
24288 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24289 : {
24290 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24291 : int reg6 = 0xF0;
24292 : int reg2 = 0xCC;
24293 : int reg1 = 0xAA;
24294 : int reg3 = 0;
24295 : int reg4 = 0;
24296 : int reg_mask, tmp1, tmp2;
24297 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24298 : STRIP_UNARY (operands[4])))
24299 : {
24300 : reg4 = reg1;
24301 : reg3 = reg6;
24302 : operands[6] = operands[3];
24303 : }
24304 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24305 : STRIP_UNARY (operands[4])))
24306 : {
24307 : reg4 = reg2;
24308 : reg3 = reg6;
24309 : operands[6] = operands[3];
24310 : }
24311 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24312 : STRIP_UNARY (operands[3])))
24313 : {
24314 : reg4 = reg6;
24315 : reg3 = reg1;
24316 : operands[6] = operands[4];
24317 : }
24318 : else
24319 : {
24320 : reg4 = reg6;
24321 : reg3 = reg2;
24322 : operands[6] = operands[4];
24323 : }
24324 :
24325 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24326 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24327 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24328 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24329 :
24330 : tmp1 = reg1 | reg2;
24331 : tmp2 = tmp1 ^ reg3;
24332 : reg_mask = tmp2 | reg4;
24333 : reg_mask &= 0xFF;
24334 :
24335 : operands[1] = STRIP_UNARY (operands[1]);
24336 : operands[2] = STRIP_UNARY (operands[2]);
24337 : operands[6] = STRIP_UNARY (operands[6]);
24338 : operands[5] = GEN_INT (reg_mask);
24339 : if (!register_operand (operands[2], V8SImode))
24340 : operands[2] = force_reg (V8SImode, operands[2]);
24341 : if (!register_operand (operands[6], V8SImode))
24342 : operands[6] = force_reg (V8SImode, operands[6]);
24343 :
24344 : }
24345 : #undef DONE
24346 : #undef FAIL
24347 : static const uint8_t expand_encoding[] = {
24348 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
24349 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24350 : 0x25
24351 : };
24352 : return complete_seq (expand_encoding, operands);
24353 : }
24354 :
24355 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24356 : extern rtx_insn *gen_split_2602 (rtx_insn *, rtx *);
24357 : rtx_insn *
24358 : gen_split_2602 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24359 : {
24360 : if (dump_file)
24361 : fprintf (dump_file, "Splitting with gen_split_2602 (sse.md:14227)\n");
24362 : start_sequence ();
24363 : #define FAIL return (end_sequence (), nullptr)
24364 : #define DONE return end_sequence ()
24365 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24366 : {
24367 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24368 : int reg6 = 0xF0;
24369 : int reg2 = 0xCC;
24370 : int reg1 = 0xAA;
24371 : int reg3 = 0;
24372 : int reg4 = 0;
24373 : int reg_mask, tmp1, tmp2;
24374 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24375 : STRIP_UNARY (operands[4])))
24376 : {
24377 : reg4 = reg1;
24378 : reg3 = reg6;
24379 : operands[6] = operands[3];
24380 : }
24381 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24382 : STRIP_UNARY (operands[4])))
24383 : {
24384 : reg4 = reg2;
24385 : reg3 = reg6;
24386 : operands[6] = operands[3];
24387 : }
24388 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24389 : STRIP_UNARY (operands[3])))
24390 : {
24391 : reg4 = reg6;
24392 : reg3 = reg1;
24393 : operands[6] = operands[4];
24394 : }
24395 : else
24396 : {
24397 : reg4 = reg6;
24398 : reg3 = reg2;
24399 : operands[6] = operands[4];
24400 : }
24401 :
24402 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24403 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24404 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24405 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24406 :
24407 : tmp1 = reg1 | reg2;
24408 : tmp2 = tmp1 & reg3;
24409 : reg_mask = tmp2 ^ reg4;
24410 : reg_mask &= 0xFF;
24411 :
24412 : operands[1] = STRIP_UNARY (operands[1]);
24413 : operands[2] = STRIP_UNARY (operands[2]);
24414 : operands[6] = STRIP_UNARY (operands[6]);
24415 : operands[5] = GEN_INT (reg_mask);
24416 : if (!register_operand (operands[2], V4SImode))
24417 : operands[2] = force_reg (V4SImode, operands[2]);
24418 : if (!register_operand (operands[6], V4SImode))
24419 : operands[6] = force_reg (V4SImode, operands[6]);
24420 :
24421 : }
24422 : #undef DONE
24423 : #undef FAIL
24424 : static const uint8_t expand_encoding[] = {
24425 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
24426 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24427 : 0x25
24428 : };
24429 : return complete_seq (expand_encoding, operands);
24430 : }
24431 :
24432 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24433 : extern rtx_insn *gen_split_2612 (rtx_insn *, rtx *);
24434 : rtx_insn *
24435 : gen_split_2612 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24436 : {
24437 : if (dump_file)
24438 : fprintf (dump_file, "Splitting with gen_split_2612 (sse.md:14227)\n");
24439 : start_sequence ();
24440 : #define FAIL return (end_sequence (), nullptr)
24441 : #define DONE return end_sequence ()
24442 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24443 : {
24444 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24445 : int reg6 = 0xF0;
24446 : int reg2 = 0xCC;
24447 : int reg1 = 0xAA;
24448 : int reg3 = 0;
24449 : int reg4 = 0;
24450 : int reg_mask, tmp1, tmp2;
24451 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24452 : STRIP_UNARY (operands[4])))
24453 : {
24454 : reg4 = reg1;
24455 : reg3 = reg6;
24456 : operands[6] = operands[3];
24457 : }
24458 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24459 : STRIP_UNARY (operands[4])))
24460 : {
24461 : reg4 = reg2;
24462 : reg3 = reg6;
24463 : operands[6] = operands[3];
24464 : }
24465 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24466 : STRIP_UNARY (operands[3])))
24467 : {
24468 : reg4 = reg6;
24469 : reg3 = reg1;
24470 : operands[6] = operands[4];
24471 : }
24472 : else
24473 : {
24474 : reg4 = reg6;
24475 : reg3 = reg2;
24476 : operands[6] = operands[4];
24477 : }
24478 :
24479 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24480 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24481 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24482 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24483 :
24484 : tmp1 = reg1 ^ reg2;
24485 : tmp2 = tmp1 | reg3;
24486 : reg_mask = tmp2 & reg4;
24487 : reg_mask &= 0xFF;
24488 :
24489 : operands[1] = STRIP_UNARY (operands[1]);
24490 : operands[2] = STRIP_UNARY (operands[2]);
24491 : operands[6] = STRIP_UNARY (operands[6]);
24492 : operands[5] = GEN_INT (reg_mask);
24493 : if (!register_operand (operands[2], V4SImode))
24494 : operands[2] = force_reg (V4SImode, operands[2]);
24495 : if (!register_operand (operands[6], V4SImode))
24496 : operands[6] = force_reg (V4SImode, operands[6]);
24497 :
24498 : }
24499 : #undef DONE
24500 : #undef FAIL
24501 : static const uint8_t expand_encoding[] = {
24502 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
24503 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24504 : 0x25
24505 : };
24506 : return complete_seq (expand_encoding, operands);
24507 : }
24508 :
24509 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24510 : extern rtx_insn *gen_split_2622 (rtx_insn *, rtx *);
24511 : rtx_insn *
24512 : gen_split_2622 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24513 : {
24514 : if (dump_file)
24515 : fprintf (dump_file, "Splitting with gen_split_2622 (sse.md:14227)\n");
24516 : start_sequence ();
24517 : #define FAIL return (end_sequence (), nullptr)
24518 : #define DONE return end_sequence ()
24519 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24520 : {
24521 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24522 : int reg6 = 0xF0;
24523 : int reg2 = 0xCC;
24524 : int reg1 = 0xAA;
24525 : int reg3 = 0;
24526 : int reg4 = 0;
24527 : int reg_mask, tmp1, tmp2;
24528 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24529 : STRIP_UNARY (operands[4])))
24530 : {
24531 : reg4 = reg1;
24532 : reg3 = reg6;
24533 : operands[6] = operands[3];
24534 : }
24535 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24536 : STRIP_UNARY (operands[4])))
24537 : {
24538 : reg4 = reg2;
24539 : reg3 = reg6;
24540 : operands[6] = operands[3];
24541 : }
24542 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24543 : STRIP_UNARY (operands[3])))
24544 : {
24545 : reg4 = reg6;
24546 : reg3 = reg1;
24547 : operands[6] = operands[4];
24548 : }
24549 : else
24550 : {
24551 : reg4 = reg6;
24552 : reg3 = reg2;
24553 : operands[6] = operands[4];
24554 : }
24555 :
24556 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24557 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24558 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24559 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24560 :
24561 : tmp1 = reg1 ^ reg2;
24562 : tmp2 = tmp1 ^ reg3;
24563 : reg_mask = tmp2 | reg4;
24564 : reg_mask &= 0xFF;
24565 :
24566 : operands[1] = STRIP_UNARY (operands[1]);
24567 : operands[2] = STRIP_UNARY (operands[2]);
24568 : operands[6] = STRIP_UNARY (operands[6]);
24569 : operands[5] = GEN_INT (reg_mask);
24570 : if (!register_operand (operands[2], V4SImode))
24571 : operands[2] = force_reg (V4SImode, operands[2]);
24572 : if (!register_operand (operands[6], V4SImode))
24573 : operands[6] = force_reg (V4SImode, operands[6]);
24574 :
24575 : }
24576 : #undef DONE
24577 : #undef FAIL
24578 : static const uint8_t expand_encoding[] = {
24579 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
24580 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24581 : 0x25
24582 : };
24583 : return complete_seq (expand_encoding, operands);
24584 : }
24585 :
24586 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24587 : extern rtx_insn *gen_split_2632 (rtx_insn *, rtx *);
24588 : rtx_insn *
24589 : gen_split_2632 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24590 : {
24591 : if (dump_file)
24592 : fprintf (dump_file, "Splitting with gen_split_2632 (sse.md:14227)\n");
24593 : start_sequence ();
24594 : #define FAIL return (end_sequence (), nullptr)
24595 : #define DONE return end_sequence ()
24596 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24597 : {
24598 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24599 : int reg6 = 0xF0;
24600 : int reg2 = 0xCC;
24601 : int reg1 = 0xAA;
24602 : int reg3 = 0;
24603 : int reg4 = 0;
24604 : int reg_mask, tmp1, tmp2;
24605 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24606 : STRIP_UNARY (operands[4])))
24607 : {
24608 : reg4 = reg1;
24609 : reg3 = reg6;
24610 : operands[6] = operands[3];
24611 : }
24612 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24613 : STRIP_UNARY (operands[4])))
24614 : {
24615 : reg4 = reg2;
24616 : reg3 = reg6;
24617 : operands[6] = operands[3];
24618 : }
24619 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24620 : STRIP_UNARY (operands[3])))
24621 : {
24622 : reg4 = reg6;
24623 : reg3 = reg1;
24624 : operands[6] = operands[4];
24625 : }
24626 : else
24627 : {
24628 : reg4 = reg6;
24629 : reg3 = reg2;
24630 : operands[6] = operands[4];
24631 : }
24632 :
24633 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24634 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24635 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24636 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24637 :
24638 : tmp1 = reg1 ^ reg2;
24639 : tmp2 = tmp1 & reg3;
24640 : reg_mask = tmp2 ^ reg4;
24641 : reg_mask &= 0xFF;
24642 :
24643 : operands[1] = STRIP_UNARY (operands[1]);
24644 : operands[2] = STRIP_UNARY (operands[2]);
24645 : operands[6] = STRIP_UNARY (operands[6]);
24646 : operands[5] = GEN_INT (reg_mask);
24647 : if (!register_operand (operands[2], V8DImode))
24648 : operands[2] = force_reg (V8DImode, operands[2]);
24649 : if (!register_operand (operands[6], V8DImode))
24650 : operands[6] = force_reg (V8DImode, operands[6]);
24651 :
24652 : }
24653 : #undef DONE
24654 : #undef FAIL
24655 : static const uint8_t expand_encoding[] = {
24656 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
24657 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24658 : 0x25
24659 : };
24660 : return complete_seq (expand_encoding, operands);
24661 : }
24662 :
24663 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24664 : extern rtx_insn *gen_split_2642 (rtx_insn *, rtx *);
24665 : rtx_insn *
24666 : gen_split_2642 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24667 : {
24668 : if (dump_file)
24669 : fprintf (dump_file, "Splitting with gen_split_2642 (sse.md:14227)\n");
24670 : start_sequence ();
24671 : #define FAIL return (end_sequence (), nullptr)
24672 : #define DONE return end_sequence ()
24673 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24674 : {
24675 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24676 : int reg6 = 0xF0;
24677 : int reg2 = 0xCC;
24678 : int reg1 = 0xAA;
24679 : int reg3 = 0;
24680 : int reg4 = 0;
24681 : int reg_mask, tmp1, tmp2;
24682 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24683 : STRIP_UNARY (operands[4])))
24684 : {
24685 : reg4 = reg1;
24686 : reg3 = reg6;
24687 : operands[6] = operands[3];
24688 : }
24689 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24690 : STRIP_UNARY (operands[4])))
24691 : {
24692 : reg4 = reg2;
24693 : reg3 = reg6;
24694 : operands[6] = operands[3];
24695 : }
24696 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24697 : STRIP_UNARY (operands[3])))
24698 : {
24699 : reg4 = reg6;
24700 : reg3 = reg1;
24701 : operands[6] = operands[4];
24702 : }
24703 : else
24704 : {
24705 : reg4 = reg6;
24706 : reg3 = reg2;
24707 : operands[6] = operands[4];
24708 : }
24709 :
24710 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24711 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24712 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24713 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24714 :
24715 : tmp1 = reg1 & reg2;
24716 : tmp2 = tmp1 ^ reg3;
24717 : reg_mask = tmp2 & reg4;
24718 : reg_mask &= 0xFF;
24719 :
24720 : operands[1] = STRIP_UNARY (operands[1]);
24721 : operands[2] = STRIP_UNARY (operands[2]);
24722 : operands[6] = STRIP_UNARY (operands[6]);
24723 : operands[5] = GEN_INT (reg_mask);
24724 : if (!register_operand (operands[2], V8DImode))
24725 : operands[2] = force_reg (V8DImode, operands[2]);
24726 : if (!register_operand (operands[6], V8DImode))
24727 : operands[6] = force_reg (V8DImode, operands[6]);
24728 :
24729 : }
24730 : #undef DONE
24731 : #undef FAIL
24732 : static const uint8_t expand_encoding[] = {
24733 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
24734 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24735 : 0x25
24736 : };
24737 : return complete_seq (expand_encoding, operands);
24738 : }
24739 :
24740 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24741 : extern rtx_insn *gen_split_2652 (rtx_insn *, rtx *);
24742 : rtx_insn *
24743 : gen_split_2652 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24744 : {
24745 : if (dump_file)
24746 : fprintf (dump_file, "Splitting with gen_split_2652 (sse.md:14227)\n");
24747 : start_sequence ();
24748 : #define FAIL return (end_sequence (), nullptr)
24749 : #define DONE return end_sequence ()
24750 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24751 : {
24752 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24753 : int reg6 = 0xF0;
24754 : int reg2 = 0xCC;
24755 : int reg1 = 0xAA;
24756 : int reg3 = 0;
24757 : int reg4 = 0;
24758 : int reg_mask, tmp1, tmp2;
24759 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24760 : STRIP_UNARY (operands[4])))
24761 : {
24762 : reg4 = reg1;
24763 : reg3 = reg6;
24764 : operands[6] = operands[3];
24765 : }
24766 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24767 : STRIP_UNARY (operands[4])))
24768 : {
24769 : reg4 = reg2;
24770 : reg3 = reg6;
24771 : operands[6] = operands[3];
24772 : }
24773 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24774 : STRIP_UNARY (operands[3])))
24775 : {
24776 : reg4 = reg6;
24777 : reg3 = reg1;
24778 : operands[6] = operands[4];
24779 : }
24780 : else
24781 : {
24782 : reg4 = reg6;
24783 : reg3 = reg2;
24784 : operands[6] = operands[4];
24785 : }
24786 :
24787 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24788 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24789 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24790 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24791 :
24792 : tmp1 = reg1 & reg2;
24793 : tmp2 = tmp1 & reg3;
24794 : reg_mask = tmp2 | reg4;
24795 : reg_mask &= 0xFF;
24796 :
24797 : operands[1] = STRIP_UNARY (operands[1]);
24798 : operands[2] = STRIP_UNARY (operands[2]);
24799 : operands[6] = STRIP_UNARY (operands[6]);
24800 : operands[5] = GEN_INT (reg_mask);
24801 : if (!register_operand (operands[2], V4DImode))
24802 : operands[2] = force_reg (V4DImode, operands[2]);
24803 : if (!register_operand (operands[6], V4DImode))
24804 : operands[6] = force_reg (V4DImode, operands[6]);
24805 :
24806 : }
24807 : #undef DONE
24808 : #undef FAIL
24809 : static const uint8_t expand_encoding[] = {
24810 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
24811 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24812 : 0x25
24813 : };
24814 : return complete_seq (expand_encoding, operands);
24815 : }
24816 :
24817 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24818 : extern rtx_insn *gen_split_2662 (rtx_insn *, rtx *);
24819 : rtx_insn *
24820 : gen_split_2662 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24821 : {
24822 : if (dump_file)
24823 : fprintf (dump_file, "Splitting with gen_split_2662 (sse.md:14227)\n");
24824 : start_sequence ();
24825 : #define FAIL return (end_sequence (), nullptr)
24826 : #define DONE return end_sequence ()
24827 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24828 : {
24829 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24830 : int reg6 = 0xF0;
24831 : int reg2 = 0xCC;
24832 : int reg1 = 0xAA;
24833 : int reg3 = 0;
24834 : int reg4 = 0;
24835 : int reg_mask, tmp1, tmp2;
24836 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24837 : STRIP_UNARY (operands[4])))
24838 : {
24839 : reg4 = reg1;
24840 : reg3 = reg6;
24841 : operands[6] = operands[3];
24842 : }
24843 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24844 : STRIP_UNARY (operands[4])))
24845 : {
24846 : reg4 = reg2;
24847 : reg3 = reg6;
24848 : operands[6] = operands[3];
24849 : }
24850 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24851 : STRIP_UNARY (operands[3])))
24852 : {
24853 : reg4 = reg6;
24854 : reg3 = reg1;
24855 : operands[6] = operands[4];
24856 : }
24857 : else
24858 : {
24859 : reg4 = reg6;
24860 : reg3 = reg2;
24861 : operands[6] = operands[4];
24862 : }
24863 :
24864 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24865 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24866 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24867 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24868 :
24869 : tmp1 = reg1 & reg2;
24870 : tmp2 = tmp1 | reg3;
24871 : reg_mask = tmp2 ^ reg4;
24872 : reg_mask &= 0xFF;
24873 :
24874 : operands[1] = STRIP_UNARY (operands[1]);
24875 : operands[2] = STRIP_UNARY (operands[2]);
24876 : operands[6] = STRIP_UNARY (operands[6]);
24877 : operands[5] = GEN_INT (reg_mask);
24878 : if (!register_operand (operands[2], V4DImode))
24879 : operands[2] = force_reg (V4DImode, operands[2]);
24880 : if (!register_operand (operands[6], V4DImode))
24881 : operands[6] = force_reg (V4DImode, operands[6]);
24882 :
24883 : }
24884 : #undef DONE
24885 : #undef FAIL
24886 : static const uint8_t expand_encoding[] = {
24887 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
24888 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24889 : 0x25
24890 : };
24891 : return complete_seq (expand_encoding, operands);
24892 : }
24893 :
24894 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24895 : extern rtx_insn *gen_split_2672 (rtx_insn *, rtx *);
24896 : rtx_insn *
24897 : gen_split_2672 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24898 : {
24899 : if (dump_file)
24900 : fprintf (dump_file, "Splitting with gen_split_2672 (sse.md:14227)\n");
24901 : start_sequence ();
24902 : #define FAIL return (end_sequence (), nullptr)
24903 : #define DONE return end_sequence ()
24904 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24905 : {
24906 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24907 : int reg6 = 0xF0;
24908 : int reg2 = 0xCC;
24909 : int reg1 = 0xAA;
24910 : int reg3 = 0;
24911 : int reg4 = 0;
24912 : int reg_mask, tmp1, tmp2;
24913 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24914 : STRIP_UNARY (operands[4])))
24915 : {
24916 : reg4 = reg1;
24917 : reg3 = reg6;
24918 : operands[6] = operands[3];
24919 : }
24920 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24921 : STRIP_UNARY (operands[4])))
24922 : {
24923 : reg4 = reg2;
24924 : reg3 = reg6;
24925 : operands[6] = operands[3];
24926 : }
24927 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24928 : STRIP_UNARY (operands[3])))
24929 : {
24930 : reg4 = reg6;
24931 : reg3 = reg1;
24932 : operands[6] = operands[4];
24933 : }
24934 : else
24935 : {
24936 : reg4 = reg6;
24937 : reg3 = reg2;
24938 : operands[6] = operands[4];
24939 : }
24940 :
24941 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24942 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24943 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24944 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24945 :
24946 : tmp1 = reg1 | reg2;
24947 : tmp2 = tmp1 ^ reg3;
24948 : reg_mask = tmp2 & reg4;
24949 : reg_mask &= 0xFF;
24950 :
24951 : operands[1] = STRIP_UNARY (operands[1]);
24952 : operands[2] = STRIP_UNARY (operands[2]);
24953 : operands[6] = STRIP_UNARY (operands[6]);
24954 : operands[5] = GEN_INT (reg_mask);
24955 : if (!register_operand (operands[2], V4DImode))
24956 : operands[2] = force_reg (V4DImode, operands[2]);
24957 : if (!register_operand (operands[6], V4DImode))
24958 : operands[6] = force_reg (V4DImode, operands[6]);
24959 :
24960 : }
24961 : #undef DONE
24962 : #undef FAIL
24963 : static const uint8_t expand_encoding[] = {
24964 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
24965 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24966 : 0x25
24967 : };
24968 : return complete_seq (expand_encoding, operands);
24969 : }
24970 :
24971 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24972 : extern rtx_insn *gen_split_2682 (rtx_insn *, rtx *);
24973 : rtx_insn *
24974 : gen_split_2682 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24975 : {
24976 : if (dump_file)
24977 : fprintf (dump_file, "Splitting with gen_split_2682 (sse.md:14227)\n");
24978 : start_sequence ();
24979 : #define FAIL return (end_sequence (), nullptr)
24980 : #define DONE return end_sequence ()
24981 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24982 : {
24983 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24984 : int reg6 = 0xF0;
24985 : int reg2 = 0xCC;
24986 : int reg1 = 0xAA;
24987 : int reg3 = 0;
24988 : int reg4 = 0;
24989 : int reg_mask, tmp1, tmp2;
24990 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24991 : STRIP_UNARY (operands[4])))
24992 : {
24993 : reg4 = reg1;
24994 : reg3 = reg6;
24995 : operands[6] = operands[3];
24996 : }
24997 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24998 : STRIP_UNARY (operands[4])))
24999 : {
25000 : reg4 = reg2;
25001 : reg3 = reg6;
25002 : operands[6] = operands[3];
25003 : }
25004 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25005 : STRIP_UNARY (operands[3])))
25006 : {
25007 : reg4 = reg6;
25008 : reg3 = reg1;
25009 : operands[6] = operands[4];
25010 : }
25011 : else
25012 : {
25013 : reg4 = reg6;
25014 : reg3 = reg2;
25015 : operands[6] = operands[4];
25016 : }
25017 :
25018 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25019 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25020 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25021 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25022 :
25023 : tmp1 = reg1 | reg2;
25024 : tmp2 = tmp1 & reg3;
25025 : reg_mask = tmp2 | reg4;
25026 : reg_mask &= 0xFF;
25027 :
25028 : operands[1] = STRIP_UNARY (operands[1]);
25029 : operands[2] = STRIP_UNARY (operands[2]);
25030 : operands[6] = STRIP_UNARY (operands[6]);
25031 : operands[5] = GEN_INT (reg_mask);
25032 : if (!register_operand (operands[2], V2DImode))
25033 : operands[2] = force_reg (V2DImode, operands[2]);
25034 : if (!register_operand (operands[6], V2DImode))
25035 : operands[6] = force_reg (V2DImode, operands[6]);
25036 :
25037 : }
25038 : #undef DONE
25039 : #undef FAIL
25040 : static const uint8_t expand_encoding[] = {
25041 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
25042 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25043 : 0x25
25044 : };
25045 : return complete_seq (expand_encoding, operands);
25046 : }
25047 :
25048 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25049 : extern rtx_insn *gen_split_2692 (rtx_insn *, rtx *);
25050 : rtx_insn *
25051 : gen_split_2692 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25052 : {
25053 : if (dump_file)
25054 : fprintf (dump_file, "Splitting with gen_split_2692 (sse.md:14227)\n");
25055 : start_sequence ();
25056 : #define FAIL return (end_sequence (), nullptr)
25057 : #define DONE return end_sequence ()
25058 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25059 : {
25060 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25061 : int reg6 = 0xF0;
25062 : int reg2 = 0xCC;
25063 : int reg1 = 0xAA;
25064 : int reg3 = 0;
25065 : int reg4 = 0;
25066 : int reg_mask, tmp1, tmp2;
25067 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25068 : STRIP_UNARY (operands[4])))
25069 : {
25070 : reg4 = reg1;
25071 : reg3 = reg6;
25072 : operands[6] = operands[3];
25073 : }
25074 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25075 : STRIP_UNARY (operands[4])))
25076 : {
25077 : reg4 = reg2;
25078 : reg3 = reg6;
25079 : operands[6] = operands[3];
25080 : }
25081 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25082 : STRIP_UNARY (operands[3])))
25083 : {
25084 : reg4 = reg6;
25085 : reg3 = reg1;
25086 : operands[6] = operands[4];
25087 : }
25088 : else
25089 : {
25090 : reg4 = reg6;
25091 : reg3 = reg2;
25092 : operands[6] = operands[4];
25093 : }
25094 :
25095 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25096 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25097 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25098 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25099 :
25100 : tmp1 = reg1 | reg2;
25101 : tmp2 = tmp1 | reg3;
25102 : reg_mask = tmp2 ^ reg4;
25103 : reg_mask &= 0xFF;
25104 :
25105 : operands[1] = STRIP_UNARY (operands[1]);
25106 : operands[2] = STRIP_UNARY (operands[2]);
25107 : operands[6] = STRIP_UNARY (operands[6]);
25108 : operands[5] = GEN_INT (reg_mask);
25109 : if (!register_operand (operands[2], V2DImode))
25110 : operands[2] = force_reg (V2DImode, operands[2]);
25111 : if (!register_operand (operands[6], V2DImode))
25112 : operands[6] = force_reg (V2DImode, operands[6]);
25113 :
25114 : }
25115 : #undef DONE
25116 : #undef FAIL
25117 : static const uint8_t expand_encoding[] = {
25118 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
25119 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25120 : 0x25
25121 : };
25122 : return complete_seq (expand_encoding, operands);
25123 : }
25124 :
25125 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25126 : extern rtx_insn *gen_split_2702 (rtx_insn *, rtx *);
25127 : rtx_insn *
25128 : gen_split_2702 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25129 : {
25130 : if (dump_file)
25131 : fprintf (dump_file, "Splitting with gen_split_2702 (sse.md:14227)\n");
25132 : start_sequence ();
25133 : #define FAIL return (end_sequence (), nullptr)
25134 : #define DONE return end_sequence ()
25135 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25136 : {
25137 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25138 : int reg6 = 0xF0;
25139 : int reg2 = 0xCC;
25140 : int reg1 = 0xAA;
25141 : int reg3 = 0;
25142 : int reg4 = 0;
25143 : int reg_mask, tmp1, tmp2;
25144 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25145 : STRIP_UNARY (operands[4])))
25146 : {
25147 : reg4 = reg1;
25148 : reg3 = reg6;
25149 : operands[6] = operands[3];
25150 : }
25151 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25152 : STRIP_UNARY (operands[4])))
25153 : {
25154 : reg4 = reg2;
25155 : reg3 = reg6;
25156 : operands[6] = operands[3];
25157 : }
25158 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25159 : STRIP_UNARY (operands[3])))
25160 : {
25161 : reg4 = reg6;
25162 : reg3 = reg1;
25163 : operands[6] = operands[4];
25164 : }
25165 : else
25166 : {
25167 : reg4 = reg6;
25168 : reg3 = reg2;
25169 : operands[6] = operands[4];
25170 : }
25171 :
25172 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25173 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25174 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25175 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25176 :
25177 : tmp1 = reg1 ^ reg2;
25178 : tmp2 = tmp1 ^ reg3;
25179 : reg_mask = tmp2 & reg4;
25180 : reg_mask &= 0xFF;
25181 :
25182 : operands[1] = STRIP_UNARY (operands[1]);
25183 : operands[2] = STRIP_UNARY (operands[2]);
25184 : operands[6] = STRIP_UNARY (operands[6]);
25185 : operands[5] = GEN_INT (reg_mask);
25186 : if (!register_operand (operands[2], V2DImode))
25187 : operands[2] = force_reg (V2DImode, operands[2]);
25188 : if (!register_operand (operands[6], V2DImode))
25189 : operands[6] = force_reg (V2DImode, operands[6]);
25190 :
25191 : }
25192 : #undef DONE
25193 : #undef FAIL
25194 : static const uint8_t expand_encoding[] = {
25195 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
25196 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25197 : 0x25
25198 : };
25199 : return complete_seq (expand_encoding, operands);
25200 : }
25201 :
25202 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25203 : extern rtx_insn *gen_split_2712 (rtx_insn *, rtx *);
25204 : rtx_insn *
25205 : gen_split_2712 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25206 : {
25207 : if (dump_file)
25208 : fprintf (dump_file, "Splitting with gen_split_2712 (sse.md:14227)\n");
25209 : start_sequence ();
25210 : #define FAIL return (end_sequence (), nullptr)
25211 : #define DONE return end_sequence ()
25212 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25213 : {
25214 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25215 : int reg6 = 0xF0;
25216 : int reg2 = 0xCC;
25217 : int reg1 = 0xAA;
25218 : int reg3 = 0;
25219 : int reg4 = 0;
25220 : int reg_mask, tmp1, tmp2;
25221 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25222 : STRIP_UNARY (operands[4])))
25223 : {
25224 : reg4 = reg1;
25225 : reg3 = reg6;
25226 : operands[6] = operands[3];
25227 : }
25228 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25229 : STRIP_UNARY (operands[4])))
25230 : {
25231 : reg4 = reg2;
25232 : reg3 = reg6;
25233 : operands[6] = operands[3];
25234 : }
25235 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25236 : STRIP_UNARY (operands[3])))
25237 : {
25238 : reg4 = reg6;
25239 : reg3 = reg1;
25240 : operands[6] = operands[4];
25241 : }
25242 : else
25243 : {
25244 : reg4 = reg6;
25245 : reg3 = reg2;
25246 : operands[6] = operands[4];
25247 : }
25248 :
25249 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25250 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25251 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25252 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25253 :
25254 : tmp1 = reg1 ^ reg2;
25255 : tmp2 = tmp1 & reg3;
25256 : reg_mask = tmp2 | reg4;
25257 : reg_mask &= 0xFF;
25258 :
25259 : operands[1] = STRIP_UNARY (operands[1]);
25260 : operands[2] = STRIP_UNARY (operands[2]);
25261 : operands[6] = STRIP_UNARY (operands[6]);
25262 : operands[5] = GEN_INT (reg_mask);
25263 : if (!register_operand (operands[2], V32HFmode))
25264 : operands[2] = force_reg (V32HFmode, operands[2]);
25265 : if (!register_operand (operands[6], V32HFmode))
25266 : operands[6] = force_reg (V32HFmode, operands[6]);
25267 :
25268 : }
25269 : #undef DONE
25270 : #undef FAIL
25271 : static const uint8_t expand_encoding[] = {
25272 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
25273 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25274 : 0x25
25275 : };
25276 : return complete_seq (expand_encoding, operands);
25277 : }
25278 :
25279 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25280 : extern rtx_insn *gen_split_2722 (rtx_insn *, rtx *);
25281 : rtx_insn *
25282 : gen_split_2722 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25283 : {
25284 : if (dump_file)
25285 : fprintf (dump_file, "Splitting with gen_split_2722 (sse.md:14227)\n");
25286 : start_sequence ();
25287 : #define FAIL return (end_sequence (), nullptr)
25288 : #define DONE return end_sequence ()
25289 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25290 : {
25291 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25292 : int reg6 = 0xF0;
25293 : int reg2 = 0xCC;
25294 : int reg1 = 0xAA;
25295 : int reg3 = 0;
25296 : int reg4 = 0;
25297 : int reg_mask, tmp1, tmp2;
25298 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25299 : STRIP_UNARY (operands[4])))
25300 : {
25301 : reg4 = reg1;
25302 : reg3 = reg6;
25303 : operands[6] = operands[3];
25304 : }
25305 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25306 : STRIP_UNARY (operands[4])))
25307 : {
25308 : reg4 = reg2;
25309 : reg3 = reg6;
25310 : operands[6] = operands[3];
25311 : }
25312 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25313 : STRIP_UNARY (operands[3])))
25314 : {
25315 : reg4 = reg6;
25316 : reg3 = reg1;
25317 : operands[6] = operands[4];
25318 : }
25319 : else
25320 : {
25321 : reg4 = reg6;
25322 : reg3 = reg2;
25323 : operands[6] = operands[4];
25324 : }
25325 :
25326 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25327 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25328 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25329 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25330 :
25331 : tmp1 = reg1 ^ reg2;
25332 : tmp2 = tmp1 | reg3;
25333 : reg_mask = tmp2 ^ reg4;
25334 : reg_mask &= 0xFF;
25335 :
25336 : operands[1] = STRIP_UNARY (operands[1]);
25337 : operands[2] = STRIP_UNARY (operands[2]);
25338 : operands[6] = STRIP_UNARY (operands[6]);
25339 : operands[5] = GEN_INT (reg_mask);
25340 : if (!register_operand (operands[2], V32HFmode))
25341 : operands[2] = force_reg (V32HFmode, operands[2]);
25342 : if (!register_operand (operands[6], V32HFmode))
25343 : operands[6] = force_reg (V32HFmode, operands[6]);
25344 :
25345 : }
25346 : #undef DONE
25347 : #undef FAIL
25348 : static const uint8_t expand_encoding[] = {
25349 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
25350 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25351 : 0x25
25352 : };
25353 : return complete_seq (expand_encoding, operands);
25354 : }
25355 :
25356 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25357 : extern rtx_insn *gen_split_2732 (rtx_insn *, rtx *);
25358 : rtx_insn *
25359 : gen_split_2732 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25360 : {
25361 : if (dump_file)
25362 : fprintf (dump_file, "Splitting with gen_split_2732 (sse.md:14227)\n");
25363 : start_sequence ();
25364 : #define FAIL return (end_sequence (), nullptr)
25365 : #define DONE return end_sequence ()
25366 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25367 : {
25368 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25369 : int reg6 = 0xF0;
25370 : int reg2 = 0xCC;
25371 : int reg1 = 0xAA;
25372 : int reg3 = 0;
25373 : int reg4 = 0;
25374 : int reg_mask, tmp1, tmp2;
25375 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25376 : STRIP_UNARY (operands[4])))
25377 : {
25378 : reg4 = reg1;
25379 : reg3 = reg6;
25380 : operands[6] = operands[3];
25381 : }
25382 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25383 : STRIP_UNARY (operands[4])))
25384 : {
25385 : reg4 = reg2;
25386 : reg3 = reg6;
25387 : operands[6] = operands[3];
25388 : }
25389 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25390 : STRIP_UNARY (operands[3])))
25391 : {
25392 : reg4 = reg6;
25393 : reg3 = reg1;
25394 : operands[6] = operands[4];
25395 : }
25396 : else
25397 : {
25398 : reg4 = reg6;
25399 : reg3 = reg2;
25400 : operands[6] = operands[4];
25401 : }
25402 :
25403 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25404 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25405 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25406 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25407 :
25408 : tmp1 = reg1 & reg2;
25409 : tmp2 = tmp1 & reg3;
25410 : reg_mask = tmp2 & reg4;
25411 : reg_mask &= 0xFF;
25412 :
25413 : operands[1] = STRIP_UNARY (operands[1]);
25414 : operands[2] = STRIP_UNARY (operands[2]);
25415 : operands[6] = STRIP_UNARY (operands[6]);
25416 : operands[5] = GEN_INT (reg_mask);
25417 : if (!register_operand (operands[2], V16HFmode))
25418 : operands[2] = force_reg (V16HFmode, operands[2]);
25419 : if (!register_operand (operands[6], V16HFmode))
25420 : operands[6] = force_reg (V16HFmode, operands[6]);
25421 :
25422 : }
25423 : #undef DONE
25424 : #undef FAIL
25425 : static const uint8_t expand_encoding[] = {
25426 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
25427 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25428 : 0x25
25429 : };
25430 : return complete_seq (expand_encoding, operands);
25431 : }
25432 :
25433 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25434 : extern rtx_insn *gen_split_2742 (rtx_insn *, rtx *);
25435 : rtx_insn *
25436 : gen_split_2742 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25437 : {
25438 : if (dump_file)
25439 : fprintf (dump_file, "Splitting with gen_split_2742 (sse.md:14227)\n");
25440 : start_sequence ();
25441 : #define FAIL return (end_sequence (), nullptr)
25442 : #define DONE return end_sequence ()
25443 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25444 : {
25445 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25446 : int reg6 = 0xF0;
25447 : int reg2 = 0xCC;
25448 : int reg1 = 0xAA;
25449 : int reg3 = 0;
25450 : int reg4 = 0;
25451 : int reg_mask, tmp1, tmp2;
25452 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25453 : STRIP_UNARY (operands[4])))
25454 : {
25455 : reg4 = reg1;
25456 : reg3 = reg6;
25457 : operands[6] = operands[3];
25458 : }
25459 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25460 : STRIP_UNARY (operands[4])))
25461 : {
25462 : reg4 = reg2;
25463 : reg3 = reg6;
25464 : operands[6] = operands[3];
25465 : }
25466 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25467 : STRIP_UNARY (operands[3])))
25468 : {
25469 : reg4 = reg6;
25470 : reg3 = reg1;
25471 : operands[6] = operands[4];
25472 : }
25473 : else
25474 : {
25475 : reg4 = reg6;
25476 : reg3 = reg2;
25477 : operands[6] = operands[4];
25478 : }
25479 :
25480 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25481 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25482 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25483 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25484 :
25485 : tmp1 = reg1 & reg2;
25486 : tmp2 = tmp1 | reg3;
25487 : reg_mask = tmp2 | reg4;
25488 : reg_mask &= 0xFF;
25489 :
25490 : operands[1] = STRIP_UNARY (operands[1]);
25491 : operands[2] = STRIP_UNARY (operands[2]);
25492 : operands[6] = STRIP_UNARY (operands[6]);
25493 : operands[5] = GEN_INT (reg_mask);
25494 : if (!register_operand (operands[2], V16HFmode))
25495 : operands[2] = force_reg (V16HFmode, operands[2]);
25496 : if (!register_operand (operands[6], V16HFmode))
25497 : operands[6] = force_reg (V16HFmode, operands[6]);
25498 :
25499 : }
25500 : #undef DONE
25501 : #undef FAIL
25502 : static const uint8_t expand_encoding[] = {
25503 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
25504 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25505 : 0x25
25506 : };
25507 : return complete_seq (expand_encoding, operands);
25508 : }
25509 :
25510 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25511 : extern rtx_insn *gen_split_2752 (rtx_insn *, rtx *);
25512 : rtx_insn *
25513 : gen_split_2752 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25514 : {
25515 : if (dump_file)
25516 : fprintf (dump_file, "Splitting with gen_split_2752 (sse.md:14227)\n");
25517 : start_sequence ();
25518 : #define FAIL return (end_sequence (), nullptr)
25519 : #define DONE return end_sequence ()
25520 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25521 : {
25522 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25523 : int reg6 = 0xF0;
25524 : int reg2 = 0xCC;
25525 : int reg1 = 0xAA;
25526 : int reg3 = 0;
25527 : int reg4 = 0;
25528 : int reg_mask, tmp1, tmp2;
25529 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25530 : STRIP_UNARY (operands[4])))
25531 : {
25532 : reg4 = reg1;
25533 : reg3 = reg6;
25534 : operands[6] = operands[3];
25535 : }
25536 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25537 : STRIP_UNARY (operands[4])))
25538 : {
25539 : reg4 = reg2;
25540 : reg3 = reg6;
25541 : operands[6] = operands[3];
25542 : }
25543 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25544 : STRIP_UNARY (operands[3])))
25545 : {
25546 : reg4 = reg6;
25547 : reg3 = reg1;
25548 : operands[6] = operands[4];
25549 : }
25550 : else
25551 : {
25552 : reg4 = reg6;
25553 : reg3 = reg2;
25554 : operands[6] = operands[4];
25555 : }
25556 :
25557 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25558 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25559 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25560 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25561 :
25562 : tmp1 = reg1 & reg2;
25563 : tmp2 = tmp1 ^ reg3;
25564 : reg_mask = tmp2 ^ reg4;
25565 : reg_mask &= 0xFF;
25566 :
25567 : operands[1] = STRIP_UNARY (operands[1]);
25568 : operands[2] = STRIP_UNARY (operands[2]);
25569 : operands[6] = STRIP_UNARY (operands[6]);
25570 : operands[5] = GEN_INT (reg_mask);
25571 : if (!register_operand (operands[2], V16HFmode))
25572 : operands[2] = force_reg (V16HFmode, operands[2]);
25573 : if (!register_operand (operands[6], V16HFmode))
25574 : operands[6] = force_reg (V16HFmode, operands[6]);
25575 :
25576 : }
25577 : #undef DONE
25578 : #undef FAIL
25579 : static const uint8_t expand_encoding[] = {
25580 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
25581 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25582 : 0x25
25583 : };
25584 : return complete_seq (expand_encoding, operands);
25585 : }
25586 :
25587 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25588 : extern rtx_insn *gen_split_2762 (rtx_insn *, rtx *);
25589 : rtx_insn *
25590 : gen_split_2762 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25591 : {
25592 : if (dump_file)
25593 : fprintf (dump_file, "Splitting with gen_split_2762 (sse.md:14227)\n");
25594 : start_sequence ();
25595 : #define FAIL return (end_sequence (), nullptr)
25596 : #define DONE return end_sequence ()
25597 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25598 : {
25599 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25600 : int reg6 = 0xF0;
25601 : int reg2 = 0xCC;
25602 : int reg1 = 0xAA;
25603 : int reg3 = 0;
25604 : int reg4 = 0;
25605 : int reg_mask, tmp1, tmp2;
25606 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25607 : STRIP_UNARY (operands[4])))
25608 : {
25609 : reg4 = reg1;
25610 : reg3 = reg6;
25611 : operands[6] = operands[3];
25612 : }
25613 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25614 : STRIP_UNARY (operands[4])))
25615 : {
25616 : reg4 = reg2;
25617 : reg3 = reg6;
25618 : operands[6] = operands[3];
25619 : }
25620 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25621 : STRIP_UNARY (operands[3])))
25622 : {
25623 : reg4 = reg6;
25624 : reg3 = reg1;
25625 : operands[6] = operands[4];
25626 : }
25627 : else
25628 : {
25629 : reg4 = reg6;
25630 : reg3 = reg2;
25631 : operands[6] = operands[4];
25632 : }
25633 :
25634 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25635 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25636 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25637 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25638 :
25639 : tmp1 = reg1 | reg2;
25640 : tmp2 = tmp1 & reg3;
25641 : reg_mask = tmp2 & reg4;
25642 : reg_mask &= 0xFF;
25643 :
25644 : operands[1] = STRIP_UNARY (operands[1]);
25645 : operands[2] = STRIP_UNARY (operands[2]);
25646 : operands[6] = STRIP_UNARY (operands[6]);
25647 : operands[5] = GEN_INT (reg_mask);
25648 : if (!register_operand (operands[2], V8HFmode))
25649 : operands[2] = force_reg (V8HFmode, operands[2]);
25650 : if (!register_operand (operands[6], V8HFmode))
25651 : operands[6] = force_reg (V8HFmode, operands[6]);
25652 :
25653 : }
25654 : #undef DONE
25655 : #undef FAIL
25656 : static const uint8_t expand_encoding[] = {
25657 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
25658 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25659 : 0x25
25660 : };
25661 : return complete_seq (expand_encoding, operands);
25662 : }
25663 :
25664 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25665 : extern rtx_insn *gen_split_2772 (rtx_insn *, rtx *);
25666 : rtx_insn *
25667 : gen_split_2772 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25668 : {
25669 : if (dump_file)
25670 : fprintf (dump_file, "Splitting with gen_split_2772 (sse.md:14227)\n");
25671 : start_sequence ();
25672 : #define FAIL return (end_sequence (), nullptr)
25673 : #define DONE return end_sequence ()
25674 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25675 : {
25676 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25677 : int reg6 = 0xF0;
25678 : int reg2 = 0xCC;
25679 : int reg1 = 0xAA;
25680 : int reg3 = 0;
25681 : int reg4 = 0;
25682 : int reg_mask, tmp1, tmp2;
25683 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25684 : STRIP_UNARY (operands[4])))
25685 : {
25686 : reg4 = reg1;
25687 : reg3 = reg6;
25688 : operands[6] = operands[3];
25689 : }
25690 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25691 : STRIP_UNARY (operands[4])))
25692 : {
25693 : reg4 = reg2;
25694 : reg3 = reg6;
25695 : operands[6] = operands[3];
25696 : }
25697 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25698 : STRIP_UNARY (operands[3])))
25699 : {
25700 : reg4 = reg6;
25701 : reg3 = reg1;
25702 : operands[6] = operands[4];
25703 : }
25704 : else
25705 : {
25706 : reg4 = reg6;
25707 : reg3 = reg2;
25708 : operands[6] = operands[4];
25709 : }
25710 :
25711 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25712 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25713 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25714 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25715 :
25716 : tmp1 = reg1 | reg2;
25717 : tmp2 = tmp1 | reg3;
25718 : reg_mask = tmp2 | reg4;
25719 : reg_mask &= 0xFF;
25720 :
25721 : operands[1] = STRIP_UNARY (operands[1]);
25722 : operands[2] = STRIP_UNARY (operands[2]);
25723 : operands[6] = STRIP_UNARY (operands[6]);
25724 : operands[5] = GEN_INT (reg_mask);
25725 : if (!register_operand (operands[2], V8HFmode))
25726 : operands[2] = force_reg (V8HFmode, operands[2]);
25727 : if (!register_operand (operands[6], V8HFmode))
25728 : operands[6] = force_reg (V8HFmode, operands[6]);
25729 :
25730 : }
25731 : #undef DONE
25732 : #undef FAIL
25733 : static const uint8_t expand_encoding[] = {
25734 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
25735 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25736 : 0x25
25737 : };
25738 : return complete_seq (expand_encoding, operands);
25739 : }
25740 :
25741 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25742 : extern rtx_insn *gen_split_2782 (rtx_insn *, rtx *);
25743 : rtx_insn *
25744 : gen_split_2782 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25745 : {
25746 : if (dump_file)
25747 : fprintf (dump_file, "Splitting with gen_split_2782 (sse.md:14227)\n");
25748 : start_sequence ();
25749 : #define FAIL return (end_sequence (), nullptr)
25750 : #define DONE return end_sequence ()
25751 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25752 : {
25753 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25754 : int reg6 = 0xF0;
25755 : int reg2 = 0xCC;
25756 : int reg1 = 0xAA;
25757 : int reg3 = 0;
25758 : int reg4 = 0;
25759 : int reg_mask, tmp1, tmp2;
25760 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25761 : STRIP_UNARY (operands[4])))
25762 : {
25763 : reg4 = reg1;
25764 : reg3 = reg6;
25765 : operands[6] = operands[3];
25766 : }
25767 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25768 : STRIP_UNARY (operands[4])))
25769 : {
25770 : reg4 = reg2;
25771 : reg3 = reg6;
25772 : operands[6] = operands[3];
25773 : }
25774 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25775 : STRIP_UNARY (operands[3])))
25776 : {
25777 : reg4 = reg6;
25778 : reg3 = reg1;
25779 : operands[6] = operands[4];
25780 : }
25781 : else
25782 : {
25783 : reg4 = reg6;
25784 : reg3 = reg2;
25785 : operands[6] = operands[4];
25786 : }
25787 :
25788 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25789 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25790 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25791 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25792 :
25793 : tmp1 = reg1 | reg2;
25794 : tmp2 = tmp1 ^ reg3;
25795 : reg_mask = tmp2 ^ reg4;
25796 : reg_mask &= 0xFF;
25797 :
25798 : operands[1] = STRIP_UNARY (operands[1]);
25799 : operands[2] = STRIP_UNARY (operands[2]);
25800 : operands[6] = STRIP_UNARY (operands[6]);
25801 : operands[5] = GEN_INT (reg_mask);
25802 : if (!register_operand (operands[2], V8HFmode))
25803 : operands[2] = force_reg (V8HFmode, operands[2]);
25804 : if (!register_operand (operands[6], V8HFmode))
25805 : operands[6] = force_reg (V8HFmode, operands[6]);
25806 :
25807 : }
25808 : #undef DONE
25809 : #undef FAIL
25810 : static const uint8_t expand_encoding[] = {
25811 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
25812 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25813 : 0x25
25814 : };
25815 : return complete_seq (expand_encoding, operands);
25816 : }
25817 :
25818 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25819 : extern rtx_insn *gen_split_2792 (rtx_insn *, rtx *);
25820 : rtx_insn *
25821 : gen_split_2792 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25822 : {
25823 : if (dump_file)
25824 : fprintf (dump_file, "Splitting with gen_split_2792 (sse.md:14227)\n");
25825 : start_sequence ();
25826 : #define FAIL return (end_sequence (), nullptr)
25827 : #define DONE return end_sequence ()
25828 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25829 : {
25830 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25831 : int reg6 = 0xF0;
25832 : int reg2 = 0xCC;
25833 : int reg1 = 0xAA;
25834 : int reg3 = 0;
25835 : int reg4 = 0;
25836 : int reg_mask, tmp1, tmp2;
25837 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25838 : STRIP_UNARY (operands[4])))
25839 : {
25840 : reg4 = reg1;
25841 : reg3 = reg6;
25842 : operands[6] = operands[3];
25843 : }
25844 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25845 : STRIP_UNARY (operands[4])))
25846 : {
25847 : reg4 = reg2;
25848 : reg3 = reg6;
25849 : operands[6] = operands[3];
25850 : }
25851 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25852 : STRIP_UNARY (operands[3])))
25853 : {
25854 : reg4 = reg6;
25855 : reg3 = reg1;
25856 : operands[6] = operands[4];
25857 : }
25858 : else
25859 : {
25860 : reg4 = reg6;
25861 : reg3 = reg2;
25862 : operands[6] = operands[4];
25863 : }
25864 :
25865 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25866 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25867 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25868 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25869 :
25870 : tmp1 = reg1 ^ reg2;
25871 : tmp2 = tmp1 & reg3;
25872 : reg_mask = tmp2 & reg4;
25873 : reg_mask &= 0xFF;
25874 :
25875 : operands[1] = STRIP_UNARY (operands[1]);
25876 : operands[2] = STRIP_UNARY (operands[2]);
25877 : operands[6] = STRIP_UNARY (operands[6]);
25878 : operands[5] = GEN_INT (reg_mask);
25879 : if (!register_operand (operands[2], V32BFmode))
25880 : operands[2] = force_reg (V32BFmode, operands[2]);
25881 : if (!register_operand (operands[6], V32BFmode))
25882 : operands[6] = force_reg (V32BFmode, operands[6]);
25883 :
25884 : }
25885 : #undef DONE
25886 : #undef FAIL
25887 : static const uint8_t expand_encoding[] = {
25888 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
25889 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25890 : 0x25
25891 : };
25892 : return complete_seq (expand_encoding, operands);
25893 : }
25894 :
25895 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25896 : extern rtx_insn *gen_split_2802 (rtx_insn *, rtx *);
25897 : rtx_insn *
25898 : gen_split_2802 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25899 : {
25900 : if (dump_file)
25901 : fprintf (dump_file, "Splitting with gen_split_2802 (sse.md:14227)\n");
25902 : start_sequence ();
25903 : #define FAIL return (end_sequence (), nullptr)
25904 : #define DONE return end_sequence ()
25905 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25906 : {
25907 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25908 : int reg6 = 0xF0;
25909 : int reg2 = 0xCC;
25910 : int reg1 = 0xAA;
25911 : int reg3 = 0;
25912 : int reg4 = 0;
25913 : int reg_mask, tmp1, tmp2;
25914 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25915 : STRIP_UNARY (operands[4])))
25916 : {
25917 : reg4 = reg1;
25918 : reg3 = reg6;
25919 : operands[6] = operands[3];
25920 : }
25921 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25922 : STRIP_UNARY (operands[4])))
25923 : {
25924 : reg4 = reg2;
25925 : reg3 = reg6;
25926 : operands[6] = operands[3];
25927 : }
25928 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25929 : STRIP_UNARY (operands[3])))
25930 : {
25931 : reg4 = reg6;
25932 : reg3 = reg1;
25933 : operands[6] = operands[4];
25934 : }
25935 : else
25936 : {
25937 : reg4 = reg6;
25938 : reg3 = reg2;
25939 : operands[6] = operands[4];
25940 : }
25941 :
25942 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25943 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25944 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25945 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25946 :
25947 : tmp1 = reg1 ^ reg2;
25948 : tmp2 = tmp1 | reg3;
25949 : reg_mask = tmp2 | reg4;
25950 : reg_mask &= 0xFF;
25951 :
25952 : operands[1] = STRIP_UNARY (operands[1]);
25953 : operands[2] = STRIP_UNARY (operands[2]);
25954 : operands[6] = STRIP_UNARY (operands[6]);
25955 : operands[5] = GEN_INT (reg_mask);
25956 : if (!register_operand (operands[2], V32BFmode))
25957 : operands[2] = force_reg (V32BFmode, operands[2]);
25958 : if (!register_operand (operands[6], V32BFmode))
25959 : operands[6] = force_reg (V32BFmode, operands[6]);
25960 :
25961 : }
25962 : #undef DONE
25963 : #undef FAIL
25964 : static const uint8_t expand_encoding[] = {
25965 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
25966 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25967 : 0x25
25968 : };
25969 : return complete_seq (expand_encoding, operands);
25970 : }
25971 :
25972 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25973 : extern rtx_insn *gen_split_2812 (rtx_insn *, rtx *);
25974 : rtx_insn *
25975 : gen_split_2812 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25976 : {
25977 : if (dump_file)
25978 : fprintf (dump_file, "Splitting with gen_split_2812 (sse.md:14227)\n");
25979 : start_sequence ();
25980 : #define FAIL return (end_sequence (), nullptr)
25981 : #define DONE return end_sequence ()
25982 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25983 : {
25984 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25985 : int reg6 = 0xF0;
25986 : int reg2 = 0xCC;
25987 : int reg1 = 0xAA;
25988 : int reg3 = 0;
25989 : int reg4 = 0;
25990 : int reg_mask, tmp1, tmp2;
25991 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25992 : STRIP_UNARY (operands[4])))
25993 : {
25994 : reg4 = reg1;
25995 : reg3 = reg6;
25996 : operands[6] = operands[3];
25997 : }
25998 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25999 : STRIP_UNARY (operands[4])))
26000 : {
26001 : reg4 = reg2;
26002 : reg3 = reg6;
26003 : operands[6] = operands[3];
26004 : }
26005 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26006 : STRIP_UNARY (operands[3])))
26007 : {
26008 : reg4 = reg6;
26009 : reg3 = reg1;
26010 : operands[6] = operands[4];
26011 : }
26012 : else
26013 : {
26014 : reg4 = reg6;
26015 : reg3 = reg2;
26016 : operands[6] = operands[4];
26017 : }
26018 :
26019 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26020 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26021 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26022 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26023 :
26024 : tmp1 = reg1 ^ reg2;
26025 : tmp2 = tmp1 ^ reg3;
26026 : reg_mask = tmp2 ^ reg4;
26027 : reg_mask &= 0xFF;
26028 :
26029 : operands[1] = STRIP_UNARY (operands[1]);
26030 : operands[2] = STRIP_UNARY (operands[2]);
26031 : operands[6] = STRIP_UNARY (operands[6]);
26032 : operands[5] = GEN_INT (reg_mask);
26033 : if (!register_operand (operands[2], V32BFmode))
26034 : operands[2] = force_reg (V32BFmode, operands[2]);
26035 : if (!register_operand (operands[6], V32BFmode))
26036 : operands[6] = force_reg (V32BFmode, operands[6]);
26037 :
26038 : }
26039 : #undef DONE
26040 : #undef FAIL
26041 : static const uint8_t expand_encoding[] = {
26042 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
26043 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26044 : 0x25
26045 : };
26046 : return complete_seq (expand_encoding, operands);
26047 : }
26048 :
26049 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26050 : extern rtx_insn *gen_split_2822 (rtx_insn *, rtx *);
26051 : rtx_insn *
26052 : gen_split_2822 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26053 : {
26054 : if (dump_file)
26055 : fprintf (dump_file, "Splitting with gen_split_2822 (sse.md:14227)\n");
26056 : start_sequence ();
26057 : #define FAIL return (end_sequence (), nullptr)
26058 : #define DONE return end_sequence ()
26059 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26060 : {
26061 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26062 : int reg6 = 0xF0;
26063 : int reg2 = 0xCC;
26064 : int reg1 = 0xAA;
26065 : int reg3 = 0;
26066 : int reg4 = 0;
26067 : int reg_mask, tmp1, tmp2;
26068 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26069 : STRIP_UNARY (operands[4])))
26070 : {
26071 : reg4 = reg1;
26072 : reg3 = reg6;
26073 : operands[6] = operands[3];
26074 : }
26075 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26076 : STRIP_UNARY (operands[4])))
26077 : {
26078 : reg4 = reg2;
26079 : reg3 = reg6;
26080 : operands[6] = operands[3];
26081 : }
26082 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26083 : STRIP_UNARY (operands[3])))
26084 : {
26085 : reg4 = reg6;
26086 : reg3 = reg1;
26087 : operands[6] = operands[4];
26088 : }
26089 : else
26090 : {
26091 : reg4 = reg6;
26092 : reg3 = reg2;
26093 : operands[6] = operands[4];
26094 : }
26095 :
26096 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26097 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26098 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26099 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26100 :
26101 : tmp1 = reg1 & reg2;
26102 : tmp2 = tmp1 | reg3;
26103 : reg_mask = tmp2 & reg4;
26104 : reg_mask &= 0xFF;
26105 :
26106 : operands[1] = STRIP_UNARY (operands[1]);
26107 : operands[2] = STRIP_UNARY (operands[2]);
26108 : operands[6] = STRIP_UNARY (operands[6]);
26109 : operands[5] = GEN_INT (reg_mask);
26110 : if (!register_operand (operands[2], V16BFmode))
26111 : operands[2] = force_reg (V16BFmode, operands[2]);
26112 : if (!register_operand (operands[6], V16BFmode))
26113 : operands[6] = force_reg (V16BFmode, operands[6]);
26114 :
26115 : }
26116 : #undef DONE
26117 : #undef FAIL
26118 : static const uint8_t expand_encoding[] = {
26119 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
26120 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26121 : 0x25
26122 : };
26123 : return complete_seq (expand_encoding, operands);
26124 : }
26125 :
26126 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26127 : extern rtx_insn *gen_split_2832 (rtx_insn *, rtx *);
26128 : rtx_insn *
26129 : gen_split_2832 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26130 : {
26131 : if (dump_file)
26132 : fprintf (dump_file, "Splitting with gen_split_2832 (sse.md:14227)\n");
26133 : start_sequence ();
26134 : #define FAIL return (end_sequence (), nullptr)
26135 : #define DONE return end_sequence ()
26136 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26137 : {
26138 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26139 : int reg6 = 0xF0;
26140 : int reg2 = 0xCC;
26141 : int reg1 = 0xAA;
26142 : int reg3 = 0;
26143 : int reg4 = 0;
26144 : int reg_mask, tmp1, tmp2;
26145 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26146 : STRIP_UNARY (operands[4])))
26147 : {
26148 : reg4 = reg1;
26149 : reg3 = reg6;
26150 : operands[6] = operands[3];
26151 : }
26152 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26153 : STRIP_UNARY (operands[4])))
26154 : {
26155 : reg4 = reg2;
26156 : reg3 = reg6;
26157 : operands[6] = operands[3];
26158 : }
26159 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26160 : STRIP_UNARY (operands[3])))
26161 : {
26162 : reg4 = reg6;
26163 : reg3 = reg1;
26164 : operands[6] = operands[4];
26165 : }
26166 : else
26167 : {
26168 : reg4 = reg6;
26169 : reg3 = reg2;
26170 : operands[6] = operands[4];
26171 : }
26172 :
26173 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26174 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26175 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26176 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26177 :
26178 : tmp1 = reg1 & reg2;
26179 : tmp2 = tmp1 ^ reg3;
26180 : reg_mask = tmp2 | reg4;
26181 : reg_mask &= 0xFF;
26182 :
26183 : operands[1] = STRIP_UNARY (operands[1]);
26184 : operands[2] = STRIP_UNARY (operands[2]);
26185 : operands[6] = STRIP_UNARY (operands[6]);
26186 : operands[5] = GEN_INT (reg_mask);
26187 : if (!register_operand (operands[2], V16BFmode))
26188 : operands[2] = force_reg (V16BFmode, operands[2]);
26189 : if (!register_operand (operands[6], V16BFmode))
26190 : operands[6] = force_reg (V16BFmode, operands[6]);
26191 :
26192 : }
26193 : #undef DONE
26194 : #undef FAIL
26195 : static const uint8_t expand_encoding[] = {
26196 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
26197 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26198 : 0x25
26199 : };
26200 : return complete_seq (expand_encoding, operands);
26201 : }
26202 :
26203 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26204 : extern rtx_insn *gen_split_2842 (rtx_insn *, rtx *);
26205 : rtx_insn *
26206 : gen_split_2842 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26207 : {
26208 : if (dump_file)
26209 : fprintf (dump_file, "Splitting with gen_split_2842 (sse.md:14227)\n");
26210 : start_sequence ();
26211 : #define FAIL return (end_sequence (), nullptr)
26212 : #define DONE return end_sequence ()
26213 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26214 : {
26215 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26216 : int reg6 = 0xF0;
26217 : int reg2 = 0xCC;
26218 : int reg1 = 0xAA;
26219 : int reg3 = 0;
26220 : int reg4 = 0;
26221 : int reg_mask, tmp1, tmp2;
26222 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26223 : STRIP_UNARY (operands[4])))
26224 : {
26225 : reg4 = reg1;
26226 : reg3 = reg6;
26227 : operands[6] = operands[3];
26228 : }
26229 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26230 : STRIP_UNARY (operands[4])))
26231 : {
26232 : reg4 = reg2;
26233 : reg3 = reg6;
26234 : operands[6] = operands[3];
26235 : }
26236 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26237 : STRIP_UNARY (operands[3])))
26238 : {
26239 : reg4 = reg6;
26240 : reg3 = reg1;
26241 : operands[6] = operands[4];
26242 : }
26243 : else
26244 : {
26245 : reg4 = reg6;
26246 : reg3 = reg2;
26247 : operands[6] = operands[4];
26248 : }
26249 :
26250 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26251 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26252 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26253 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26254 :
26255 : tmp1 = reg1 & reg2;
26256 : tmp2 = tmp1 & reg3;
26257 : reg_mask = tmp2 ^ reg4;
26258 : reg_mask &= 0xFF;
26259 :
26260 : operands[1] = STRIP_UNARY (operands[1]);
26261 : operands[2] = STRIP_UNARY (operands[2]);
26262 : operands[6] = STRIP_UNARY (operands[6]);
26263 : operands[5] = GEN_INT (reg_mask);
26264 : if (!register_operand (operands[2], V8BFmode))
26265 : operands[2] = force_reg (V8BFmode, operands[2]);
26266 : if (!register_operand (operands[6], V8BFmode))
26267 : operands[6] = force_reg (V8BFmode, operands[6]);
26268 :
26269 : }
26270 : #undef DONE
26271 : #undef FAIL
26272 : static const uint8_t expand_encoding[] = {
26273 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
26274 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26275 : 0x25
26276 : };
26277 : return complete_seq (expand_encoding, operands);
26278 : }
26279 :
26280 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26281 : extern rtx_insn *gen_split_2852 (rtx_insn *, rtx *);
26282 : rtx_insn *
26283 : gen_split_2852 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26284 : {
26285 : if (dump_file)
26286 : fprintf (dump_file, "Splitting with gen_split_2852 (sse.md:14227)\n");
26287 : start_sequence ();
26288 : #define FAIL return (end_sequence (), nullptr)
26289 : #define DONE return end_sequence ()
26290 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26291 : {
26292 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26293 : int reg6 = 0xF0;
26294 : int reg2 = 0xCC;
26295 : int reg1 = 0xAA;
26296 : int reg3 = 0;
26297 : int reg4 = 0;
26298 : int reg_mask, tmp1, tmp2;
26299 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26300 : STRIP_UNARY (operands[4])))
26301 : {
26302 : reg4 = reg1;
26303 : reg3 = reg6;
26304 : operands[6] = operands[3];
26305 : }
26306 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26307 : STRIP_UNARY (operands[4])))
26308 : {
26309 : reg4 = reg2;
26310 : reg3 = reg6;
26311 : operands[6] = operands[3];
26312 : }
26313 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26314 : STRIP_UNARY (operands[3])))
26315 : {
26316 : reg4 = reg6;
26317 : reg3 = reg1;
26318 : operands[6] = operands[4];
26319 : }
26320 : else
26321 : {
26322 : reg4 = reg6;
26323 : reg3 = reg2;
26324 : operands[6] = operands[4];
26325 : }
26326 :
26327 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26328 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26329 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26330 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26331 :
26332 : tmp1 = reg1 | reg2;
26333 : tmp2 = tmp1 | reg3;
26334 : reg_mask = tmp2 & reg4;
26335 : reg_mask &= 0xFF;
26336 :
26337 : operands[1] = STRIP_UNARY (operands[1]);
26338 : operands[2] = STRIP_UNARY (operands[2]);
26339 : operands[6] = STRIP_UNARY (operands[6]);
26340 : operands[5] = GEN_INT (reg_mask);
26341 : if (!register_operand (operands[2], V8BFmode))
26342 : operands[2] = force_reg (V8BFmode, operands[2]);
26343 : if (!register_operand (operands[6], V8BFmode))
26344 : operands[6] = force_reg (V8BFmode, operands[6]);
26345 :
26346 : }
26347 : #undef DONE
26348 : #undef FAIL
26349 : static const uint8_t expand_encoding[] = {
26350 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
26351 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26352 : 0x25
26353 : };
26354 : return complete_seq (expand_encoding, operands);
26355 : }
26356 :
26357 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26358 : extern rtx_insn *gen_split_2862 (rtx_insn *, rtx *);
26359 : rtx_insn *
26360 : gen_split_2862 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26361 : {
26362 : if (dump_file)
26363 : fprintf (dump_file, "Splitting with gen_split_2862 (sse.md:14227)\n");
26364 : start_sequence ();
26365 : #define FAIL return (end_sequence (), nullptr)
26366 : #define DONE return end_sequence ()
26367 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26368 : {
26369 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26370 : int reg6 = 0xF0;
26371 : int reg2 = 0xCC;
26372 : int reg1 = 0xAA;
26373 : int reg3 = 0;
26374 : int reg4 = 0;
26375 : int reg_mask, tmp1, tmp2;
26376 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26377 : STRIP_UNARY (operands[4])))
26378 : {
26379 : reg4 = reg1;
26380 : reg3 = reg6;
26381 : operands[6] = operands[3];
26382 : }
26383 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26384 : STRIP_UNARY (operands[4])))
26385 : {
26386 : reg4 = reg2;
26387 : reg3 = reg6;
26388 : operands[6] = operands[3];
26389 : }
26390 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26391 : STRIP_UNARY (operands[3])))
26392 : {
26393 : reg4 = reg6;
26394 : reg3 = reg1;
26395 : operands[6] = operands[4];
26396 : }
26397 : else
26398 : {
26399 : reg4 = reg6;
26400 : reg3 = reg2;
26401 : operands[6] = operands[4];
26402 : }
26403 :
26404 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26405 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26406 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26407 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26408 :
26409 : tmp1 = reg1 | reg2;
26410 : tmp2 = tmp1 ^ reg3;
26411 : reg_mask = tmp2 | reg4;
26412 : reg_mask &= 0xFF;
26413 :
26414 : operands[1] = STRIP_UNARY (operands[1]);
26415 : operands[2] = STRIP_UNARY (operands[2]);
26416 : operands[6] = STRIP_UNARY (operands[6]);
26417 : operands[5] = GEN_INT (reg_mask);
26418 : if (!register_operand (operands[2], V8BFmode))
26419 : operands[2] = force_reg (V8BFmode, operands[2]);
26420 : if (!register_operand (operands[6], V8BFmode))
26421 : operands[6] = force_reg (V8BFmode, operands[6]);
26422 :
26423 : }
26424 : #undef DONE
26425 : #undef FAIL
26426 : static const uint8_t expand_encoding[] = {
26427 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
26428 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26429 : 0x25
26430 : };
26431 : return complete_seq (expand_encoding, operands);
26432 : }
26433 :
26434 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26435 : extern rtx_insn *gen_split_2872 (rtx_insn *, rtx *);
26436 : rtx_insn *
26437 : gen_split_2872 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26438 : {
26439 : if (dump_file)
26440 : fprintf (dump_file, "Splitting with gen_split_2872 (sse.md:14227)\n");
26441 : start_sequence ();
26442 : #define FAIL return (end_sequence (), nullptr)
26443 : #define DONE return end_sequence ()
26444 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26445 : {
26446 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26447 : int reg6 = 0xF0;
26448 : int reg2 = 0xCC;
26449 : int reg1 = 0xAA;
26450 : int reg3 = 0;
26451 : int reg4 = 0;
26452 : int reg_mask, tmp1, tmp2;
26453 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26454 : STRIP_UNARY (operands[4])))
26455 : {
26456 : reg4 = reg1;
26457 : reg3 = reg6;
26458 : operands[6] = operands[3];
26459 : }
26460 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26461 : STRIP_UNARY (operands[4])))
26462 : {
26463 : reg4 = reg2;
26464 : reg3 = reg6;
26465 : operands[6] = operands[3];
26466 : }
26467 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26468 : STRIP_UNARY (operands[3])))
26469 : {
26470 : reg4 = reg6;
26471 : reg3 = reg1;
26472 : operands[6] = operands[4];
26473 : }
26474 : else
26475 : {
26476 : reg4 = reg6;
26477 : reg3 = reg2;
26478 : operands[6] = operands[4];
26479 : }
26480 :
26481 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26482 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26483 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26484 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26485 :
26486 : tmp1 = reg1 | reg2;
26487 : tmp2 = tmp1 & reg3;
26488 : reg_mask = tmp2 ^ reg4;
26489 : reg_mask &= 0xFF;
26490 :
26491 : operands[1] = STRIP_UNARY (operands[1]);
26492 : operands[2] = STRIP_UNARY (operands[2]);
26493 : operands[6] = STRIP_UNARY (operands[6]);
26494 : operands[5] = GEN_INT (reg_mask);
26495 : if (!register_operand (operands[2], V16SFmode))
26496 : operands[2] = force_reg (V16SFmode, operands[2]);
26497 : if (!register_operand (operands[6], V16SFmode))
26498 : operands[6] = force_reg (V16SFmode, operands[6]);
26499 :
26500 : }
26501 : #undef DONE
26502 : #undef FAIL
26503 : static const uint8_t expand_encoding[] = {
26504 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
26505 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26506 : 0x25
26507 : };
26508 : return complete_seq (expand_encoding, operands);
26509 : }
26510 :
26511 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26512 : extern rtx_insn *gen_split_2882 (rtx_insn *, rtx *);
26513 : rtx_insn *
26514 : gen_split_2882 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26515 : {
26516 : if (dump_file)
26517 : fprintf (dump_file, "Splitting with gen_split_2882 (sse.md:14227)\n");
26518 : start_sequence ();
26519 : #define FAIL return (end_sequence (), nullptr)
26520 : #define DONE return end_sequence ()
26521 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26522 : {
26523 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26524 : int reg6 = 0xF0;
26525 : int reg2 = 0xCC;
26526 : int reg1 = 0xAA;
26527 : int reg3 = 0;
26528 : int reg4 = 0;
26529 : int reg_mask, tmp1, tmp2;
26530 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26531 : STRIP_UNARY (operands[4])))
26532 : {
26533 : reg4 = reg1;
26534 : reg3 = reg6;
26535 : operands[6] = operands[3];
26536 : }
26537 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26538 : STRIP_UNARY (operands[4])))
26539 : {
26540 : reg4 = reg2;
26541 : reg3 = reg6;
26542 : operands[6] = operands[3];
26543 : }
26544 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26545 : STRIP_UNARY (operands[3])))
26546 : {
26547 : reg4 = reg6;
26548 : reg3 = reg1;
26549 : operands[6] = operands[4];
26550 : }
26551 : else
26552 : {
26553 : reg4 = reg6;
26554 : reg3 = reg2;
26555 : operands[6] = operands[4];
26556 : }
26557 :
26558 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26559 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26560 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26561 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26562 :
26563 : tmp1 = reg1 ^ reg2;
26564 : tmp2 = tmp1 | reg3;
26565 : reg_mask = tmp2 & reg4;
26566 : reg_mask &= 0xFF;
26567 :
26568 : operands[1] = STRIP_UNARY (operands[1]);
26569 : operands[2] = STRIP_UNARY (operands[2]);
26570 : operands[6] = STRIP_UNARY (operands[6]);
26571 : operands[5] = GEN_INT (reg_mask);
26572 : if (!register_operand (operands[2], V16SFmode))
26573 : operands[2] = force_reg (V16SFmode, operands[2]);
26574 : if (!register_operand (operands[6], V16SFmode))
26575 : operands[6] = force_reg (V16SFmode, operands[6]);
26576 :
26577 : }
26578 : #undef DONE
26579 : #undef FAIL
26580 : static const uint8_t expand_encoding[] = {
26581 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
26582 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26583 : 0x25
26584 : };
26585 : return complete_seq (expand_encoding, operands);
26586 : }
26587 :
26588 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26589 : extern rtx_insn *gen_split_2892 (rtx_insn *, rtx *);
26590 : rtx_insn *
26591 : gen_split_2892 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26592 : {
26593 : if (dump_file)
26594 : fprintf (dump_file, "Splitting with gen_split_2892 (sse.md:14227)\n");
26595 : start_sequence ();
26596 : #define FAIL return (end_sequence (), nullptr)
26597 : #define DONE return end_sequence ()
26598 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26599 : {
26600 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26601 : int reg6 = 0xF0;
26602 : int reg2 = 0xCC;
26603 : int reg1 = 0xAA;
26604 : int reg3 = 0;
26605 : int reg4 = 0;
26606 : int reg_mask, tmp1, tmp2;
26607 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26608 : STRIP_UNARY (operands[4])))
26609 : {
26610 : reg4 = reg1;
26611 : reg3 = reg6;
26612 : operands[6] = operands[3];
26613 : }
26614 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26615 : STRIP_UNARY (operands[4])))
26616 : {
26617 : reg4 = reg2;
26618 : reg3 = reg6;
26619 : operands[6] = operands[3];
26620 : }
26621 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26622 : STRIP_UNARY (operands[3])))
26623 : {
26624 : reg4 = reg6;
26625 : reg3 = reg1;
26626 : operands[6] = operands[4];
26627 : }
26628 : else
26629 : {
26630 : reg4 = reg6;
26631 : reg3 = reg2;
26632 : operands[6] = operands[4];
26633 : }
26634 :
26635 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26636 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26637 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26638 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26639 :
26640 : tmp1 = reg1 ^ reg2;
26641 : tmp2 = tmp1 ^ reg3;
26642 : reg_mask = tmp2 | reg4;
26643 : reg_mask &= 0xFF;
26644 :
26645 : operands[1] = STRIP_UNARY (operands[1]);
26646 : operands[2] = STRIP_UNARY (operands[2]);
26647 : operands[6] = STRIP_UNARY (operands[6]);
26648 : operands[5] = GEN_INT (reg_mask);
26649 : if (!register_operand (operands[2], V16SFmode))
26650 : operands[2] = force_reg (V16SFmode, operands[2]);
26651 : if (!register_operand (operands[6], V16SFmode))
26652 : operands[6] = force_reg (V16SFmode, operands[6]);
26653 :
26654 : }
26655 : #undef DONE
26656 : #undef FAIL
26657 : static const uint8_t expand_encoding[] = {
26658 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
26659 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26660 : 0x25
26661 : };
26662 : return complete_seq (expand_encoding, operands);
26663 : }
26664 :
26665 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26666 : extern rtx_insn *gen_split_2902 (rtx_insn *, rtx *);
26667 : rtx_insn *
26668 : gen_split_2902 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26669 : {
26670 : if (dump_file)
26671 : fprintf (dump_file, "Splitting with gen_split_2902 (sse.md:14227)\n");
26672 : start_sequence ();
26673 : #define FAIL return (end_sequence (), nullptr)
26674 : #define DONE return end_sequence ()
26675 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26676 : {
26677 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26678 : int reg6 = 0xF0;
26679 : int reg2 = 0xCC;
26680 : int reg1 = 0xAA;
26681 : int reg3 = 0;
26682 : int reg4 = 0;
26683 : int reg_mask, tmp1, tmp2;
26684 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26685 : STRIP_UNARY (operands[4])))
26686 : {
26687 : reg4 = reg1;
26688 : reg3 = reg6;
26689 : operands[6] = operands[3];
26690 : }
26691 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26692 : STRIP_UNARY (operands[4])))
26693 : {
26694 : reg4 = reg2;
26695 : reg3 = reg6;
26696 : operands[6] = operands[3];
26697 : }
26698 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26699 : STRIP_UNARY (operands[3])))
26700 : {
26701 : reg4 = reg6;
26702 : reg3 = reg1;
26703 : operands[6] = operands[4];
26704 : }
26705 : else
26706 : {
26707 : reg4 = reg6;
26708 : reg3 = reg2;
26709 : operands[6] = operands[4];
26710 : }
26711 :
26712 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26713 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26714 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26715 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26716 :
26717 : tmp1 = reg1 ^ reg2;
26718 : tmp2 = tmp1 & reg3;
26719 : reg_mask = tmp2 ^ reg4;
26720 : reg_mask &= 0xFF;
26721 :
26722 : operands[1] = STRIP_UNARY (operands[1]);
26723 : operands[2] = STRIP_UNARY (operands[2]);
26724 : operands[6] = STRIP_UNARY (operands[6]);
26725 : operands[5] = GEN_INT (reg_mask);
26726 : if (!register_operand (operands[2], V8SFmode))
26727 : operands[2] = force_reg (V8SFmode, operands[2]);
26728 : if (!register_operand (operands[6], V8SFmode))
26729 : operands[6] = force_reg (V8SFmode, operands[6]);
26730 :
26731 : }
26732 : #undef DONE
26733 : #undef FAIL
26734 : static const uint8_t expand_encoding[] = {
26735 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
26736 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26737 : 0x25
26738 : };
26739 : return complete_seq (expand_encoding, operands);
26740 : }
26741 :
26742 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26743 : extern rtx_insn *gen_split_2912 (rtx_insn *, rtx *);
26744 : rtx_insn *
26745 : gen_split_2912 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26746 : {
26747 : if (dump_file)
26748 : fprintf (dump_file, "Splitting with gen_split_2912 (sse.md:14227)\n");
26749 : start_sequence ();
26750 : #define FAIL return (end_sequence (), nullptr)
26751 : #define DONE return end_sequence ()
26752 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26753 : {
26754 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26755 : int reg6 = 0xF0;
26756 : int reg2 = 0xCC;
26757 : int reg1 = 0xAA;
26758 : int reg3 = 0;
26759 : int reg4 = 0;
26760 : int reg_mask, tmp1, tmp2;
26761 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26762 : STRIP_UNARY (operands[4])))
26763 : {
26764 : reg4 = reg1;
26765 : reg3 = reg6;
26766 : operands[6] = operands[3];
26767 : }
26768 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26769 : STRIP_UNARY (operands[4])))
26770 : {
26771 : reg4 = reg2;
26772 : reg3 = reg6;
26773 : operands[6] = operands[3];
26774 : }
26775 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26776 : STRIP_UNARY (operands[3])))
26777 : {
26778 : reg4 = reg6;
26779 : reg3 = reg1;
26780 : operands[6] = operands[4];
26781 : }
26782 : else
26783 : {
26784 : reg4 = reg6;
26785 : reg3 = reg2;
26786 : operands[6] = operands[4];
26787 : }
26788 :
26789 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26790 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26791 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26792 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26793 :
26794 : tmp1 = reg1 & reg2;
26795 : tmp2 = tmp1 ^ reg3;
26796 : reg_mask = tmp2 & reg4;
26797 : reg_mask &= 0xFF;
26798 :
26799 : operands[1] = STRIP_UNARY (operands[1]);
26800 : operands[2] = STRIP_UNARY (operands[2]);
26801 : operands[6] = STRIP_UNARY (operands[6]);
26802 : operands[5] = GEN_INT (reg_mask);
26803 : if (!register_operand (operands[2], V8SFmode))
26804 : operands[2] = force_reg (V8SFmode, operands[2]);
26805 : if (!register_operand (operands[6], V8SFmode))
26806 : operands[6] = force_reg (V8SFmode, operands[6]);
26807 :
26808 : }
26809 : #undef DONE
26810 : #undef FAIL
26811 : static const uint8_t expand_encoding[] = {
26812 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
26813 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26814 : 0x25
26815 : };
26816 : return complete_seq (expand_encoding, operands);
26817 : }
26818 :
26819 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26820 : extern rtx_insn *gen_split_2922 (rtx_insn *, rtx *);
26821 : rtx_insn *
26822 : gen_split_2922 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26823 : {
26824 : if (dump_file)
26825 : fprintf (dump_file, "Splitting with gen_split_2922 (sse.md:14227)\n");
26826 : start_sequence ();
26827 : #define FAIL return (end_sequence (), nullptr)
26828 : #define DONE return end_sequence ()
26829 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26830 : {
26831 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26832 : int reg6 = 0xF0;
26833 : int reg2 = 0xCC;
26834 : int reg1 = 0xAA;
26835 : int reg3 = 0;
26836 : int reg4 = 0;
26837 : int reg_mask, tmp1, tmp2;
26838 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26839 : STRIP_UNARY (operands[4])))
26840 : {
26841 : reg4 = reg1;
26842 : reg3 = reg6;
26843 : operands[6] = operands[3];
26844 : }
26845 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26846 : STRIP_UNARY (operands[4])))
26847 : {
26848 : reg4 = reg2;
26849 : reg3 = reg6;
26850 : operands[6] = operands[3];
26851 : }
26852 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26853 : STRIP_UNARY (operands[3])))
26854 : {
26855 : reg4 = reg6;
26856 : reg3 = reg1;
26857 : operands[6] = operands[4];
26858 : }
26859 : else
26860 : {
26861 : reg4 = reg6;
26862 : reg3 = reg2;
26863 : operands[6] = operands[4];
26864 : }
26865 :
26866 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26867 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26868 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26869 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26870 :
26871 : tmp1 = reg1 & reg2;
26872 : tmp2 = tmp1 & reg3;
26873 : reg_mask = tmp2 | reg4;
26874 : reg_mask &= 0xFF;
26875 :
26876 : operands[1] = STRIP_UNARY (operands[1]);
26877 : operands[2] = STRIP_UNARY (operands[2]);
26878 : operands[6] = STRIP_UNARY (operands[6]);
26879 : operands[5] = GEN_INT (reg_mask);
26880 : if (!register_operand (operands[2], V4SFmode))
26881 : operands[2] = force_reg (V4SFmode, operands[2]);
26882 : if (!register_operand (operands[6], V4SFmode))
26883 : operands[6] = force_reg (V4SFmode, operands[6]);
26884 :
26885 : }
26886 : #undef DONE
26887 : #undef FAIL
26888 : static const uint8_t expand_encoding[] = {
26889 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
26890 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26891 : 0x25
26892 : };
26893 : return complete_seq (expand_encoding, operands);
26894 : }
26895 :
26896 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26897 : extern rtx_insn *gen_split_2932 (rtx_insn *, rtx *);
26898 : rtx_insn *
26899 : gen_split_2932 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26900 : {
26901 : if (dump_file)
26902 : fprintf (dump_file, "Splitting with gen_split_2932 (sse.md:14227)\n");
26903 : start_sequence ();
26904 : #define FAIL return (end_sequence (), nullptr)
26905 : #define DONE return end_sequence ()
26906 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26907 : {
26908 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26909 : int reg6 = 0xF0;
26910 : int reg2 = 0xCC;
26911 : int reg1 = 0xAA;
26912 : int reg3 = 0;
26913 : int reg4 = 0;
26914 : int reg_mask, tmp1, tmp2;
26915 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26916 : STRIP_UNARY (operands[4])))
26917 : {
26918 : reg4 = reg1;
26919 : reg3 = reg6;
26920 : operands[6] = operands[3];
26921 : }
26922 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26923 : STRIP_UNARY (operands[4])))
26924 : {
26925 : reg4 = reg2;
26926 : reg3 = reg6;
26927 : operands[6] = operands[3];
26928 : }
26929 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26930 : STRIP_UNARY (operands[3])))
26931 : {
26932 : reg4 = reg6;
26933 : reg3 = reg1;
26934 : operands[6] = operands[4];
26935 : }
26936 : else
26937 : {
26938 : reg4 = reg6;
26939 : reg3 = reg2;
26940 : operands[6] = operands[4];
26941 : }
26942 :
26943 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26944 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26945 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26946 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26947 :
26948 : tmp1 = reg1 & reg2;
26949 : tmp2 = tmp1 | reg3;
26950 : reg_mask = tmp2 ^ reg4;
26951 : reg_mask &= 0xFF;
26952 :
26953 : operands[1] = STRIP_UNARY (operands[1]);
26954 : operands[2] = STRIP_UNARY (operands[2]);
26955 : operands[6] = STRIP_UNARY (operands[6]);
26956 : operands[5] = GEN_INT (reg_mask);
26957 : if (!register_operand (operands[2], V4SFmode))
26958 : operands[2] = force_reg (V4SFmode, operands[2]);
26959 : if (!register_operand (operands[6], V4SFmode))
26960 : operands[6] = force_reg (V4SFmode, operands[6]);
26961 :
26962 : }
26963 : #undef DONE
26964 : #undef FAIL
26965 : static const uint8_t expand_encoding[] = {
26966 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
26967 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26968 : 0x25
26969 : };
26970 : return complete_seq (expand_encoding, operands);
26971 : }
26972 :
26973 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26974 : extern rtx_insn *gen_split_2942 (rtx_insn *, rtx *);
26975 : rtx_insn *
26976 : gen_split_2942 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26977 : {
26978 : if (dump_file)
26979 : fprintf (dump_file, "Splitting with gen_split_2942 (sse.md:14227)\n");
26980 : start_sequence ();
26981 : #define FAIL return (end_sequence (), nullptr)
26982 : #define DONE return end_sequence ()
26983 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26984 : {
26985 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26986 : int reg6 = 0xF0;
26987 : int reg2 = 0xCC;
26988 : int reg1 = 0xAA;
26989 : int reg3 = 0;
26990 : int reg4 = 0;
26991 : int reg_mask, tmp1, tmp2;
26992 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26993 : STRIP_UNARY (operands[4])))
26994 : {
26995 : reg4 = reg1;
26996 : reg3 = reg6;
26997 : operands[6] = operands[3];
26998 : }
26999 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27000 : STRIP_UNARY (operands[4])))
27001 : {
27002 : reg4 = reg2;
27003 : reg3 = reg6;
27004 : operands[6] = operands[3];
27005 : }
27006 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27007 : STRIP_UNARY (operands[3])))
27008 : {
27009 : reg4 = reg6;
27010 : reg3 = reg1;
27011 : operands[6] = operands[4];
27012 : }
27013 : else
27014 : {
27015 : reg4 = reg6;
27016 : reg3 = reg2;
27017 : operands[6] = operands[4];
27018 : }
27019 :
27020 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27021 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27022 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27023 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27024 :
27025 : tmp1 = reg1 | reg2;
27026 : tmp2 = tmp1 ^ reg3;
27027 : reg_mask = tmp2 & reg4;
27028 : reg_mask &= 0xFF;
27029 :
27030 : operands[1] = STRIP_UNARY (operands[1]);
27031 : operands[2] = STRIP_UNARY (operands[2]);
27032 : operands[6] = STRIP_UNARY (operands[6]);
27033 : operands[5] = GEN_INT (reg_mask);
27034 : if (!register_operand (operands[2], V4SFmode))
27035 : operands[2] = force_reg (V4SFmode, operands[2]);
27036 : if (!register_operand (operands[6], V4SFmode))
27037 : operands[6] = force_reg (V4SFmode, operands[6]);
27038 :
27039 : }
27040 : #undef DONE
27041 : #undef FAIL
27042 : static const uint8_t expand_encoding[] = {
27043 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
27044 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27045 : 0x25
27046 : };
27047 : return complete_seq (expand_encoding, operands);
27048 : }
27049 :
27050 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27051 : extern rtx_insn *gen_split_2952 (rtx_insn *, rtx *);
27052 : rtx_insn *
27053 : gen_split_2952 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27054 : {
27055 : if (dump_file)
27056 : fprintf (dump_file, "Splitting with gen_split_2952 (sse.md:14227)\n");
27057 : start_sequence ();
27058 : #define FAIL return (end_sequence (), nullptr)
27059 : #define DONE return end_sequence ()
27060 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27061 : {
27062 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27063 : int reg6 = 0xF0;
27064 : int reg2 = 0xCC;
27065 : int reg1 = 0xAA;
27066 : int reg3 = 0;
27067 : int reg4 = 0;
27068 : int reg_mask, tmp1, tmp2;
27069 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27070 : STRIP_UNARY (operands[4])))
27071 : {
27072 : reg4 = reg1;
27073 : reg3 = reg6;
27074 : operands[6] = operands[3];
27075 : }
27076 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27077 : STRIP_UNARY (operands[4])))
27078 : {
27079 : reg4 = reg2;
27080 : reg3 = reg6;
27081 : operands[6] = operands[3];
27082 : }
27083 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27084 : STRIP_UNARY (operands[3])))
27085 : {
27086 : reg4 = reg6;
27087 : reg3 = reg1;
27088 : operands[6] = operands[4];
27089 : }
27090 : else
27091 : {
27092 : reg4 = reg6;
27093 : reg3 = reg2;
27094 : operands[6] = operands[4];
27095 : }
27096 :
27097 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27098 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27099 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27100 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27101 :
27102 : tmp1 = reg1 | reg2;
27103 : tmp2 = tmp1 & reg3;
27104 : reg_mask = tmp2 | reg4;
27105 : reg_mask &= 0xFF;
27106 :
27107 : operands[1] = STRIP_UNARY (operands[1]);
27108 : operands[2] = STRIP_UNARY (operands[2]);
27109 : operands[6] = STRIP_UNARY (operands[6]);
27110 : operands[5] = GEN_INT (reg_mask);
27111 : if (!register_operand (operands[2], V8DFmode))
27112 : operands[2] = force_reg (V8DFmode, operands[2]);
27113 : if (!register_operand (operands[6], V8DFmode))
27114 : operands[6] = force_reg (V8DFmode, operands[6]);
27115 :
27116 : }
27117 : #undef DONE
27118 : #undef FAIL
27119 : static const uint8_t expand_encoding[] = {
27120 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
27121 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27122 : 0x25
27123 : };
27124 : return complete_seq (expand_encoding, operands);
27125 : }
27126 :
27127 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27128 : extern rtx_insn *gen_split_2962 (rtx_insn *, rtx *);
27129 : rtx_insn *
27130 : gen_split_2962 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27131 : {
27132 : if (dump_file)
27133 : fprintf (dump_file, "Splitting with gen_split_2962 (sse.md:14227)\n");
27134 : start_sequence ();
27135 : #define FAIL return (end_sequence (), nullptr)
27136 : #define DONE return end_sequence ()
27137 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27138 : {
27139 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27140 : int reg6 = 0xF0;
27141 : int reg2 = 0xCC;
27142 : int reg1 = 0xAA;
27143 : int reg3 = 0;
27144 : int reg4 = 0;
27145 : int reg_mask, tmp1, tmp2;
27146 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27147 : STRIP_UNARY (operands[4])))
27148 : {
27149 : reg4 = reg1;
27150 : reg3 = reg6;
27151 : operands[6] = operands[3];
27152 : }
27153 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27154 : STRIP_UNARY (operands[4])))
27155 : {
27156 : reg4 = reg2;
27157 : reg3 = reg6;
27158 : operands[6] = operands[3];
27159 : }
27160 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27161 : STRIP_UNARY (operands[3])))
27162 : {
27163 : reg4 = reg6;
27164 : reg3 = reg1;
27165 : operands[6] = operands[4];
27166 : }
27167 : else
27168 : {
27169 : reg4 = reg6;
27170 : reg3 = reg2;
27171 : operands[6] = operands[4];
27172 : }
27173 :
27174 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27175 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27176 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27177 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27178 :
27179 : tmp1 = reg1 | reg2;
27180 : tmp2 = tmp1 | reg3;
27181 : reg_mask = tmp2 ^ reg4;
27182 : reg_mask &= 0xFF;
27183 :
27184 : operands[1] = STRIP_UNARY (operands[1]);
27185 : operands[2] = STRIP_UNARY (operands[2]);
27186 : operands[6] = STRIP_UNARY (operands[6]);
27187 : operands[5] = GEN_INT (reg_mask);
27188 : if (!register_operand (operands[2], V8DFmode))
27189 : operands[2] = force_reg (V8DFmode, operands[2]);
27190 : if (!register_operand (operands[6], V8DFmode))
27191 : operands[6] = force_reg (V8DFmode, operands[6]);
27192 :
27193 : }
27194 : #undef DONE
27195 : #undef FAIL
27196 : static const uint8_t expand_encoding[] = {
27197 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
27198 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27199 : 0x25
27200 : };
27201 : return complete_seq (expand_encoding, operands);
27202 : }
27203 :
27204 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27205 : extern rtx_insn *gen_split_2972 (rtx_insn *, rtx *);
27206 : rtx_insn *
27207 : gen_split_2972 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27208 : {
27209 : if (dump_file)
27210 : fprintf (dump_file, "Splitting with gen_split_2972 (sse.md:14227)\n");
27211 : start_sequence ();
27212 : #define FAIL return (end_sequence (), nullptr)
27213 : #define DONE return end_sequence ()
27214 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27215 : {
27216 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27217 : int reg6 = 0xF0;
27218 : int reg2 = 0xCC;
27219 : int reg1 = 0xAA;
27220 : int reg3 = 0;
27221 : int reg4 = 0;
27222 : int reg_mask, tmp1, tmp2;
27223 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27224 : STRIP_UNARY (operands[4])))
27225 : {
27226 : reg4 = reg1;
27227 : reg3 = reg6;
27228 : operands[6] = operands[3];
27229 : }
27230 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27231 : STRIP_UNARY (operands[4])))
27232 : {
27233 : reg4 = reg2;
27234 : reg3 = reg6;
27235 : operands[6] = operands[3];
27236 : }
27237 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27238 : STRIP_UNARY (operands[3])))
27239 : {
27240 : reg4 = reg6;
27241 : reg3 = reg1;
27242 : operands[6] = operands[4];
27243 : }
27244 : else
27245 : {
27246 : reg4 = reg6;
27247 : reg3 = reg2;
27248 : operands[6] = operands[4];
27249 : }
27250 :
27251 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27252 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27253 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27254 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27255 :
27256 : tmp1 = reg1 ^ reg2;
27257 : tmp2 = tmp1 ^ reg3;
27258 : reg_mask = tmp2 & reg4;
27259 : reg_mask &= 0xFF;
27260 :
27261 : operands[1] = STRIP_UNARY (operands[1]);
27262 : operands[2] = STRIP_UNARY (operands[2]);
27263 : operands[6] = STRIP_UNARY (operands[6]);
27264 : operands[5] = GEN_INT (reg_mask);
27265 : if (!register_operand (operands[2], V8DFmode))
27266 : operands[2] = force_reg (V8DFmode, operands[2]);
27267 : if (!register_operand (operands[6], V8DFmode))
27268 : operands[6] = force_reg (V8DFmode, operands[6]);
27269 :
27270 : }
27271 : #undef DONE
27272 : #undef FAIL
27273 : static const uint8_t expand_encoding[] = {
27274 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
27275 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27276 : 0x25
27277 : };
27278 : return complete_seq (expand_encoding, operands);
27279 : }
27280 :
27281 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27282 : extern rtx_insn *gen_split_2982 (rtx_insn *, rtx *);
27283 : rtx_insn *
27284 : gen_split_2982 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27285 : {
27286 : if (dump_file)
27287 : fprintf (dump_file, "Splitting with gen_split_2982 (sse.md:14227)\n");
27288 : start_sequence ();
27289 : #define FAIL return (end_sequence (), nullptr)
27290 : #define DONE return end_sequence ()
27291 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27292 : {
27293 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27294 : int reg6 = 0xF0;
27295 : int reg2 = 0xCC;
27296 : int reg1 = 0xAA;
27297 : int reg3 = 0;
27298 : int reg4 = 0;
27299 : int reg_mask, tmp1, tmp2;
27300 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27301 : STRIP_UNARY (operands[4])))
27302 : {
27303 : reg4 = reg1;
27304 : reg3 = reg6;
27305 : operands[6] = operands[3];
27306 : }
27307 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27308 : STRIP_UNARY (operands[4])))
27309 : {
27310 : reg4 = reg2;
27311 : reg3 = reg6;
27312 : operands[6] = operands[3];
27313 : }
27314 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27315 : STRIP_UNARY (operands[3])))
27316 : {
27317 : reg4 = reg6;
27318 : reg3 = reg1;
27319 : operands[6] = operands[4];
27320 : }
27321 : else
27322 : {
27323 : reg4 = reg6;
27324 : reg3 = reg2;
27325 : operands[6] = operands[4];
27326 : }
27327 :
27328 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27329 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27330 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27331 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27332 :
27333 : tmp1 = reg1 ^ reg2;
27334 : tmp2 = tmp1 & reg3;
27335 : reg_mask = tmp2 | reg4;
27336 : reg_mask &= 0xFF;
27337 :
27338 : operands[1] = STRIP_UNARY (operands[1]);
27339 : operands[2] = STRIP_UNARY (operands[2]);
27340 : operands[6] = STRIP_UNARY (operands[6]);
27341 : operands[5] = GEN_INT (reg_mask);
27342 : if (!register_operand (operands[2], V4DFmode))
27343 : operands[2] = force_reg (V4DFmode, operands[2]);
27344 : if (!register_operand (operands[6], V4DFmode))
27345 : operands[6] = force_reg (V4DFmode, operands[6]);
27346 :
27347 : }
27348 : #undef DONE
27349 : #undef FAIL
27350 : static const uint8_t expand_encoding[] = {
27351 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
27352 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27353 : 0x25
27354 : };
27355 : return complete_seq (expand_encoding, operands);
27356 : }
27357 :
27358 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27359 : extern rtx_insn *gen_split_2992 (rtx_insn *, rtx *);
27360 : rtx_insn *
27361 : gen_split_2992 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27362 : {
27363 : if (dump_file)
27364 : fprintf (dump_file, "Splitting with gen_split_2992 (sse.md:14227)\n");
27365 : start_sequence ();
27366 : #define FAIL return (end_sequence (), nullptr)
27367 : #define DONE return end_sequence ()
27368 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27369 : {
27370 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27371 : int reg6 = 0xF0;
27372 : int reg2 = 0xCC;
27373 : int reg1 = 0xAA;
27374 : int reg3 = 0;
27375 : int reg4 = 0;
27376 : int reg_mask, tmp1, tmp2;
27377 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27378 : STRIP_UNARY (operands[4])))
27379 : {
27380 : reg4 = reg1;
27381 : reg3 = reg6;
27382 : operands[6] = operands[3];
27383 : }
27384 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27385 : STRIP_UNARY (operands[4])))
27386 : {
27387 : reg4 = reg2;
27388 : reg3 = reg6;
27389 : operands[6] = operands[3];
27390 : }
27391 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27392 : STRIP_UNARY (operands[3])))
27393 : {
27394 : reg4 = reg6;
27395 : reg3 = reg1;
27396 : operands[6] = operands[4];
27397 : }
27398 : else
27399 : {
27400 : reg4 = reg6;
27401 : reg3 = reg2;
27402 : operands[6] = operands[4];
27403 : }
27404 :
27405 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27406 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27407 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27408 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27409 :
27410 : tmp1 = reg1 ^ reg2;
27411 : tmp2 = tmp1 | reg3;
27412 : reg_mask = tmp2 ^ reg4;
27413 : reg_mask &= 0xFF;
27414 :
27415 : operands[1] = STRIP_UNARY (operands[1]);
27416 : operands[2] = STRIP_UNARY (operands[2]);
27417 : operands[6] = STRIP_UNARY (operands[6]);
27418 : operands[5] = GEN_INT (reg_mask);
27419 : if (!register_operand (operands[2], V4DFmode))
27420 : operands[2] = force_reg (V4DFmode, operands[2]);
27421 : if (!register_operand (operands[6], V4DFmode))
27422 : operands[6] = force_reg (V4DFmode, operands[6]);
27423 :
27424 : }
27425 : #undef DONE
27426 : #undef FAIL
27427 : static const uint8_t expand_encoding[] = {
27428 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
27429 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27430 : 0x25
27431 : };
27432 : return complete_seq (expand_encoding, operands);
27433 : }
27434 :
27435 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27436 : extern rtx_insn *gen_split_3002 (rtx_insn *, rtx *);
27437 : rtx_insn *
27438 : gen_split_3002 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27439 : {
27440 : if (dump_file)
27441 : fprintf (dump_file, "Splitting with gen_split_3002 (sse.md:14227)\n");
27442 : start_sequence ();
27443 : #define FAIL return (end_sequence (), nullptr)
27444 : #define DONE return end_sequence ()
27445 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27446 : {
27447 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27448 : int reg6 = 0xF0;
27449 : int reg2 = 0xCC;
27450 : int reg1 = 0xAA;
27451 : int reg3 = 0;
27452 : int reg4 = 0;
27453 : int reg_mask, tmp1, tmp2;
27454 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27455 : STRIP_UNARY (operands[4])))
27456 : {
27457 : reg4 = reg1;
27458 : reg3 = reg6;
27459 : operands[6] = operands[3];
27460 : }
27461 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27462 : STRIP_UNARY (operands[4])))
27463 : {
27464 : reg4 = reg2;
27465 : reg3 = reg6;
27466 : operands[6] = operands[3];
27467 : }
27468 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27469 : STRIP_UNARY (operands[3])))
27470 : {
27471 : reg4 = reg6;
27472 : reg3 = reg1;
27473 : operands[6] = operands[4];
27474 : }
27475 : else
27476 : {
27477 : reg4 = reg6;
27478 : reg3 = reg2;
27479 : operands[6] = operands[4];
27480 : }
27481 :
27482 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27483 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27484 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27485 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27486 :
27487 : tmp1 = reg1 & reg2;
27488 : tmp2 = tmp1 & reg3;
27489 : reg_mask = tmp2 & reg4;
27490 : reg_mask &= 0xFF;
27491 :
27492 : operands[1] = STRIP_UNARY (operands[1]);
27493 : operands[2] = STRIP_UNARY (operands[2]);
27494 : operands[6] = STRIP_UNARY (operands[6]);
27495 : operands[5] = GEN_INT (reg_mask);
27496 : if (!register_operand (operands[2], V2DFmode))
27497 : operands[2] = force_reg (V2DFmode, operands[2]);
27498 : if (!register_operand (operands[6], V2DFmode))
27499 : operands[6] = force_reg (V2DFmode, operands[6]);
27500 :
27501 : }
27502 : #undef DONE
27503 : #undef FAIL
27504 : static const uint8_t expand_encoding[] = {
27505 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
27506 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27507 : 0x25
27508 : };
27509 : return complete_seq (expand_encoding, operands);
27510 : }
27511 :
27512 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27513 : extern rtx_insn *gen_split_3012 (rtx_insn *, rtx *);
27514 : rtx_insn *
27515 : gen_split_3012 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27516 : {
27517 : if (dump_file)
27518 : fprintf (dump_file, "Splitting with gen_split_3012 (sse.md:14227)\n");
27519 : start_sequence ();
27520 : #define FAIL return (end_sequence (), nullptr)
27521 : #define DONE return end_sequence ()
27522 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27523 : {
27524 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27525 : int reg6 = 0xF0;
27526 : int reg2 = 0xCC;
27527 : int reg1 = 0xAA;
27528 : int reg3 = 0;
27529 : int reg4 = 0;
27530 : int reg_mask, tmp1, tmp2;
27531 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27532 : STRIP_UNARY (operands[4])))
27533 : {
27534 : reg4 = reg1;
27535 : reg3 = reg6;
27536 : operands[6] = operands[3];
27537 : }
27538 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27539 : STRIP_UNARY (operands[4])))
27540 : {
27541 : reg4 = reg2;
27542 : reg3 = reg6;
27543 : operands[6] = operands[3];
27544 : }
27545 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27546 : STRIP_UNARY (operands[3])))
27547 : {
27548 : reg4 = reg6;
27549 : reg3 = reg1;
27550 : operands[6] = operands[4];
27551 : }
27552 : else
27553 : {
27554 : reg4 = reg6;
27555 : reg3 = reg2;
27556 : operands[6] = operands[4];
27557 : }
27558 :
27559 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27560 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27561 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27562 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27563 :
27564 : tmp1 = reg1 & reg2;
27565 : tmp2 = tmp1 | reg3;
27566 : reg_mask = tmp2 | reg4;
27567 : reg_mask &= 0xFF;
27568 :
27569 : operands[1] = STRIP_UNARY (operands[1]);
27570 : operands[2] = STRIP_UNARY (operands[2]);
27571 : operands[6] = STRIP_UNARY (operands[6]);
27572 : operands[5] = GEN_INT (reg_mask);
27573 : if (!register_operand (operands[2], V2DFmode))
27574 : operands[2] = force_reg (V2DFmode, operands[2]);
27575 : if (!register_operand (operands[6], V2DFmode))
27576 : operands[6] = force_reg (V2DFmode, operands[6]);
27577 :
27578 : }
27579 : #undef DONE
27580 : #undef FAIL
27581 : static const uint8_t expand_encoding[] = {
27582 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
27583 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27584 : 0x25
27585 : };
27586 : return complete_seq (expand_encoding, operands);
27587 : }
27588 :
27589 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27590 : extern rtx_insn *gen_split_3022 (rtx_insn *, rtx *);
27591 : rtx_insn *
27592 : gen_split_3022 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27593 : {
27594 : if (dump_file)
27595 : fprintf (dump_file, "Splitting with gen_split_3022 (sse.md:14227)\n");
27596 : start_sequence ();
27597 : #define FAIL return (end_sequence (), nullptr)
27598 : #define DONE return end_sequence ()
27599 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27600 : {
27601 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27602 : int reg6 = 0xF0;
27603 : int reg2 = 0xCC;
27604 : int reg1 = 0xAA;
27605 : int reg3 = 0;
27606 : int reg4 = 0;
27607 : int reg_mask, tmp1, tmp2;
27608 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27609 : STRIP_UNARY (operands[4])))
27610 : {
27611 : reg4 = reg1;
27612 : reg3 = reg6;
27613 : operands[6] = operands[3];
27614 : }
27615 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27616 : STRIP_UNARY (operands[4])))
27617 : {
27618 : reg4 = reg2;
27619 : reg3 = reg6;
27620 : operands[6] = operands[3];
27621 : }
27622 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27623 : STRIP_UNARY (operands[3])))
27624 : {
27625 : reg4 = reg6;
27626 : reg3 = reg1;
27627 : operands[6] = operands[4];
27628 : }
27629 : else
27630 : {
27631 : reg4 = reg6;
27632 : reg3 = reg2;
27633 : operands[6] = operands[4];
27634 : }
27635 :
27636 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27637 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27638 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27639 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27640 :
27641 : tmp1 = reg1 & reg2;
27642 : tmp2 = tmp1 ^ reg3;
27643 : reg_mask = tmp2 ^ reg4;
27644 : reg_mask &= 0xFF;
27645 :
27646 : operands[1] = STRIP_UNARY (operands[1]);
27647 : operands[2] = STRIP_UNARY (operands[2]);
27648 : operands[6] = STRIP_UNARY (operands[6]);
27649 : operands[5] = GEN_INT (reg_mask);
27650 : if (!register_operand (operands[2], V2DFmode))
27651 : operands[2] = force_reg (V2DFmode, operands[2]);
27652 : if (!register_operand (operands[6], V2DFmode))
27653 : operands[6] = force_reg (V2DFmode, operands[6]);
27654 :
27655 : }
27656 : #undef DONE
27657 : #undef FAIL
27658 : static const uint8_t expand_encoding[] = {
27659 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
27660 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27661 : 0x25
27662 : };
27663 : return complete_seq (expand_encoding, operands);
27664 : }
27665 :
27666 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27667 : extern rtx_insn *gen_split_3032 (rtx_insn *, rtx *);
27668 : rtx_insn *
27669 : gen_split_3032 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27670 : {
27671 : if (dump_file)
27672 : fprintf (dump_file, "Splitting with gen_split_3032 (sse.md:14313)\n");
27673 : start_sequence ();
27674 : #define FAIL return (end_sequence (), nullptr)
27675 : #define DONE return end_sequence ()
27676 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27677 : {
27678 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27679 : int reg3 = 0xF0;
27680 : int reg2 = 0xCC;
27681 : int reg1 = 0xAA;
27682 : int reg_mask, tmp1;
27683 :
27684 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27685 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27686 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27687 :
27688 : tmp1 = reg1 | reg2;
27689 : reg_mask = tmp1 & reg3;
27690 : reg_mask &= 0xFF;
27691 :
27692 : operands[1] = STRIP_UNARY (operands[1]);
27693 : operands[2] = STRIP_UNARY (operands[2]);
27694 : operands[3] = STRIP_UNARY (operands[3]);
27695 : operands[4] = GEN_INT (reg_mask);
27696 : if (!register_operand (operands[2], V64QImode))
27697 : operands[2] = force_reg (V64QImode, operands[2]);
27698 : if (!register_operand (operands[3], V64QImode))
27699 : operands[3] = force_reg (V64QImode, operands[3]);
27700 : }
27701 : #undef DONE
27702 : #undef FAIL
27703 : static const uint8_t expand_encoding[] = {
27704 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
27705 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27706 : 0x25
27707 : };
27708 : return complete_seq (expand_encoding, operands);
27709 : }
27710 :
27711 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27712 : extern rtx_insn *gen_split_3038 (rtx_insn *, rtx *);
27713 : rtx_insn *
27714 : gen_split_3038 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27715 : {
27716 : if (dump_file)
27717 : fprintf (dump_file, "Splitting with gen_split_3038 (sse.md:14313)\n");
27718 : start_sequence ();
27719 : #define FAIL return (end_sequence (), nullptr)
27720 : #define DONE return end_sequence ()
27721 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27722 : {
27723 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27724 : int reg3 = 0xF0;
27725 : int reg2 = 0xCC;
27726 : int reg1 = 0xAA;
27727 : int reg_mask, tmp1;
27728 :
27729 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27730 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27731 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27732 :
27733 : tmp1 = reg1 & reg2;
27734 : reg_mask = tmp1 & reg3;
27735 : reg_mask &= 0xFF;
27736 :
27737 : operands[1] = STRIP_UNARY (operands[1]);
27738 : operands[2] = STRIP_UNARY (operands[2]);
27739 : operands[3] = STRIP_UNARY (operands[3]);
27740 : operands[4] = GEN_INT (reg_mask);
27741 : if (!register_operand (operands[2], V32QImode))
27742 : operands[2] = force_reg (V32QImode, operands[2]);
27743 : if (!register_operand (operands[3], V32QImode))
27744 : operands[3] = force_reg (V32QImode, operands[3]);
27745 : }
27746 : #undef DONE
27747 : #undef FAIL
27748 : static const uint8_t expand_encoding[] = {
27749 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
27750 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27751 : 0x25
27752 : };
27753 : return complete_seq (expand_encoding, operands);
27754 : }
27755 :
27756 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27757 : extern rtx_insn *gen_split_3048 (rtx_insn *, rtx *);
27758 : rtx_insn *
27759 : gen_split_3048 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27760 : {
27761 : if (dump_file)
27762 : fprintf (dump_file, "Splitting with gen_split_3048 (sse.md:14313)\n");
27763 : start_sequence ();
27764 : #define FAIL return (end_sequence (), nullptr)
27765 : #define DONE return end_sequence ()
27766 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27767 : {
27768 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27769 : int reg3 = 0xF0;
27770 : int reg2 = 0xCC;
27771 : int reg1 = 0xAA;
27772 : int reg_mask, tmp1;
27773 :
27774 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27775 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27776 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27777 :
27778 : tmp1 = reg1 & reg2;
27779 : reg_mask = tmp1 | reg3;
27780 : reg_mask &= 0xFF;
27781 :
27782 : operands[1] = STRIP_UNARY (operands[1]);
27783 : operands[2] = STRIP_UNARY (operands[2]);
27784 : operands[3] = STRIP_UNARY (operands[3]);
27785 : operands[4] = GEN_INT (reg_mask);
27786 : if (!register_operand (operands[2], V16QImode))
27787 : operands[2] = force_reg (V16QImode, operands[2]);
27788 : if (!register_operand (operands[3], V16QImode))
27789 : operands[3] = force_reg (V16QImode, operands[3]);
27790 : }
27791 : #undef DONE
27792 : #undef FAIL
27793 : static const uint8_t expand_encoding[] = {
27794 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
27795 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27796 : 0x25
27797 : };
27798 : return complete_seq (expand_encoding, operands);
27799 : }
27800 :
27801 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27802 : extern rtx_insn *gen_split_3058 (rtx_insn *, rtx *);
27803 : rtx_insn *
27804 : gen_split_3058 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27805 : {
27806 : if (dump_file)
27807 : fprintf (dump_file, "Splitting with gen_split_3058 (sse.md:14313)\n");
27808 : start_sequence ();
27809 : #define FAIL return (end_sequence (), nullptr)
27810 : #define DONE return end_sequence ()
27811 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27812 : {
27813 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27814 : int reg3 = 0xF0;
27815 : int reg2 = 0xCC;
27816 : int reg1 = 0xAA;
27817 : int reg_mask, tmp1;
27818 :
27819 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27820 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27821 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27822 :
27823 : tmp1 = reg1 & reg2;
27824 : reg_mask = tmp1 ^ reg3;
27825 : reg_mask &= 0xFF;
27826 :
27827 : operands[1] = STRIP_UNARY (operands[1]);
27828 : operands[2] = STRIP_UNARY (operands[2]);
27829 : operands[3] = STRIP_UNARY (operands[3]);
27830 : operands[4] = GEN_INT (reg_mask);
27831 : if (!register_operand (operands[2], V32HImode))
27832 : operands[2] = force_reg (V32HImode, operands[2]);
27833 : if (!register_operand (operands[3], V32HImode))
27834 : operands[3] = force_reg (V32HImode, operands[3]);
27835 : }
27836 : #undef DONE
27837 : #undef FAIL
27838 : static const uint8_t expand_encoding[] = {
27839 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
27840 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27841 : 0x25
27842 : };
27843 : return complete_seq (expand_encoding, operands);
27844 : }
27845 :
27846 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27847 : extern rtx_insn *gen_split_3068 (rtx_insn *, rtx *);
27848 : rtx_insn *
27849 : gen_split_3068 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27850 : {
27851 : if (dump_file)
27852 : fprintf (dump_file, "Splitting with gen_split_3068 (sse.md:14313)\n");
27853 : start_sequence ();
27854 : #define FAIL return (end_sequence (), nullptr)
27855 : #define DONE return end_sequence ()
27856 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27857 : {
27858 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27859 : int reg3 = 0xF0;
27860 : int reg2 = 0xCC;
27861 : int reg1 = 0xAA;
27862 : int reg_mask, tmp1;
27863 :
27864 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27865 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27866 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27867 :
27868 : tmp1 = reg1 | reg2;
27869 : reg_mask = tmp1 & reg3;
27870 : reg_mask &= 0xFF;
27871 :
27872 : operands[1] = STRIP_UNARY (operands[1]);
27873 : operands[2] = STRIP_UNARY (operands[2]);
27874 : operands[3] = STRIP_UNARY (operands[3]);
27875 : operands[4] = GEN_INT (reg_mask);
27876 : if (!register_operand (operands[2], V16HImode))
27877 : operands[2] = force_reg (V16HImode, operands[2]);
27878 : if (!register_operand (operands[3], V16HImode))
27879 : operands[3] = force_reg (V16HImode, operands[3]);
27880 : }
27881 : #undef DONE
27882 : #undef FAIL
27883 : static const uint8_t expand_encoding[] = {
27884 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
27885 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27886 : 0x25
27887 : };
27888 : return complete_seq (expand_encoding, operands);
27889 : }
27890 :
27891 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27892 : extern rtx_insn *gen_split_3078 (rtx_insn *, rtx *);
27893 : rtx_insn *
27894 : gen_split_3078 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27895 : {
27896 : if (dump_file)
27897 : fprintf (dump_file, "Splitting with gen_split_3078 (sse.md:14313)\n");
27898 : start_sequence ();
27899 : #define FAIL return (end_sequence (), nullptr)
27900 : #define DONE return end_sequence ()
27901 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27902 : {
27903 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27904 : int reg3 = 0xF0;
27905 : int reg2 = 0xCC;
27906 : int reg1 = 0xAA;
27907 : int reg_mask, tmp1;
27908 :
27909 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27910 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27911 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27912 :
27913 : tmp1 = reg1 | reg2;
27914 : reg_mask = tmp1 | reg3;
27915 : reg_mask &= 0xFF;
27916 :
27917 : operands[1] = STRIP_UNARY (operands[1]);
27918 : operands[2] = STRIP_UNARY (operands[2]);
27919 : operands[3] = STRIP_UNARY (operands[3]);
27920 : operands[4] = GEN_INT (reg_mask);
27921 : if (!register_operand (operands[2], V8HImode))
27922 : operands[2] = force_reg (V8HImode, operands[2]);
27923 : if (!register_operand (operands[3], V8HImode))
27924 : operands[3] = force_reg (V8HImode, operands[3]);
27925 : }
27926 : #undef DONE
27927 : #undef FAIL
27928 : static const uint8_t expand_encoding[] = {
27929 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
27930 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27931 : 0x25
27932 : };
27933 : return complete_seq (expand_encoding, operands);
27934 : }
27935 :
27936 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27937 : extern rtx_insn *gen_split_3088 (rtx_insn *, rtx *);
27938 : rtx_insn *
27939 : gen_split_3088 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27940 : {
27941 : if (dump_file)
27942 : fprintf (dump_file, "Splitting with gen_split_3088 (sse.md:14313)\n");
27943 : start_sequence ();
27944 : #define FAIL return (end_sequence (), nullptr)
27945 : #define DONE return end_sequence ()
27946 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27947 : {
27948 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27949 : int reg3 = 0xF0;
27950 : int reg2 = 0xCC;
27951 : int reg1 = 0xAA;
27952 : int reg_mask, tmp1;
27953 :
27954 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27955 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27956 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27957 :
27958 : tmp1 = reg1 | reg2;
27959 : reg_mask = tmp1 ^ reg3;
27960 : reg_mask &= 0xFF;
27961 :
27962 : operands[1] = STRIP_UNARY (operands[1]);
27963 : operands[2] = STRIP_UNARY (operands[2]);
27964 : operands[3] = STRIP_UNARY (operands[3]);
27965 : operands[4] = GEN_INT (reg_mask);
27966 : if (!register_operand (operands[2], V16SImode))
27967 : operands[2] = force_reg (V16SImode, operands[2]);
27968 : if (!register_operand (operands[3], V16SImode))
27969 : operands[3] = force_reg (V16SImode, operands[3]);
27970 : }
27971 : #undef DONE
27972 : #undef FAIL
27973 : static const uint8_t expand_encoding[] = {
27974 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
27975 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27976 : 0x25
27977 : };
27978 : return complete_seq (expand_encoding, operands);
27979 : }
27980 :
27981 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27982 : extern rtx_insn *gen_split_3098 (rtx_insn *, rtx *);
27983 : rtx_insn *
27984 : gen_split_3098 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27985 : {
27986 : if (dump_file)
27987 : fprintf (dump_file, "Splitting with gen_split_3098 (sse.md:14313)\n");
27988 : start_sequence ();
27989 : #define FAIL return (end_sequence (), nullptr)
27990 : #define DONE return end_sequence ()
27991 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27992 : {
27993 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27994 : int reg3 = 0xF0;
27995 : int reg2 = 0xCC;
27996 : int reg1 = 0xAA;
27997 : int reg_mask, tmp1;
27998 :
27999 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28000 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28001 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28002 :
28003 : tmp1 = reg1 ^ reg2;
28004 : reg_mask = tmp1 & reg3;
28005 : reg_mask &= 0xFF;
28006 :
28007 : operands[1] = STRIP_UNARY (operands[1]);
28008 : operands[2] = STRIP_UNARY (operands[2]);
28009 : operands[3] = STRIP_UNARY (operands[3]);
28010 : operands[4] = GEN_INT (reg_mask);
28011 : if (!register_operand (operands[2], V8SImode))
28012 : operands[2] = force_reg (V8SImode, operands[2]);
28013 : if (!register_operand (operands[3], V8SImode))
28014 : operands[3] = force_reg (V8SImode, operands[3]);
28015 : }
28016 : #undef DONE
28017 : #undef FAIL
28018 : static const uint8_t expand_encoding[] = {
28019 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
28020 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28021 : 0x25
28022 : };
28023 : return complete_seq (expand_encoding, operands);
28024 : }
28025 :
28026 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28027 : extern rtx_insn *gen_split_3108 (rtx_insn *, rtx *);
28028 : rtx_insn *
28029 : gen_split_3108 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28030 : {
28031 : if (dump_file)
28032 : fprintf (dump_file, "Splitting with gen_split_3108 (sse.md:14313)\n");
28033 : start_sequence ();
28034 : #define FAIL return (end_sequence (), nullptr)
28035 : #define DONE return end_sequence ()
28036 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28037 : {
28038 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28039 : int reg3 = 0xF0;
28040 : int reg2 = 0xCC;
28041 : int reg1 = 0xAA;
28042 : int reg_mask, tmp1;
28043 :
28044 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28045 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28046 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28047 :
28048 : tmp1 = reg1 ^ reg2;
28049 : reg_mask = tmp1 | reg3;
28050 : reg_mask &= 0xFF;
28051 :
28052 : operands[1] = STRIP_UNARY (operands[1]);
28053 : operands[2] = STRIP_UNARY (operands[2]);
28054 : operands[3] = STRIP_UNARY (operands[3]);
28055 : operands[4] = GEN_INT (reg_mask);
28056 : if (!register_operand (operands[2], V4SImode))
28057 : operands[2] = force_reg (V4SImode, operands[2]);
28058 : if (!register_operand (operands[3], V4SImode))
28059 : operands[3] = force_reg (V4SImode, operands[3]);
28060 : }
28061 : #undef DONE
28062 : #undef FAIL
28063 : static const uint8_t expand_encoding[] = {
28064 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
28065 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28066 : 0x25
28067 : };
28068 : return complete_seq (expand_encoding, operands);
28069 : }
28070 :
28071 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28072 : extern rtx_insn *gen_split_3118 (rtx_insn *, rtx *);
28073 : rtx_insn *
28074 : gen_split_3118 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28075 : {
28076 : if (dump_file)
28077 : fprintf (dump_file, "Splitting with gen_split_3118 (sse.md:14313)\n");
28078 : start_sequence ();
28079 : #define FAIL return (end_sequence (), nullptr)
28080 : #define DONE return end_sequence ()
28081 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28082 : {
28083 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28084 : int reg3 = 0xF0;
28085 : int reg2 = 0xCC;
28086 : int reg1 = 0xAA;
28087 : int reg_mask, tmp1;
28088 :
28089 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28090 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28091 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28092 :
28093 : tmp1 = reg1 ^ reg2;
28094 : reg_mask = tmp1 ^ reg3;
28095 : reg_mask &= 0xFF;
28096 :
28097 : operands[1] = STRIP_UNARY (operands[1]);
28098 : operands[2] = STRIP_UNARY (operands[2]);
28099 : operands[3] = STRIP_UNARY (operands[3]);
28100 : operands[4] = GEN_INT (reg_mask);
28101 : if (!register_operand (operands[2], V8DImode))
28102 : operands[2] = force_reg (V8DImode, operands[2]);
28103 : if (!register_operand (operands[3], V8DImode))
28104 : operands[3] = force_reg (V8DImode, operands[3]);
28105 : }
28106 : #undef DONE
28107 : #undef FAIL
28108 : static const uint8_t expand_encoding[] = {
28109 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
28110 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28111 : 0x25
28112 : };
28113 : return complete_seq (expand_encoding, operands);
28114 : }
28115 :
28116 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28117 : extern rtx_insn *gen_split_3128 (rtx_insn *, rtx *);
28118 : rtx_insn *
28119 : gen_split_3128 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28120 : {
28121 : if (dump_file)
28122 : fprintf (dump_file, "Splitting with gen_split_3128 (sse.md:14313)\n");
28123 : start_sequence ();
28124 : #define FAIL return (end_sequence (), nullptr)
28125 : #define DONE return end_sequence ()
28126 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28127 : {
28128 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28129 : int reg3 = 0xF0;
28130 : int reg2 = 0xCC;
28131 : int reg1 = 0xAA;
28132 : int reg_mask, tmp1;
28133 :
28134 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28135 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28136 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28137 :
28138 : tmp1 = reg1 & reg2;
28139 : reg_mask = tmp1 & reg3;
28140 : reg_mask &= 0xFF;
28141 :
28142 : operands[1] = STRIP_UNARY (operands[1]);
28143 : operands[2] = STRIP_UNARY (operands[2]);
28144 : operands[3] = STRIP_UNARY (operands[3]);
28145 : operands[4] = GEN_INT (reg_mask);
28146 : if (!register_operand (operands[2], V2DImode))
28147 : operands[2] = force_reg (V2DImode, operands[2]);
28148 : if (!register_operand (operands[3], V2DImode))
28149 : operands[3] = force_reg (V2DImode, operands[3]);
28150 : }
28151 : #undef DONE
28152 : #undef FAIL
28153 : static const uint8_t expand_encoding[] = {
28154 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
28155 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28156 : 0x25
28157 : };
28158 : return complete_seq (expand_encoding, operands);
28159 : }
28160 :
28161 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28162 : extern rtx_insn *gen_split_3138 (rtx_insn *, rtx *);
28163 : rtx_insn *
28164 : gen_split_3138 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28165 : {
28166 : if (dump_file)
28167 : fprintf (dump_file, "Splitting with gen_split_3138 (sse.md:14313)\n");
28168 : start_sequence ();
28169 : #define FAIL return (end_sequence (), nullptr)
28170 : #define DONE return end_sequence ()
28171 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28172 : {
28173 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28174 : int reg3 = 0xF0;
28175 : int reg2 = 0xCC;
28176 : int reg1 = 0xAA;
28177 : int reg_mask, tmp1;
28178 :
28179 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28180 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28181 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28182 :
28183 : tmp1 = reg1 & reg2;
28184 : reg_mask = tmp1 | reg3;
28185 : reg_mask &= 0xFF;
28186 :
28187 : operands[1] = STRIP_UNARY (operands[1]);
28188 : operands[2] = STRIP_UNARY (operands[2]);
28189 : operands[3] = STRIP_UNARY (operands[3]);
28190 : operands[4] = GEN_INT (reg_mask);
28191 : if (!register_operand (operands[2], V32HFmode))
28192 : operands[2] = force_reg (V32HFmode, operands[2]);
28193 : if (!register_operand (operands[3], V32HFmode))
28194 : operands[3] = force_reg (V32HFmode, operands[3]);
28195 : }
28196 : #undef DONE
28197 : #undef FAIL
28198 : static const uint8_t expand_encoding[] = {
28199 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
28200 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28201 : 0x25
28202 : };
28203 : return complete_seq (expand_encoding, operands);
28204 : }
28205 :
28206 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28207 : extern rtx_insn *gen_split_3148 (rtx_insn *, rtx *);
28208 : rtx_insn *
28209 : gen_split_3148 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28210 : {
28211 : if (dump_file)
28212 : fprintf (dump_file, "Splitting with gen_split_3148 (sse.md:14313)\n");
28213 : start_sequence ();
28214 : #define FAIL return (end_sequence (), nullptr)
28215 : #define DONE return end_sequence ()
28216 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28217 : {
28218 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28219 : int reg3 = 0xF0;
28220 : int reg2 = 0xCC;
28221 : int reg1 = 0xAA;
28222 : int reg_mask, tmp1;
28223 :
28224 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28225 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28226 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28227 :
28228 : tmp1 = reg1 & reg2;
28229 : reg_mask = tmp1 ^ reg3;
28230 : reg_mask &= 0xFF;
28231 :
28232 : operands[1] = STRIP_UNARY (operands[1]);
28233 : operands[2] = STRIP_UNARY (operands[2]);
28234 : operands[3] = STRIP_UNARY (operands[3]);
28235 : operands[4] = GEN_INT (reg_mask);
28236 : if (!register_operand (operands[2], V16HFmode))
28237 : operands[2] = force_reg (V16HFmode, operands[2]);
28238 : if (!register_operand (operands[3], V16HFmode))
28239 : operands[3] = force_reg (V16HFmode, operands[3]);
28240 : }
28241 : #undef DONE
28242 : #undef FAIL
28243 : static const uint8_t expand_encoding[] = {
28244 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
28245 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28246 : 0x25
28247 : };
28248 : return complete_seq (expand_encoding, operands);
28249 : }
28250 :
28251 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28252 : extern rtx_insn *gen_split_3158 (rtx_insn *, rtx *);
28253 : rtx_insn *
28254 : gen_split_3158 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28255 : {
28256 : if (dump_file)
28257 : fprintf (dump_file, "Splitting with gen_split_3158 (sse.md:14313)\n");
28258 : start_sequence ();
28259 : #define FAIL return (end_sequence (), nullptr)
28260 : #define DONE return end_sequence ()
28261 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28262 : {
28263 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28264 : int reg3 = 0xF0;
28265 : int reg2 = 0xCC;
28266 : int reg1 = 0xAA;
28267 : int reg_mask, tmp1;
28268 :
28269 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28270 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28271 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28272 :
28273 : tmp1 = reg1 | reg2;
28274 : reg_mask = tmp1 & reg3;
28275 : reg_mask &= 0xFF;
28276 :
28277 : operands[1] = STRIP_UNARY (operands[1]);
28278 : operands[2] = STRIP_UNARY (operands[2]);
28279 : operands[3] = STRIP_UNARY (operands[3]);
28280 : operands[4] = GEN_INT (reg_mask);
28281 : if (!register_operand (operands[2], V8HFmode))
28282 : operands[2] = force_reg (V8HFmode, operands[2]);
28283 : if (!register_operand (operands[3], V8HFmode))
28284 : operands[3] = force_reg (V8HFmode, operands[3]);
28285 : }
28286 : #undef DONE
28287 : #undef FAIL
28288 : static const uint8_t expand_encoding[] = {
28289 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
28290 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28291 : 0x25
28292 : };
28293 : return complete_seq (expand_encoding, operands);
28294 : }
28295 :
28296 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28297 : extern rtx_insn *gen_split_3168 (rtx_insn *, rtx *);
28298 : rtx_insn *
28299 : gen_split_3168 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28300 : {
28301 : if (dump_file)
28302 : fprintf (dump_file, "Splitting with gen_split_3168 (sse.md:14313)\n");
28303 : start_sequence ();
28304 : #define FAIL return (end_sequence (), nullptr)
28305 : #define DONE return end_sequence ()
28306 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28307 : {
28308 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28309 : int reg3 = 0xF0;
28310 : int reg2 = 0xCC;
28311 : int reg1 = 0xAA;
28312 : int reg_mask, tmp1;
28313 :
28314 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28315 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28316 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28317 :
28318 : tmp1 = reg1 | reg2;
28319 : reg_mask = tmp1 | reg3;
28320 : reg_mask &= 0xFF;
28321 :
28322 : operands[1] = STRIP_UNARY (operands[1]);
28323 : operands[2] = STRIP_UNARY (operands[2]);
28324 : operands[3] = STRIP_UNARY (operands[3]);
28325 : operands[4] = GEN_INT (reg_mask);
28326 : if (!register_operand (operands[2], V32BFmode))
28327 : operands[2] = force_reg (V32BFmode, operands[2]);
28328 : if (!register_operand (operands[3], V32BFmode))
28329 : operands[3] = force_reg (V32BFmode, operands[3]);
28330 : }
28331 : #undef DONE
28332 : #undef FAIL
28333 : static const uint8_t expand_encoding[] = {
28334 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
28335 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28336 : 0x25
28337 : };
28338 : return complete_seq (expand_encoding, operands);
28339 : }
28340 :
28341 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28342 : extern rtx_insn *gen_split_3178 (rtx_insn *, rtx *);
28343 : rtx_insn *
28344 : gen_split_3178 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28345 : {
28346 : if (dump_file)
28347 : fprintf (dump_file, "Splitting with gen_split_3178 (sse.md:14313)\n");
28348 : start_sequence ();
28349 : #define FAIL return (end_sequence (), nullptr)
28350 : #define DONE return end_sequence ()
28351 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28352 : {
28353 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28354 : int reg3 = 0xF0;
28355 : int reg2 = 0xCC;
28356 : int reg1 = 0xAA;
28357 : int reg_mask, tmp1;
28358 :
28359 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28360 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28361 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28362 :
28363 : tmp1 = reg1 | reg2;
28364 : reg_mask = tmp1 ^ reg3;
28365 : reg_mask &= 0xFF;
28366 :
28367 : operands[1] = STRIP_UNARY (operands[1]);
28368 : operands[2] = STRIP_UNARY (operands[2]);
28369 : operands[3] = STRIP_UNARY (operands[3]);
28370 : operands[4] = GEN_INT (reg_mask);
28371 : if (!register_operand (operands[2], V16BFmode))
28372 : operands[2] = force_reg (V16BFmode, operands[2]);
28373 : if (!register_operand (operands[3], V16BFmode))
28374 : operands[3] = force_reg (V16BFmode, operands[3]);
28375 : }
28376 : #undef DONE
28377 : #undef FAIL
28378 : static const uint8_t expand_encoding[] = {
28379 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
28380 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28381 : 0x25
28382 : };
28383 : return complete_seq (expand_encoding, operands);
28384 : }
28385 :
28386 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28387 : extern rtx_insn *gen_split_3188 (rtx_insn *, rtx *);
28388 : rtx_insn *
28389 : gen_split_3188 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28390 : {
28391 : if (dump_file)
28392 : fprintf (dump_file, "Splitting with gen_split_3188 (sse.md:14313)\n");
28393 : start_sequence ();
28394 : #define FAIL return (end_sequence (), nullptr)
28395 : #define DONE return end_sequence ()
28396 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28397 : {
28398 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28399 : int reg3 = 0xF0;
28400 : int reg2 = 0xCC;
28401 : int reg1 = 0xAA;
28402 : int reg_mask, tmp1;
28403 :
28404 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28405 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28406 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28407 :
28408 : tmp1 = reg1 ^ reg2;
28409 : reg_mask = tmp1 & reg3;
28410 : reg_mask &= 0xFF;
28411 :
28412 : operands[1] = STRIP_UNARY (operands[1]);
28413 : operands[2] = STRIP_UNARY (operands[2]);
28414 : operands[3] = STRIP_UNARY (operands[3]);
28415 : operands[4] = GEN_INT (reg_mask);
28416 : if (!register_operand (operands[2], V8BFmode))
28417 : operands[2] = force_reg (V8BFmode, operands[2]);
28418 : if (!register_operand (operands[3], V8BFmode))
28419 : operands[3] = force_reg (V8BFmode, operands[3]);
28420 : }
28421 : #undef DONE
28422 : #undef FAIL
28423 : static const uint8_t expand_encoding[] = {
28424 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
28425 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28426 : 0x25
28427 : };
28428 : return complete_seq (expand_encoding, operands);
28429 : }
28430 :
28431 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28432 : extern rtx_insn *gen_split_3198 (rtx_insn *, rtx *);
28433 : rtx_insn *
28434 : gen_split_3198 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28435 : {
28436 : if (dump_file)
28437 : fprintf (dump_file, "Splitting with gen_split_3198 (sse.md:14313)\n");
28438 : start_sequence ();
28439 : #define FAIL return (end_sequence (), nullptr)
28440 : #define DONE return end_sequence ()
28441 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28442 : {
28443 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28444 : int reg3 = 0xF0;
28445 : int reg2 = 0xCC;
28446 : int reg1 = 0xAA;
28447 : int reg_mask, tmp1;
28448 :
28449 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28450 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28451 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28452 :
28453 : tmp1 = reg1 ^ reg2;
28454 : reg_mask = tmp1 | reg3;
28455 : reg_mask &= 0xFF;
28456 :
28457 : operands[1] = STRIP_UNARY (operands[1]);
28458 : operands[2] = STRIP_UNARY (operands[2]);
28459 : operands[3] = STRIP_UNARY (operands[3]);
28460 : operands[4] = GEN_INT (reg_mask);
28461 : if (!register_operand (operands[2], V16SFmode))
28462 : operands[2] = force_reg (V16SFmode, operands[2]);
28463 : if (!register_operand (operands[3], V16SFmode))
28464 : operands[3] = force_reg (V16SFmode, operands[3]);
28465 : }
28466 : #undef DONE
28467 : #undef FAIL
28468 : static const uint8_t expand_encoding[] = {
28469 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
28470 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28471 : 0x25
28472 : };
28473 : return complete_seq (expand_encoding, operands);
28474 : }
28475 :
28476 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28477 : extern rtx_insn *gen_split_3208 (rtx_insn *, rtx *);
28478 : rtx_insn *
28479 : gen_split_3208 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28480 : {
28481 : if (dump_file)
28482 : fprintf (dump_file, "Splitting with gen_split_3208 (sse.md:14313)\n");
28483 : start_sequence ();
28484 : #define FAIL return (end_sequence (), nullptr)
28485 : #define DONE return end_sequence ()
28486 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28487 : {
28488 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28489 : int reg3 = 0xF0;
28490 : int reg2 = 0xCC;
28491 : int reg1 = 0xAA;
28492 : int reg_mask, tmp1;
28493 :
28494 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28495 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28496 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28497 :
28498 : tmp1 = reg1 ^ reg2;
28499 : reg_mask = tmp1 ^ reg3;
28500 : reg_mask &= 0xFF;
28501 :
28502 : operands[1] = STRIP_UNARY (operands[1]);
28503 : operands[2] = STRIP_UNARY (operands[2]);
28504 : operands[3] = STRIP_UNARY (operands[3]);
28505 : operands[4] = GEN_INT (reg_mask);
28506 : if (!register_operand (operands[2], V8SFmode))
28507 : operands[2] = force_reg (V8SFmode, operands[2]);
28508 : if (!register_operand (operands[3], V8SFmode))
28509 : operands[3] = force_reg (V8SFmode, operands[3]);
28510 : }
28511 : #undef DONE
28512 : #undef FAIL
28513 : static const uint8_t expand_encoding[] = {
28514 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
28515 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28516 : 0x25
28517 : };
28518 : return complete_seq (expand_encoding, operands);
28519 : }
28520 :
28521 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28522 : extern rtx_insn *gen_split_3218 (rtx_insn *, rtx *);
28523 : rtx_insn *
28524 : gen_split_3218 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28525 : {
28526 : if (dump_file)
28527 : fprintf (dump_file, "Splitting with gen_split_3218 (sse.md:14313)\n");
28528 : start_sequence ();
28529 : #define FAIL return (end_sequence (), nullptr)
28530 : #define DONE return end_sequence ()
28531 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28532 : {
28533 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28534 : int reg3 = 0xF0;
28535 : int reg2 = 0xCC;
28536 : int reg1 = 0xAA;
28537 : int reg_mask, tmp1;
28538 :
28539 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28540 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28541 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28542 :
28543 : tmp1 = reg1 & reg2;
28544 : reg_mask = tmp1 & reg3;
28545 : reg_mask &= 0xFF;
28546 :
28547 : operands[1] = STRIP_UNARY (operands[1]);
28548 : operands[2] = STRIP_UNARY (operands[2]);
28549 : operands[3] = STRIP_UNARY (operands[3]);
28550 : operands[4] = GEN_INT (reg_mask);
28551 : if (!register_operand (operands[2], V8DFmode))
28552 : operands[2] = force_reg (V8DFmode, operands[2]);
28553 : if (!register_operand (operands[3], V8DFmode))
28554 : operands[3] = force_reg (V8DFmode, operands[3]);
28555 : }
28556 : #undef DONE
28557 : #undef FAIL
28558 : static const uint8_t expand_encoding[] = {
28559 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
28560 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28561 : 0x25
28562 : };
28563 : return complete_seq (expand_encoding, operands);
28564 : }
28565 :
28566 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28567 : extern rtx_insn *gen_split_3228 (rtx_insn *, rtx *);
28568 : rtx_insn *
28569 : gen_split_3228 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28570 : {
28571 : if (dump_file)
28572 : fprintf (dump_file, "Splitting with gen_split_3228 (sse.md:14313)\n");
28573 : start_sequence ();
28574 : #define FAIL return (end_sequence (), nullptr)
28575 : #define DONE return end_sequence ()
28576 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28577 : {
28578 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28579 : int reg3 = 0xF0;
28580 : int reg2 = 0xCC;
28581 : int reg1 = 0xAA;
28582 : int reg_mask, tmp1;
28583 :
28584 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28585 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28586 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28587 :
28588 : tmp1 = reg1 & reg2;
28589 : reg_mask = tmp1 | reg3;
28590 : reg_mask &= 0xFF;
28591 :
28592 : operands[1] = STRIP_UNARY (operands[1]);
28593 : operands[2] = STRIP_UNARY (operands[2]);
28594 : operands[3] = STRIP_UNARY (operands[3]);
28595 : operands[4] = GEN_INT (reg_mask);
28596 : if (!register_operand (operands[2], V4DFmode))
28597 : operands[2] = force_reg (V4DFmode, operands[2]);
28598 : if (!register_operand (operands[3], V4DFmode))
28599 : operands[3] = force_reg (V4DFmode, operands[3]);
28600 : }
28601 : #undef DONE
28602 : #undef FAIL
28603 : static const uint8_t expand_encoding[] = {
28604 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
28605 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28606 : 0x25
28607 : };
28608 : return complete_seq (expand_encoding, operands);
28609 : }
28610 :
28611 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28612 : extern rtx_insn *gen_split_3238 (rtx_insn *, rtx *);
28613 : rtx_insn *
28614 : gen_split_3238 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28615 : {
28616 : if (dump_file)
28617 : fprintf (dump_file, "Splitting with gen_split_3238 (sse.md:14313)\n");
28618 : start_sequence ();
28619 : #define FAIL return (end_sequence (), nullptr)
28620 : #define DONE return end_sequence ()
28621 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28622 : {
28623 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28624 : int reg3 = 0xF0;
28625 : int reg2 = 0xCC;
28626 : int reg1 = 0xAA;
28627 : int reg_mask, tmp1;
28628 :
28629 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28630 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28631 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28632 :
28633 : tmp1 = reg1 & reg2;
28634 : reg_mask = tmp1 ^ reg3;
28635 : reg_mask &= 0xFF;
28636 :
28637 : operands[1] = STRIP_UNARY (operands[1]);
28638 : operands[2] = STRIP_UNARY (operands[2]);
28639 : operands[3] = STRIP_UNARY (operands[3]);
28640 : operands[4] = GEN_INT (reg_mask);
28641 : if (!register_operand (operands[2], V2DFmode))
28642 : operands[2] = force_reg (V2DFmode, operands[2]);
28643 : if (!register_operand (operands[3], V2DFmode))
28644 : operands[3] = force_reg (V2DFmode, operands[3]);
28645 : }
28646 : #undef DONE
28647 : #undef FAIL
28648 : static const uint8_t expand_encoding[] = {
28649 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
28650 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28651 : 0x25
28652 : };
28653 : return complete_seq (expand_encoding, operands);
28654 : }
28655 :
28656 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14358 */
28657 : rtx
28658 : gen_avx512f_vternlogv8di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
28659 : {
28660 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
28661 : start_sequence ();
28662 : {
28663 : #define FAIL return (end_sequence (), nullptr)
28664 : #define DONE return end_sequence ()
28665 : #line 14370 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28666 : {
28667 : unsigned HOST_WIDE_INT mode_mask = GET_MODE_MASK (QImode);
28668 : if (CONST_INT_P (operands[5])
28669 : && (UINTVAL (operands[5]) & mode_mask) == mode_mask)
28670 : {
28671 : ix86_expand_ternlog (V8DImode, operands[1], operands[2],
28672 : operands[3], INTVAL (operands[4]),
28673 : operands[0]);
28674 : DONE;
28675 : }
28676 : if (!register_operand (operands[5], QImode))
28677 : operands[5] = force_reg (QImode, operands[5]);
28678 : }
28679 : #undef DONE
28680 : #undef FAIL
28681 : }
28682 : static const uint8_t expand_encoding[] = {
28683 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x1a,
28684 : 0x5c, 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
28685 : 0x01, 0x04, 0x81, 0x25, 0x01, 0x01, 0x01, 0x05
28686 : };
28687 : return complete_seq (expand_encoding, operands);
28688 : }
28689 :
28690 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14497 */
28691 : rtx
28692 : gen_avx512vl_fixupimmv8sf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
28693 : {
28694 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
28695 : start_sequence ();
28696 : {
28697 : #define FAIL return (end_sequence (), nullptr)
28698 : #define DONE return end_sequence ()
28699 : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28700 : {
28701 : emit_insn (gen_avx512vl_fixupimmv8sf_maskz_1_round (
28702 : operands[0], operands[1], operands[2], operands[3],
28703 : operands[4], CONST0_RTX (V8SFmode), operands[5]
28704 : , operands[6]));
28705 : DONE;
28706 : }
28707 : #undef DONE
28708 : #undef FAIL
28709 : }
28710 : static const uint8_t expand_encoding[] = {
28711 : 0x07, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
28712 : 0x03, 0x01, 0x04, 0x01, 0x05, 0x1a, 0x00, 0x01,
28713 : 0x01, 0x06, 0x81, 0x33
28714 : };
28715 : return complete_seq (expand_encoding, operands);
28716 : }
28717 :
28718 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14542 */
28719 : rtx
28720 : gen_avx512f_sfixupimmv2df_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
28721 : {
28722 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
28723 : start_sequence ();
28724 : {
28725 : #define FAIL return (end_sequence (), nullptr)
28726 : #define DONE return end_sequence ()
28727 : #line 14550 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28728 : {
28729 : emit_insn (gen_avx512f_sfixupimmv2df_maskz_1 (
28730 : operands[0], operands[1], operands[2], operands[3],
28731 : operands[4], CONST0_RTX (V2DFmode), operands[5]
28732 : ));
28733 : DONE;
28734 : }
28735 : #undef DONE
28736 : #undef FAIL
28737 : }
28738 : static const uint8_t expand_encoding[] = {
28739 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
28740 : 0x03, 0x01, 0x04, 0x01, 0x05
28741 : };
28742 : return complete_seq (expand_encoding, operands);
28743 : }
28744 :
28745 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15040 */
28746 : extern rtx_insn *gen_split_3247 (rtx_insn *, rtx *);
28747 : rtx_insn *
28748 : gen_split_3247 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28749 : {
28750 : if (dump_file)
28751 : fprintf (dump_file, "Splitting with gen_split_3247 (sse.md:15040)\n");
28752 : start_sequence ();
28753 : #define FAIL return (end_sequence (), nullptr)
28754 : #define DONE return end_sequence ()
28755 : #line 15047 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28756 : operands[1] = gen_lowpart (DFmode, operands[1]);
28757 : #undef DONE
28758 : #undef FAIL
28759 : static const uint8_t expand_encoding[] = {
28760 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
28761 : };
28762 : return complete_seq (expand_encoding, operands);
28763 : }
28764 :
28765 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15431 */
28766 : extern rtx_insn *gen_split_3253 (rtx_insn *, rtx *);
28767 : rtx_insn *
28768 : gen_split_3253 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28769 : {
28770 : if (dump_file)
28771 : fprintf (dump_file, "Splitting with gen_split_3253 (sse.md:15431)\n");
28772 : start_sequence ();
28773 : #define FAIL return (end_sequence (), nullptr)
28774 : #define DONE return end_sequence ()
28775 : #line 15447 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28776 : operands[1] = lowpart_subreg (V8SImode,
28777 : force_reg (V16HImode, operands[1]),
28778 : V16HImode);
28779 : #undef DONE
28780 : #undef FAIL
28781 : static const uint8_t expand_encoding[] = {
28782 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x50, 0x01, 0x01
28783 : };
28784 : return complete_seq (expand_encoding, operands);
28785 : }
28786 :
28787 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15517 */
28788 : rtx
28789 : gen_avx512f_us_truncatev8div8si2_mask_store (const rtx operand0, const rtx operand1, const rtx operand2)
28790 : {
28791 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28792 : static const uint8_t expand_encoding[] = {
28793 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x81, 0x18,
28794 : 0x56, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
28795 : };
28796 : return expand_rtx (expand_encoding, operands);
28797 : }
28798 :
28799 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15605 */
28800 : rtx
28801 : gen_truncv8siv8hi2 (const rtx operand0, const rtx operand1)
28802 : {
28803 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
28804 : start_sequence ();
28805 : {
28806 : #define FAIL return (end_sequence (), nullptr)
28807 : #define DONE return end_sequence ()
28808 : #line 15610 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28809 : {
28810 : if (!TARGET_AVX512VL
28811 : || (V8HImode == V16QImode && !TARGET_AVX512BW))
28812 : {
28813 : ix86_expand_trunc_with_avx2_noavx512f (operands[0],
28814 : operands[1],
28815 : V16HImode);
28816 : DONE;
28817 : }
28818 : }
28819 : #undef DONE
28820 : #undef FAIL
28821 : }
28822 : static const uint8_t expand_encoding[] = {
28823 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x50, 0x01, 0x01
28824 : };
28825 : return complete_seq (expand_encoding, operands);
28826 : }
28827 :
28828 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15689 */
28829 : rtx
28830 : gen_avx512vl_truncatev16hiv16qi2_mask_store (const rtx operand0, const rtx operand1, const rtx operand2)
28831 : {
28832 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28833 : static const uint8_t expand_encoding[] = {
28834 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x70, 0x4f,
28835 : 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
28836 : };
28837 : return expand_rtx (expand_encoding, operands);
28838 : }
28839 :
28840 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15782 */
28841 : extern rtx_insn *gen_split_3262 (rtx_insn *, rtx *);
28842 : rtx_insn *
28843 : gen_split_3262 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28844 : {
28845 : if (dump_file)
28846 : fprintf (dump_file, "Splitting with gen_split_3262 (sse.md:15782)\n");
28847 : start_sequence ();
28848 : #define FAIL return (end_sequence (), nullptr)
28849 : #define DONE return end_sequence ()
28850 : #line 15792 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28851 : operands[0] = adjust_address_nv (operands[0], V2QImode, 0);
28852 : #undef DONE
28853 : #undef FAIL
28854 : static const uint8_t expand_encoding[] = {
28855 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x18, 0x44, 0x01,
28856 : 0x01
28857 : };
28858 : return complete_seq (expand_encoding, operands);
28859 : }
28860 :
28861 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15877 */
28862 : extern rtx_insn *gen_split_3268 (rtx_insn *, rtx *);
28863 : rtx_insn *
28864 : gen_split_3268 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28865 : {
28866 : if (dump_file)
28867 : fprintf (dump_file, "Splitting with gen_split_3268 (sse.md:15877)\n");
28868 : start_sequence ();
28869 : #define FAIL return (end_sequence (), nullptr)
28870 : #define DONE return end_sequence ()
28871 : #line 15887 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28872 : operands[0] = adjust_address_nv (operands[0], V4QImode, 0);
28873 : #undef DONE
28874 : #undef FAIL
28875 : static const uint8_t expand_encoding[] = {
28876 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x18, 0x45, 0x01,
28877 : 0x01
28878 : };
28879 : return complete_seq (expand_encoding, operands);
28880 : }
28881 :
28882 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15975 */
28883 : extern rtx_insn *gen_split_3272 (rtx_insn *, rtx *);
28884 : rtx_insn *
28885 : gen_split_3272 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28886 : {
28887 : if (dump_file)
28888 : fprintf (dump_file, "Splitting with gen_split_3272 (sse.md:15975)\n");
28889 : start_sequence ();
28890 : #define FAIL return (end_sequence (), nullptr)
28891 : #define DONE return end_sequence ()
28892 : #line 15985 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28893 : operands[0] = adjust_address_nv (operands[0], V8QImode, 0);
28894 : #undef DONE
28895 : #undef FAIL
28896 : static const uint8_t expand_encoding[] = {
28897 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x17, 0x48, 0x01,
28898 : 0x01
28899 : };
28900 : return complete_seq (expand_encoding, operands);
28901 : }
28902 :
28903 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16045 */
28904 : rtx
28905 : gen_avx512vl_truncatev8siv8qi2_mask_store_2 (const rtx operand0, const rtx operand1, const rtx operand2)
28906 : {
28907 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28908 : start_sequence ();
28909 : {
28910 : #define FAIL return (end_sequence (), nullptr)
28911 : #define DONE return end_sequence ()
28912 : #line 16051 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28913 : {
28914 : operands[0] = adjust_address_nv (operands[0], V8QImode, 0);
28915 : emit_insn (gen_avx512vl_truncatev8siv8qi2_mask_store_1 (operands[0],
28916 : operands[1],
28917 : operands[2]));
28918 : DONE;
28919 : }
28920 : #undef DONE
28921 : #undef FAIL
28922 : }
28923 : static const uint8_t expand_encoding[] = {
28924 : 0x03, 0x01, 0x00, 0x70, 0x48, 0x01, 0x01, 0x01,
28925 : 0x02
28926 : };
28927 : return complete_seq (expand_encoding, operands);
28928 : }
28929 :
28930 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16137 */
28931 : extern rtx_insn *gen_split_3280 (rtx_insn *, rtx *);
28932 : rtx_insn *
28933 : gen_split_3280 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28934 : {
28935 : if (dump_file)
28936 : fprintf (dump_file, "Splitting with gen_split_3280 (sse.md:16137)\n");
28937 : start_sequence ();
28938 : #define FAIL return (end_sequence (), nullptr)
28939 : #define DONE return end_sequence ()
28940 : #line 16147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28941 : operands[0] = adjust_address_nv (operands[0], V4HImode, 0);
28942 : #undef DONE
28943 : #undef FAIL
28944 : static const uint8_t expand_encoding[] = {
28945 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x49, 0x01, 0x01
28946 : };
28947 : return complete_seq (expand_encoding, operands);
28948 : }
28949 :
28950 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16228 */
28951 : extern rtx_insn *gen_split_3283 (rtx_insn *, rtx *);
28952 : rtx_insn *
28953 : gen_split_3283 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28954 : {
28955 : if (dump_file)
28956 : fprintf (dump_file, "Splitting with gen_split_3283 (sse.md:16228)\n");
28957 : start_sequence ();
28958 : #define FAIL return (end_sequence (), nullptr)
28959 : #define DONE return end_sequence ()
28960 : #line 16238 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28961 : operands[0] = adjust_address_nv (operands[0], V2HImode, 0);
28962 : #undef DONE
28963 : #undef FAIL
28964 : static const uint8_t expand_encoding[] = {
28965 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x46, 0x01, 0x01
28966 : };
28967 : return complete_seq (expand_encoding, operands);
28968 : }
28969 :
28970 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16378 */
28971 : extern rtx_insn *gen_split_3286 (rtx_insn *, rtx *);
28972 : rtx_insn *
28973 : gen_split_3286 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28974 : {
28975 : if (dump_file)
28976 : fprintf (dump_file, "Splitting with gen_split_3286 (sse.md:16378)\n");
28977 : start_sequence ();
28978 : #define FAIL return (end_sequence (), nullptr)
28979 : #define DONE return end_sequence ()
28980 : #line 16388 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28981 : operands[0] = adjust_address_nv (operands[0], V2SImode, 0);
28982 : #undef DONE
28983 : #undef FAIL
28984 : static const uint8_t expand_encoding[] = {
28985 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x17, 0x4a, 0x01,
28986 : 0x01
28987 : };
28988 : return complete_seq (expand_encoding, operands);
28989 : }
28990 :
28991 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16561 */
28992 : rtx
28993 : gen_avx512f_ss_truncatev8div16qi2_mask_store_2 (const rtx operand0, const rtx operand1, const rtx operand2)
28994 : {
28995 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28996 : start_sequence ();
28997 : {
28998 : #define FAIL return (end_sequence (), nullptr)
28999 : #define DONE return end_sequence ()
29000 : #line 16567 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29001 : {
29002 : operands[0] = adjust_address_nv (operands[0], V8QImode, 0);
29003 : emit_insn (gen_avx512f_ss_truncatev8div16qi2_mask_store_1 (operands[0],
29004 : operands[1],
29005 : operands[2]));
29006 : DONE;
29007 : }
29008 : #undef DONE
29009 : #undef FAIL
29010 : }
29011 : static const uint8_t expand_encoding[] = {
29012 : 0x03, 0x01, 0x00, 0x81, 0x17, 0x48, 0x01, 0x01,
29013 : 0x01, 0x02
29014 : };
29015 : return complete_seq (expand_encoding, operands);
29016 : }
29017 :
29018 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16581 */
29019 : rtx
29020 : gen_negv8di2 (const rtx operand0, const rtx operand1)
29021 : {
29022 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
29023 : start_sequence ();
29024 : {
29025 : #define FAIL return (end_sequence (), nullptr)
29026 : #define DONE return end_sequence ()
29027 : #line 16587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29028 : operands[2] = force_reg (V8DImode, CONST0_RTX (V8DImode));
29029 : #undef DONE
29030 : #undef FAIL
29031 : }
29032 : static const uint8_t expand_encoding[] = {
29033 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x5c, 0x01, 0x02,
29034 : 0x01, 0x01
29035 : };
29036 : return complete_seq (expand_encoding, operands);
29037 : }
29038 :
29039 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16589 */
29040 : rtx
29041 : gen_subv32hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29042 : {
29043 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29044 : start_sequence ();
29045 : {
29046 : #define FAIL return (end_sequence (), nullptr)
29047 : #define DONE return end_sequence ()
29048 : #line 16595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29049 : ix86_fixup_binary_operands_no_copy (MINUS, V32HImode, operands);
29050 : #undef DONE
29051 : #undef FAIL
29052 : }
29053 : static const uint8_t expand_encoding[] = {
29054 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x5a, 0x01, 0x01,
29055 : 0x01, 0x02
29056 : };
29057 : return complete_seq (expand_encoding, operands);
29058 : }
29059 :
29060 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16589 */
29061 : rtx
29062 : gen_addv8di3 (const rtx operand0, const rtx operand1, const rtx operand2)
29063 : {
29064 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29065 : start_sequence ();
29066 : {
29067 : #define FAIL return (end_sequence (), nullptr)
29068 : #define DONE return end_sequence ()
29069 : #line 16595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29070 : ix86_fixup_binary_operands_no_copy (PLUS, V8DImode, operands);
29071 : #undef DONE
29072 : #undef FAIL
29073 : }
29074 : static const uint8_t expand_encoding[] = {
29075 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x5c, 0x01, 0x01,
29076 : 0x01, 0x02
29077 : };
29078 : return complete_seq (expand_encoding, operands);
29079 : }
29080 :
29081 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16597 */
29082 : rtx
29083 : gen_cond_subv32qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29084 : {
29085 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29086 : start_sequence ();
29087 : {
29088 : #define FAIL _Pragma ("GCC error \"cond_subv32qi cannot FAIL\"") (void)0
29089 : #define DONE return end_sequence ()
29090 : #line 16606 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29091 : {
29092 : emit_insn (gen_subv32qi3_mask (operands[0],
29093 : operands[2],
29094 : operands[3],
29095 : operands[4],
29096 : operands[1]));
29097 : DONE;
29098 : }
29099 : #undef DONE
29100 : #undef FAIL
29101 : }
29102 : static const uint8_t expand_encoding[] = {
29103 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x3c,
29104 : 0x54, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29105 : 0x01
29106 : };
29107 : return complete_seq (expand_encoding, operands);
29108 : }
29109 :
29110 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16597 */
29111 : rtx
29112 : gen_cond_subv16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29113 : {
29114 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29115 : start_sequence ();
29116 : {
29117 : #define FAIL _Pragma ("GCC error \"cond_subv16si cannot FAIL\"") (void)0
29118 : #define DONE return end_sequence ()
29119 : #line 16606 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29120 : {
29121 : emit_insn (gen_subv16si3_mask (operands[0],
29122 : operands[2],
29123 : operands[3],
29124 : operands[4],
29125 : operands[1]));
29126 : DONE;
29127 : }
29128 : #undef DONE
29129 : #undef FAIL
29130 : }
29131 : static const uint8_t expand_encoding[] = {
29132 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x3c,
29133 : 0x5b, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29134 : 0x01
29135 : };
29136 : return complete_seq (expand_encoding, operands);
29137 : }
29138 :
29139 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16615 */
29140 : rtx
29141 : gen_addv16si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29142 : {
29143 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29144 : start_sequence ();
29145 : {
29146 : #define FAIL return (end_sequence (), nullptr)
29147 : #define DONE return end_sequence ()
29148 : #line 16624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29149 : ix86_fixup_binary_operands_no_copy (PLUS, V16SImode, operands);
29150 : #undef DONE
29151 : #undef FAIL
29152 : }
29153 : static const uint8_t expand_encoding[] = {
29154 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x3b,
29155 : 0x5b, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29156 : 0x04
29157 : };
29158 : return complete_seq (expand_encoding, operands);
29159 : }
29160 :
29161 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16615 */
29162 : rtx
29163 : gen_subv8di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29164 : {
29165 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29166 : start_sequence ();
29167 : {
29168 : #define FAIL return (end_sequence (), nullptr)
29169 : #define DONE return end_sequence ()
29170 : #line 16624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29171 : ix86_fixup_binary_operands_no_copy (MINUS, V8DImode, operands);
29172 : #undef DONE
29173 : #undef FAIL
29174 : }
29175 : static const uint8_t expand_encoding[] = {
29176 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x3c,
29177 : 0x5c, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29178 : 0x04
29179 : };
29180 : return complete_seq (expand_encoding, operands);
29181 : }
29182 :
29183 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16626 */
29184 : rtx
29185 : gen_subv32qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29186 : {
29187 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29188 : start_sequence ();
29189 : {
29190 : #define FAIL return (end_sequence (), nullptr)
29191 : #define DONE return end_sequence ()
29192 : #line 16635 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29193 : ix86_fixup_binary_operands_no_copy (MINUS, V32QImode, operands);
29194 : #undef DONE
29195 : #undef FAIL
29196 : }
29197 : static const uint8_t expand_encoding[] = {
29198 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x3c,
29199 : 0x54, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29200 : 0x04
29201 : };
29202 : return complete_seq (expand_encoding, operands);
29203 : }
29204 :
29205 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16680 */
29206 : rtx
29207 : gen_usaddv64qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29208 : {
29209 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29210 : start_sequence ();
29211 : {
29212 : #define FAIL return (end_sequence (), nullptr)
29213 : #define DONE return end_sequence ()
29214 : #line 16686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29215 : ix86_fixup_binary_operands_no_copy (US_PLUS, V64QImode, operands);
29216 : #undef DONE
29217 : #undef FAIL
29218 : }
29219 : static const uint8_t expand_encoding[] = {
29220 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x59, 0x81,
29221 : 0x0f, 0x59, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
29222 : 0x01, 0x04
29223 : };
29224 : return complete_seq (expand_encoding, operands);
29225 : }
29226 :
29227 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16680 */
29228 : rtx
29229 : gen_ssaddv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29230 : {
29231 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29232 : start_sequence ();
29233 : {
29234 : #define FAIL return (end_sequence (), nullptr)
29235 : #define DONE return end_sequence ()
29236 : #line 16686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29237 : ix86_fixup_binary_operands_no_copy (SS_PLUS, V16QImode, operands);
29238 : #undef DONE
29239 : #undef FAIL
29240 : }
29241 : static const uint8_t expand_encoding[] = {
29242 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0e, 0x4f, 0x01,
29243 : 0x01, 0x01, 0x02
29244 : };
29245 : return complete_seq (expand_encoding, operands);
29246 : }
29247 :
29248 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16680 */
29249 : rtx
29250 : gen_ssaddv32hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29251 : {
29252 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29253 : start_sequence ();
29254 : {
29255 : #define FAIL return (end_sequence (), nullptr)
29256 : #define DONE return end_sequence ()
29257 : #line 16686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29258 : ix86_fixup_binary_operands_no_copy (SS_PLUS, V32HImode, operands);
29259 : #undef DONE
29260 : #undef FAIL
29261 : }
29262 : static const uint8_t expand_encoding[] = {
29263 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0e, 0x5a, 0x01,
29264 : 0x01, 0x01, 0x02
29265 : };
29266 : return complete_seq (expand_encoding, operands);
29267 : }
29268 :
29269 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16680 */
29270 : rtx
29271 : gen_ssaddv16hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29272 : {
29273 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29274 : start_sequence ();
29275 : {
29276 : #define FAIL return (end_sequence (), nullptr)
29277 : #define DONE return end_sequence ()
29278 : #line 16686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29279 : ix86_fixup_binary_operands_no_copy (SS_PLUS, V16HImode, operands);
29280 : #undef DONE
29281 : #undef FAIL
29282 : }
29283 : static const uint8_t expand_encoding[] = {
29284 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x81,
29285 : 0x0e, 0x55, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
29286 : 0x01, 0x04
29287 : };
29288 : return complete_seq (expand_encoding, operands);
29289 : }
29290 :
29291 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16680 */
29292 : rtx
29293 : gen_sssubv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29294 : {
29295 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29296 : start_sequence ();
29297 : {
29298 : #define FAIL return (end_sequence (), nullptr)
29299 : #define DONE return end_sequence ()
29300 : #line 16686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29301 : ix86_fixup_binary_operands_no_copy (SS_MINUS, V8HImode, operands);
29302 : #undef DONE
29303 : #undef FAIL
29304 : }
29305 : static const uint8_t expand_encoding[] = {
29306 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x10, 0x50, 0x01,
29307 : 0x01, 0x01, 0x02
29308 : };
29309 : return complete_seq (expand_encoding, operands);
29310 : }
29311 :
29312 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16721 */
29313 : rtx
29314 : gen_mulv32qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29315 : {
29316 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29317 : start_sequence ();
29318 : {
29319 : #define FAIL return (end_sequence (), nullptr)
29320 : #define DONE return end_sequence ()
29321 : #line 16726 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29322 : {
29323 : ix86_expand_vecop_qihi (MULT, operands[0], operands[1], operands[2]);
29324 : DONE;
29325 : }
29326 : #undef DONE
29327 : #undef FAIL
29328 : }
29329 : static const uint8_t expand_encoding[] = {
29330 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x54, 0x01, 0x01,
29331 : 0x01, 0x02
29332 : };
29333 : return complete_seq (expand_encoding, operands);
29334 : }
29335 :
29336 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16749 */
29337 : rtx
29338 : gen_mulv8hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29339 : {
29340 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29341 : start_sequence ();
29342 : {
29343 : #define FAIL return (end_sequence (), nullptr)
29344 : #define DONE return end_sequence ()
29345 : #line 16754 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29346 : ix86_fixup_binary_operands_no_copy (MULT, V8HImode, operands);
29347 : #undef DONE
29348 : #undef FAIL
29349 : }
29350 : static const uint8_t expand_encoding[] = {
29351 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x3e,
29352 : 0x50, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29353 : 0x04
29354 : };
29355 : return complete_seq (expand_encoding, operands);
29356 : }
29357 :
29358 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16771 */
29359 : rtx
29360 : gen_smulv8hi3_highpart_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29361 : {
29362 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29363 : start_sequence ();
29364 : {
29365 : #define FAIL return (end_sequence (), nullptr)
29366 : #define DONE return end_sequence ()
29367 : #line 16783 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29368 : ix86_fixup_binary_operands_no_copy (MULT, V8HImode, operands);
29369 : #undef DONE
29370 : #undef FAIL
29371 : }
29372 : static const uint8_t expand_encoding[] = {
29373 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x70,
29374 : 0x50, 0x50, 0x56, 0x3e, 0x56, 0x6e, 0x56, 0x01,
29375 : 0x01, 0x6e, 0x56, 0x01, 0x02, 0x27, 0x10, 0x01,
29376 : 0x03, 0x01, 0x04
29377 : };
29378 : return complete_seq (expand_encoding, operands);
29379 : }
29380 :
29381 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16966 */
29382 : rtx
29383 : gen_vec_widen_smult_even_v8si (const rtx operand0, const rtx operand1, const rtx operand2)
29384 : {
29385 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29386 : start_sequence ();
29387 : {
29388 : #define FAIL return (end_sequence (), nullptr)
29389 : #define DONE return end_sequence ()
29390 : #line 16980 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29391 : ix86_fixup_binary_operands_no_copy (MULT, V8SImode, operands);
29392 : #undef DONE
29393 : #undef FAIL
29394 : }
29395 : static const uint8_t expand_encoding[] = {
29396 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x57, 0x6e, 0x57,
29397 : 0x81, 0x0a, 0x51, 0x01, 0x01, 0x17, 0x00, 0x04,
29398 : 0x27, 0x00, 0x27, 0x02, 0x27, 0x04, 0x27, 0x06,
29399 : 0x6e, 0x57, 0x81, 0x0a, 0x51, 0x01, 0x02, 0x17,
29400 : 0x00, 0x04, 0x27, 0x00, 0x27, 0x02, 0x27, 0x04,
29401 : 0x27, 0x06
29402 : };
29403 : return complete_seq (expand_encoding, operands);
29404 : }
29405 :
29406 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17204 */
29407 : rtx
29408 : gen_avx512dq_mulv8di3 (const rtx operand0, const rtx operand1, const rtx operand2)
29409 : {
29410 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29411 : start_sequence ();
29412 : {
29413 : #define FAIL return (end_sequence (), nullptr)
29414 : #define DONE return end_sequence ()
29415 : #line 17210 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29416 : ix86_fixup_binary_operands_no_copy (MULT, V8DImode, operands);
29417 : #undef DONE
29418 : #undef FAIL
29419 : }
29420 : static const uint8_t expand_encoding[] = {
29421 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x5c, 0x01, 0x01,
29422 : 0x01, 0x02
29423 : };
29424 : return complete_seq (expand_encoding, operands);
29425 : }
29426 :
29427 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17231 */
29428 : rtx
29429 : gen_cond_mulv16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29430 : {
29431 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29432 : start_sequence ();
29433 : {
29434 : #define FAIL _Pragma ("GCC error \"cond_mulv16si cannot FAIL\"") (void)0
29435 : #define DONE return end_sequence ()
29436 : #line 17240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29437 : {
29438 : emit_insn (gen_mulv16si3_mask (operands[0],
29439 : operands[2],
29440 : operands[3],
29441 : operands[4],
29442 : operands[1]));
29443 : DONE;
29444 : }
29445 : #undef DONE
29446 : #undef FAIL
29447 : }
29448 : static const uint8_t expand_encoding[] = {
29449 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x3e,
29450 : 0x5b, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29451 : 0x01
29452 : };
29453 : return complete_seq (expand_encoding, operands);
29454 : }
29455 :
29456 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17290 */
29457 : rtx
29458 : gen_mulv4di3 (const rtx operand0, const rtx operand1, const rtx operand2)
29459 : {
29460 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29461 : start_sequence ();
29462 : {
29463 : #define FAIL return (end_sequence (), nullptr)
29464 : #define DONE return end_sequence ()
29465 : #line 17296 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29466 : {
29467 : ix86_expand_sse2_mulvxdi3 (operands[0], operands[1], operands[2]);
29468 : DONE;
29469 : }
29470 : #undef DONE
29471 : #undef FAIL
29472 : }
29473 : static const uint8_t expand_encoding[] = {
29474 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x57, 0x01, 0x01,
29475 : 0x01, 0x02
29476 : };
29477 : return complete_seq (expand_encoding, operands);
29478 : }
29479 :
29480 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17301 */
29481 : rtx
29482 : gen_vec_widen_umult_hi_v8hi (const rtx operand0, const rtx operand1, const rtx operand2)
29483 : {
29484 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29485 : start_sequence ();
29486 : {
29487 : #define FAIL return (end_sequence (), nullptr)
29488 : #define DONE return end_sequence ()
29489 : #line 17307 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29490 : {
29491 : ix86_expand_mul_widen_hilo (operands[0], operands[1], operands[2],
29492 : true, true);
29493 : DONE;
29494 : }
29495 : #undef DONE
29496 : #undef FAIL
29497 : }
29498 : static const uint8_t expand_encoding[] = {
29499 : 0x03, 0x01, 0x00, 0x6f, 0x51, 0x01, 0x01, 0x01,
29500 : 0x02
29501 : };
29502 : return complete_seq (expand_encoding, operands);
29503 : }
29504 :
29505 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17313 */
29506 : rtx
29507 : gen_vec_widen_umult_lo_v16hi (const rtx operand0, const rtx operand1, const rtx operand2)
29508 : {
29509 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29510 : start_sequence ();
29511 : {
29512 : #define FAIL return (end_sequence (), nullptr)
29513 : #define DONE return end_sequence ()
29514 : #line 17319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29515 : {
29516 : ix86_expand_mul_widen_hilo (operands[0], operands[1], operands[2],
29517 : true, false);
29518 : DONE;
29519 : }
29520 : #undef DONE
29521 : #undef FAIL
29522 : }
29523 : static const uint8_t expand_encoding[] = {
29524 : 0x03, 0x01, 0x00, 0x6f, 0x56, 0x01, 0x01, 0x01,
29525 : 0x02
29526 : };
29527 : return complete_seq (expand_encoding, operands);
29528 : }
29529 :
29530 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17338 */
29531 : rtx
29532 : gen_vec_widen_smult_odd_v8si (const rtx operand0, const rtx operand1, const rtx operand2)
29533 : {
29534 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29535 : start_sequence ();
29536 : {
29537 : #define FAIL return (end_sequence (), nullptr)
29538 : #define DONE return end_sequence ()
29539 : #line 17344 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29540 : {
29541 : ix86_expand_mul_widen_evenodd (operands[0], operands[1], operands[2],
29542 : false, true);
29543 : DONE;
29544 : }
29545 : #undef DONE
29546 : #undef FAIL
29547 : }
29548 : static const uint8_t expand_encoding[] = {
29549 : 0x03, 0x01, 0x00, 0x6e, 0x57, 0x01, 0x01, 0x01,
29550 : 0x02
29551 : };
29552 : return complete_seq (expand_encoding, operands);
29553 : }
29554 :
29555 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17404 */
29556 : rtx
29557 : gen_uavgv16qi3_ceil (const rtx operand0, const rtx operand1, const rtx operand2)
29558 : {
29559 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29560 : start_sequence ();
29561 : {
29562 : #define FAIL return (end_sequence (), nullptr)
29563 : #define DONE return end_sequence ()
29564 : #line 17417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29565 : {
29566 : operands[3] = CONST1_RTX(V16HImode);
29567 : ix86_fixup_binary_operands_no_copy (PLUS, V16QImode, operands);
29568 : }
29569 : #undef DONE
29570 : #undef FAIL
29571 : }
29572 : static const uint8_t expand_encoding[] = {
29573 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x4f, 0x50, 0x55,
29574 : 0x3b, 0x55, 0x3b, 0x55, 0x6f, 0x55, 0x01, 0x01,
29575 : 0x6f, 0x55, 0x01, 0x02, 0x01, 0x03, 0x27, 0x01
29576 : };
29577 : return complete_seq (expand_encoding, operands);
29578 : }
29579 :
29580 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17500 */
29581 : extern rtx_insn *gen_split_3296 (rtx_insn *, rtx *);
29582 : rtx_insn *
29583 : gen_split_3296 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29584 : {
29585 : if (dump_file)
29586 : fprintf (dump_file, "Splitting with gen_split_3296 (sse.md:17500)\n");
29587 : start_sequence ();
29588 : #define FAIL return (end_sequence (), nullptr)
29589 : #define DONE return end_sequence ()
29590 : #line 17509 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29591 : operands[3] = gen_int_mode (16 - 1, DImode);
29592 : #undef DONE
29593 : #undef FAIL
29594 : static const uint8_t expand_encoding[] = {
29595 : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x55, 0x01, 0x01,
29596 : 0x01, 0x03
29597 : };
29598 : return complete_seq (expand_encoding, operands);
29599 : }
29600 :
29601 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17525 */
29602 : extern rtx_insn *gen_split_3304 (rtx_insn *, rtx *);
29603 : rtx_insn *
29604 : gen_split_3304 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29605 : {
29606 : if (dump_file)
29607 : fprintf (dump_file, "Splitting with gen_split_3304 (sse.md:17525)\n");
29608 : start_sequence ();
29609 : #define FAIL return (end_sequence (), nullptr)
29610 : #define DONE return end_sequence ()
29611 : #line 17540 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29612 : operands[5] = gen_int_mode (32 - 1, DImode);
29613 : #undef DONE
29614 : #undef FAIL
29615 : static const uint8_t expand_encoding[] = {
29616 : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x56, 0x01, 0x03,
29617 : 0x01, 0x05
29618 : };
29619 : return complete_seq (expand_encoding, operands);
29620 : }
29621 :
29622 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17725 */
29623 : extern rtx_insn *gen_split_3313 (rtx_insn *, rtx *);
29624 : rtx_insn *
29625 : gen_split_3313 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29626 : {
29627 : if (dump_file)
29628 : fprintf (dump_file, "Splitting with gen_split_3313 (sse.md:17725)\n");
29629 : start_sequence ();
29630 : #define FAIL return (end_sequence (), nullptr)
29631 : #define DONE return end_sequence ()
29632 : #line 17734 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29633 : operands[4] = gen_int_mode (16 - 1, DImode);
29634 : #undef DONE
29635 : #undef FAIL
29636 : static const uint8_t expand_encoding[] = {
29637 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x55, 0x01, 0x01,
29638 : 0x01, 0x04
29639 : };
29640 : return complete_seq (expand_encoding, operands);
29641 : }
29642 :
29643 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17736 */
29644 : extern rtx_insn *gen_split_3321 (rtx_insn *, rtx *);
29645 : rtx_insn *
29646 : gen_split_3321 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29647 : {
29648 : if (dump_file)
29649 : fprintf (dump_file, "Splitting with gen_split_3321 (sse.md:17736)\n");
29650 : start_sequence ();
29651 : #define FAIL return (end_sequence (), nullptr)
29652 : #define DONE return end_sequence ()
29653 : #line 17749 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29654 : operands[5] = gen_int_mode (16 - 1, DImode);
29655 : #undef DONE
29656 : #undef FAIL
29657 : static const uint8_t expand_encoding[] = {
29658 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x50, 0x01, 0x03,
29659 : 0x01, 0x05
29660 : };
29661 : return complete_seq (expand_encoding, operands);
29662 : }
29663 :
29664 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17767 */
29665 : extern rtx_insn *gen_split_3330 (rtx_insn *, rtx *);
29666 : rtx_insn *
29667 : gen_split_3330 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29668 : {
29669 : if (dump_file)
29670 : fprintf (dump_file, "Splitting with gen_split_3330 (sse.md:17767)\n");
29671 : start_sequence ();
29672 : #define FAIL return (end_sequence (), nullptr)
29673 : #define DONE return end_sequence ()
29674 : #line 17778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29675 : operands[3] = XVECEXP (operands[2], 0, 0);
29676 : #undef DONE
29677 : #undef FAIL
29678 : static const uint8_t expand_encoding[] = {
29679 : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x5a, 0x01, 0x01,
29680 : 0x01, 0x03
29681 : };
29682 : return complete_seq (expand_encoding, operands);
29683 : }
29684 :
29685 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17780 */
29686 : rtx
29687 : gen_vec_shl_v8hf (const rtx operand0, const rtx operand1, const rtx operand2)
29688 : {
29689 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29690 : start_sequence ();
29691 : {
29692 : #define FAIL return (end_sequence (), nullptr)
29693 : #define DONE return end_sequence ()
29694 : #line 17786 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29695 : {
29696 : rtx op0 = gen_reg_rtx (V1TImode);
29697 : rtx op1 = force_reg (V8HFmode, operands[1]);
29698 :
29699 : emit_insn (gen_sse2_ashlv1ti3
29700 : (op0, gen_lowpart (V1TImode, op1), operands[2]));
29701 : emit_move_insn (operands[0], gen_lowpart (V8HFmode, op0));
29702 : DONE;
29703 : }
29704 : #undef DONE
29705 : #undef FAIL
29706 : }
29707 : static const uint8_t expand_encoding[] = {
29708 : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x53, 0x01, 0x01,
29709 : 0x01, 0x02
29710 : };
29711 : return complete_seq (expand_encoding, operands);
29712 : }
29713 :
29714 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17796 */
29715 : rtx
29716 : gen_vec_shr_v8bf (const rtx operand0, const rtx operand1, const rtx operand2)
29717 : {
29718 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29719 : start_sequence ();
29720 : {
29721 : #define FAIL return (end_sequence (), nullptr)
29722 : #define DONE return end_sequence ()
29723 : #line 17802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29724 : {
29725 : rtx op0 = gen_reg_rtx (V1TImode);
29726 : rtx op1 = force_reg (V8BFmode, operands[1]);
29727 :
29728 : emit_insn (gen_sse2_lshrv1ti3
29729 : (op0, gen_lowpart (V1TImode, op1), operands[2]));
29730 : emit_move_insn (operands[0], gen_lowpart (V8BFmode, op0));
29731 : DONE;
29732 : }
29733 : #undef DONE
29734 : #undef FAIL
29735 : }
29736 : static const uint8_t expand_encoding[] = {
29737 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x53, 0x01, 0x01,
29738 : 0x01, 0x02
29739 : };
29740 : return complete_seq (expand_encoding, operands);
29741 : }
29742 :
29743 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17900 */
29744 : extern rtx_insn *gen_split_3340 (rtx_insn *, rtx *);
29745 : rtx_insn *
29746 : gen_split_3340 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29747 : {
29748 : if (dump_file)
29749 : fprintf (dump_file, "Splitting with gen_split_3340 (sse.md:17900)\n");
29750 : start_sequence ();
29751 : static const uint8_t expand_encoding[] = {
29752 : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x55, 0x01, 0x01,
29753 : 0x01, 0x02
29754 : };
29755 : return complete_seq (expand_encoding, operands);
29756 : }
29757 :
29758 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17941 */
29759 : rtx
29760 : gen_rotrv1ti3 (const rtx operand0, const rtx operand1, const rtx operand2)
29761 : {
29762 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29763 : start_sequence ();
29764 : {
29765 : #define FAIL return (end_sequence (), nullptr)
29766 : #define DONE return end_sequence ()
29767 : #line 17947 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29768 : {
29769 : if (!CONST_INT_P (operands[2]))
29770 : {
29771 : ix86_expand_v1ti_rotate (ROTATERT, operands);
29772 : DONE;
29773 : }
29774 : }
29775 : #undef DONE
29776 : #undef FAIL
29777 : }
29778 : static const uint8_t expand_encoding[] = {
29779 : 0x01, 0x1f, 0x01, 0x00, 0x51, 0x53, 0x01, 0x01,
29780 : 0x01, 0x02
29781 : };
29782 : return complete_seq (expand_encoding, operands);
29783 : }
29784 :
29785 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18032 */
29786 : rtx
29787 : gen_umaxv8si3 (const rtx operand0, const rtx operand1, const rtx operand2)
29788 : {
29789 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29790 : start_sequence ();
29791 : {
29792 : #define FAIL return (end_sequence (), nullptr)
29793 : #define DONE return end_sequence ()
29794 : #line 18038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29795 : ix86_fixup_binary_operands_no_copy (UMAX, V8SImode, operands);
29796 : #undef DONE
29797 : #undef FAIL
29798 : }
29799 : static const uint8_t expand_encoding[] = {
29800 : 0x01, 0x1f, 0x01, 0x00, 0x55, 0x56, 0x01, 0x01,
29801 : 0x01, 0x02
29802 : };
29803 : return complete_seq (expand_encoding, operands);
29804 : }
29805 :
29806 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18032 */
29807 : rtx
29808 : gen_smaxv16si3 (const rtx operand0, const rtx operand1, const rtx operand2)
29809 : {
29810 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29811 : start_sequence ();
29812 : {
29813 : #define FAIL return (end_sequence (), nullptr)
29814 : #define DONE return end_sequence ()
29815 : #line 18038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29816 : ix86_fixup_binary_operands_no_copy (SMAX, V16SImode, operands);
29817 : #undef DONE
29818 : #undef FAIL
29819 : }
29820 : static const uint8_t expand_encoding[] = {
29821 : 0x01, 0x1f, 0x01, 0x00, 0x53, 0x5b, 0x01, 0x01,
29822 : 0x01, 0x02
29823 : };
29824 : return complete_seq (expand_encoding, operands);
29825 : }
29826 :
29827 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18053 */
29828 : rtx
29829 : gen_cond_umaxv32qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29830 : {
29831 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29832 : start_sequence ();
29833 : {
29834 : #define FAIL return (end_sequence (), nullptr)
29835 : #define DONE return end_sequence ()
29836 : #line 18062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29837 : {
29838 : emit_insn (gen_umaxv32qi3_mask (operands[0],
29839 : operands[2],
29840 : operands[3],
29841 : operands[4],
29842 : operands[1]));
29843 : DONE;
29844 : }
29845 : #undef DONE
29846 : #undef FAIL
29847 : }
29848 : static const uint8_t expand_encoding[] = {
29849 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x55,
29850 : 0x54, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29851 : 0x01
29852 : };
29853 : return complete_seq (expand_encoding, operands);
29854 : }
29855 :
29856 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18053 */
29857 : rtx
29858 : gen_cond_smaxv16hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29859 : {
29860 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29861 : start_sequence ();
29862 : {
29863 : #define FAIL return (end_sequence (), nullptr)
29864 : #define DONE return end_sequence ()
29865 : #line 18062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29866 : {
29867 : emit_insn (gen_smaxv16hi3_mask (operands[0],
29868 : operands[2],
29869 : operands[3],
29870 : operands[4],
29871 : operands[1]));
29872 : DONE;
29873 : }
29874 : #undef DONE
29875 : #undef FAIL
29876 : }
29877 : static const uint8_t expand_encoding[] = {
29878 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x53,
29879 : 0x55, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29880 : 0x01
29881 : };
29882 : return complete_seq (expand_encoding, operands);
29883 : }
29884 :
29885 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18053 */
29886 : rtx
29887 : gen_cond_umaxv16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29888 : {
29889 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29890 : start_sequence ();
29891 : {
29892 : #define FAIL return (end_sequence (), nullptr)
29893 : #define DONE return end_sequence ()
29894 : #line 18062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29895 : {
29896 : emit_insn (gen_umaxv16si3_mask (operands[0],
29897 : operands[2],
29898 : operands[3],
29899 : operands[4],
29900 : operands[1]));
29901 : DONE;
29902 : }
29903 : #undef DONE
29904 : #undef FAIL
29905 : }
29906 : static const uint8_t expand_encoding[] = {
29907 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x55,
29908 : 0x5b, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29909 : 0x01
29910 : };
29911 : return complete_seq (expand_encoding, operands);
29912 : }
29913 :
29914 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18053 */
29915 : rtx
29916 : gen_cond_smaxv8di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29917 : {
29918 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29919 : start_sequence ();
29920 : {
29921 : #define FAIL return (end_sequence (), nullptr)
29922 : #define DONE return end_sequence ()
29923 : #line 18062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29924 : {
29925 : emit_insn (gen_smaxv8di3_mask (operands[0],
29926 : operands[2],
29927 : operands[3],
29928 : operands[4],
29929 : operands[1]));
29930 : DONE;
29931 : }
29932 : #undef DONE
29933 : #undef FAIL
29934 : }
29935 : static const uint8_t expand_encoding[] = {
29936 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x53,
29937 : 0x5c, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29938 : 0x01
29939 : };
29940 : return complete_seq (expand_encoding, operands);
29941 : }
29942 :
29943 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18053 */
29944 : rtx
29945 : gen_cond_umaxv2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29946 : {
29947 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29948 : start_sequence ();
29949 : {
29950 : #define FAIL return (end_sequence (), nullptr)
29951 : #define DONE return end_sequence ()
29952 : #line 18062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29953 : {
29954 : emit_insn (gen_umaxv2di3_mask (operands[0],
29955 : operands[2],
29956 : operands[3],
29957 : operands[4],
29958 : operands[1]));
29959 : DONE;
29960 : }
29961 : #undef DONE
29962 : #undef FAIL
29963 : }
29964 : static const uint8_t expand_encoding[] = {
29965 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x55,
29966 : 0x52, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29967 : 0x01
29968 : };
29969 : return complete_seq (expand_encoding, operands);
29970 : }
29971 :
29972 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18071 */
29973 : rtx
29974 : gen_umaxv16qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29975 : {
29976 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29977 : start_sequence ();
29978 : {
29979 : #define FAIL return (end_sequence (), nullptr)
29980 : #define DONE return end_sequence ()
29981 : #line 18080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29982 : ix86_fixup_binary_operands_no_copy (UMAX, V16QImode, operands);
29983 : #undef DONE
29984 : #undef FAIL
29985 : }
29986 : static const uint8_t expand_encoding[] = {
29987 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x55,
29988 : 0x4f, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29989 : 0x04
29990 : };
29991 : return complete_seq (expand_encoding, operands);
29992 : }
29993 :
29994 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18071 */
29995 : rtx
29996 : gen_smaxv8hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29997 : {
29998 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29999 : start_sequence ();
30000 : {
30001 : #define FAIL return (end_sequence (), nullptr)
30002 : #define DONE return end_sequence ()
30003 : #line 18080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30004 : ix86_fixup_binary_operands_no_copy (SMAX, V8HImode, operands);
30005 : #undef DONE
30006 : #undef FAIL
30007 : }
30008 : static const uint8_t expand_encoding[] = {
30009 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x53,
30010 : 0x50, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30011 : 0x04
30012 : };
30013 : return complete_seq (expand_encoding, operands);
30014 : }
30015 :
30016 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18071 */
30017 : rtx
30018 : gen_umaxv8si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30019 : {
30020 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30021 : start_sequence ();
30022 : {
30023 : #define FAIL return (end_sequence (), nullptr)
30024 : #define DONE return end_sequence ()
30025 : #line 18080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30026 : ix86_fixup_binary_operands_no_copy (UMAX, V8SImode, operands);
30027 : #undef DONE
30028 : #undef FAIL
30029 : }
30030 : static const uint8_t expand_encoding[] = {
30031 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x55,
30032 : 0x56, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30033 : 0x04
30034 : };
30035 : return complete_seq (expand_encoding, operands);
30036 : }
30037 :
30038 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18071 */
30039 : rtx
30040 : gen_smaxv4di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30041 : {
30042 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30043 : start_sequence ();
30044 : {
30045 : #define FAIL return (end_sequence (), nullptr)
30046 : #define DONE return end_sequence ()
30047 : #line 18080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30048 : ix86_fixup_binary_operands_no_copy (SMAX, V4DImode, operands);
30049 : #undef DONE
30050 : #undef FAIL
30051 : }
30052 : static const uint8_t expand_encoding[] = {
30053 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x53,
30054 : 0x57, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30055 : 0x04
30056 : };
30057 : return complete_seq (expand_encoding, operands);
30058 : }
30059 :
30060 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18106 */
30061 : rtx
30062 : gen_umaxv8di3 (const rtx operand0, const rtx operand1, const rtx operand2)
30063 : {
30064 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30065 : start_sequence ();
30066 : {
30067 : #define FAIL return (end_sequence (), nullptr)
30068 : #define DONE return end_sequence ()
30069 : #line 18112 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30070 : {
30071 : if (TARGET_AVX512F
30072 : && (V8DImode == V8DImode || TARGET_AVX512VL))
30073 : ;
30074 : else
30075 : {
30076 : enum rtx_code code;
30077 : rtx xops[6];
30078 : bool ok;
30079 :
30080 :
30081 : xops[0] = operands[0];
30082 :
30083 : if (UMAX == SMAX || UMAX == UMAX)
30084 : {
30085 : xops[1] = operands[1];
30086 : xops[2] = operands[2];
30087 : }
30088 : else
30089 : {
30090 : xops[1] = operands[2];
30091 : xops[2] = operands[1];
30092 : }
30093 :
30094 : code = (UMAX == UMAX || UMAX == UMIN) ? GTU : GT;
30095 :
30096 : xops[3] = gen_rtx_fmt_ee (code, VOIDmode, operands[1], operands[2]);
30097 : xops[4] = operands[1];
30098 : xops[5] = operands[2];
30099 :
30100 : ok = ix86_expand_int_vcond (xops);
30101 : gcc_assert (ok);
30102 : DONE;
30103 : }
30104 : }
30105 : #undef DONE
30106 : #undef FAIL
30107 : }
30108 : static const uint8_t expand_encoding[] = {
30109 : 0x01, 0x1f, 0x01, 0x00, 0x55, 0x5c, 0x01, 0x01,
30110 : 0x01, 0x02
30111 : };
30112 : return complete_seq (expand_encoding, operands);
30113 : }
30114 :
30115 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18148 */
30116 : rtx
30117 : gen_smaxv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30118 : {
30119 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30120 : start_sequence ();
30121 : {
30122 : #define FAIL return (end_sequence (), nullptr)
30123 : #define DONE return end_sequence ()
30124 : #line 18154 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30125 : {
30126 : if (TARGET_SSE4_1 || V16QImode == V8HImode)
30127 : ix86_fixup_binary_operands_no_copy (SMAX, V16QImode, operands);
30128 : else
30129 : {
30130 : rtx xops[6];
30131 : bool ok;
30132 :
30133 : xops[0] = operands[0];
30134 : operands[1] = force_reg (V16QImode, operands[1]);
30135 : operands[2] = force_reg (V16QImode, operands[2]);
30136 :
30137 : if (SMAX == SMAX)
30138 : {
30139 : xops[1] = operands[1];
30140 : xops[2] = operands[2];
30141 : }
30142 : else
30143 : {
30144 : xops[1] = operands[2];
30145 : xops[2] = operands[1];
30146 : }
30147 :
30148 : xops[3] = gen_rtx_GT (VOIDmode, operands[1], operands[2]);
30149 : xops[4] = operands[1];
30150 : xops[5] = operands[2];
30151 :
30152 : ok = ix86_expand_int_vcond (xops);
30153 : gcc_assert (ok);
30154 : DONE;
30155 : }
30156 : }
30157 : #undef DONE
30158 : #undef FAIL
30159 : }
30160 : static const uint8_t expand_encoding[] = {
30161 : 0x01, 0x1f, 0x01, 0x00, 0x53, 0x4f, 0x01, 0x01,
30162 : 0x01, 0x02
30163 : };
30164 : return complete_seq (expand_encoding, operands);
30165 : }
30166 :
30167 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18223 */
30168 : rtx
30169 : gen_umaxv4si3 (const rtx operand0, const rtx operand1, const rtx operand2)
30170 : {
30171 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30172 : start_sequence ();
30173 : {
30174 : #define FAIL return (end_sequence (), nullptr)
30175 : #define DONE return end_sequence ()
30176 : #line 18229 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30177 : {
30178 : if (TARGET_SSE4_1 || V4SImode == V16QImode)
30179 : ix86_fixup_binary_operands_no_copy (UMAX, V4SImode, operands);
30180 : else if (UMAX == UMAX && V4SImode == V8HImode)
30181 : {
30182 : rtx op0 = operands[0], op2 = operands[2], op3 = op0;
30183 : operands[1] = force_reg (V4SImode, operands[1]);
30184 : if (rtx_equal_p (op3, op2))
30185 : op3 = gen_reg_rtx (V8HImode);
30186 : emit_insn (gen_ussubv8hi3 (op3, operands[1], op2));
30187 : emit_insn (gen_addv8hi3 (op0, op3, op2));
30188 : DONE;
30189 : }
30190 : else
30191 : {
30192 : rtx xops[6];
30193 : bool ok;
30194 :
30195 : operands[1] = force_reg (V4SImode, operands[1]);
30196 : operands[2] = force_reg (V4SImode, operands[2]);
30197 :
30198 : xops[0] = operands[0];
30199 :
30200 : if (UMAX == UMAX)
30201 : {
30202 : xops[1] = operands[1];
30203 : xops[2] = operands[2];
30204 : }
30205 : else
30206 : {
30207 : xops[1] = operands[2];
30208 : xops[2] = operands[1];
30209 : }
30210 :
30211 : xops[3] = gen_rtx_GTU (VOIDmode, operands[1], operands[2]);
30212 : xops[4] = operands[1];
30213 : xops[5] = operands[2];
30214 :
30215 : ok = ix86_expand_int_vcond (xops);
30216 : gcc_assert (ok);
30217 : DONE;
30218 : }
30219 : }
30220 : #undef DONE
30221 : #undef FAIL
30222 : }
30223 : static const uint8_t expand_encoding[] = {
30224 : 0x01, 0x1f, 0x01, 0x00, 0x55, 0x51, 0x01, 0x01,
30225 : 0x01, 0x02
30226 : };
30227 : return complete_seq (expand_encoding, operands);
30228 : }
30229 :
30230 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18349 */
30231 : extern rtx_insn *gen_split_3360 (rtx_insn *, rtx *);
30232 : rtx_insn *
30233 : gen_split_3360 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30234 : {
30235 : if (dump_file)
30236 : fprintf (dump_file, "Splitting with gen_split_3360 (sse.md:18349)\n");
30237 : start_sequence ();
30238 : #define FAIL return (end_sequence (), nullptr)
30239 : #define DONE return end_sequence ()
30240 : #line 18372 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30241 : {
30242 : if (INTVAL (operands[5]) == 1)
30243 : std::swap (operands[3], operands[4]);
30244 :
30245 : if (operands[3] == CONST0_RTX (V32QImode))
30246 : operands[3] = force_reg (V32QImode, operands[3]);
30247 : if (operands[4] == CONST0_RTX (V32QImode))
30248 : operands[4] = force_reg (V32QImode, operands[4]);
30249 :
30250 : enum rtx_code code = INTVAL (operands[5]) ? GT : EQ;
30251 : emit_move_insn (operands[0], gen_rtx_fmt_ee (code, V32QImode,
30252 : operands[3], operands[4]));
30253 : DONE;
30254 : }
30255 : #undef DONE
30256 : #undef FAIL
30257 : static const uint8_t expand_encoding[] = {
30258 : 0x01, 0x27, 0x00
30259 : };
30260 : return complete_seq (expand_encoding, operands);
30261 : }
30262 :
30263 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18387 */
30264 : extern rtx_insn *gen_split_3370 (rtx_insn *, rtx *);
30265 : rtx_insn *
30266 : gen_split_3370 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30267 : {
30268 : if (dump_file)
30269 : fprintf (dump_file, "Splitting with gen_split_3370 (sse.md:18387)\n");
30270 : start_sequence ();
30271 : #define FAIL return (end_sequence (), nullptr)
30272 : #define DONE return end_sequence ()
30273 : #line 18411 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30274 : {
30275 : if (INTVAL (operands[5]) == 5)
30276 : std::swap (operands[3], operands[4]);
30277 : enum rtx_code code = INTVAL (operands[5]) != 4 ? GT : EQ;
30278 : emit_move_insn (operands[0], gen_rtx_fmt_ee (code, V8SImode,
30279 : operands[3], operands[4]));
30280 : DONE;
30281 : }
30282 : #undef DONE
30283 : #undef FAIL
30284 : static const uint8_t expand_encoding[] = {
30285 : 0x01, 0x27, 0x00
30286 : };
30287 : return complete_seq (expand_encoding, operands);
30288 : }
30289 :
30290 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18513 */
30291 : extern rtx_insn *gen_split_3382 (rtx_insn *, rtx *);
30292 : rtx_insn *
30293 : gen_split_3382 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30294 : {
30295 : if (dump_file)
30296 : fprintf (dump_file, "Splitting with gen_split_3382 (sse.md:18513)\n");
30297 : start_sequence ();
30298 : #define FAIL return (end_sequence (), nullptr)
30299 : #define DONE return end_sequence ()
30300 : #line 18528 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30301 : {
30302 : rtx dst_min = gen_reg_rtx (V4SImode);
30303 :
30304 : if (MEM_P (operands[3]) && MEM_P (operands[4]))
30305 : operands[3] = force_reg (V4SImode, operands[3]);
30306 : emit_insn (gen_sminv4si3 (dst_min, operands[3], operands[4]));
30307 : rtx eq_op = INTVAL (operands[5]) == 2 ? operands[3] : operands[4];
30308 : emit_move_insn (operands[0], gen_rtx_EQ (V4SImode, eq_op, dst_min));
30309 : DONE;
30310 : }
30311 : #undef DONE
30312 : #undef FAIL
30313 : static const uint8_t expand_encoding[] = {
30314 : 0x01, 0x27, 0x00
30315 : };
30316 : return complete_seq (expand_encoding, operands);
30317 : }
30318 :
30319 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18513 */
30320 : extern rtx_insn *gen_split_3392 (rtx_insn *, rtx *);
30321 : rtx_insn *
30322 : gen_split_3392 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30323 : {
30324 : if (dump_file)
30325 : fprintf (dump_file, "Splitting with gen_split_3392 (sse.md:18513)\n");
30326 : start_sequence ();
30327 : #define FAIL return (end_sequence (), nullptr)
30328 : #define DONE return end_sequence ()
30329 : #line 18528 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30330 : {
30331 : rtx dst_min = gen_reg_rtx (V4DImode);
30332 :
30333 : if (MEM_P (operands[3]) && MEM_P (operands[4]))
30334 : operands[3] = force_reg (V4DImode, operands[3]);
30335 : emit_insn (gen_sminv4di3 (dst_min, operands[3], operands[4]));
30336 : rtx eq_op = INTVAL (operands[5]) == 2 ? operands[3] : operands[4];
30337 : emit_move_insn (operands[0], gen_rtx_EQ (V4DImode, eq_op, dst_min));
30338 : DONE;
30339 : }
30340 : #undef DONE
30341 : #undef FAIL
30342 : static const uint8_t expand_encoding[] = {
30343 : 0x01, 0x27, 0x00
30344 : };
30345 : return complete_seq (expand_encoding, operands);
30346 : }
30347 :
30348 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18571 */
30349 : extern rtx_insn *gen_split_3404 (rtx_insn *, rtx *);
30350 : rtx_insn *
30351 : gen_split_3404 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30352 : {
30353 : if (dump_file)
30354 : fprintf (dump_file, "Splitting with gen_split_3404 (sse.md:18571)\n");
30355 : start_sequence ();
30356 : #define FAIL return (end_sequence (), nullptr)
30357 : #define DONE return end_sequence ()
30358 : #line 18588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30359 : {
30360 : if (MEM_P (operands[3]))
30361 : operands[3] = force_reg (V4SImode, operands[3]);
30362 : emit_move_insn (operands[0], gen_rtx_fmt_ee (EQ, V4SImode,
30363 : operands[3], operands[4]));
30364 : DONE;
30365 : }
30366 : #undef DONE
30367 : #undef FAIL
30368 : static const uint8_t expand_encoding[] = {
30369 : 0x01, 0x27, 0x00
30370 : };
30371 : return complete_seq (expand_encoding, operands);
30372 : }
30373 :
30374 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18596 */
30375 : rtx
30376 : gen_avx512bw_eqv64qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30377 : {
30378 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30379 : start_sequence ();
30380 : {
30381 : #define FAIL return (end_sequence (), nullptr)
30382 : #define DONE return end_sequence ()
30383 : #line 18604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30384 : ix86_fixup_binary_operands_no_copy (EQ, V64QImode, operands);
30385 : #undef DONE
30386 : #undef FAIL
30387 : }
30388 : static const uint8_t expand_encoding[] = {
30389 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x03, 0x01,
30390 : 0x01, 0x01, 0x02, 0x27, 0x00, 0x3c
30391 : };
30392 : return complete_seq (expand_encoding, operands);
30393 : }
30394 :
30395 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18596 */
30396 : rtx
30397 : gen_avx512vl_eqv16hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30398 : {
30399 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30400 : start_sequence ();
30401 : {
30402 : #define FAIL return (end_sequence (), nullptr)
30403 : #define DONE return end_sequence ()
30404 : #line 18604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30405 : ix86_fixup_binary_operands_no_copy (EQ, V16HImode, operands);
30406 : #undef DONE
30407 : #undef FAIL
30408 : }
30409 : static const uint8_t expand_encoding[] = {
30410 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x03, 0x01,
30411 : 0x01, 0x01, 0x02, 0x27, 0x00, 0x3c
30412 : };
30413 : return complete_seq (expand_encoding, operands);
30414 : }
30415 :
30416 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18606 */
30417 : rtx
30418 : gen_avx512f_eqv8di3 (const rtx operand0, const rtx operand1, const rtx operand2)
30419 : {
30420 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30421 : start_sequence ();
30422 : {
30423 : #define FAIL return (end_sequence (), nullptr)
30424 : #define DONE return end_sequence ()
30425 : #line 18614 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30426 : ix86_fixup_binary_operands_no_copy (EQ, V8DImode, operands);
30427 : #undef DONE
30428 : #undef FAIL
30429 : }
30430 : static const uint8_t expand_encoding[] = {
30431 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01,
30432 : 0x01, 0x01, 0x02, 0x27, 0x00, 0x3c
30433 : };
30434 : return complete_seq (expand_encoding, operands);
30435 : }
30436 :
30437 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18682 */
30438 : rtx
30439 : gen_avx512vl_gtv4si3 (const rtx operand0, const rtx operand1, const rtx operand2)
30440 : {
30441 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30442 : static const uint8_t expand_encoding[] = {
30443 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01, 0x01,
30444 : 0x01, 0x02, 0x27, 0x06, 0x3c
30445 : };
30446 : return expand_rtx (expand_encoding, operands);
30447 : }
30448 :
30449 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18690 */
30450 : rtx
30451 : gen_avx512vl_gtv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30452 : {
30453 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30454 : static const uint8_t expand_encoding[] = {
30455 : 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x03, 0x01, 0x01,
30456 : 0x01, 0x02, 0x27, 0x06, 0x3c
30457 : };
30458 : return expand_rtx (expand_encoding, operands);
30459 : }
30460 :
30461 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18690 */
30462 : rtx
30463 : gen_avx512vl_gtv8hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30464 : {
30465 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30466 : static const uint8_t expand_encoding[] = {
30467 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x03,
30468 : 0x01, 0x01, 0x01, 0x02, 0x27, 0x06, 0x3c, 0x01,
30469 : 0x03
30470 : };
30471 : return expand_rtx (expand_encoding, operands);
30472 : }
30473 :
30474 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18725 */
30475 : rtx
30476 : gen_vec_permv8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30477 : {
30478 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30479 : start_sequence ();
30480 : {
30481 : #define FAIL return (end_sequence (), nullptr)
30482 : #define DONE return end_sequence ()
30483 : #line 18731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30484 : {
30485 : ix86_expand_vec_perm (operands);
30486 : DONE;
30487 : }
30488 : #undef DONE
30489 : #undef FAIL
30490 : }
30491 : static const uint8_t expand_encoding[] = {
30492 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
30493 : 0x03
30494 : };
30495 : return complete_seq (expand_encoding, operands);
30496 : }
30497 :
30498 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18725 */
30499 : rtx
30500 : gen_vec_permv64qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30501 : {
30502 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30503 : start_sequence ();
30504 : {
30505 : #define FAIL return (end_sequence (), nullptr)
30506 : #define DONE return end_sequence ()
30507 : #line 18731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30508 : {
30509 : ix86_expand_vec_perm (operands);
30510 : DONE;
30511 : }
30512 : #undef DONE
30513 : #undef FAIL
30514 : }
30515 : static const uint8_t expand_encoding[] = {
30516 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
30517 : 0x03
30518 : };
30519 : return complete_seq (expand_encoding, operands);
30520 : }
30521 :
30522 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18742 */
30523 : rtx
30524 : gen_one_cmplv8si2 (const rtx operand0, const rtx operand1)
30525 : {
30526 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
30527 : start_sequence ();
30528 : {
30529 : #define FAIL return (end_sequence (), nullptr)
30530 : #define DONE return end_sequence ()
30531 : #line 18747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30532 : {
30533 : operands[2] = CONSTM1_RTX (V8SImode);
30534 :
30535 : if (!TARGET_AVX512F)
30536 : operands[2] = force_reg (V8SImode, operands[2]);
30537 : }
30538 : #undef DONE
30539 : #undef FAIL
30540 : }
30541 : static const uint8_t expand_encoding[] = {
30542 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x56, 0x01, 0x01,
30543 : 0x01, 0x02
30544 : };
30545 : return complete_seq (expand_encoding, operands);
30546 : }
30547 :
30548 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18754 */
30549 : extern rtx_insn *gen_split_3416 (rtx_insn *, rtx *);
30550 : rtx_insn *
30551 : gen_split_3416 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30552 : {
30553 : if (dump_file)
30554 : fprintf (dump_file, "Splitting with gen_split_3416 (sse.md:18754)\n");
30555 : start_sequence ();
30556 : #define FAIL return (end_sequence (), nullptr)
30557 : #define DONE return end_sequence ()
30558 : #line 18775 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30559 : {
30560 : if (MEM_P (operands[1]))
30561 : {
30562 : operands[3] = operands[1];
30563 : operands[1] = operands[0];
30564 : }
30565 : else
30566 : {
30567 : if (GET_MODE_SIZE (HImode) < 4)
30568 : {
30569 : if (32 == 64 ? TARGET_AVX512BW
30570 : : (TARGET_AVX512BW && TARGET_AVX512VL)
30571 : || !EXT_REX_SSE_REG_P (operands[0]))
30572 : {
30573 : operands[3] = operands[1];
30574 : operands[1] = operands[0];
30575 : }
30576 : else
30577 : operands[3] = CONST0_RTX (V16HImode);
30578 : }
30579 : else
30580 : {
30581 : if (32 == 64 || TARGET_AVX512VL
30582 : || !EXT_REX_SSE_REG_P (operands[0]))
30583 : {
30584 : operands[3] = operands[1];
30585 : operands[1] = operands[0];
30586 : }
30587 : else
30588 : operands[3] = CONST0_RTX (V16HImode);
30589 : }
30590 : }
30591 : }
30592 : #undef DONE
30593 : #undef FAIL
30594 : static const uint8_t expand_encoding[] = {
30595 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x03, 0x17, 0x00,
30596 : 0x02, 0x1f, 0x01, 0x00, 0x4b, 0x55, 0x01, 0x01,
30597 : 0x01, 0x02, 0x1a, 0x00, 0x01, 0x01, 0x00, 0x27
30598 : };
30599 : return complete_seq (expand_encoding, operands);
30600 : }
30601 :
30602 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18843 */
30603 : extern rtx_insn *gen_split_3426 (rtx_insn *, rtx *);
30604 : rtx_insn *
30605 : gen_split_3426 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30606 : {
30607 : if (dump_file)
30608 : fprintf (dump_file, "Splitting with gen_split_3426 (sse.md:18843)\n");
30609 : start_sequence ();
30610 : #define FAIL return (end_sequence (), nullptr)
30611 : #define DONE return end_sequence ()
30612 : #line 18854 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30613 : operands[2] = CONSTM1_RTX (V4DImode);
30614 : #undef DONE
30615 : #undef FAIL
30616 : static const uint8_t expand_encoding[] = {
30617 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x57, 0x81, 0x0c,
30618 : 0x57, 0x01, 0x01, 0x01, 0x02
30619 : };
30620 : return complete_seq (expand_encoding, operands);
30621 : }
30622 :
30623 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18856 */
30624 : rtx
30625 : gen_sse2_andnotv4si3 (const rtx operand0, const rtx operand1, const rtx operand2)
30626 : {
30627 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30628 : static const uint8_t expand_encoding[] = {
30629 : 0x1f, 0x01, 0x00, 0x49, 0x51, 0x4c, 0x51, 0x01,
30630 : 0x01, 0x01, 0x02
30631 : };
30632 : return expand_rtx (expand_encoding, operands);
30633 : }
30634 :
30635 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18863 */
30636 : rtx
30637 : gen_andnv16hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30638 : {
30639 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30640 : static const uint8_t expand_encoding[] = {
30641 : 0x1f, 0x01, 0x00, 0x49, 0x55, 0x4c, 0x55, 0x01,
30642 : 0x02, 0x01, 0x01
30643 : };
30644 : return expand_rtx (expand_encoding, operands);
30645 : }
30646 :
30647 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18870 */
30648 : rtx
30649 : gen_avx2_andnotv4di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30650 : {
30651 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30652 : static const uint8_t expand_encoding[] = {
30653 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x49, 0x57,
30654 : 0x4c, 0x57, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
30655 : 0x01, 0x04
30656 : };
30657 : return expand_rtx (expand_encoding, operands);
30658 : }
30659 :
30660 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19025 */
30661 : extern rtx_insn *gen_split_3436 (rtx_insn *, rtx *);
30662 : rtx_insn *
30663 : gen_split_3436 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30664 : {
30665 : if (dump_file)
30666 : fprintf (dump_file, "Splitting with gen_split_3436 (sse.md:19025)\n");
30667 : start_sequence ();
30668 : #define FAIL return (end_sequence (), nullptr)
30669 : #define DONE return end_sequence ()
30670 : #line 19038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30671 : operands[3] = gen_reg_rtx (V16SImode);
30672 : #undef DONE
30673 : #undef FAIL
30674 : static const uint8_t expand_encoding[] = {
30675 : 0x02, 0x1f, 0x01, 0x03, 0x81, 0x0c, 0x5b, 0x01,
30676 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x5b, 0x4c, 0x5b,
30677 : 0x01, 0x03, 0x01, 0x02
30678 : };
30679 : return complete_seq (expand_encoding, operands);
30680 : }
30681 :
30682 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19040 */
30683 : extern rtx_insn *gen_split_3446 (rtx_insn *, rtx *);
30684 : rtx_insn *
30685 : gen_split_3446 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30686 : {
30687 : if (dump_file)
30688 : fprintf (dump_file, "Splitting with gen_split_3446 (sse.md:19040)\n");
30689 : start_sequence ();
30690 : #define FAIL return (end_sequence (), nullptr)
30691 : #define DONE return end_sequence ()
30692 : #line 19053 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30693 : operands[3] = gen_reg_rtx (V16QImode);
30694 : #undef DONE
30695 : #undef FAIL
30696 : static const uint8_t expand_encoding[] = {
30697 : 0x02, 0x1f, 0x01, 0x03, 0x81, 0x0c, 0x4f, 0x01,
30698 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x4f, 0x4c, 0x4f,
30699 : 0x01, 0x03, 0x01, 0x02
30700 : };
30701 : return complete_seq (expand_encoding, operands);
30702 : }
30703 :
30704 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19055 */
30705 : extern rtx_insn *gen_split_3456 (rtx_insn *, rtx *);
30706 : rtx_insn *
30707 : gen_split_3456 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30708 : {
30709 : if (dump_file)
30710 : fprintf (dump_file, "Splitting with gen_split_3456 (sse.md:19055)\n");
30711 : start_sequence ();
30712 : #define FAIL return (end_sequence (), nullptr)
30713 : #define DONE return end_sequence ()
30714 : #line 19068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30715 : operands[3] = gen_reg_rtx (V64QImode);
30716 : #undef DONE
30717 : #undef FAIL
30718 : static const uint8_t expand_encoding[] = {
30719 : 0x02, 0x1f, 0x01, 0x03, 0x81, 0x0c, 0x59, 0x01,
30720 : 0x01, 0x1f, 0x01, 0x00, 0x4c, 0x59, 0x4b, 0x59,
30721 : 0x01, 0x03, 0x01, 0x02
30722 : };
30723 : return complete_seq (expand_encoding, operands);
30724 : }
30725 :
30726 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19086 */
30727 : rtx
30728 : gen_andv16si3 (const rtx operand0, const rtx operand1, const rtx operand2)
30729 : {
30730 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30731 : start_sequence ();
30732 : {
30733 : #define FAIL return (end_sequence (), nullptr)
30734 : #define DONE return end_sequence ()
30735 : #line 19092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30736 : {
30737 : ix86_expand_vector_logical_operator (AND, V16SImode, operands);
30738 : DONE;
30739 : }
30740 : #undef DONE
30741 : #undef FAIL
30742 : }
30743 : static const uint8_t expand_encoding[] = {
30744 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x5b, 0x01, 0x01,
30745 : 0x01, 0x02
30746 : };
30747 : return complete_seq (expand_encoding, operands);
30748 : }
30749 :
30750 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19086 */
30751 : rtx
30752 : gen_andv64qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30753 : {
30754 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30755 : start_sequence ();
30756 : {
30757 : #define FAIL return (end_sequence (), nullptr)
30758 : #define DONE return end_sequence ()
30759 : #line 19092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30760 : {
30761 : ix86_expand_vector_logical_operator (AND, V64QImode, operands);
30762 : DONE;
30763 : }
30764 : #undef DONE
30765 : #undef FAIL
30766 : }
30767 : static const uint8_t expand_encoding[] = {
30768 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x59, 0x01, 0x01,
30769 : 0x01, 0x02
30770 : };
30771 : return complete_seq (expand_encoding, operands);
30772 : }
30773 :
30774 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19086 */
30775 : rtx
30776 : gen_iorv32hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30777 : {
30778 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30779 : start_sequence ();
30780 : {
30781 : #define FAIL return (end_sequence (), nullptr)
30782 : #define DONE return end_sequence ()
30783 : #line 19092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30784 : {
30785 : ix86_expand_vector_logical_operator (IOR, V32HImode, operands);
30786 : DONE;
30787 : }
30788 : #undef DONE
30789 : #undef FAIL
30790 : }
30791 : static const uint8_t expand_encoding[] = {
30792 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x5a, 0x01, 0x01,
30793 : 0x01, 0x02
30794 : };
30795 : return complete_seq (expand_encoding, operands);
30796 : }
30797 :
30798 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19086 */
30799 : rtx
30800 : gen_xorv8si3 (const rtx operand0, const rtx operand1, const rtx operand2)
30801 : {
30802 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30803 : start_sequence ();
30804 : {
30805 : #define FAIL return (end_sequence (), nullptr)
30806 : #define DONE return end_sequence ()
30807 : #line 19092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30808 : {
30809 : ix86_expand_vector_logical_operator (XOR, V8SImode, operands);
30810 : DONE;
30811 : }
30812 : #undef DONE
30813 : #undef FAIL
30814 : }
30815 : static const uint8_t expand_encoding[] = {
30816 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x56, 0x01, 0x01,
30817 : 0x01, 0x02
30818 : };
30819 : return complete_seq (expand_encoding, operands);
30820 : }
30821 :
30822 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19097 */
30823 : rtx
30824 : gen_cond_andv16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30825 : {
30826 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30827 : start_sequence ();
30828 : {
30829 : #define FAIL _Pragma ("GCC error \"cond_andv16si cannot FAIL\"") (void)0
30830 : #define DONE return end_sequence ()
30831 : #line 19106 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30832 : {
30833 : emit_insn (gen_andv16si3_mask (operands[0],
30834 : operands[2],
30835 : operands[3],
30836 : operands[4],
30837 : operands[1]));
30838 : DONE;
30839 : }
30840 : #undef DONE
30841 : #undef FAIL
30842 : }
30843 : static const uint8_t expand_encoding[] = {
30844 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x49,
30845 : 0x5b, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
30846 : 0x01
30847 : };
30848 : return complete_seq (expand_encoding, operands);
30849 : }
30850 :
30851 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19097 */
30852 : rtx
30853 : gen_cond_iorv8di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30854 : {
30855 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30856 : start_sequence ();
30857 : {
30858 : #define FAIL _Pragma ("GCC error \"cond_iorv8di cannot FAIL\"") (void)0
30859 : #define DONE return end_sequence ()
30860 : #line 19106 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30861 : {
30862 : emit_insn (gen_iorv8di3_mask (operands[0],
30863 : operands[2],
30864 : operands[3],
30865 : operands[4],
30866 : operands[1]));
30867 : DONE;
30868 : }
30869 : #undef DONE
30870 : #undef FAIL
30871 : }
30872 : static const uint8_t expand_encoding[] = {
30873 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x4a,
30874 : 0x5c, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
30875 : 0x01
30876 : };
30877 : return complete_seq (expand_encoding, operands);
30878 : }
30879 :
30880 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19115 */
30881 : rtx
30882 : gen_xorv16si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30883 : {
30884 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30885 : start_sequence ();
30886 : {
30887 : #define FAIL return (end_sequence (), nullptr)
30888 : #define DONE return end_sequence ()
30889 : #line 19124 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30890 : ix86_fixup_binary_operands_no_copy (XOR, V16SImode, operands);
30891 : #undef DONE
30892 : #undef FAIL
30893 : }
30894 : static const uint8_t expand_encoding[] = {
30895 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x4b,
30896 : 0x5b, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30897 : 0x04
30898 : };
30899 : return complete_seq (expand_encoding, operands);
30900 : }
30901 :
30902 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19115 */
30903 : rtx
30904 : gen_andv4di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30905 : {
30906 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30907 : start_sequence ();
30908 : {
30909 : #define FAIL return (end_sequence (), nullptr)
30910 : #define DONE return end_sequence ()
30911 : #line 19124 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30912 : ix86_fixup_binary_operands_no_copy (AND, V4DImode, operands);
30913 : #undef DONE
30914 : #undef FAIL
30915 : }
30916 : static const uint8_t expand_encoding[] = {
30917 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x49,
30918 : 0x57, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30919 : 0x04
30920 : };
30921 : return complete_seq (expand_encoding, operands);
30922 : }
30923 :
30924 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19537 */
30925 : rtx
30926 : gen_vec_pack_trunc_v16si (const rtx operand0, const rtx operand1, const rtx operand2)
30927 : {
30928 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30929 : start_sequence ();
30930 : {
30931 : #define FAIL return (end_sequence (), nullptr)
30932 : #define DONE return end_sequence ()
30933 : #line 19542 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30934 : {
30935 : rtx op1 = gen_lowpart (V32HImode, operands[1]);
30936 : rtx op2 = gen_lowpart (V32HImode, operands[2]);
30937 : ix86_expand_vec_extract_even_odd (operands[0], op1, op2, 0);
30938 : DONE;
30939 : }
30940 : #undef DONE
30941 : #undef FAIL
30942 : }
30943 : static const uint8_t expand_encoding[] = {
30944 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
30945 : };
30946 : return complete_seq (expand_encoding, operands);
30947 : }
30948 :
30949 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20226 */
30950 : rtx
30951 : gen_vec_interleave_highv16hi (const rtx operand0, const rtx operand1, const rtx operand2)
30952 : {
30953 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30954 : start_sequence ();
30955 : {
30956 : #define FAIL return (end_sequence (), nullptr)
30957 : #define DONE return end_sequence ()
30958 : #line 20231 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30959 : {
30960 : rtx t1 = gen_reg_rtx (V16HImode);
30961 : rtx t2 = gen_reg_rtx (V16HImode);
30962 : rtx t3 = gen_reg_rtx (V4DImode);
30963 : emit_insn (gen_avx2_interleave_lowv16hi (t1, operands[1], operands[2]));
30964 : emit_insn (gen_avx2_interleave_highv16hi (t2, operands[1], operands[2]));
30965 : emit_insn (gen_avx2_permv2ti (t3, gen_lowpart (V4DImode, t1),
30966 : gen_lowpart (V4DImode, t2),
30967 : GEN_INT (1 + (3 << 4))));
30968 : emit_move_insn (operands[0], gen_lowpart (V16HImode, t3));
30969 : DONE;
30970 : }
30971 : #undef DONE
30972 : #undef FAIL
30973 : }
30974 : static const uint8_t expand_encoding[] = {
30975 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
30976 : };
30977 : return complete_seq (expand_encoding, operands);
30978 : }
30979 :
30980 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20362 */
30981 : rtx
30982 : gen_avx512dq_vinserti64x2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
30983 : {
30984 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
30985 : start_sequence ();
30986 : {
30987 : #define FAIL return (end_sequence (), nullptr)
30988 : #define DONE return end_sequence ()
30989 : #line 20370 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30990 : {
30991 : int mask, selector;
30992 : mask = INTVAL (operands[3]);
30993 : selector = (GET_MODE_UNIT_SIZE (V8DImode) == 4
30994 : ? 0xFFFF ^ (0x000F << mask * 4)
30995 : : 0xFF ^ (0x03 << mask * 2));
30996 : emit_insn (gen_avx512dq_vinserti64x2_1_mask
30997 : (operands[0], operands[1], operands[2], GEN_INT (selector),
30998 : operands[4], operands[5]));
30999 : DONE;
31000 : }
31001 : #undef DONE
31002 : #undef FAIL
31003 : }
31004 : static const uint8_t expand_encoding[] = {
31005 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
31006 : 0x03, 0x01, 0x04, 0x01, 0x05
31007 : };
31008 : return complete_seq (expand_encoding, operands);
31009 : }
31010 :
31011 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20610 */
31012 : rtx
31013 : gen_avx512f_shuf_i64x2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
31014 : {
31015 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
31016 : start_sequence ();
31017 : {
31018 : #define FAIL return (end_sequence (), nullptr)
31019 : #define DONE return end_sequence ()
31020 : #line 20618 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31021 : {
31022 : int mask = INTVAL (operands[3]);
31023 : emit_insn (gen_avx512f_shuf_i64x2_1_mask
31024 : (operands[0], operands[1], operands[2],
31025 : GEN_INT (((mask >> 0) & 3) * 2),
31026 : GEN_INT (((mask >> 0) & 3) * 2 + 1),
31027 : GEN_INT (((mask >> 2) & 3) * 2),
31028 : GEN_INT (((mask >> 2) & 3) * 2 + 1),
31029 : GEN_INT (((mask >> 4) & 3) * 2 + 8),
31030 : GEN_INT (((mask >> 4) & 3) * 2 + 9),
31031 : GEN_INT (((mask >> 6) & 3) * 2 + 8),
31032 : GEN_INT (((mask >> 6) & 3) * 2 + 9),
31033 : operands[4], operands[5]));
31034 : DONE;
31035 : }
31036 : #undef DONE
31037 : #undef FAIL
31038 : }
31039 : static const uint8_t expand_encoding[] = {
31040 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
31041 : 0x03, 0x01, 0x04, 0x01, 0x05
31042 : };
31043 : return complete_seq (expand_encoding, operands);
31044 : }
31045 :
31046 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21137 */
31047 : rtx
31048 : gen_avx512vl_pshuflwv3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
31049 : {
31050 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
31051 : start_sequence ();
31052 : {
31053 : #define FAIL return (end_sequence (), nullptr)
31054 : #define DONE return end_sequence ()
31055 : #line 21144 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31056 : {
31057 : int mask = INTVAL (operands[2]);
31058 : emit_insn (gen_avx2_pshuflw_1_mask (operands[0], operands[1],
31059 : GEN_INT ((mask >> 0) & 3),
31060 : GEN_INT ((mask >> 2) & 3),
31061 : GEN_INT ((mask >> 4) & 3),
31062 : GEN_INT ((mask >> 6) & 3),
31063 : GEN_INT (((mask >> 0) & 3) + 8),
31064 : GEN_INT (((mask >> 2) & 3) + 8),
31065 : GEN_INT (((mask >> 4) & 3) + 8),
31066 : GEN_INT (((mask >> 6) & 3) + 8),
31067 : operands[3], operands[4]));
31068 : DONE;
31069 : }
31070 : #undef DONE
31071 : #undef FAIL
31072 : }
31073 : static const uint8_t expand_encoding[] = {
31074 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
31075 : 0x03, 0x01, 0x04
31076 : };
31077 : return complete_seq (expand_encoding, operands);
31078 : }
31079 :
31080 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21653 */
31081 : extern rtx_insn *gen_split_3474 (rtx_insn *, rtx *);
31082 : rtx_insn *
31083 : gen_split_3474 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31084 : {
31085 : if (dump_file)
31086 : fprintf (dump_file, "Splitting with gen_split_3474 (sse.md:21653)\n");
31087 : start_sequence ();
31088 : #define FAIL return (end_sequence (), nullptr)
31089 : #define DONE return end_sequence ()
31090 : #line 21661 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31091 : operands[1] = gen_lowpart (SImode, operands[1]);
31092 : #undef DONE
31093 : #undef FAIL
31094 : static const uint8_t expand_encoding[] = {
31095 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x01, 0x01
31096 : };
31097 : return complete_seq (expand_encoding, operands);
31098 : }
31099 :
31100 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21873 */
31101 : extern rtx_insn *gen_split_3482 (rtx_insn *, rtx *);
31102 : rtx_insn *
31103 : gen_split_3482 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31104 : {
31105 : if (dump_file)
31106 : fprintf (dump_file, "Splitting with gen_split_3482 (sse.md:21873)\n");
31107 : start_sequence ();
31108 : #define FAIL return (end_sequence (), nullptr)
31109 : #define DONE return end_sequence ()
31110 : #line 21886 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31111 : {
31112 : rtx tmp;
31113 :
31114 : switch (GET_MODE_SIZE (GET_MODE (operands[1])))
31115 : {
31116 : case 64:
31117 : if (SImode == SImode)
31118 : {
31119 : tmp = gen_reg_rtx (V8SImode);
31120 : emit_insn (gen_vec_extract_lo_v16si (tmp,
31121 : gen_lowpart (V16SImode,
31122 : operands[1])));
31123 : }
31124 : else
31125 : {
31126 : tmp = gen_reg_rtx (V4DImode);
31127 : emit_insn (gen_vec_extract_lo_v8di (tmp,
31128 : gen_lowpart (V8DImode,
31129 : operands[1])));
31130 : }
31131 : operands[1] = tmp;
31132 : /* FALLTHRU */
31133 : case 32:
31134 : tmp = gen_reg_rtx (V4SImode);
31135 : if (SImode == SImode)
31136 : emit_insn (gen_vec_extract_lo_v8si (tmp, gen_lowpart (V8SImode,
31137 : operands[1])));
31138 : else
31139 : emit_insn (gen_vec_extract_lo_v4di (tmp, gen_lowpart (V4DImode,
31140 : operands[1])));
31141 : operands[1] = tmp;
31142 : break;
31143 : case 16:
31144 : operands[1] = gen_lowpart (V4SImode, operands[1]);
31145 : break;
31146 : }
31147 : }
31148 : #undef DONE
31149 : #undef FAIL
31150 : static const uint8_t expand_encoding[] = {
31151 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x11, 0x01,
31152 : 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
31153 : };
31154 : return complete_seq (expand_encoding, operands);
31155 : }
31156 :
31157 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22213 */
31158 : rtx
31159 : gen_vec_unpacks_hi_v8hi (const rtx operand0, const rtx operand1)
31160 : {
31161 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31162 : start_sequence ();
31163 : {
31164 : #define FAIL return (end_sequence (), nullptr)
31165 : #define DONE return end_sequence ()
31166 : #line 22217 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31167 : ix86_expand_sse_unpack (operands[0], operands[1], false, true); DONE;
31168 : #undef DONE
31169 : #undef FAIL
31170 : }
31171 : static const uint8_t expand_encoding[] = {
31172 : 0x02, 0x01, 0x00, 0x01, 0x01
31173 : };
31174 : return complete_seq (expand_encoding, operands);
31175 : }
31176 :
31177 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22219 */
31178 : rtx
31179 : gen_vec_unpacku_lo_v16si (const rtx operand0, const rtx operand1)
31180 : {
31181 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31182 : start_sequence ();
31183 : {
31184 : #define FAIL return (end_sequence (), nullptr)
31185 : #define DONE return end_sequence ()
31186 : #line 22223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31187 : ix86_expand_sse_unpack (operands[0], operands[1], true, false); DONE;
31188 : #undef DONE
31189 : #undef FAIL
31190 : }
31191 : static const uint8_t expand_encoding[] = {
31192 : 0x02, 0x01, 0x00, 0x01, 0x01
31193 : };
31194 : return complete_seq (expand_encoding, operands);
31195 : }
31196 :
31197 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22252 */
31198 : rtx
31199 : gen_vec_unpacku_hi_v8hi (const rtx operand0, const rtx operand1)
31200 : {
31201 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31202 : start_sequence ();
31203 : {
31204 : #define FAIL return (end_sequence (), nullptr)
31205 : #define DONE return end_sequence ()
31206 : #line 22256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31207 : ix86_expand_sse_unpack (operands[0], operands[1], true, true); DONE;
31208 : #undef DONE
31209 : #undef FAIL
31210 : }
31211 : static const uint8_t expand_encoding[] = {
31212 : 0x02, 0x01, 0x00, 0x01, 0x01
31213 : };
31214 : return complete_seq (expand_encoding, operands);
31215 : }
31216 :
31217 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22306 */
31218 : rtx
31219 : gen_avx2_uavgv32qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
31220 : {
31221 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
31222 : start_sequence ();
31223 : {
31224 : #define FAIL return (end_sequence (), nullptr)
31225 : #define DONE return end_sequence ()
31226 : #line 22319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31227 : {
31228 : operands[3] = CONST1_RTX(V32HImode);
31229 : ix86_fixup_binary_operands_no_copy (PLUS, V32QImode, operands);
31230 : }
31231 : #undef DONE
31232 : #undef FAIL
31233 : }
31234 : static const uint8_t expand_encoding[] = {
31235 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x54, 0x50, 0x5a,
31236 : 0x3b, 0x5a, 0x3b, 0x5a, 0x6f, 0x5a, 0x01, 0x01,
31237 : 0x6f, 0x5a, 0x01, 0x02, 0x01, 0x03, 0x27, 0x01
31238 : };
31239 : return complete_seq (expand_encoding, operands);
31240 : }
31241 :
31242 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22306 */
31243 : rtx
31244 : gen_sse2_uavgv8hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
31245 : {
31246 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
31247 : start_sequence ();
31248 : {
31249 : #define FAIL return (end_sequence (), nullptr)
31250 : #define DONE return end_sequence ()
31251 : #line 22319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31252 : {
31253 : operands[5] = CONST1_RTX(V8SImode);
31254 : ix86_fixup_binary_operands_no_copy (PLUS, V8HImode, operands);
31255 : }
31256 : #undef DONE
31257 : #undef FAIL
31258 : }
31259 : static const uint8_t expand_encoding[] = {
31260 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x70,
31261 : 0x50, 0x50, 0x56, 0x3b, 0x56, 0x3b, 0x56, 0x6f,
31262 : 0x56, 0x01, 0x01, 0x6f, 0x56, 0x01, 0x02, 0x01,
31263 : 0x05, 0x27, 0x01, 0x01, 0x03, 0x01, 0x04
31264 : };
31265 : return complete_seq (expand_encoding, operands);
31266 : }
31267 :
31268 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22447 */
31269 : extern rtx_insn *gen_split_3498 (rtx_insn *, rtx *);
31270 : rtx_insn *
31271 : gen_split_3498 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31272 : {
31273 : if (dump_file)
31274 : fprintf (dump_file, "Splitting with gen_split_3498 (sse.md:22447)\n");
31275 : start_sequence ();
31276 : #define FAIL return (end_sequence (), nullptr)
31277 : #define DONE return end_sequence ()
31278 : #line 22460 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31279 : operands[1] = gen_lowpart (V4SFmode, operands[1]);
31280 : #undef DONE
31281 : #undef FAIL
31282 : static const uint8_t expand_encoding[] = {
31283 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x11,
31284 : 0x01, 0x01, 0x01, 0x32
31285 : };
31286 : return complete_seq (expand_encoding, operands);
31287 : }
31288 :
31289 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22466 */
31290 : extern rtx_insn *gen_split_3508 (rtx_insn *, rtx *);
31291 : rtx_insn *
31292 : gen_split_3508 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31293 : {
31294 : if (dump_file)
31295 : fprintf (dump_file, "Splitting with gen_split_3508 (sse.md:22466)\n");
31296 : start_sequence ();
31297 : #define FAIL return (end_sequence (), nullptr)
31298 : #define DONE return end_sequence ()
31299 : #line 22485 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31300 : operands[1] = gen_lowpart (V4DFmode, operands[1]);
31301 : #undef DONE
31302 : #undef FAIL
31303 : static const uint8_t expand_encoding[] = {
31304 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x11,
31305 : 0x01, 0x01, 0x01, 0x32
31306 : };
31307 : return complete_seq (expand_encoding, operands);
31308 : }
31309 :
31310 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22510 */
31311 : extern rtx_insn *gen_split_3518 (rtx_insn *, rtx *);
31312 : rtx_insn *
31313 : gen_split_3518 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31314 : {
31315 : if (dump_file)
31316 : fprintf (dump_file, "Splitting with gen_split_3518 (sse.md:22510)\n");
31317 : start_sequence ();
31318 : #define FAIL return (end_sequence (), nullptr)
31319 : #define DONE return end_sequence ()
31320 : #line 22524 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31321 : operands[1] = gen_lowpart (V4SFmode, operands[1]);
31322 : #undef DONE
31323 : #undef FAIL
31324 : static const uint8_t expand_encoding[] = {
31325 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x11,
31326 : 0x01, 0x01, 0x01, 0x32
31327 : };
31328 : return complete_seq (expand_encoding, operands);
31329 : }
31330 :
31331 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22636 */
31332 : extern rtx_insn *gen_split_3528 (rtx_insn *, rtx *);
31333 : rtx_insn *
31334 : gen_split_3528 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31335 : {
31336 : if (dump_file)
31337 : fprintf (dump_file, "Splitting with gen_split_3528 (sse.md:22636)\n");
31338 : start_sequence ();
31339 : #define FAIL return (end_sequence (), nullptr)
31340 : #define DONE return end_sequence ()
31341 : #line 22647 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31342 : {
31343 : operands[2] = gen_reg_rtx (SImode);
31344 : operands[1] = gen_lowpart (V16QImode, operands[1]);
31345 : if (GET_MODE_NUNITS (V16QImode) == 32)
31346 : operands[3] = gen_rtx_NOT (SImode, operands[2]);
31347 : else
31348 : {
31349 : operands[3]
31350 : = gen_int_mode ((HOST_WIDE_INT_1 << GET_MODE_NUNITS (V16QImode)) - 1,
31351 : SImode);
31352 : operands[3] = gen_rtx_XOR (SImode, operands[2], operands[3]);
31353 : }
31354 : }
31355 : #undef DONE
31356 : #undef FAIL
31357 : static const uint8_t expand_encoding[] = {
31358 : 0x02, 0x1f, 0x01, 0x02, 0x1a, 0x11, 0x01, 0x01,
31359 : 0x01, 0x32, 0x1f, 0x01, 0x00, 0x01, 0x03
31360 : };
31361 : return complete_seq (expand_encoding, operands);
31362 : }
31363 :
31364 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22829 */
31365 : extern rtx_insn *gen_split_3541 (rtx_insn *, rtx *);
31366 : rtx_insn *
31367 : gen_split_3541 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31368 : {
31369 : if (dump_file)
31370 : fprintf (dump_file, "Splitting with gen_split_3541 (sse.md:22829)\n");
31371 : start_sequence ();
31372 : static const uint8_t expand_encoding[] = {
31373 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
31374 : };
31375 : return complete_seq (expand_encoding, operands);
31376 : }
31377 :
31378 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22881 */
31379 : extern rtx_insn *gen_split_3546 (rtx_insn *, rtx *);
31380 : rtx_insn *
31381 : gen_split_3546 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31382 : {
31383 : if (dump_file)
31384 : fprintf (dump_file, "Splitting with gen_split_3546 (sse.md:22881)\n");
31385 : start_sequence ();
31386 : #define FAIL return (end_sequence (), nullptr)
31387 : #define DONE return end_sequence ()
31388 : #line 22902 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31389 : operands[0] = force_reg (V32QImode, operands[0]);
31390 : #undef DONE
31391 : #undef FAIL
31392 : static const uint8_t expand_encoding[] = {
31393 : 0x01, 0x1f, 0x30, 0x0c, 0x11, 0x1a, 0x0c, 0x02,
31394 : 0x01, 0x00, 0x01, 0x00, 0x81, 0x03
31395 : };
31396 : return complete_seq (expand_encoding, operands);
31397 : }
31398 :
31399 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23407 */
31400 : rtx
31401 : gen_ssse3_pmulhrswv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
31402 : {
31403 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
31404 : start_sequence ();
31405 : {
31406 : #define FAIL return (end_sequence (), nullptr)
31407 : #define DONE return end_sequence ()
31408 : #line 23422 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31409 : {
31410 : operands[3] = CONST1_RTX(V8HImode);
31411 : ix86_fixup_binary_operands_no_copy (MULT, V8HImode, operands);
31412 : }
31413 : #undef DONE
31414 : #undef FAIL
31415 : }
31416 : static const uint8_t expand_encoding[] = {
31417 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x50, 0x50, 0x56,
31418 : 0x3b, 0x56, 0x50, 0x56, 0x3e, 0x56, 0x6e, 0x56,
31419 : 0x01, 0x01, 0x6e, 0x56, 0x01, 0x02, 0x27, 0x0e,
31420 : 0x01, 0x03, 0x27, 0x01
31421 : };
31422 : return complete_seq (expand_encoding, operands);
31423 : }
31424 :
31425 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23611 */
31426 : extern rtx_insn *gen_split_3554 (rtx_insn *, rtx *);
31427 : rtx_insn *
31428 : gen_split_3554 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31429 : {
31430 : if (dump_file)
31431 : fprintf (dump_file, "Splitting with gen_split_3554 (sse.md:23611)\n");
31432 : start_sequence ();
31433 : #define FAIL return (end_sequence (), nullptr)
31434 : #define DONE return end_sequence ()
31435 : #line 23630 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31436 : {
31437 : /* Emulate MMX version of pshufb with SSE version by masking out the
31438 : bit 3 of the shuffle control byte. */
31439 : operands[0] = lowpart_subreg (V16QImode, operands[0],
31440 : GET_MODE (operands[0]));
31441 : operands[1] = lowpart_subreg (V16QImode, operands[1],
31442 : GET_MODE (operands[1]));
31443 : operands[2] = lowpart_subreg (V4SImode, operands[2],
31444 : GET_MODE (operands[2]));
31445 : operands[4] = lowpart_subreg (V16QImode, operands[3],
31446 : GET_MODE (operands[3]));
31447 : }
31448 : #undef DONE
31449 : #undef FAIL
31450 : static const uint8_t expand_encoding[] = {
31451 : 0x02, 0x1f, 0x01, 0x03, 0x49, 0x51, 0x01, 0x03,
31452 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x02,
31453 : 0x01, 0x01, 0x01, 0x04, 0x35
31454 : };
31455 : return complete_seq (expand_encoding, operands);
31456 : }
31457 :
31458 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23860 */
31459 : rtx
31460 : gen_absv2di2 (const rtx operand0, const rtx operand1)
31461 : {
31462 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31463 : start_sequence ();
31464 : {
31465 : #define FAIL return (end_sequence (), nullptr)
31466 : #define DONE return end_sequence ()
31467 : #line 23865 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31468 : {
31469 : if (!TARGET_SSSE3
31470 : || ((V2DImode == V2DImode || V2DImode == V4DImode)
31471 : && !TARGET_AVX512VL))
31472 : {
31473 : ix86_expand_sse2_abs (operands[0], operands[1]);
31474 : DONE;
31475 : }
31476 : }
31477 : #undef DONE
31478 : #undef FAIL
31479 : }
31480 : static const uint8_t expand_encoding[] = {
31481 : 0x01, 0x1f, 0x01, 0x00, 0x7b, 0x52, 0x01, 0x01
31482 : };
31483 : return complete_seq (expand_encoding, operands);
31484 : }
31485 :
31486 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24103 */
31487 : extern rtx_insn *gen_split_3565 (rtx_insn *, rtx *);
31488 : rtx_insn *
31489 : gen_split_3565 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31490 : {
31491 : if (dump_file)
31492 : fprintf (dump_file, "Splitting with gen_split_3565 (sse.md:24103)\n");
31493 : start_sequence ();
31494 : #define FAIL return (end_sequence (), nullptr)
31495 : #define DONE return end_sequence ()
31496 : #line 24119 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31497 : {
31498 : operands[0] = gen_lowpart (V2DFmode, operands[0]);
31499 : operands[1] = gen_lowpart (V2DFmode, operands[1]);
31500 : operands[2] = gen_lowpart (V2DFmode, operands[2]);
31501 : operands[3] = gen_lowpart (V2DFmode, operands[3]);
31502 : }
31503 : #undef DONE
31504 : #undef FAIL
31505 : static const uint8_t expand_encoding[] = {
31506 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x03, 0x01,
31507 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x34
31508 : };
31509 : return complete_seq (expand_encoding, operands);
31510 : }
31511 :
31512 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24168 */
31513 : extern rtx_insn *gen_split_3575 (rtx_insn *, rtx *);
31514 : rtx_insn *
31515 : gen_split_3575 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31516 : {
31517 : if (dump_file)
31518 : fprintf (dump_file, "Splitting with gen_split_3575 (sse.md:24168)\n");
31519 : start_sequence ();
31520 : #define FAIL return (end_sequence (), nullptr)
31521 : #define DONE return end_sequence ()
31522 : #line 24186 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31523 : {
31524 : operands[0] = gen_lowpart (V4DFmode, operands[0]);
31525 : operands[1] = gen_lowpart (V4DFmode, operands[1]);
31526 : operands[2] = force_reg (V4DFmode,
31527 : gen_lowpart (V4DFmode, operands[2]));
31528 : operands[3] = gen_lowpart (V4DFmode, operands[3]);
31529 : }
31530 : #undef DONE
31531 : #undef FAIL
31532 : static const uint8_t expand_encoding[] = {
31533 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x03, 0x01,
31534 : 0x02, 0x01, 0x01, 0x01, 0x03, 0x34
31535 : };
31536 : return complete_seq (expand_encoding, operands);
31537 : }
31538 :
31539 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24403 */
31540 : extern rtx_insn *gen_split_3587 (rtx_insn *, rtx *);
31541 : rtx_insn *
31542 : gen_split_3587 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31543 : {
31544 : if (dump_file)
31545 : fprintf (dump_file, "Splitting with gen_split_3587 (sse.md:24403)\n");
31546 : start_sequence ();
31547 : #define FAIL return (end_sequence (), nullptr)
31548 : #define DONE return end_sequence ()
31549 : #line 24417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31550 :
31551 : #undef DONE
31552 : #undef FAIL
31553 : static const uint8_t expand_encoding[] = {
31554 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x03, 0x01,
31555 : 0x02, 0x01, 0x01, 0x01, 0x03, 0x34
31556 : };
31557 : return complete_seq (expand_encoding, operands);
31558 : }
31559 :
31560 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24504 */
31561 : rtx
31562 : gen_avx2_pblendbf_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
31563 : {
31564 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
31565 : start_sequence ();
31566 : {
31567 : #define FAIL return (end_sequence (), nullptr)
31568 : #define DONE return end_sequence ()
31569 : #line 24512 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31570 : {
31571 : int mask = INTVAL (operands[3]);
31572 : if (mask == 0)
31573 : emit_move_insn (operands[0], operands[1]);
31574 : else
31575 : {
31576 : rtx tmp = gen_reg_rtx (V16BFmode);
31577 : rtx blendw_idx, blendd_idx;
31578 :
31579 : if (mask & 0xff)
31580 : {
31581 : blendw_idx = GEN_INT (mask & 0xff);
31582 : blendd_idx = GEN_INT (15);
31583 : }
31584 : else
31585 : {
31586 : blendw_idx = GEN_INT (mask >> 8 & 0xff);
31587 : blendd_idx = GEN_INT (240);
31588 : }
31589 : emit_insn (gen_avx2_pblendbf (tmp, operands[1],
31590 : operands[2], blendw_idx));
31591 :
31592 : rtx op0 = gen_reg_rtx (V8SImode);
31593 : tmp = lowpart_subreg (V8SImode, tmp, V16BFmode);
31594 : operands[1] = lowpart_subreg (V8SImode, operands[1], V16BFmode);
31595 : emit_insn (gen_avx2_pblenddv8si (op0, operands[1],
31596 : tmp, blendd_idx));
31597 : emit_move_insn (operands[0], lowpart_subreg (V16BFmode, op0, V8SImode));
31598 : }
31599 :
31600 : DONE;
31601 : }
31602 : #undef DONE
31603 : #undef FAIL
31604 : }
31605 : static const uint8_t expand_encoding[] = {
31606 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6d, 0x01,
31607 : 0x02, 0x01, 0x01, 0x01, 0x03
31608 : };
31609 : return complete_seq (expand_encoding, operands);
31610 : }
31611 :
31612 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24815 */
31613 : extern rtx_insn *gen_split_3606 (rtx_insn *, rtx *);
31614 : rtx_insn *
31615 : gen_split_3606 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31616 : {
31617 : if (dump_file)
31618 : fprintf (dump_file, "Splitting with gen_split_3606 (sse.md:24815)\n");
31619 : start_sequence ();
31620 : #define FAIL return (end_sequence (), nullptr)
31621 : #define DONE return end_sequence ()
31622 : #line 24837 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31623 : {
31624 : operands[0] = lowpart_subreg (V8HImode, operands[0], V16QImode);
31625 : if (MEM_P (operands[1]))
31626 : {
31627 : operands[1] = lowpart_subreg (V8QImode, operands[1], V2SImode);
31628 : operands[1] = gen_rtx_ZERO_EXTEND (V8HImode, operands[1]);
31629 : emit_insn (gen_rtx_SET (operands[0], operands[1]));
31630 : DONE;
31631 : }
31632 : operands[1] = lowpart_subreg (V16QImode, operands[1], V2SImode);
31633 : }
31634 : #undef DONE
31635 : #undef FAIL
31636 : static const uint8_t expand_encoding[] = {
31637 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x50, 0x81, 0x0a,
31638 : 0x48, 0x01, 0x01, 0x17, 0x00, 0x08, 0x27, 0x00,
31639 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x27, 0x04,
31640 : 0x27, 0x05, 0x27, 0x06, 0x27, 0x07
31641 : };
31642 : return complete_seq (expand_encoding, operands);
31643 : }
31644 :
31645 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25010 */
31646 : extern rtx_insn *gen_split_3614 (rtx_insn *, rtx *);
31647 : rtx_insn *
31648 : gen_split_3614 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31649 : {
31650 : if (dump_file)
31651 : fprintf (dump_file, "Splitting with gen_split_3614 (sse.md:25010)\n");
31652 : start_sequence ();
31653 : #define FAIL return (end_sequence (), nullptr)
31654 : #define DONE return end_sequence ()
31655 : #line 25030 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31656 : operands[1] = adjust_address_nv (operands[1], V4QImode, 0);
31657 : #undef DONE
31658 : #undef FAIL
31659 : static const uint8_t expand_encoding[] = {
31660 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x51, 0x01, 0x01
31661 : };
31662 : return complete_seq (expand_encoding, operands);
31663 : }
31664 :
31665 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25110 */
31666 : extern rtx_insn *gen_split_3619 (rtx_insn *, rtx *);
31667 : rtx_insn *
31668 : gen_split_3619 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31669 : {
31670 : if (dump_file)
31671 : fprintf (dump_file, "Splitting with gen_split_3619 (sse.md:25110)\n");
31672 : start_sequence ();
31673 : #define FAIL return (end_sequence (), nullptr)
31674 : #define DONE return end_sequence ()
31675 : #line 25125 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31676 : {
31677 : operands[0] = lowpart_subreg (V16SImode, operands[0], V32HImode);
31678 : operands[1] = lowpart_subreg (V16HImode, operands[1], V32QImode);
31679 : }
31680 : #undef DONE
31681 : #undef FAIL
31682 : static const uint8_t expand_encoding[] = {
31683 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x5b, 0x01, 0x01
31684 : };
31685 : return complete_seq (expand_encoding, operands);
31686 : }
31687 :
31688 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25234 */
31689 : extern rtx_insn *gen_split_3629 (rtx_insn *, rtx *);
31690 : rtx_insn *
31691 : gen_split_3629 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31692 : {
31693 : if (dump_file)
31694 : fprintf (dump_file, "Splitting with gen_split_3629 (sse.md:25234)\n");
31695 : start_sequence ();
31696 : #define FAIL return (end_sequence (), nullptr)
31697 : #define DONE return end_sequence ()
31698 : #line 25256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31699 : operands[1] = adjust_address_nv (operands[1], V4HImode, 0);
31700 : #undef DONE
31701 : #undef FAIL
31702 : static const uint8_t expand_encoding[] = {
31703 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x6f,
31704 : 0x51, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
31705 : };
31706 : return complete_seq (expand_encoding, operands);
31707 : }
31708 :
31709 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25390 */
31710 : extern rtx_insn *gen_split_3637 (rtx_insn *, rtx *);
31711 : rtx_insn *
31712 : gen_split_3637 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31713 : {
31714 : if (dump_file)
31715 : fprintf (dump_file, "Splitting with gen_split_3637 (sse.md:25390)\n");
31716 : start_sequence ();
31717 : #define FAIL return (end_sequence (), nullptr)
31718 : #define DONE return end_sequence ()
31719 : #line 25413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31720 : operands[1] = adjust_address_nv (operands[1], V8QImode, 0);
31721 : #undef DONE
31722 : #undef FAIL
31723 : static const uint8_t expand_encoding[] = {
31724 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x6f,
31725 : 0x5c, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
31726 : };
31727 : return complete_seq (expand_encoding, operands);
31728 : }
31729 :
31730 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25553 */
31731 : rtx
31732 : gen_extendv2qiv2di2 (const rtx operand0, const rtx operand1)
31733 : {
31734 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31735 : start_sequence ();
31736 : {
31737 : #define FAIL return (end_sequence (), nullptr)
31738 : #define DONE return end_sequence ()
31739 : #line 25558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31740 : {
31741 : if (!MEM_P (operands[1]))
31742 : {
31743 : rtx op1 = force_reg (V2QImode, operands[1]);
31744 : op1 = lowpart_subreg (V16QImode, op1, V2QImode);
31745 : emit_insn (gen_sse4_1_sign_extendv2qiv2di2 (operands[0], op1));
31746 : DONE;
31747 : }
31748 : }
31749 : #undef DONE
31750 : #undef FAIL
31751 : }
31752 : static const uint8_t expand_encoding[] = {
31753 : 0x01, 0x1f, 0x01, 0x00, 0x6e, 0x52, 0x01, 0x01
31754 : };
31755 : return complete_seq (expand_encoding, operands);
31756 : }
31757 :
31758 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25653 */
31759 : extern rtx_insn *gen_split_3647 (rtx_insn *, rtx *);
31760 : rtx_insn *
31761 : gen_split_3647 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31762 : {
31763 : if (dump_file)
31764 : fprintf (dump_file, "Splitting with gen_split_3647 (sse.md:25653)\n");
31765 : start_sequence ();
31766 : #define FAIL return (end_sequence (), nullptr)
31767 : #define DONE return end_sequence ()
31768 : #line 25675 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31769 : operands[1] = adjust_address_nv (operands[1], V4HImode, 0);
31770 : #undef DONE
31771 : #undef FAIL
31772 : static const uint8_t expand_encoding[] = {
31773 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x6e,
31774 : 0x57, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
31775 : };
31776 : return complete_seq (expand_encoding, operands);
31777 : }
31778 :
31779 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25797 */
31780 : extern rtx_insn *gen_split_3653 (rtx_insn *, rtx *);
31781 : rtx_insn *
31782 : gen_split_3653 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31783 : {
31784 : if (dump_file)
31785 : fprintf (dump_file, "Splitting with gen_split_3653 (sse.md:25797)\n");
31786 : start_sequence ();
31787 : #define FAIL return (end_sequence (), nullptr)
31788 : #define DONE return end_sequence ()
31789 : #line 25809 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31790 : {
31791 : operands[0] = lowpart_subreg (V8DImode, operands[0], V16SImode);
31792 : operands[1] = lowpart_subreg (V8SImode, operands[1], V16SImode);
31793 : }
31794 : #undef DONE
31795 : #undef FAIL
31796 : static const uint8_t expand_encoding[] = {
31797 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x5c, 0x01, 0x01
31798 : };
31799 : return complete_seq (expand_encoding, operands);
31800 : }
31801 :
31802 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26018 */
31803 : rtx
31804 : gen_extendv2siv2di2 (const rtx operand0, const rtx operand1)
31805 : {
31806 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31807 : start_sequence ();
31808 : {
31809 : #define FAIL return (end_sequence (), nullptr)
31810 : #define DONE return end_sequence ()
31811 : #line 26023 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31812 : {
31813 : if (!TARGET_SSE4_1)
31814 : {
31815 : ix86_expand_sse_extend (operands[0], operands[1], false);
31816 : DONE;
31817 : }
31818 :
31819 : if (!MEM_P (operands[1]))
31820 : {
31821 : rtx op1 = force_reg (V2SImode, operands[1]);
31822 : op1 = lowpart_subreg (V4SImode, op1, V2SImode);
31823 : emit_insn (gen_sse4_1_sign_extendv2siv2di2 (operands[0], op1));
31824 : DONE;
31825 : }
31826 : }
31827 : #undef DONE
31828 : #undef FAIL
31829 : }
31830 : static const uint8_t expand_encoding[] = {
31831 : 0x01, 0x1f, 0x01, 0x00, 0x6e, 0x52, 0x01, 0x01
31832 : };
31833 : return complete_seq (expand_encoding, operands);
31834 : }
31835 :
31836 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26076 */
31837 : rtx
31838 : gen_avx_ptestzv4di (const rtx operand0, const rtx operand1)
31839 : {
31840 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31841 : static const uint8_t expand_encoding[] = {
31842 : 0x1f, 0x30, 0x0c, 0x11, 0x1a, 0x0c, 0x02, 0x01,
31843 : 0x00, 0x01, 0x01, 0x81, 0x03
31844 : };
31845 : return expand_rtx (expand_encoding, operands);
31846 : }
31847 :
31848 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26084 */
31849 : rtx
31850 : gen_sse4_1_ptestcv2df (const rtx operand0, const rtx operand1)
31851 : {
31852 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31853 : static const uint8_t expand_encoding[] = {
31854 : 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02, 0x01,
31855 : 0x00, 0x01, 0x01, 0x81, 0x03
31856 : };
31857 : return expand_rtx (expand_encoding, operands);
31858 : }
31859 :
31860 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26092 */
31861 : rtx
31862 : gen_sse4_1_ptestv4si (const rtx operand0, const rtx operand1)
31863 : {
31864 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31865 : static const uint8_t expand_encoding[] = {
31866 : 0x1f, 0x30, 0x02, 0x11, 0x1a, 0x02, 0x02, 0x01,
31867 : 0x00, 0x01, 0x01, 0x81, 0x03
31868 : };
31869 : return expand_rtx (expand_encoding, operands);
31870 : }
31871 :
31872 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26092 */
31873 : rtx
31874 : gen_avx_ptestv8sf (const rtx operand0, const rtx operand1)
31875 : {
31876 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31877 : static const uint8_t expand_encoding[] = {
31878 : 0x1f, 0x30, 0x02, 0x11, 0x1a, 0x02, 0x02, 0x01,
31879 : 0x00, 0x01, 0x01, 0x81, 0x03
31880 : };
31881 : return expand_rtx (expand_encoding, operands);
31882 : }
31883 :
31884 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26113 */
31885 : extern rtx_insn *gen_split_3671 (rtx_insn *, rtx *);
31886 : rtx_insn *
31887 : gen_split_3671 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31888 : {
31889 : if (dump_file)
31890 : fprintf (dump_file, "Splitting with gen_split_3671 (sse.md:26113)\n");
31891 : start_sequence ();
31892 : static const uint8_t expand_encoding[] = {
31893 : 0x01, 0x1f, 0x30, 0x0c, 0x11, 0x1a, 0x0c, 0x02,
31894 : 0x01, 0x00, 0x01, 0x01, 0x81, 0x03
31895 : };
31896 : return complete_seq (expand_encoding, operands);
31897 : }
31898 :
31899 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26127 */
31900 : extern rtx_insn *gen_split_3681 (rtx_insn *, rtx *);
31901 : rtx_insn *
31902 : gen_split_3681 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
31903 : {
31904 : if (dump_file)
31905 : fprintf (dump_file, "Splitting with gen_split_3681 (sse.md:26127)\n");
31906 : start_sequence ();
31907 : static const uint8_t expand_encoding[] = {
31908 : 0x01, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x01,
31909 : 0x27, 0x00, 0x2a
31910 : };
31911 : return complete_seq (expand_encoding, operands);
31912 : }
31913 :
31914 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31915 : extern rtx_insn *gen_split_3691 (rtx_insn *, rtx *);
31916 : rtx_insn *
31917 : gen_split_3691 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31918 : {
31919 : if (dump_file)
31920 : fprintf (dump_file, "Splitting with gen_split_3691 (sse.md:26139)\n");
31921 : start_sequence ();
31922 : static const uint8_t expand_encoding[] = {
31923 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31924 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31925 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31926 : };
31927 : return complete_seq (expand_encoding, operands);
31928 : }
31929 :
31930 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31931 : extern rtx_insn *gen_split_3701 (rtx_insn *, rtx *);
31932 : rtx_insn *
31933 : gen_split_3701 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31934 : {
31935 : if (dump_file)
31936 : fprintf (dump_file, "Splitting with gen_split_3701 (sse.md:26139)\n");
31937 : start_sequence ();
31938 : static const uint8_t expand_encoding[] = {
31939 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31940 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31941 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31942 : };
31943 : return complete_seq (expand_encoding, operands);
31944 : }
31945 :
31946 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31947 : extern rtx_insn *gen_split_3711 (rtx_insn *, rtx *);
31948 : rtx_insn *
31949 : gen_split_3711 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31950 : {
31951 : if (dump_file)
31952 : fprintf (dump_file, "Splitting with gen_split_3711 (sse.md:26139)\n");
31953 : start_sequence ();
31954 : static const uint8_t expand_encoding[] = {
31955 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31956 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31957 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31958 : };
31959 : return complete_seq (expand_encoding, operands);
31960 : }
31961 :
31962 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31963 : extern rtx_insn *gen_split_3721 (rtx_insn *, rtx *);
31964 : rtx_insn *
31965 : gen_split_3721 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31966 : {
31967 : if (dump_file)
31968 : fprintf (dump_file, "Splitting with gen_split_3721 (sse.md:26139)\n");
31969 : start_sequence ();
31970 : static const uint8_t expand_encoding[] = {
31971 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31972 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31973 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31974 : };
31975 : return complete_seq (expand_encoding, operands);
31976 : }
31977 :
31978 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31979 : extern rtx_insn *gen_split_3731 (rtx_insn *, rtx *);
31980 : rtx_insn *
31981 : gen_split_3731 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31982 : {
31983 : if (dump_file)
31984 : fprintf (dump_file, "Splitting with gen_split_3731 (sse.md:26139)\n");
31985 : start_sequence ();
31986 : static const uint8_t expand_encoding[] = {
31987 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31988 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31989 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31990 : };
31991 : return complete_seq (expand_encoding, operands);
31992 : }
31993 :
31994 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31995 : extern rtx_insn *gen_split_3741 (rtx_insn *, rtx *);
31996 : rtx_insn *
31997 : gen_split_3741 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31998 : {
31999 : if (dump_file)
32000 : fprintf (dump_file, "Splitting with gen_split_3741 (sse.md:26139)\n");
32001 : start_sequence ();
32002 : static const uint8_t expand_encoding[] = {
32003 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
32004 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
32005 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
32006 : };
32007 : return complete_seq (expand_encoding, operands);
32008 : }
32009 :
32010 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26154 */
32011 : extern rtx_insn *gen_split_3751 (rtx_insn *, rtx *);
32012 : rtx_insn *
32013 : gen_split_3751 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32014 : {
32015 : if (dump_file)
32016 : fprintf (dump_file, "Splitting with gen_split_3751 (sse.md:26154)\n");
32017 : start_sequence ();
32018 : static const uint8_t expand_encoding[] = {
32019 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
32020 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x33,
32021 : 0x00, 0x01, 0x00, 0x02, 0x03, 0x30, 0x08, 0x11,
32022 : 0x27, 0x00
32023 : };
32024 : return complete_seq (expand_encoding, operands);
32025 : }
32026 :
32027 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26170 */
32028 : extern rtx_insn *gen_split_3761 (rtx_insn *, rtx *);
32029 : rtx_insn *
32030 : gen_split_3761 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32031 : {
32032 : if (dump_file)
32033 : fprintf (dump_file, "Splitting with gen_split_3761 (sse.md:26170)\n");
32034 : start_sequence ();
32035 : static const uint8_t expand_encoding[] = {
32036 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
32037 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x2f,
32038 : 0x39, 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27,
32039 : 0x00, 0x01, 0x00, 0x2f
32040 : };
32041 : return complete_seq (expand_encoding, operands);
32042 : }
32043 :
32044 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26170 */
32045 : extern rtx_insn *gen_split_3771 (rtx_insn *, rtx *);
32046 : rtx_insn *
32047 : gen_split_3771 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32048 : {
32049 : if (dump_file)
32050 : fprintf (dump_file, "Splitting with gen_split_3771 (sse.md:26170)\n");
32051 : start_sequence ();
32052 : static const uint8_t expand_encoding[] = {
32053 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
32054 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x2f,
32055 : 0x39, 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27,
32056 : 0x00, 0x01, 0x00, 0x2f
32057 : };
32058 : return complete_seq (expand_encoding, operands);
32059 : }
32060 :
32061 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26193 */
32062 : extern rtx_insn *gen_split_3781 (rtx_insn *, rtx *);
32063 : rtx_insn *
32064 : gen_split_3781 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32065 : {
32066 : if (dump_file)
32067 : fprintf (dump_file, "Splitting with gen_split_3781 (sse.md:26193)\n");
32068 : start_sequence ();
32069 : #define FAIL return (end_sequence (), nullptr)
32070 : #define DONE return end_sequence ()
32071 : #line 26213 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32072 : {
32073 : if (MEM_P (operands[0]))
32074 : operands[3] = force_reg (V4DImode, operands[0]);
32075 : else
32076 : operands[3] = operands[0];
32077 : }
32078 : #undef DONE
32079 : #undef FAIL
32080 : static const uint8_t expand_encoding[] = {
32081 : 0x01, 0x1f, 0x30, 0x0c, 0x11, 0x1a, 0x0c, 0x02,
32082 : 0x01, 0x03, 0x01, 0x03, 0x81, 0x03
32083 : };
32084 : return complete_seq (expand_encoding, operands);
32085 : }
32086 :
32087 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26220 */
32088 : rtx
32089 : gen_nearbyintv2df2 (const rtx operand0, const rtx operand1)
32090 : {
32091 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32092 : start_sequence ();
32093 : {
32094 : #define FAIL _Pragma ("GCC error \"nearbyintv2df2 cannot FAIL\"") (void)0
32095 : #define DONE return end_sequence ()
32096 : #line 26227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32097 : operands[2] = GEN_INT (ROUND_MXCSR | ROUND_NO_EXC);
32098 : #undef DONE
32099 : #undef FAIL
32100 : }
32101 : static const uint8_t expand_encoding[] = {
32102 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x01,
32103 : 0x01, 0x01, 0x02, 0x5f
32104 : };
32105 : return complete_seq (expand_encoding, operands);
32106 : }
32107 :
32108 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26239 */
32109 : rtx
32110 : gen_lrintv8sfv8si2 (const rtx operand0, const rtx operand1)
32111 : {
32112 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
32113 : static const uint8_t expand_encoding[] = {
32114 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x01, 0x01, 0x01,
32115 : 0x2f
32116 : };
32117 : return expand_rtx (expand_encoding, operands);
32118 : }
32119 :
32120 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26279 */
32121 : rtx
32122 : gen_avx512f_roundpd512 (const rtx operand0, const rtx operand1, const rtx operand2)
32123 : {
32124 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32125 : start_sequence ();
32126 : {
32127 : #define FAIL return (end_sequence (), nullptr)
32128 : #define DONE return end_sequence ()
32129 : #line 26284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32130 : {
32131 : emit_insn (gen_avx512f_rndscalev8df (operands[0], operands[1], operands[2]));
32132 : DONE;
32133 : }
32134 : #undef DONE
32135 : #undef FAIL
32136 : }
32137 : static const uint8_t expand_encoding[] = {
32138 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
32139 : };
32140 : return complete_seq (expand_encoding, operands);
32141 : }
32142 :
32143 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26414 */
32144 : rtx
32145 : gen_floorv16sf2 (const rtx operand0, const rtx operand1)
32146 : {
32147 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32148 : start_sequence ();
32149 : {
32150 : #define FAIL _Pragma ("GCC error \"floorv16sf2 cannot FAIL\"") (void)0
32151 : #define DONE return end_sequence ()
32152 : #line 26421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32153 : operands[2] = GEN_INT (ROUND_FLOOR | ROUND_NO_EXC);
32154 : #undef DONE
32155 : #undef FAIL
32156 : }
32157 : static const uint8_t expand_encoding[] = {
32158 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x01,
32159 : 0x01, 0x01, 0x02, 0x5f
32160 : };
32161 : return complete_seq (expand_encoding, operands);
32162 : }
32163 :
32164 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26423 */
32165 : rtx
32166 : gen_lfloorv16hfv16hi2 (const rtx operand0, const rtx operand1)
32167 : {
32168 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
32169 : start_sequence ();
32170 : {
32171 : #define FAIL _Pragma ("GCC error \"lfloorv16hfv16hi2 cannot FAIL\"") (void)0
32172 : #define DONE return end_sequence ()
32173 : #line 26427 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32174 : {
32175 : rtx tmp = gen_reg_rtx (V16HFmode);
32176 : emit_insn (gen_floorv16hf2 (tmp, operands[1]));
32177 : emit_insn (gen_fix_truncv16hfv16hi2 (operands[0], tmp));
32178 : DONE;
32179 : }
32180 : #undef DONE
32181 : #undef FAIL
32182 : }
32183 : static const uint8_t expand_encoding[] = {
32184 : 0x02, 0x01, 0x00, 0x01, 0x01
32185 : };
32186 : return complete_seq (expand_encoding, operands);
32187 : }
32188 :
32189 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26445 */
32190 : rtx
32191 : gen_ceilv8hf2 (const rtx operand0, const rtx operand1)
32192 : {
32193 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32194 : start_sequence ();
32195 : {
32196 : #define FAIL _Pragma ("GCC error \"ceilv8hf2 cannot FAIL\"") (void)0
32197 : #define DONE return end_sequence ()
32198 : #line 26452 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32199 : operands[2] = GEN_INT (ROUND_CEIL | ROUND_NO_EXC);
32200 : #undef DONE
32201 : #undef FAIL
32202 : }
32203 : static const uint8_t expand_encoding[] = {
32204 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x01,
32205 : 0x01, 0x01, 0x02, 0x5f
32206 : };
32207 : return complete_seq (expand_encoding, operands);
32208 : }
32209 :
32210 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26465 */
32211 : rtx
32212 : gen_lceilv16sfv16si2 (const rtx operand0, const rtx operand1)
32213 : {
32214 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
32215 : start_sequence ();
32216 : {
32217 : #define FAIL _Pragma ("GCC error \"lceilv16sfv16si2 cannot FAIL\"") (void)0
32218 : #define DONE return end_sequence ()
32219 : #line 26469 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32220 : {
32221 : rtx tmp = gen_reg_rtx (V16SFmode);
32222 : emit_insn (gen_ceilv16sf2 (tmp, operands[1]));
32223 : emit_insn (gen_fix_truncv16sfv16si2 (operands[0], tmp));
32224 : DONE;
32225 : }
32226 : #undef DONE
32227 : #undef FAIL
32228 : }
32229 : static const uint8_t expand_encoding[] = {
32230 : 0x02, 0x01, 0x00, 0x01, 0x01
32231 : };
32232 : return complete_seq (expand_encoding, operands);
32233 : }
32234 :
32235 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26476 */
32236 : rtx
32237 : gen_btruncv8sf2 (const rtx operand0, const rtx operand1)
32238 : {
32239 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32240 : start_sequence ();
32241 : {
32242 : #define FAIL _Pragma ("GCC error \"btruncv8sf2 cannot FAIL\"") (void)0
32243 : #define DONE return end_sequence ()
32244 : #line 26483 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32245 : operands[2] = GEN_INT (ROUND_TRUNC | ROUND_NO_EXC);
32246 : #undef DONE
32247 : #undef FAIL
32248 : }
32249 : static const uint8_t expand_encoding[] = {
32250 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x02, 0x01,
32251 : 0x01, 0x01, 0x02, 0x5f
32252 : };
32253 : return complete_seq (expand_encoding, operands);
32254 : }
32255 :
32256 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26485 */
32257 : rtx
32258 : gen_roundv4sf2 (const rtx operand0, const rtx operand1)
32259 : {
32260 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1 };
32261 : start_sequence ();
32262 : {
32263 : #define FAIL _Pragma ("GCC error \"roundv4sf2 cannot FAIL\"") (void)0
32264 : #define DONE return end_sequence ()
32265 : #line 26495 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32266 : {
32267 : machine_mode scalar_mode;
32268 : const struct real_format *fmt;
32269 : REAL_VALUE_TYPE pred_half, half_minus_pred_half;
32270 : rtx half, vec_half;
32271 :
32272 : scalar_mode = GET_MODE_INNER (V4SFmode);
32273 :
32274 : /* load nextafter (0.5, 0.0) */
32275 : fmt = REAL_MODE_FORMAT (scalar_mode);
32276 : real_2expN (&half_minus_pred_half, -(fmt->p) - 1, scalar_mode);
32277 : real_arithmetic (&pred_half, MINUS_EXPR, &dconsthalf, &half_minus_pred_half);
32278 : half = const_double_from_real_value (pred_half, scalar_mode);
32279 :
32280 : vec_half = ix86_build_const_vector (V4SFmode, true, half);
32281 : vec_half = force_reg (V4SFmode, vec_half);
32282 :
32283 : operands[2] = gen_reg_rtx (V4SFmode);
32284 : emit_insn (gen_copysignv4sf3 (operands[2], vec_half, operands[1]));
32285 :
32286 : operands[3] = gen_reg_rtx (V4SFmode);
32287 : operands[4] = GEN_INT (ROUND_TRUNC);
32288 : }
32289 : #undef DONE
32290 : #undef FAIL
32291 : }
32292 : static const uint8_t expand_encoding[] = {
32293 : 0x02, 0x1f, 0x01, 0x03, 0x3b, 0x6b, 0x01, 0x01,
32294 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02,
32295 : 0x01, 0x03, 0x01, 0x04, 0x5f
32296 : };
32297 : return complete_seq (expand_encoding, operands);
32298 : }
32299 :
32300 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26530 */
32301 : rtx
32302 : gen_lroundv4dfv4di2 (const rtx operand0, const rtx operand1)
32303 : {
32304 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
32305 : start_sequence ();
32306 : {
32307 : #define FAIL _Pragma ("GCC error \"lroundv4dfv4di2 cannot FAIL\"") (void)0
32308 : #define DONE return end_sequence ()
32309 : #line 26534 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32310 : {
32311 : rtx tmp = gen_reg_rtx (V4DFmode);
32312 : emit_insn (gen_roundv4df2 (tmp, operands[1]));
32313 : emit_insn (gen_fix_truncv4dfv4di2 (operands[0], tmp));
32314 : DONE;
32315 : }
32316 : #undef DONE
32317 : #undef FAIL
32318 : }
32319 : static const uint8_t expand_encoding[] = {
32320 : 0x02, 0x01, 0x00, 0x01, 0x01
32321 : };
32322 : return complete_seq (expand_encoding, operands);
32323 : }
32324 :
32325 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27001 */
32326 : extern rtx_insn *gen_split_3785 (rtx_insn *, rtx *);
32327 : rtx_insn *
32328 : gen_split_3785 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32329 : {
32330 : if (dump_file)
32331 : fprintf (dump_file, "Splitting with gen_split_3785 (sse.md:27001)\n");
32332 : start_sequence ();
32333 : static const uint8_t expand_encoding[] = {
32334 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x54, 0x01, 0x03,
32335 : 0x01, 0x02, 0x01, 0x01
32336 : };
32337 : return complete_seq (expand_encoding, operands);
32338 : }
32339 :
32340 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27001 */
32341 : extern rtx_insn *gen_split_3790 (rtx_insn *, rtx *);
32342 : rtx_insn *
32343 : gen_split_3790 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32344 : {
32345 : if (dump_file)
32346 : fprintf (dump_file, "Splitting with gen_split_3790 (sse.md:27001)\n");
32347 : start_sequence ();
32348 : static const uint8_t expand_encoding[] = {
32349 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x51, 0x01, 0x03,
32350 : 0x01, 0x02, 0x01, 0x01
32351 : };
32352 : return complete_seq (expand_encoding, operands);
32353 : }
32354 :
32355 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27001 */
32356 : extern rtx_insn *gen_split_3798 (rtx_insn *, rtx *);
32357 : rtx_insn *
32358 : gen_split_3798 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32359 : {
32360 : if (dump_file)
32361 : fprintf (dump_file, "Splitting with gen_split_3798 (sse.md:27001)\n");
32362 : start_sequence ();
32363 : static const uint8_t expand_encoding[] = {
32364 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x6b, 0x01, 0x03,
32365 : 0x01, 0x02, 0x01, 0x01
32366 : };
32367 : return complete_seq (expand_encoding, operands);
32368 : }
32369 :
32370 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27013 */
32371 : extern rtx_insn *gen_split_3808 (rtx_insn *, rtx *);
32372 : rtx_insn *
32373 : gen_split_3808 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32374 : {
32375 : if (dump_file)
32376 : fprintf (dump_file, "Splitting with gen_split_3808 (sse.md:27013)\n");
32377 : start_sequence ();
32378 : static const uint8_t expand_encoding[] = {
32379 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x52, 0x01, 0x03,
32380 : 0x01, 0x01, 0x01, 0x02
32381 : };
32382 : return complete_seq (expand_encoding, operands);
32383 : }
32384 :
32385 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27322 */
32386 : rtx
32387 : gen_rotlv4si3 (const rtx operand0, const rtx operand1, const rtx operand2)
32388 : {
32389 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32390 : start_sequence ();
32391 : {
32392 : #define FAIL return (end_sequence (), nullptr)
32393 : #define DONE return end_sequence ()
32394 : #line 27328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32395 : {
32396 : /* If we were given a scalar, convert it to parallel */
32397 : if (! const_0_to_31_operand (operands[2], SImode))
32398 : {
32399 : rtvec vs = rtvec_alloc (4);
32400 : rtx par = gen_rtx_PARALLEL (V4SImode, vs);
32401 : rtx reg = gen_reg_rtx (V4SImode);
32402 : rtx op2 = operands[2];
32403 : int i;
32404 :
32405 : if (GET_MODE (op2) != SImode)
32406 : {
32407 : op2 = gen_reg_rtx (SImode);
32408 : convert_move (op2, operands[2], false);
32409 : }
32410 :
32411 : for (i = 0; i < 4; i++)
32412 : RTVEC_ELT (vs, i) = op2;
32413 :
32414 : emit_insn (gen_vec_initv4sisi (reg, par));
32415 : emit_insn (gen_xop_vrotlv4si3 (operands[0], operands[1], reg));
32416 : DONE;
32417 : }
32418 : }
32419 : #undef DONE
32420 : #undef FAIL
32421 : }
32422 : static const uint8_t expand_encoding[] = {
32423 : 0x01, 0x1f, 0x01, 0x00, 0x4e, 0x51, 0x01, 0x01,
32424 : 0x01, 0x02
32425 : };
32426 : return complete_seq (expand_encoding, operands);
32427 : }
32428 :
32429 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27458 */
32430 : rtx
32431 : gen_vlshrv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32432 : {
32433 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32434 : start_sequence ();
32435 : {
32436 : #define FAIL return (end_sequence (), nullptr)
32437 : #define DONE return end_sequence ()
32438 : #line 27464 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32439 : {
32440 : if (TARGET_XOP)
32441 : {
32442 : rtx neg = gen_reg_rtx (V8HImode);
32443 : emit_insn (gen_negv8hi2 (neg, operands[2]));
32444 : emit_insn (gen_xop_shlv8hi3 (operands[0], operands[1], neg));
32445 : DONE;
32446 : }
32447 : else if (V8HImode == V16QImode)
32448 : {
32449 : ix86_expand_vecop_qihi (LSHIFTRT, operands[0], operands[1], operands[2]);
32450 : DONE;
32451 : }
32452 : }
32453 : #undef DONE
32454 : #undef FAIL
32455 : }
32456 : static const uint8_t expand_encoding[] = {
32457 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x50, 0x01, 0x01,
32458 : 0x01, 0x02
32459 : };
32460 : return complete_seq (expand_encoding, operands);
32461 : }
32462 :
32463 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27495 */
32464 : rtx
32465 : gen_vashrv16hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32466 : {
32467 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32468 : start_sequence ();
32469 : {
32470 : #define FAIL return (end_sequence (), nullptr)
32471 : #define DONE return end_sequence ()
32472 : #line 27501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32473 : {
32474 : if (V16HImode == V32QImode || V16HImode == V64QImode)
32475 : {
32476 : ix86_expand_vecop_qihi (ASHIFTRT, operands[0], operands[1], operands[2]);
32477 : DONE;
32478 : }
32479 : }
32480 : #undef DONE
32481 : #undef FAIL
32482 : }
32483 : static const uint8_t expand_encoding[] = {
32484 : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x55, 0x01, 0x01,
32485 : 0x01, 0x02
32486 : };
32487 : return complete_seq (expand_encoding, operands);
32488 : }
32489 :
32490 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27627 */
32491 : rtx
32492 : gen_vashlv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32493 : {
32494 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32495 : start_sequence ();
32496 : {
32497 : #define FAIL return (end_sequence (), nullptr)
32498 : #define DONE return end_sequence ()
32499 : #line 27633 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32500 : {
32501 : if (TARGET_XOP)
32502 : {
32503 : emit_insn (gen_xop_shav8hi3 (operands[0], operands[1], operands[2]));
32504 : DONE;
32505 : }
32506 : else if (V8HImode == V16QImode)
32507 : {
32508 : ix86_expand_vecop_qihi (ASHIFT, operands[0], operands[1], operands[2]);
32509 : DONE;
32510 : }
32511 : }
32512 : #undef DONE
32513 : #undef FAIL
32514 : }
32515 : static const uint8_t expand_encoding[] = {
32516 : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x50, 0x01, 0x01,
32517 : 0x01, 0x02
32518 : };
32519 : return complete_seq (expand_encoding, operands);
32520 : }
32521 :
32522 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27713 */
32523 : rtx
32524 : gen_ashlv64qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32525 : {
32526 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32527 : start_sequence ();
32528 : {
32529 : #define FAIL return (end_sequence (), nullptr)
32530 : #define DONE return end_sequence ()
32531 : #line 27719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32532 : {
32533 : if (TARGET_XOP && V64QImode == V16QImode)
32534 : {
32535 : bool negate = false;
32536 : rtx (*gen) (rtx, rtx, rtx);
32537 : rtx tmp, par;
32538 : int i;
32539 :
32540 : if (ASHIFT != ASHIFT)
32541 : {
32542 : if (CONST_INT_P (operands[2]))
32543 : operands[2] = GEN_INT (-INTVAL (operands[2]));
32544 : else
32545 : negate = true;
32546 : }
32547 : par = gen_rtx_PARALLEL (V16QImode, rtvec_alloc (16));
32548 : tmp = lowpart_subreg (QImode, operands[2], SImode);
32549 : for (i = 0; i < 16; i++)
32550 : XVECEXP (par, 0, i) = tmp;
32551 :
32552 : tmp = gen_reg_rtx (V16QImode);
32553 : emit_insn (gen_vec_initv16qiqi (tmp, par));
32554 :
32555 : if (negate)
32556 : emit_insn (gen_negv16qi2 (tmp, tmp));
32557 :
32558 : gen = (ASHIFT == LSHIFTRT ? gen_xop_shlv16qi3 : gen_xop_shav16qi3);
32559 : emit_insn (gen (operands[0], operands[1], tmp));
32560 : }
32561 : else if (TARGET_GFNI && CONST_INT_P (operands[2])
32562 : && (64 == 64
32563 : || !(INTVAL (operands[2]) == 7 && ASHIFT == ASHIFTRT)))
32564 : {
32565 : rtx matrix = ix86_vgf2p8affine_shift_matrix (operands[0], operands[2],
32566 : ASHIFT);
32567 : emit_insn (gen_vgf2p8affineqb_v64qi (operands[0], operands[1], matrix,
32568 : const0_rtx));
32569 : }
32570 : else
32571 : ix86_expand_vecop_qihi (ASHIFT, operands[0], operands[1], operands[2]);
32572 : DONE;
32573 : }
32574 : #undef DONE
32575 : #undef FAIL
32576 : }
32577 : static const uint8_t expand_encoding[] = {
32578 : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x59, 0x01, 0x01,
32579 : 0x01, 0x02
32580 : };
32581 : return complete_seq (expand_encoding, operands);
32582 : }
32583 :
32584 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27762 */
32585 : rtx
32586 : gen_rotlv32qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32587 : {
32588 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32589 : start_sequence ();
32590 : {
32591 : #define FAIL return (end_sequence (), nullptr)
32592 : #define DONE return end_sequence ()
32593 : #line 27768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32594 : {
32595 : rtx matrix = ix86_vgf2p8affine_shift_matrix (operands[0], operands[2], ROTATE);
32596 : emit_insn (gen_vgf2p8affineqb_v32qi (operands[0], operands[1], matrix,
32597 : const0_rtx));
32598 : DONE;
32599 : }
32600 : #undef DONE
32601 : #undef FAIL
32602 : }
32603 : static const uint8_t expand_encoding[] = {
32604 : 0x01, 0x1f, 0x01, 0x00, 0x4e, 0x54, 0x01, 0x01,
32605 : 0x01, 0x02
32606 : };
32607 : return complete_seq (expand_encoding, operands);
32608 : }
32609 :
32610 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28258 */
32611 : extern rtx_insn *gen_split_3818 (rtx_insn *, rtx *);
32612 : rtx_insn *
32613 : gen_split_3818 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32614 : {
32615 : if (dump_file)
32616 : fprintf (dump_file, "Splitting with gen_split_3818 (sse.md:28258)\n");
32617 : start_sequence ();
32618 : #define FAIL return (end_sequence (), nullptr)
32619 : #define DONE return end_sequence ()
32620 : #line 28269 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32621 : {
32622 : rtx op0 = operands[0], op1 = operands[1];
32623 : int elt = INTVAL (operands[3]);
32624 :
32625 : if (REG_P (op1))
32626 : {
32627 : int mask;
32628 :
32629 : if (TARGET_AVX2 && elt == 0)
32630 : {
32631 : emit_insn (gen_vec_dupv8sf (op0, gen_lowpart (SFmode,
32632 : op1)));
32633 : DONE;
32634 : }
32635 :
32636 : /* Shuffle element we care about into all elements of the 128-bit lane.
32637 : The other lane gets shuffled too, but we don't care. */
32638 : if (V8SFmode == V4DFmode)
32639 : mask = (elt & 1 ? 15 : 0);
32640 : else
32641 : mask = (elt & 3) * 0x55;
32642 : emit_insn (gen_avx_vpermilv8sf (op0, op1, GEN_INT (mask)));
32643 :
32644 : /* Shuffle the lane we care about into both lanes of the dest. */
32645 : mask = (elt / (8 / 2)) * 0x11;
32646 : if (EXT_REX_SSE_REG_P (op0))
32647 : {
32648 : /* There is no EVEX VPERM2F128, but we can use either VBROADCASTSS
32649 : or VSHUFF128. */
32650 : gcc_assert (V8SFmode == V8SFmode);
32651 : if ((mask & 1) == 0)
32652 : emit_insn (gen_avx2_vec_dupv8sf (op0,
32653 : gen_lowpart (V4SFmode, op0)));
32654 : else
32655 : emit_insn (gen_avx512vl_shuf_f32x4_1 (op0, op0, op0,
32656 : GEN_INT (4), GEN_INT (5),
32657 : GEN_INT (6), GEN_INT (7),
32658 : GEN_INT (12), GEN_INT (13),
32659 : GEN_INT (14), GEN_INT (15)));
32660 : DONE;
32661 : }
32662 :
32663 : emit_insn (gen_avx_vperm2f128v8sf3 (op0, op0, op0, GEN_INT (mask)));
32664 : DONE;
32665 : }
32666 :
32667 : operands[1] = adjust_address (op1, SFmode,
32668 : elt * GET_MODE_SIZE (SFmode));
32669 : }
32670 : #undef DONE
32671 : #undef FAIL
32672 : static const uint8_t expand_encoding[] = {
32673 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x6f, 0x01,
32674 : 0x01
32675 : };
32676 : return complete_seq (expand_encoding, operands);
32677 : }
32678 :
32679 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28401 */
32680 : rtx
32681 : gen_avx512vl_permv4df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32682 : {
32683 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32684 : start_sequence ();
32685 : {
32686 : #define FAIL return (end_sequence (), nullptr)
32687 : #define DONE return end_sequence ()
32688 : #line 28408 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32689 : {
32690 : int mask = INTVAL (operands[2]);
32691 : emit_insn (gen_avx2_permv4df_1_mask (operands[0], operands[1],
32692 : GEN_INT ((mask >> 0) & 3),
32693 : GEN_INT ((mask >> 2) & 3),
32694 : GEN_INT ((mask >> 4) & 3),
32695 : GEN_INT ((mask >> 6) & 3),
32696 : operands[3], operands[4]));
32697 : DONE;
32698 : }
32699 : #undef DONE
32700 : #undef FAIL
32701 : }
32702 : static const uint8_t expand_encoding[] = {
32703 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
32704 : 0x03, 0x01, 0x04
32705 : };
32706 : return complete_seq (expand_encoding, operands);
32707 : }
32708 :
32709 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28841 */
32710 : extern rtx_insn *gen_split_3826 (rtx_insn *, rtx *);
32711 : rtx_insn *
32712 : gen_split_3826 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
32713 : {
32714 : if (dump_file)
32715 : fprintf (dump_file, "Splitting with gen_split_3826 (sse.md:28841)\n");
32716 : start_sequence ();
32717 : #define FAIL return (end_sequence (), nullptr)
32718 : #define DONE return end_sequence ()
32719 : #line 28854 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32720 : {
32721 : emit_insn (gen_vec_setv4si_0 (gen_lowpart (V4SImode, operands[0]),
32722 : CONST0_RTX (V4SImode),
32723 : gen_lowpart (SImode, operands[1])));
32724 : emit_insn (gen_avx2_pbroadcastv4si (operands[0],
32725 : gen_lowpart (V4SImode,
32726 : operands[0])));
32727 : DONE;
32728 : }
32729 : #undef DONE
32730 : #undef FAIL
32731 : static const uint8_t expand_encoding[] = {
32732 : 0x01, 0x27, 0x00
32733 : };
32734 : return complete_seq (expand_encoding, operands);
32735 : }
32736 :
32737 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28902 */
32738 : extern rtx_insn *gen_split_3836 (rtx_insn *, rtx *);
32739 : rtx_insn *
32740 : gen_split_3836 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32741 : {
32742 : if (dump_file)
32743 : fprintf (dump_file, "Splitting with gen_split_3836 (sse.md:28902)\n");
32744 : start_sequence ();
32745 : static const uint8_t expand_encoding[] = {
32746 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x55, 0x01,
32747 : 0x01, 0x01, 0x01
32748 : };
32749 : return complete_seq (expand_encoding, operands);
32750 : }
32751 :
32752 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29051 */
32753 : rtx
32754 : gen_avx512f_vpermi2varv8di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32755 : {
32756 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32757 : start_sequence ();
32758 : {
32759 : #define FAIL return (end_sequence (), nullptr)
32760 : #define DONE return end_sequence ()
32761 : #line 29062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32762 : {
32763 : operands[2] = force_reg (V8DImode, operands[2]);
32764 : operands[5] = gen_lowpart (V8DImode, operands[2]);
32765 : }
32766 : #undef DONE
32767 : #undef FAIL
32768 : }
32769 : static const uint8_t expand_encoding[] = {
32770 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x1a,
32771 : 0x5c, 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x03,
32772 : 0x81, 0x1c, 0x01, 0x05, 0x01, 0x04
32773 : };
32774 : return complete_seq (expand_encoding, operands);
32775 : }
32776 :
32777 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29051 */
32778 : rtx
32779 : gen_avx512bw_vpermi2varv32hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32780 : {
32781 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32782 : start_sequence ();
32783 : {
32784 : #define FAIL return (end_sequence (), nullptr)
32785 : #define DONE return end_sequence ()
32786 : #line 29062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32787 : {
32788 : operands[2] = force_reg (V32HImode, operands[2]);
32789 : operands[5] = gen_lowpart (V32HImode, operands[2]);
32790 : }
32791 : #undef DONE
32792 : #undef FAIL
32793 : }
32794 : static const uint8_t expand_encoding[] = {
32795 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x1a,
32796 : 0x5a, 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x03,
32797 : 0x81, 0x1c, 0x01, 0x05, 0x01, 0x04
32798 : };
32799 : return complete_seq (expand_encoding, operands);
32800 : }
32801 :
32802 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29101 */
32803 : rtx
32804 : gen_avx512vl_vpermt2varv8si3_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32805 : {
32806 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32807 : start_sequence ();
32808 : {
32809 : #define FAIL return (end_sequence (), nullptr)
32810 : #define DONE return end_sequence ()
32811 : #line 29108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32812 : {
32813 : emit_insn (gen_avx512vl_vpermt2varv8si3_maskz_1 (
32814 : operands[0], operands[1], operands[2], operands[3],
32815 : CONST0_RTX (V8SImode), operands[4]));
32816 : DONE;
32817 : }
32818 : #undef DONE
32819 : #undef FAIL
32820 : }
32821 : static const uint8_t expand_encoding[] = {
32822 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
32823 : 0x03, 0x01, 0x04
32824 : };
32825 : return complete_seq (expand_encoding, operands);
32826 : }
32827 :
32828 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29101 */
32829 : rtx
32830 : gen_avx512vl_vpermt2varv8hi3_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32831 : {
32832 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32833 : start_sequence ();
32834 : {
32835 : #define FAIL return (end_sequence (), nullptr)
32836 : #define DONE return end_sequence ()
32837 : #line 29108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32838 : {
32839 : emit_insn (gen_avx512vl_vpermt2varv8hi3_maskz_1 (
32840 : operands[0], operands[1], operands[2], operands[3],
32841 : CONST0_RTX (V8HImode), operands[4]));
32842 : DONE;
32843 : }
32844 : #undef DONE
32845 : #undef FAIL
32846 : }
32847 : static const uint8_t expand_encoding[] = {
32848 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
32849 : 0x03, 0x01, 0x04
32850 : };
32851 : return complete_seq (expand_encoding, operands);
32852 : }
32853 :
32854 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29274 */
32855 : rtx
32856 : gen_avx512vl_vinsertv4df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
32857 : {
32858 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
32859 : start_sequence ();
32860 : {
32861 : #define FAIL return (end_sequence (), nullptr)
32862 : #define DONE return end_sequence ()
32863 : #line 29282 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32864 : {
32865 : rtx (*insn)(rtx, rtx, rtx, rtx, rtx);
32866 :
32867 : switch (INTVAL (operands[3]))
32868 : {
32869 : case 0:
32870 : insn = gen_vec_set_lo_v4df_mask;
32871 : break;
32872 : case 1:
32873 : insn = gen_vec_set_hi_v4df_mask;
32874 : break;
32875 : default:
32876 : gcc_unreachable ();
32877 : }
32878 :
32879 : emit_insn (insn (operands[0], operands[1], operands[2], operands[4],
32880 : operands[5]));
32881 : DONE;
32882 : }
32883 : #undef DONE
32884 : #undef FAIL
32885 : }
32886 : static const uint8_t expand_encoding[] = {
32887 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
32888 : 0x03, 0x01, 0x04, 0x01, 0x05
32889 : };
32890 : return complete_seq (expand_encoding, operands);
32891 : }
32892 :
32893 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29568 */
32894 : rtx
32895 : gen_maskloadv2div2di_1 (const rtx operand0, const rtx operand1, const rtx operand2)
32896 : {
32897 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32898 : static const uint8_t expand_encoding[] = {
32899 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x02, 0x01, 0x02,
32900 : 0x01, 0x01, 0x30
32901 : };
32902 : return expand_rtx (expand_encoding, operands);
32903 : }
32904 :
32905 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29576 */
32906 : rtx
32907 : gen_maskloadv2dfv2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32908 : {
32909 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32910 : start_sequence ();
32911 : {
32912 : #define FAIL _Pragma ("GCC error \"maskloadv2dfv2di cannot FAIL\"") (void)0
32913 : #define DONE return end_sequence ()
32914 : #line 29584 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32915 : {
32916 : emit_insn (gen_maskloadv2dfv2di_1 (operands[0],
32917 : operands[1],
32918 : operands[2]));
32919 : DONE;
32920 : }
32921 : #undef DONE
32922 : #undef FAIL
32923 : }
32924 : static const uint8_t expand_encoding[] = {
32925 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x03, 0x01,
32926 : 0x02, 0x01, 0x01, 0x01, 0x03, 0x30
32927 : };
32928 : return complete_seq (expand_encoding, operands);
32929 : }
32930 :
32931 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29591 */
32932 : rtx
32933 : gen_maskloadv8diqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32934 : {
32935 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32936 : static const uint8_t expand_encoding[] = {
32937 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x1a, 0x5c,
32938 : 0x01, 0x01, 0x01, 0x81, 0x32, 0x01, 0x03, 0x01,
32939 : 0x02
32940 : };
32941 : return expand_rtx (expand_encoding, operands);
32942 : }
32943 :
32944 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29601 */
32945 : rtx
32946 : gen_maskloadv16qihi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32947 : {
32948 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32949 : static const uint8_t expand_encoding[] = {
32950 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x1a, 0x4f,
32951 : 0x01, 0x01, 0x01, 0x81, 0x32, 0x01, 0x03, 0x01,
32952 : 0x02
32953 : };
32954 : return expand_rtx (expand_encoding, operands);
32955 : }
32956 :
32957 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29601 */
32958 : rtx
32959 : gen_maskloadv8bfqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32960 : {
32961 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32962 : static const uint8_t expand_encoding[] = {
32963 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x1a, 0x69,
32964 : 0x01, 0x01, 0x01, 0x81, 0x32, 0x01, 0x03, 0x01,
32965 : 0x02
32966 : };
32967 : return expand_rtx (expand_encoding, operands);
32968 : }
32969 :
32970 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29620 */
32971 : rtx
32972 : gen_maskstorev8diqi (const rtx operand0, const rtx operand1, const rtx operand2)
32973 : {
32974 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32975 : static const uint8_t expand_encoding[] = {
32976 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x03, 0x01, 0x01,
32977 : 0x01, 0x00, 0x01, 0x02, 0x30
32978 : };
32979 : return expand_rtx (expand_encoding, operands);
32980 : }
32981 :
32982 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29629 */
32983 : rtx
32984 : gen_maskstorev16qihi (const rtx operand0, const rtx operand1, const rtx operand2)
32985 : {
32986 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32987 : static const uint8_t expand_encoding[] = {
32988 : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x03, 0x01, 0x01,
32989 : 0x01, 0x00, 0x01, 0x02, 0x30
32990 : };
32991 : return expand_rtx (expand_encoding, operands);
32992 : }
32993 :
32994 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29629 */
32995 : rtx
32996 : gen_maskstorev8bfqi (const rtx operand0, const rtx operand1, const rtx operand2)
32997 : {
32998 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32999 : static const uint8_t expand_encoding[] = {
33000 : 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x03, 0x01, 0x01,
33001 : 0x01, 0x00, 0x01, 0x02, 0x30
33002 : };
33003 : return expand_rtx (expand_encoding, operands);
33004 : }
33005 :
33006 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29681 */
33007 : extern rtx_insn *gen_split_3852 (rtx_insn *, rtx *);
33008 : rtx_insn *
33009 : gen_split_3852 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
33010 : {
33011 : if (dump_file)
33012 : fprintf (dump_file, "Splitting with gen_split_3852 (sse.md:29681)\n");
33013 : start_sequence ();
33014 : #define FAIL return (end_sequence (), nullptr)
33015 : #define DONE return end_sequence ()
33016 : #line 29692 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33017 : {
33018 : if (constm1_operand (operands[2], V8DImode))
33019 : emit_move_insn (operands[0], operands[1]);
33020 : else
33021 : emit_note (NOTE_INSN_DELETED);
33022 :
33023 : DONE;
33024 : }
33025 : #undef DONE
33026 : #undef FAIL
33027 : static const uint8_t expand_encoding[] = {
33028 : 0x01, 0x27, 0x00
33029 : };
33030 : return complete_seq (expand_encoding, operands);
33031 : }
33032 :
33033 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29681 */
33034 : extern rtx_insn *gen_split_3862 (rtx_insn *, rtx *);
33035 : rtx_insn *
33036 : gen_split_3862 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
33037 : {
33038 : if (dump_file)
33039 : fprintf (dump_file, "Splitting with gen_split_3862 (sse.md:29681)\n");
33040 : start_sequence ();
33041 : #define FAIL return (end_sequence (), nullptr)
33042 : #define DONE return end_sequence ()
33043 : #line 29692 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33044 : {
33045 : if (constm1_operand (operands[2], V8SFmode))
33046 : emit_move_insn (operands[0], operands[1]);
33047 : else
33048 : emit_note (NOTE_INSN_DELETED);
33049 :
33050 : DONE;
33051 : }
33052 : #undef DONE
33053 : #undef FAIL
33054 : static const uint8_t expand_encoding[] = {
33055 : 0x01, 0x27, 0x00
33056 : };
33057 : return complete_seq (expand_encoding, operands);
33058 : }
33059 :
33060 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29701 */
33061 : rtx
33062 : gen_cbranchv8hi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33063 : {
33064 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33065 : start_sequence ();
33066 : {
33067 : #define FAIL return (end_sequence (), nullptr)
33068 : #define DONE return end_sequence ()
33069 : #line 29711 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33070 : {
33071 : ix86_expand_branch (GET_CODE (operands[0]),
33072 : operands[1], operands[2], operands[3]);
33073 : DONE;
33074 : }
33075 : #undef DONE
33076 : #undef FAIL
33077 : }
33078 : static const uint8_t expand_encoding[] = {
33079 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
33080 : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x03,
33081 : 0x00, 0x00, 0x30, 0x02, 0x11, 0x27, 0x00, 0x37,
33082 : 0x00, 0x01, 0x03, 0x2f
33083 : };
33084 : return complete_seq (expand_encoding, operands);
33085 : }
33086 :
33087 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29760 */
33088 : rtx
33089 : gen_vec_initv64qiqi (const rtx operand0, const rtx operand1)
33090 : {
33091 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33092 : start_sequence ();
33093 : {
33094 : #define FAIL return (end_sequence (), nullptr)
33095 : #define DONE return end_sequence ()
33096 : #line 29764 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33097 : {
33098 : ix86_expand_vector_init (false, operands[0], operands[1]);
33099 : DONE;
33100 : }
33101 : #undef DONE
33102 : #undef FAIL
33103 : }
33104 : static const uint8_t expand_encoding[] = {
33105 : 0x02, 0x01, 0x00, 0x01, 0x01
33106 : };
33107 : return complete_seq (expand_encoding, operands);
33108 : }
33109 :
33110 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29760 */
33111 : rtx
33112 : gen_vec_initv8hihi (const rtx operand0, const rtx operand1)
33113 : {
33114 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33115 : start_sequence ();
33116 : {
33117 : #define FAIL return (end_sequence (), nullptr)
33118 : #define DONE return end_sequence ()
33119 : #line 29764 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33120 : {
33121 : ix86_expand_vector_init (false, operands[0], operands[1]);
33122 : DONE;
33123 : }
33124 : #undef DONE
33125 : #undef FAIL
33126 : }
33127 : static const uint8_t expand_encoding[] = {
33128 : 0x02, 0x01, 0x00, 0x01, 0x01
33129 : };
33130 : return complete_seq (expand_encoding, operands);
33131 : }
33132 :
33133 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29760 */
33134 : rtx
33135 : gen_vec_initv32bfbf (const rtx operand0, const rtx operand1)
33136 : {
33137 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33138 : start_sequence ();
33139 : {
33140 : #define FAIL return (end_sequence (), nullptr)
33141 : #define DONE return end_sequence ()
33142 : #line 29764 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33143 : {
33144 : ix86_expand_vector_init (false, operands[0], operands[1]);
33145 : DONE;
33146 : }
33147 : #undef DONE
33148 : #undef FAIL
33149 : }
33150 : static const uint8_t expand_encoding[] = {
33151 : 0x02, 0x01, 0x00, 0x01, 0x01
33152 : };
33153 : return complete_seq (expand_encoding, operands);
33154 : }
33155 :
33156 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29760 */
33157 : rtx
33158 : gen_vec_initv2titi (const rtx operand0, const rtx operand1)
33159 : {
33160 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33161 : start_sequence ();
33162 : {
33163 : #define FAIL return (end_sequence (), nullptr)
33164 : #define DONE return end_sequence ()
33165 : #line 29764 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33166 : {
33167 : ix86_expand_vector_init (false, operands[0], operands[1]);
33168 : DONE;
33169 : }
33170 : #undef DONE
33171 : #undef FAIL
33172 : }
33173 : static const uint8_t expand_encoding[] = {
33174 : 0x02, 0x01, 0x00, 0x01, 0x01
33175 : };
33176 : return complete_seq (expand_encoding, operands);
33177 : }
33178 :
33179 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29769 */
33180 : rtx
33181 : gen_vec_initv8div4di (const rtx operand0, const rtx operand1)
33182 : {
33183 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33184 : start_sequence ();
33185 : {
33186 : #define FAIL return (end_sequence (), nullptr)
33187 : #define DONE return end_sequence ()
33188 : #line 29773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33189 : {
33190 : ix86_expand_vector_init (false, operands[0], operands[1]);
33191 : DONE;
33192 : }
33193 : #undef DONE
33194 : #undef FAIL
33195 : }
33196 : static const uint8_t expand_encoding[] = {
33197 : 0x02, 0x01, 0x00, 0x01, 0x01
33198 : };
33199 : return complete_seq (expand_encoding, operands);
33200 : }
33201 :
33202 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29769 */
33203 : rtx
33204 : gen_vec_initv4sfv2sf (const rtx operand0, const rtx operand1)
33205 : {
33206 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33207 : start_sequence ();
33208 : {
33209 : #define FAIL return (end_sequence (), nullptr)
33210 : #define DONE return end_sequence ()
33211 : #line 29773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33212 : {
33213 : ix86_expand_vector_init (false, operands[0], operands[1]);
33214 : DONE;
33215 : }
33216 : #undef DONE
33217 : #undef FAIL
33218 : }
33219 : static const uint8_t expand_encoding[] = {
33220 : 0x02, 0x01, 0x00, 0x01, 0x01
33221 : };
33222 : return complete_seq (expand_encoding, operands);
33223 : }
33224 :
33225 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29778 */
33226 : rtx
33227 : gen_cond_ashlv8hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33228 : {
33229 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33230 : start_sequence ();
33231 : {
33232 : #define FAIL _Pragma ("GCC error \"cond_ashlv8hi cannot FAIL\"") (void)0
33233 : #define DONE return end_sequence ()
33234 : #line 29787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33235 : {
33236 : if (const_vec_duplicate_p (operands[3]))
33237 : {
33238 : operands[3] = unwrap_const_vec_duplicate (operands[3]);
33239 : operands[3] = lowpart_subreg (DImode, operands[3], HImode);
33240 : emit_insn (gen_ashlv8hi3_mask (operands[0],
33241 : operands[2],
33242 : operands[3],
33243 : operands[4],
33244 : operands[1]));
33245 : }
33246 : else
33247 : emit_insn (gen_avx512vl_ashlvv8hi_mask (operands[0],
33248 : operands[2],
33249 : operands[3],
33250 : operands[4],
33251 : operands[1]));
33252 : DONE;
33253 : }
33254 : #undef DONE
33255 : #undef FAIL
33256 : }
33257 : static const uint8_t expand_encoding[] = {
33258 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x4d,
33259 : 0x50, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
33260 : 0x01
33261 : };
33262 : return complete_seq (expand_encoding, operands);
33263 : }
33264 :
33265 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29778 */
33266 : rtx
33267 : gen_cond_lshrv4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33268 : {
33269 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33270 : start_sequence ();
33271 : {
33272 : #define FAIL return (end_sequence (), nullptr)
33273 : #define DONE return end_sequence ()
33274 : #line 29787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33275 : {
33276 : if (const_vec_duplicate_p (operands[3]))
33277 : {
33278 : operands[3] = unwrap_const_vec_duplicate (operands[3]);
33279 : operands[3] = lowpart_subreg (DImode, operands[3], SImode);
33280 : emit_insn (gen_lshrv4si3_mask (operands[0],
33281 : operands[2],
33282 : operands[3],
33283 : operands[4],
33284 : operands[1]));
33285 : }
33286 : else
33287 : emit_insn (gen_avx2_lshrvv4si_mask (operands[0],
33288 : operands[2],
33289 : operands[3],
33290 : operands[4],
33291 : operands[1]));
33292 : DONE;
33293 : }
33294 : #undef DONE
33295 : #undef FAIL
33296 : }
33297 : static const uint8_t expand_encoding[] = {
33298 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x50,
33299 : 0x51, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
33300 : 0x01
33301 : };
33302 : return complete_seq (expand_encoding, operands);
33303 : }
33304 :
33305 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29778 */
33306 : rtx
33307 : gen_cond_ashrv2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33308 : {
33309 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33310 : start_sequence ();
33311 : {
33312 : #define FAIL return (end_sequence (), nullptr)
33313 : #define DONE return end_sequence ()
33314 : #line 29787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33315 : {
33316 : if (const_vec_duplicate_p (operands[3]))
33317 : {
33318 : operands[3] = unwrap_const_vec_duplicate (operands[3]);
33319 : operands[3] = lowpart_subreg (DImode, operands[3], DImode);
33320 : emit_insn (gen_ashrv2di3_mask (operands[0],
33321 : operands[2],
33322 : operands[3],
33323 : operands[4],
33324 : operands[1]));
33325 : }
33326 : else
33327 : emit_insn (gen_avx2_ashrvv2di_mask (operands[0],
33328 : operands[2],
33329 : operands[3],
33330 : operands[4],
33331 : operands[1]));
33332 : DONE;
33333 : }
33334 : #undef DONE
33335 : #undef FAIL
33336 : }
33337 : static const uint8_t expand_encoding[] = {
33338 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x4f,
33339 : 0x52, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
33340 : 0x01
33341 : };
33342 : return complete_seq (expand_encoding, operands);
33343 : }
33344 :
33345 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29963 */
33346 : extern rtx_insn *gen_split_3882 (rtx_insn *, rtx *);
33347 : rtx_insn *
33348 : gen_split_3882 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
33349 : {
33350 : if (dump_file)
33351 : fprintf (dump_file, "Splitting with gen_split_3882 (sse.md:29963)\n");
33352 : start_sequence ();
33353 : #define FAIL return (end_sequence (), nullptr)
33354 : #define DONE return end_sequence ()
33355 : #line 29976 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33356 : {
33357 : operands[1] = gen_lowpart (V16HFmode, operands[1]);
33358 : operands[5] = CONST0_RTX (V16HFmode);
33359 : }
33360 : #undef DONE
33361 : #undef FAIL
33362 : static const uint8_t expand_encoding[] = {
33363 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x73, 0x01,
33364 : 0x01, 0x01, 0x05
33365 : };
33366 : return complete_seq (expand_encoding, operands);
33367 : }
33368 :
33369 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29963 */
33370 : extern rtx_insn *gen_split_3892 (rtx_insn *, rtx *);
33371 : rtx_insn *
33372 : gen_split_3892 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
33373 : {
33374 : if (dump_file)
33375 : fprintf (dump_file, "Splitting with gen_split_3892 (sse.md:29963)\n");
33376 : start_sequence ();
33377 : #define FAIL return (end_sequence (), nullptr)
33378 : #define DONE return end_sequence ()
33379 : #line 29976 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33380 : {
33381 : operands[1] = gen_lowpart (V2DFmode, operands[1]);
33382 : operands[5] = CONST0_RTX (V2DFmode);
33383 : }
33384 : #undef DONE
33385 : #undef FAIL
33386 : static const uint8_t expand_encoding[] = {
33387 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x70, 0x01,
33388 : 0x01, 0x01, 0x05
33389 : };
33390 : return complete_seq (expand_encoding, operands);
33391 : }
33392 :
33393 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30168 */
33394 : rtx
33395 : gen_avx2_gathersiv4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33396 : {
33397 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33398 : start_sequence ();
33399 : {
33400 : #define FAIL return (end_sequence (), nullptr)
33401 : #define DONE return end_sequence ()
33402 : #line 30183 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33403 : {
33404 : operands[6]
33405 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33406 : operands[5]), UNSPEC_VSIBADDR);
33407 : }
33408 : #undef DONE
33409 : #undef FAIL
33410 : }
33411 : static const uint8_t expand_encoding[] = {
33412 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33413 : 0x6b, 0x04, 0x01, 0x01, 0x36, 0x2d, 0x04, 0x06,
33414 : 0x36, 0x01, 0x31, 0x00, 0x01, 0x04, 0x81, 0x1a,
33415 : 0x21, 0x00, 0x31, 0x6b
33416 : };
33417 : return complete_seq (expand_encoding, operands);
33418 : }
33419 :
33420 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30231 */
33421 : rtx
33422 : gen_avx2_gatherdiv8sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33423 : {
33424 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33425 : start_sequence ();
33426 : {
33427 : #define FAIL return (end_sequence (), nullptr)
33428 : #define DONE return end_sequence ()
33429 : #line 30246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33430 : {
33431 : operands[6]
33432 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33433 : operands[5]), UNSPEC_VSIBADDR);
33434 : }
33435 : #undef DONE
33436 : #undef FAIL
33437 : }
33438 : static const uint8_t expand_encoding[] = {
33439 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33440 : 0x6f, 0x04, 0x01, 0x01, 0x36, 0x2d, 0x04, 0x06,
33441 : 0x36, 0x01, 0x31, 0x00, 0x01, 0x04, 0x81, 0x1a,
33442 : 0x21, 0x00, 0x31, 0x6f
33443 : };
33444 : return complete_seq (expand_encoding, operands);
33445 : }
33446 :
33447 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30346 */
33448 : rtx
33449 : gen_avx512vl_gathersiv4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33450 : {
33451 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33452 : start_sequence ();
33453 : {
33454 : #define FAIL return (end_sequence (), nullptr)
33455 : #define DONE return end_sequence ()
33456 : #line 30359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33457 : {
33458 : operands[6]
33459 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33460 : operands[5]), UNSPEC_VSIBADDR);
33461 : }
33462 : #undef DONE
33463 : #undef FAIL
33464 : }
33465 : static const uint8_t expand_encoding[] = {
33466 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33467 : 0x6b, 0x03, 0x01, 0x01, 0x01, 0x04, 0x36, 0x2d,
33468 : 0x04, 0x06, 0x81, 0x1a, 0x21, 0x00, 0x31, 0x0f
33469 : };
33470 : return complete_seq (expand_encoding, operands);
33471 : }
33472 :
33473 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30408 */
33474 : rtx
33475 : gen_avx512vl_gatherdiv4df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33476 : {
33477 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33478 : start_sequence ();
33479 : {
33480 : #define FAIL return (end_sequence (), nullptr)
33481 : #define DONE return end_sequence ()
33482 : #line 30421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33483 : {
33484 : operands[6]
33485 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33486 : operands[5]), UNSPEC_VSIBADDR);
33487 : }
33488 : #undef DONE
33489 : #undef FAIL
33490 : }
33491 : static const uint8_t expand_encoding[] = {
33492 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33493 : 0x70, 0x03, 0x01, 0x01, 0x01, 0x04, 0x36, 0x2e,
33494 : 0x04, 0x06, 0x81, 0x1a, 0x21, 0x00, 0x31, 0x0f
33495 : };
33496 : return complete_seq (expand_encoding, operands);
33497 : }
33498 :
33499 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30478 */
33500 : rtx
33501 : gen_avx512vl_scattersiv8sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33502 : {
33503 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33504 : start_sequence ();
33505 : {
33506 : #define FAIL return (end_sequence (), nullptr)
33507 : #define DONE return end_sequence ()
33508 : #line 30490 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33509 : {
33510 : operands[5]
33511 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (4, operands[0], operands[2],
33512 : operands[4], operands[1]),
33513 : UNSPEC_VSIBADDR);
33514 : }
33515 : #undef DONE
33516 : #undef FAIL
33517 : }
33518 : static const uint8_t expand_encoding[] = {
33519 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x36, 0x6f, 0x04,
33520 : 0x05, 0x1a, 0x6f, 0x02, 0x01, 0x01, 0x01, 0x03,
33521 : 0x81, 0x21, 0x21, 0x00, 0x31, 0x0f
33522 : };
33523 : return complete_seq (expand_encoding, operands);
33524 : }
33525 :
33526 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30518 */
33527 : rtx
33528 : gen_avx512f_scatterdiv8df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33529 : {
33530 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33531 : start_sequence ();
33532 : {
33533 : #define FAIL return (end_sequence (), nullptr)
33534 : #define DONE return end_sequence ()
33535 : #line 30530 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33536 : {
33537 : operands[5]
33538 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (4, operands[0], operands[2],
33539 : operands[4], operands[1]),
33540 : UNSPEC_VSIBADDR);
33541 : }
33542 : #undef DONE
33543 : #undef FAIL
33544 : }
33545 : static const uint8_t expand_encoding[] = {
33546 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x36, 0x75, 0x04,
33547 : 0x05, 0x1a, 0x75, 0x02, 0x01, 0x01, 0x01, 0x03,
33548 : 0x81, 0x21, 0x21, 0x00, 0x31, 0x0f
33549 : };
33550 : return complete_seq (expand_encoding, operands);
33551 : }
33552 :
33553 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30616 */
33554 : rtx
33555 : gen_avx512f_expandv16sf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33556 : {
33557 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33558 : start_sequence ();
33559 : {
33560 : #define FAIL return (end_sequence (), nullptr)
33561 : #define DONE return end_sequence ()
33562 : #line 30624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33563 : operands[2] = CONST0_RTX (V16SFmode);
33564 : #undef DONE
33565 : #undef FAIL
33566 : }
33567 : static const uint8_t expand_encoding[] = {
33568 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x03, 0x01,
33569 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
33570 : };
33571 : return complete_seq (expand_encoding, operands);
33572 : }
33573 :
33574 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30616 */
33575 : rtx
33576 : gen_avx512vl_expandv2di_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33577 : {
33578 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33579 : start_sequence ();
33580 : {
33581 : #define FAIL return (end_sequence (), nullptr)
33582 : #define DONE return end_sequence ()
33583 : #line 30624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33584 : operands[2] = CONST0_RTX (V2DImode);
33585 : #undef DONE
33586 : #undef FAIL
33587 : }
33588 : static const uint8_t expand_encoding[] = {
33589 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x03, 0x01,
33590 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
33591 : };
33592 : return complete_seq (expand_encoding, operands);
33593 : }
33594 :
33595 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30656 */
33596 : extern rtx_insn *gen_split_3902 (rtx_insn *, rtx *);
33597 : rtx_insn *
33598 : gen_split_3902 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
33599 : {
33600 : if (dump_file)
33601 : fprintf (dump_file, "Splitting with gen_split_3902 (sse.md:30656)\n");
33602 : start_sequence ();
33603 : #define FAIL return (end_sequence (), nullptr)
33604 : #define DONE return end_sequence ()
33605 : #line 30668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33606 : {
33607 : unsigned HOST_WIDE_INT mask = INTVAL (operands[3]);
33608 : bool has_zero = false;
33609 : unsigned n = GET_MODE_NUNITS (V4SImode), i;
33610 : unsigned ones = 0;
33611 :
33612 : /* If all ones bits is in mask's lower part,
33613 : get number of ones and assign it to ONES. */
33614 : for (i = 0; i != n; i++)
33615 : {
33616 : if ((mask & HOST_WIDE_INT_1U << i) && has_zero)
33617 : break;
33618 :
33619 : /* Record first zero bit. */
33620 : if (!(mask & HOST_WIDE_INT_1U << i) && !has_zero)
33621 : {
33622 : has_zero = true;
33623 : ones = i;
33624 : }
33625 : }
33626 :
33627 : if (!has_zero)
33628 : ones = n;
33629 :
33630 : if (i != n || (ones != 0 && ones != n))
33631 : {
33632 : rtx reg = gen_reg_rtx (QImode);
33633 : emit_move_insn (reg, operands[3]);
33634 : enum insn_code icode;
33635 : if (i == n)
33636 : /* For masks with all one bits in it's lower part,
33637 : we can transform v{,p}expand* to vmovdq* with
33638 : mask operand. */
33639 : icode = CODE_FOR_avx512vl_loadv4si_mask;
33640 : else
33641 : icode = CODE_FOR_expandv4si_mask;
33642 : emit_insn (GEN_FCN (icode) (operands[0], operands[1], operands[2], reg));
33643 : }
33644 : else
33645 : /* For ALL_MASK_ONES or CONST0_RTX mask, transform it to simple mov. */
33646 : emit_move_insn (operands[0], ones ? operands[1] : operands[2]);
33647 : DONE;
33648 : }
33649 : #undef DONE
33650 : #undef FAIL
33651 : static const uint8_t expand_encoding[] = {
33652 : 0x01, 0x27, 0x00
33653 : };
33654 : return complete_seq (expand_encoding, operands);
33655 : }
33656 :
33657 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30712 */
33658 : rtx
33659 : gen_expandv64qi_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33660 : {
33661 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33662 : start_sequence ();
33663 : {
33664 : #define FAIL return (end_sequence (), nullptr)
33665 : #define DONE return end_sequence ()
33666 : #line 30720 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33667 : operands[2] = CONST0_RTX (V64QImode);
33668 : #undef DONE
33669 : #undef FAIL
33670 : }
33671 : static const uint8_t expand_encoding[] = {
33672 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x03, 0x01,
33673 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
33674 : };
33675 : return complete_seq (expand_encoding, operands);
33676 : }
33677 :
33678 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30712 */
33679 : rtx
33680 : gen_expandv32qi_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33681 : {
33682 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33683 : start_sequence ();
33684 : {
33685 : #define FAIL return (end_sequence (), nullptr)
33686 : #define DONE return end_sequence ()
33687 : #line 30720 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33688 : operands[2] = CONST0_RTX (V32QImode);
33689 : #undef DONE
33690 : #undef FAIL
33691 : }
33692 : static const uint8_t expand_encoding[] = {
33693 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x03, 0x01,
33694 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
33695 : };
33696 : return complete_seq (expand_encoding, operands);
33697 : }
33698 :
33699 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31051 */
33700 : extern rtx_insn *gen_split_3913 (rtx_insn *, rtx *);
33701 : rtx_insn *
33702 : gen_split_3913 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
33703 : {
33704 : if (dump_file)
33705 : fprintf (dump_file, "Splitting with gen_split_3913 (sse.md:31051)\n");
33706 : start_sequence ();
33707 : #define FAIL return (end_sequence (), nullptr)
33708 : #define DONE return end_sequence ()
33709 : #line 31062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33710 : {
33711 : if (REG_P (operands[0]))
33712 : operands[0] = gen_lowpart (V4SFmode, operands[0]);
33713 : else
33714 : operands[1] = lowpart_subreg (V16SFmode, operands[1],
33715 : V4SFmode);
33716 : }
33717 : #undef DONE
33718 : #undef FAIL
33719 : static const uint8_t expand_encoding[] = {
33720 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
33721 : };
33722 : return complete_seq (expand_encoding, operands);
33723 : }
33724 :
33725 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31108 */
33726 : rtx
33727 : gen_vpmadd52luqv2di_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33728 : {
33729 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33730 : start_sequence ();
33731 : {
33732 : #define FAIL return (end_sequence (), nullptr)
33733 : #define DONE return end_sequence ()
33734 : #line 31115 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33735 : {
33736 : emit_insn (gen_vpmadd52luqv2di_maskz_1 (
33737 : operands[0], operands[1], operands[2], operands[3],
33738 : CONST0_RTX (V2DImode), operands[4]));
33739 : DONE;
33740 : }
33741 : #undef DONE
33742 : #undef FAIL
33743 : }
33744 : static const uint8_t expand_encoding[] = {
33745 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33746 : 0x03, 0x01, 0x04
33747 : };
33748 : return complete_seq (expand_encoding, operands);
33749 : }
33750 :
33751 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31362 */
33752 : rtx
33753 : gen_vpshrdv_v8si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33754 : {
33755 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33756 : start_sequence ();
33757 : {
33758 : #define FAIL return (end_sequence (), nullptr)
33759 : #define DONE return end_sequence ()
33760 : #line 31369 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33761 : {
33762 : emit_insn (gen_vpshrdv_v8si_maskz_1 (operands[0], operands[1],
33763 : operands[2], operands[3],
33764 : CONST0_RTX (V8SImode),
33765 : operands[4]));
33766 : DONE;
33767 : }
33768 : #undef DONE
33769 : #undef FAIL
33770 : }
33771 : static const uint8_t expand_encoding[] = {
33772 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33773 : 0x03, 0x01, 0x04
33774 : };
33775 : return complete_seq (expand_encoding, operands);
33776 : }
33777 :
33778 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31419 */
33779 : rtx
33780 : gen_vpshldv_v4di_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33781 : {
33782 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33783 : start_sequence ();
33784 : {
33785 : #define FAIL return (end_sequence (), nullptr)
33786 : #define DONE return end_sequence ()
33787 : #line 31426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33788 : {
33789 : emit_insn (gen_vpshldv_v4di_maskz_1 (operands[0], operands[1],
33790 : operands[2], operands[3],
33791 : CONST0_RTX (V4DImode),
33792 : operands[4]));
33793 : DONE;
33794 : }
33795 : #undef DONE
33796 : #undef FAIL
33797 : }
33798 : static const uint8_t expand_encoding[] = {
33799 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33800 : 0x03, 0x01, 0x04
33801 : };
33802 : return complete_seq (expand_encoding, operands);
33803 : }
33804 :
33805 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31606 */
33806 : rtx
33807 : gen_vpdpbusds_v16si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33808 : {
33809 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33810 : start_sequence ();
33811 : {
33812 : #define FAIL return (end_sequence (), nullptr)
33813 : #define DONE return end_sequence ()
33814 : #line 31613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33815 : {
33816 : emit_insn (gen_vpdpbusds_v16si_maskz_1 (operands[0], operands[1],
33817 : operands[2], operands[3],
33818 : CONST0_RTX (V16SImode),
33819 : operands[4]));
33820 : DONE;
33821 : }
33822 : #undef DONE
33823 : #undef FAIL
33824 : }
33825 : static const uint8_t expand_encoding[] = {
33826 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33827 : 0x03, 0x01, 0x04
33828 : };
33829 : return complete_seq (expand_encoding, operands);
33830 : }
33831 :
33832 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31744 */
33833 : rtx
33834 : gen_vpdpwssds_v8si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33835 : {
33836 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33837 : start_sequence ();
33838 : {
33839 : #define FAIL return (end_sequence (), nullptr)
33840 : #define DONE return end_sequence ()
33841 : #line 31751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33842 : {
33843 : emit_insn (gen_vpdpwssds_v8si_maskz_1 (operands[0], operands[1],
33844 : operands[2], operands[3],
33845 : CONST0_RTX (V8SImode),
33846 : operands[4]));
33847 : DONE;
33848 : }
33849 : #undef DONE
33850 : #undef FAIL
33851 : }
33852 : static const uint8_t expand_encoding[] = {
33853 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33854 : 0x03, 0x01, 0x04
33855 : };
33856 : return complete_seq (expand_encoding, operands);
33857 : }
33858 :
33859 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31999 */
33860 : rtx
33861 : gen_avx512f_cvtneps2bf16_v4sf_maskz (const rtx operand0, const rtx operand1, const rtx operand2)
33862 : {
33863 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
33864 : start_sequence ();
33865 : {
33866 : #define FAIL return (end_sequence (), nullptr)
33867 : #define DONE return end_sequence ()
33868 : #line 32004 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33869 : {
33870 : emit_insn (gen_avx512f_cvtneps2bf16_v4sf_mask_1(operands[0], operands[1],
33871 : CONST0_RTX(V8BFmode), operands[2], CONST0_RTX(V4BFmode)));
33872 : DONE;
33873 : }
33874 : #undef DONE
33875 : #undef FAIL
33876 : }
33877 : static const uint8_t expand_encoding[] = {
33878 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
33879 : };
33880 : return complete_seq (expand_encoding, operands);
33881 : }
33882 :
33883 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32113 */
33884 : rtx
33885 : gen_avx512f_dpbf16ps_v16sf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33886 : {
33887 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33888 : start_sequence ();
33889 : {
33890 : #define FAIL return (end_sequence (), nullptr)
33891 : #define DONE return end_sequence ()
33892 : #line 32120 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33893 : {
33894 : emit_insn (gen_avx512f_dpbf16ps_v16sf_maskz_1(operands[0], operands[1],
33895 : operands[2], operands[3], CONST0_RTX(V16SFmode), operands[4]));
33896 : DONE;
33897 : }
33898 : #undef DONE
33899 : #undef FAIL
33900 : }
33901 : static const uint8_t expand_encoding[] = {
33902 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33903 : 0x03, 0x01, 0x04
33904 : };
33905 : return complete_seq (expand_encoding, operands);
33906 : }
33907 :
33908 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32376 */
33909 : rtx
33910 : gen_vec_duplicatev32qi (const rtx operand0, const rtx operand1)
33911 : {
33912 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33913 : start_sequence ();
33914 : {
33915 : #define FAIL return (end_sequence (), nullptr)
33916 : #define DONE return end_sequence ()
33917 : #line 32381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33918 : {
33919 : if (!ix86_expand_vector_init_duplicate (false,
33920 : GET_MODE (operands[0]),
33921 : operands[0],
33922 : operands[1]))
33923 : gcc_unreachable ();
33924 : DONE;
33925 : }
33926 : #undef DONE
33927 : #undef FAIL
33928 : }
33929 : static const uint8_t expand_encoding[] = {
33930 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x54, 0x01,
33931 : 0x01
33932 : };
33933 : return complete_seq (expand_encoding, operands);
33934 : }
33935 :
33936 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32376 */
33937 : rtx
33938 : gen_vec_duplicatev8si (const rtx operand0, const rtx operand1)
33939 : {
33940 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33941 : start_sequence ();
33942 : {
33943 : #define FAIL return (end_sequence (), nullptr)
33944 : #define DONE return end_sequence ()
33945 : #line 32381 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33946 : {
33947 : if (!ix86_expand_vector_init_duplicate (false,
33948 : GET_MODE (operands[0]),
33949 : operands[0],
33950 : operands[1]))
33951 : gcc_unreachable ();
33952 : DONE;
33953 : }
33954 : #undef DONE
33955 : #undef FAIL
33956 : }
33957 : static const uint8_t expand_encoding[] = {
33958 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x56, 0x01,
33959 : 0x01
33960 : };
33961 : return complete_seq (expand_encoding, operands);
33962 : }
33963 :
33964 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32451 */
33965 : rtx
33966 : gen_udot_prodv4siv16qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33967 : {
33968 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33969 : start_sequence ();
33970 : {
33971 : #define FAIL return (end_sequence (), nullptr)
33972 : #define DONE return end_sequence ()
33973 : #line 32457 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33974 : {
33975 : if ((16 == 64 && TARGET_AVX10_2)
33976 : || (16 < 64 && (TARGET_AVXVNNIINT8 || TARGET_AVX10_2)))
33977 : {
33978 : operands[1] = lowpart_subreg (V4SImode,
33979 : force_reg (V16QImode, operands[1]),
33980 : V16QImode);
33981 : operands[2] = lowpart_subreg (V4SImode,
33982 : force_reg (V16QImode, operands[2]),
33983 : V16QImode);
33984 : emit_insn (gen_vpdpbuud_v4si (operands[0], operands[3],
33985 : operands[1], operands[2]));
33986 : }
33987 : else
33988 : {
33989 : /* Emulate with vpdpwssd. */
33990 : rtx op1_lo = gen_reg_rtx (V8HImode);
33991 : rtx op1_hi = gen_reg_rtx (V8HImode);
33992 : rtx op2_lo = gen_reg_rtx (V8HImode);
33993 : rtx op2_hi = gen_reg_rtx (V8HImode);
33994 :
33995 : emit_insn (gen_vec_unpacku_lo_v16qi (op1_lo, operands[1]));
33996 : emit_insn (gen_vec_unpacku_lo_v16qi (op2_lo, operands[2]));
33997 : emit_insn (gen_vec_unpacku_hi_v16qi (op1_hi, operands[1]));
33998 : emit_insn (gen_vec_unpacku_hi_v16qi (op2_hi, operands[2]));
33999 :
34000 : rtx res1 = gen_reg_rtx (V4SImode);
34001 : rtx res2 = gen_reg_rtx (V4SImode);
34002 : rtx sum = gen_reg_rtx (V4SImode);
34003 :
34004 : emit_move_insn (sum, CONST0_RTX (V4SImode));
34005 : emit_insn (gen_sdot_prodv4siv8hi (res1,
34006 : op1_lo, op2_lo, sum));
34007 : emit_insn (gen_sdot_prodv4siv8hi (res2,
34008 : op1_hi, op2_hi,
34009 : operands[3]));
34010 : emit_insn (gen_addv4si3 (operands[0], res1, res2));
34011 : }
34012 :
34013 : DONE;
34014 : }
34015 : #undef DONE
34016 : #undef FAIL
34017 : }
34018 : static const uint8_t expand_encoding[] = {
34019 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34020 : 0x03
34021 : };
34022 : return complete_seq (expand_encoding, operands);
34023 : }
34024 :
34025 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32535 */
34026 : rtx
34027 : gen_vpdpbuuds_v4si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34028 : {
34029 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34030 : start_sequence ();
34031 : {
34032 : #define FAIL return (end_sequence (), nullptr)
34033 : #define DONE return end_sequence ()
34034 : #line 32546 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34035 : operands[5] = CONST0_RTX (V4SImode);
34036 : #undef DONE
34037 : #undef FAIL
34038 : }
34039 : static const uint8_t expand_encoding[] = {
34040 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a,
34041 : 0x51, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
34042 : 0x81, 0x69, 0x01, 0x05, 0x01, 0x04
34043 : };
34044 : return complete_seq (expand_encoding, operands);
34045 : }
34046 :
34047 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32785 */
34048 : rtx
34049 : gen_vcvtph2bf8sv8hf (const rtx operand0, const rtx operand1)
34050 : {
34051 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
34052 : start_sequence ();
34053 : {
34054 : #define FAIL return (end_sequence (), nullptr)
34055 : #define DONE return end_sequence ()
34056 : #line 32793 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34057 : operands[2] = CONST0_RTX (V8QImode);
34058 : #undef DONE
34059 : #undef FAIL
34060 : }
34061 : static const uint8_t expand_encoding[] = {
34062 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x1a,
34063 : 0x48, 0x01, 0x01, 0x01, 0x81, 0x7f, 0x01, 0x02
34064 : };
34065 : return complete_seq (expand_encoding, operands);
34066 : }
34067 :
34068 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32807 */
34069 : rtx
34070 : gen_vcvtph2hf8sv8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34071 : {
34072 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34073 : start_sequence ();
34074 : {
34075 : #define FAIL return (end_sequence (), nullptr)
34076 : #define DONE return end_sequence ()
34077 : #line 32823 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34078 : operands[4] = CONST0_RTX (V8QImode);
34079 : #undef DONE
34080 : #undef FAIL
34081 : }
34082 : static const uint8_t expand_encoding[] = {
34083 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x81,
34084 : 0x09, 0x48, 0x1a, 0x48, 0x01, 0x01, 0x01, 0x82,
34085 : 0x01, 0x81, 0x0a, 0x48, 0x01, 0x02, 0x17, 0x00,
34086 : 0x08, 0x27, 0x00, 0x27, 0x01, 0x27, 0x02, 0x27,
34087 : 0x03, 0x27, 0x04, 0x27, 0x05, 0x27, 0x06, 0x27,
34088 : 0x07, 0x01, 0x03, 0x01, 0x04
34089 : };
34090 : return complete_seq (expand_encoding, operands);
34091 : }
34092 :
34093 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32947 */
34094 : rtx
34095 : gen_vpdpwsuds_v16si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34096 : {
34097 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34098 : start_sequence ();
34099 : {
34100 : #define FAIL return (end_sequence (), nullptr)
34101 : #define DONE return end_sequence ()
34102 : #line 32958 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34103 : operands[5] = CONST0_RTX (V16SImode);
34104 : #undef DONE
34105 : #undef FAIL
34106 : }
34107 : static const uint8_t expand_encoding[] = {
34108 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a,
34109 : 0x5b, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
34110 : 0x81, 0x6d, 0x01, 0x05, 0x01, 0x04
34111 : };
34112 : return complete_seq (expand_encoding, operands);
34113 : }
34114 :
34115 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32947 */
34116 : rtx
34117 : gen_vpdpwusds_v4si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34118 : {
34119 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34120 : start_sequence ();
34121 : {
34122 : #define FAIL return (end_sequence (), nullptr)
34123 : #define DONE return end_sequence ()
34124 : #line 32958 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34125 : operands[5] = CONST0_RTX (V4SImode);
34126 : #undef DONE
34127 : #undef FAIL
34128 : }
34129 : static const uint8_t expand_encoding[] = {
34130 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a,
34131 : 0x51, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
34132 : 0x81, 0x6b, 0x01, 0x05, 0x01, 0x04
34133 : };
34134 : return complete_seq (expand_encoding, operands);
34135 : }
34136 :
34137 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33036 */
34138 : rtx
34139 : gen_smaxv16bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
34140 : {
34141 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
34142 : static const uint8_t expand_encoding[] = {
34143 : 0x1f, 0x01, 0x00, 0x53, 0x6d, 0x01, 0x01, 0x01,
34144 : 0x02
34145 : };
34146 : return expand_rtx (expand_encoding, operands);
34147 : }
34148 :
34149 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33124 */
34150 : rtx
34151 : gen_avx10_2_fnmaddbf16_v32bf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34152 : {
34153 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34154 : start_sequence ();
34155 : {
34156 : #define FAIL return (end_sequence (), nullptr)
34157 : #define DONE return end_sequence ()
34158 : #line 33131 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34159 : {
34160 : emit_insn (gen_avx10_2_fnmaddbf16_v32bf_maskz_1 (operands[0], operands[1],
34161 : operands[2], operands[3],
34162 : CONST0_RTX (V32BFmode),
34163 : operands[4]));
34164 : DONE;
34165 : }
34166 : #undef DONE
34167 : #undef FAIL
34168 : }
34169 : static const uint8_t expand_encoding[] = {
34170 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34171 : 0x03, 0x01, 0x04
34172 : };
34173 : return complete_seq (expand_encoding, operands);
34174 : }
34175 :
34176 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:67 */
34177 : rtx
34178 : gen_sse_sfence (void)
34179 : {
34180 : rtx operands[1] ATTRIBUTE_UNUSED;
34181 : start_sequence ();
34182 : {
34183 : #define FAIL return (end_sequence (), nullptr)
34184 : #define DONE return end_sequence ()
34185 : #line 71 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34186 : {
34187 : operands[0] = gen_rtx_MEM (BLKmode, gen_rtx_SCRATCH (Pmode));
34188 : MEM_VOLATILE_P (operands[0]) = 1;
34189 : }
34190 : #undef DONE
34191 : #undef FAIL
34192 : }
34193 : static const uint8_t expand_encoding[] = {
34194 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x01, 0x01, 0x01,
34195 : 0x00, 0x82, 0x1d
34196 : };
34197 : return complete_seq (expand_encoding, operands);
34198 : }
34199 :
34200 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:238 */
34201 : rtx
34202 : gen_atomic_storeqi (const rtx operand0, const rtx operand1, const rtx operand2)
34203 : {
34204 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
34205 : start_sequence ();
34206 : {
34207 : #define FAIL return (end_sequence (), nullptr)
34208 : #define DONE return end_sequence ()
34209 : #line 244 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34210 : {
34211 : enum memmodel model = memmodel_from_int (INTVAL (operands[2]));
34212 :
34213 : if (QImode == DImode && !TARGET_64BIT)
34214 : {
34215 : /* For DImode on 32-bit, we can use the FPU to perform the store. */
34216 : /* Note that while we could perform a cmpxchg8b loop, that turns
34217 : out to be significantly larger than this plus a barrier. */
34218 : emit_insn (gen_atomic_storedi_fpu
34219 : (operands[0], operands[1],
34220 : assign_stack_temp (DImode, GET_MODE_SIZE (DImode))));
34221 : }
34222 : else
34223 : {
34224 : operands[1] = force_reg (QImode, operands[1]);
34225 :
34226 : /* For seq-cst stores, use XCHG when we lack MFENCE. */
34227 : if (is_mm_seq_cst (model)
34228 : && (!(TARGET_64BIT || TARGET_SSE2)
34229 : || TARGET_AVOID_MFENCE))
34230 : {
34231 : emit_insn (gen_atomic_exchangeqi (gen_reg_rtx (QImode),
34232 : operands[0], operands[1],
34233 : operands[2]));
34234 : DONE;
34235 : }
34236 :
34237 : /* Otherwise use a store. */
34238 : emit_insn (gen_atomic_storeqi_1 (operands[0], operands[1],
34239 : operands[2]));
34240 : }
34241 : /* ... followed by an MFENCE, if required. */
34242 : if (is_mm_seq_cst (model))
34243 : emit_insn (gen_mem_thread_fence (operands[2]));
34244 : DONE;
34245 : }
34246 : #undef DONE
34247 : #undef FAIL
34248 : }
34249 : static const uint8_t expand_encoding[] = {
34250 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x02, 0x01,
34251 : 0x01, 0x01, 0x02, 0x82, 0x24
34252 : };
34253 : return complete_seq (expand_encoding, operands);
34254 : }
34255 :
34256 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:504 */
34257 : extern rtx_insn *gen_peephole2_435 (rtx_insn *, rtx *);
34258 : rtx_insn *
34259 : gen_peephole2_435 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
34260 : {
34261 : if (dump_file)
34262 : fprintf (dump_file, "Splitting with gen_peephole2_435 (sync.md:504)\n");
34263 : start_sequence ();
34264 : static const uint8_t expand_encoding[] = {
34265 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x17, 0x00,
34266 : 0x03, 0x1f, 0x01, 0x00, 0x1b, 0x0f, 0x04, 0x01,
34267 : 0x02, 0x01, 0x00, 0x01, 0x03, 0x01, 0x04, 0x6d,
34268 : 0x1f, 0x01, 0x02, 0x1b, 0x0f, 0x01, 0x27, 0x00,
34269 : 0x6d, 0x1f, 0x30, 0x0c, 0x11, 0x1b, 0x0c, 0x01,
34270 : 0x27, 0x00, 0x6d
34271 : };
34272 : return complete_seq (expand_encoding, operands);
34273 : }
34274 :
34275 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:539 */
34276 : extern rtx_insn *gen_peephole2_444 (rtx_insn *, rtx *);
34277 : rtx_insn *
34278 : gen_peephole2_444 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
34279 : {
34280 : if (dump_file)
34281 : fprintf (dump_file, "Splitting with gen_peephole2_444 (sync.md:539)\n");
34282 : start_sequence ();
34283 : static const uint8_t expand_encoding[] = {
34284 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x01,
34285 : 0x01, 0x05, 0x02, 0x11, 0x17, 0x00, 0x03, 0x1f,
34286 : 0x01, 0x02, 0x1b, 0x11, 0x04, 0x01, 0x03, 0x01,
34287 : 0x02, 0x01, 0x04, 0x01, 0x05, 0x6d, 0x1f, 0x01,
34288 : 0x03, 0x1b, 0x11, 0x01, 0x27, 0x00, 0x6d, 0x1f,
34289 : 0x30, 0x0c, 0x11, 0x1b, 0x0c, 0x01, 0x27, 0x00,
34290 : 0x6d
34291 : };
34292 : return complete_seq (expand_encoding, operands);
34293 : }
34294 :
34295 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:573 */
34296 : rtx
34297 : gen_atomic_fetch_orsi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34298 : {
34299 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34300 : start_sequence ();
34301 : {
34302 : #define FAIL return (end_sequence (), nullptr)
34303 : #define DONE return end_sequence ()
34304 : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34305 : {
34306 : ix86_expand_atomic_fetch_op_loop (operands[0], operands[1],
34307 : operands[2], IOR, false,
34308 : false);
34309 : DONE;
34310 : }
34311 : #undef DONE
34312 : #undef FAIL
34313 : }
34314 : static const uint8_t expand_encoding[] = {
34315 : 0x03, 0x01, 0x00, 0x4a, 0x11, 0x01, 0x01, 0x01,
34316 : 0x02, 0x01, 0x03
34317 : };
34318 : return complete_seq (expand_encoding, operands);
34319 : }
34320 :
34321 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:587 */
34322 : rtx
34323 : gen_atomic_xor_fetchsi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34324 : {
34325 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34326 : start_sequence ();
34327 : {
34328 : #define FAIL return (end_sequence (), nullptr)
34329 : #define DONE return end_sequence ()
34330 : #line 594 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34331 : {
34332 : ix86_expand_atomic_fetch_op_loop (operands[0], operands[1],
34333 : operands[2], XOR, true,
34334 : false);
34335 : DONE;
34336 : }
34337 : #undef DONE
34338 : #undef FAIL
34339 : }
34340 : static const uint8_t expand_encoding[] = {
34341 : 0x03, 0x01, 0x00, 0x4b, 0x11, 0x01, 0x01, 0x01,
34342 : 0x02, 0x01, 0x03
34343 : };
34344 : return complete_seq (expand_encoding, operands);
34345 : }
34346 :
34347 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:627 */
34348 : rtx
34349 : gen_atomic_fetch_orti (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34350 : {
34351 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34352 : start_sequence ();
34353 : {
34354 : #define FAIL return (end_sequence (), nullptr)
34355 : #define DONE return end_sequence ()
34356 : #line 634 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34357 : {
34358 : bool doubleword = (TImode == DImode && !TARGET_64BIT)
34359 : || (TImode == TImode);
34360 : ix86_expand_atomic_fetch_op_loop (operands[0], operands[1],
34361 : operands[2], IOR, false,
34362 : doubleword);
34363 : DONE;
34364 : }
34365 : #undef DONE
34366 : #undef FAIL
34367 : }
34368 : static const uint8_t expand_encoding[] = {
34369 : 0x03, 0x01, 0x00, 0x4a, 0x13, 0x01, 0x01, 0x01,
34370 : 0x02, 0x01, 0x03
34371 : };
34372 : return complete_seq (expand_encoding, operands);
34373 : }
34374 :
34375 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:659 */
34376 : rtx
34377 : gen_atomic_fetch_nandti (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34378 : {
34379 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34380 : start_sequence ();
34381 : {
34382 : #define FAIL return (end_sequence (), nullptr)
34383 : #define DONE return end_sequence ()
34384 : #line 665 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34385 : {
34386 : bool doubleword = (TImode == DImode && !TARGET_64BIT)
34387 : || (TImode == TImode);
34388 : ix86_expand_atomic_fetch_op_loop (operands[0], operands[1],
34389 : operands[2], NOT, false,
34390 : doubleword);
34391 : DONE;
34392 : }
34393 : #undef DONE
34394 : #undef FAIL
34395 : }
34396 : static const uint8_t expand_encoding[] = {
34397 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34398 : 0x03
34399 : };
34400 : return complete_seq (expand_encoding, operands);
34401 : }
34402 :
34403 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:889 */
34404 : rtx
34405 : gen_atomic_bit_test_and_setdi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34406 : {
34407 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34408 : start_sequence ();
34409 : {
34410 : #define FAIL return (end_sequence (), nullptr)
34411 : #define DONE return end_sequence ()
34412 : #line 896 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34413 : {
34414 : emit_insn (gen_atomic_bit_test_and_setdi_1 (operands[1], operands[2],
34415 : operands[3]));
34416 : rtx tem = gen_reg_rtx (QImode);
34417 : ix86_expand_setcc (tem, EQ, gen_rtx_REG (CCCmode, FLAGS_REG), const0_rtx);
34418 : rtx result = convert_modes (DImode, QImode, tem, 1);
34419 : if (operands[4] == const0_rtx)
34420 : result = expand_simple_binop (DImode, ASHIFT, result,
34421 : operands[2], operands[0], 0, OPTAB_WIDEN);
34422 : if (result != operands[0])
34423 : emit_move_insn (operands[0], result);
34424 : DONE;
34425 : }
34426 : #undef DONE
34427 : #undef FAIL
34428 : }
34429 : static const uint8_t expand_encoding[] = {
34430 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34431 : 0x03, 0x01, 0x04
34432 : };
34433 : return complete_seq (expand_encoding, operands);
34434 : }
34435 :
34436 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1000 */
34437 : rtx
34438 : gen_atomic_sub_fetch_cmp_0hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34439 : {
34440 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34441 : start_sequence ();
34442 : {
34443 : #define FAIL return (end_sequence (), nullptr)
34444 : #define DONE return end_sequence ()
34445 : #line 1007 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34446 : {
34447 : if (INTVAL (operands[4]) == GT || INTVAL (operands[4]) == LE)
34448 : FAIL;
34449 : emit_insn (gen_atomic_sub_fetch_cmp_0hi_1 (operands[1],
34450 : operands[2],
34451 : operands[3]));
34452 : ix86_expand_setcc (operands[0], (enum rtx_code) INTVAL (operands[4]),
34453 : gen_rtx_REG (CCGOCmode, FLAGS_REG), const0_rtx);
34454 : DONE;
34455 : }
34456 : #undef DONE
34457 : #undef FAIL
34458 : }
34459 : static const uint8_t expand_encoding[] = {
34460 : 0x04, 0x01, 0x00, 0x3c, 0x10, 0x01, 0x01, 0x01,
34461 : 0x02, 0x01, 0x03, 0x01, 0x04
34462 : };
34463 : return complete_seq (expand_encoding, operands);
34464 : }
34465 :
34466 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1074 */
34467 : rtx
34468 : gen_atomic_xor_fetch_cmp_0hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34469 : {
34470 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34471 : start_sequence ();
34472 : {
34473 : #define FAIL return (end_sequence (), nullptr)
34474 : #define DONE return end_sequence ()
34475 : #line 1081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34476 : {
34477 : emit_insn (gen_atomic_xor_fetch_cmp_0hi_1 (operands[1], operands[2],
34478 : operands[3]));
34479 : ix86_expand_setcc (operands[0], (enum rtx_code) INTVAL (operands[4]),
34480 : gen_rtx_REG (CCNOmode, FLAGS_REG), const0_rtx);
34481 : DONE;
34482 : }
34483 : #undef DONE
34484 : #undef FAIL
34485 : }
34486 : static const uint8_t expand_encoding[] = {
34487 : 0x04, 0x01, 0x00, 0x4b, 0x10, 0x01, 0x01, 0x01,
34488 : 0x02, 0x01, 0x03, 0x01, 0x04
34489 : };
34490 : return complete_seq (expand_encoding, operands);
34491 : }
34492 :
34493 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1170 */
34494 : extern rtx_insn *gen_peephole2_458 (rtx_insn *, rtx *);
34495 : rtx_insn *
34496 : gen_peephole2_458 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
34497 : {
34498 : if (dump_file)
34499 : fprintf (dump_file, "Splitting with gen_peephole2_458 (sync.md:1170)\n");
34500 : start_sequence ();
34501 : #define FAIL return (end_sequence (), nullptr)
34502 : #define DONE return end_sequence ()
34503 : #line 1212 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34504 : {
34505 : operands[9] = gen_rtx_REG (GET_MODE (XEXP (operands[8], 0)), FLAGS_REG);
34506 : if (swap_condition (GET_CODE (operands[8])) != GET_CODE (operands[8]))
34507 : {
34508 : operands[8] = shallow_copy_rtx (operands[8]);
34509 : enum rtx_code ccode = swap_condition (GET_CODE (operands[8]));
34510 : PUT_CODE (operands[8], ccode);
34511 : operands[9] = gen_rtx_REG (SELECT_CC_MODE (ccode,
34512 : operands[6],
34513 : operands[5]),
34514 : FLAGS_REG);
34515 : }
34516 : }
34517 : #undef DONE
34518 : #undef FAIL
34519 : static const uint8_t expand_encoding[] = {
34520 : 0x03, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x17, 0x00,
34521 : 0x03, 0x1f, 0x01, 0x00, 0x1b, 0x12, 0x04, 0x01,
34522 : 0x02, 0x01, 0x00, 0x01, 0x03, 0x01, 0x04, 0x70,
34523 : 0x1f, 0x01, 0x02, 0x1b, 0x12, 0x01, 0x27, 0x00,
34524 : 0x70, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
34525 : 0x02, 0x01, 0x00, 0x1f, 0x01, 0x07, 0x02, 0x08,
34526 : 0x01, 0x09, 0x27, 0x00
34527 : };
34528 : return complete_seq (expand_encoding, operands);
34529 : }
34530 :
|