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:1530 */
41 : rtx
42 26 : gen_ccmpsi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
43 : {
44 26 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
45 26 : static const uint8_t expand_encoding[] = {
46 : 0x1f, 0x01, 0x00, 0x39, 0x02, 0x03, 0x00, 0x01,
47 : 0x30, 0x02, 0x11, 0x27, 0x00, 0x3a, 0x02, 0x3c,
48 : 0x11, 0x01, 0x02, 0x01, 0x03, 0x27, 0x00, 0x1a,
49 : 0x02, 0x01, 0x01, 0x04, 0x6e
50 : };
51 26 : return expand_rtx (expand_encoding, operands);
52 : }
53 :
54 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3949 */
55 : rtx
56 88 : gen_popp_di (const rtx operand0, const rtx operand1)
57 : {
58 88 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
59 88 : static const uint8_t expand_encoding[] = {
60 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01,
61 : 0x1a, 0x12, 0x01, 0x27, 0x00, 0x6d
62 : };
63 88 : return expand_rtx (expand_encoding, operands);
64 : }
65 :
66 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:4937 */
67 : rtx
68 0 : gen_zero_extendqihi2_and (const rtx operand0, const rtx operand1)
69 : {
70 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
71 0 : static const uint8_t expand_encoding[] = {
72 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x10,
73 : 0x01, 0x01, 0x05, 0x02, 0x11
74 : };
75 0 : return expand_rtx (expand_encoding, operands);
76 : }
77 :
78 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5704 */
79 : rtx
80 475 : gen_truncxfsf2 (const rtx operand0, const rtx operand1)
81 : {
82 475 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
83 475 : static const uint8_t expand_encoding[] = {
84 : 0x1f, 0x01, 0x00, 0x72, 0x2d, 0x01, 0x01
85 : };
86 475 : return expand_rtx (expand_encoding, operands);
87 : }
88 :
89 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5922 */
90 : rtx
91 4 : gen_fixuns_truncdfsi2_avx512f (const rtx operand0, const rtx operand1)
92 : {
93 4 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
94 4 : static const uint8_t expand_encoding[] = {
95 : 0x1f, 0x01, 0x00, 0x76, 0x11, 0x01, 0x01
96 : };
97 4 : return expand_rtx (expand_encoding, operands);
98 : }
99 :
100 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6079 */
101 : rtx
102 1629 : gen_fix_truncsi_i387 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
103 : {
104 1629 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
105 1629 : static const uint8_t expand_encoding[] = {
106 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x74, 0x11,
107 : 0x01, 0x01, 0x20, 0x00, 0x01, 0x02, 0x20, 0x00,
108 : 0x01, 0x03
109 : };
110 1629 : return expand_rtx (expand_encoding, operands);
111 : }
112 :
113 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6345 */
114 : rtx
115 23 : gen_floatunssidf2_i387_with_xmm (const rtx operand0, const rtx operand1, const rtx operand2)
116 : {
117 23 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
118 23 : static const uint8_t expand_encoding[] = {
119 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x75, 0x2e,
120 : 0x01, 0x01, 0x21, 0x00, 0x01, 0x02, 0x21, 0x00,
121 : 0x31, 0x12
122 : };
123 23 : return expand_rtx (expand_encoding, operands);
124 : }
125 :
126 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8509 */
127 : rtx
128 2 : gen_subvdi4_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
129 : {
130 2 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
131 2 : static const uint8_t expand_encoding[] = {
132 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x09, 0x11, 0x5d,
133 : 0x09, 0x3c, 0x13, 0x6e, 0x13, 0x01, 0x01, 0x01,
134 : 0x03, 0x6e, 0x13, 0x3c, 0x12, 0x01, 0x01, 0x01,
135 : 0x02, 0x1f, 0x01, 0x00, 0x3c, 0x12, 0x01, 0x01,
136 : 0x01, 0x02
137 : };
138 2 : return expand_rtx (expand_encoding, operands);
139 : }
140 :
141 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:9870 */
142 : rtx
143 6618 : gen_subdi3_carry_ccc (const rtx operand0, const rtx operand1, const rtx operand2)
144 : {
145 6618 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
146 6618 : static const uint8_t expand_encoding[] = {
147 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a,
148 : 0x08, 0x6f, 0x13, 0x01, 0x01, 0x3b, 0x13, 0x66,
149 : 0x13, 0x30, 0x02, 0x11, 0x27, 0x00, 0x6f, 0x13,
150 : 0x01, 0x02, 0x21, 0x00, 0x31, 0x12
151 : };
152 6618 : return expand_rtx (expand_encoding, operands);
153 : }
154 :
155 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11511 */
156 : rtx
157 1182 : gen_smulsi3_highpart (const rtx operand0, const rtx operand1, const rtx operand2)
158 : {
159 1182 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
160 1182 : static const uint8_t expand_encoding[] = {
161 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x41, 0x11,
162 : 0x01, 0x01, 0x01, 0x02, 0x21, 0x00, 0x31, 0x11,
163 : 0x05, 0x02, 0x11
164 : };
165 1182 : return expand_rtx (expand_encoding, operands);
166 : }
167 :
168 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11807 */
169 : rtx
170 8 : gen_divmodsi4_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
171 : {
172 8 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
173 8 : static const uint8_t expand_encoding[] = {
174 : 0x17, 0x00, 0x04, 0x1f, 0x01, 0x00, 0x43, 0x11,
175 : 0x01, 0x02, 0x01, 0x03, 0x1f, 0x01, 0x01, 0x46,
176 : 0x11, 0x01, 0x02, 0x01, 0x03, 0x1a, 0x00, 0x01,
177 : 0x27, 0x00, 0x21, 0x05, 0x02, 0x11
178 : };
179 8 : return expand_rtx (expand_encoding, operands);
180 : }
181 :
182 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12392 */
183 : rtx
184 0 : gen_udivmodhiqi3_nf (const rtx operand0, const rtx operand1, const rtx operand2)
185 : {
186 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
187 0 : static const uint8_t expand_encoding[] = {
188 : 0x1f, 0x01, 0x00, 0x4a, 0x10, 0x4d, 0x10, 0x6f,
189 : 0x10, 0x70, 0x0f, 0x46, 0x10, 0x01, 0x01, 0x6f,
190 : 0x10, 0x01, 0x02, 0x27, 0x08, 0x6f, 0x10, 0x70,
191 : 0x0f, 0x43, 0x10, 0x01, 0x01, 0x6f, 0x10, 0x01,
192 : 0x02
193 : };
194 0 : return expand_rtx (expand_encoding, operands);
195 : }
196 :
197 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16007 */
198 : rtx
199 0 : gen_x86_shld_nf (const rtx operand0, const rtx operand1, const rtx operand2)
200 : {
201 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
202 0 : static const uint8_t expand_encoding[] = {
203 : 0x1f, 0x01, 0x00, 0x4a, 0x11, 0x4d, 0x11, 0x01,
204 : 0x00, 0x49, 0x0f, 0x01, 0x02, 0x27, 0x1f, 0x32,
205 : 0x11, 0x50, 0x12, 0x6f, 0x12, 0x01, 0x01, 0x3c,
206 : 0x0f, 0x27, 0x20, 0x49, 0x0f, 0x01, 0x02, 0x27,
207 : 0x1f, 0x00
208 : };
209 0 : return expand_rtx (expand_encoding, operands);
210 : }
211 :
212 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17072 */
213 : rtx
214 17 : gen_lshrti3_doubleword (const rtx operand0, const rtx operand1, const rtx operand2)
215 : {
216 17 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
217 17 : static const uint8_t expand_encoding[] = {
218 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x50, 0x13,
219 : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
220 : };
221 17 : return expand_rtx (expand_encoding, operands);
222 : }
223 :
224 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17160 */
225 : rtx
226 0 : gen_x86_64_shrd_nf (const rtx operand0, const rtx operand1, const rtx operand2)
227 : {
228 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
229 0 : static const uint8_t expand_encoding[] = {
230 : 0x1f, 0x01, 0x00, 0x4a, 0x12, 0x50, 0x12, 0x01,
231 : 0x00, 0x49, 0x0f, 0x01, 0x02, 0x27, 0x3f, 0x32,
232 : 0x12, 0x4d, 0x13, 0x6f, 0x13, 0x01, 0x01, 0x3c,
233 : 0x0f, 0x27, 0x40, 0x49, 0x0f, 0x01, 0x02, 0x27,
234 : 0x3f, 0x00
235 : };
236 0 : return expand_rtx (expand_encoding, operands);
237 : }
238 :
239 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17412 */
240 : rtx
241 0 : gen_x86_shrd_ndd_nf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
242 : {
243 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
244 0 : static const uint8_t expand_encoding[] = {
245 : 0x1f, 0x01, 0x00, 0x4a, 0x11, 0x50, 0x11, 0x01,
246 : 0x01, 0x49, 0x0f, 0x01, 0x03, 0x27, 0x1f, 0x32,
247 : 0x11, 0x4d, 0x12, 0x6f, 0x12, 0x01, 0x02, 0x3c,
248 : 0x0f, 0x27, 0x20, 0x49, 0x0f, 0x01, 0x03, 0x27,
249 : 0x1f, 0x00
250 : };
251 0 : return expand_rtx (expand_encoding, operands);
252 : }
253 :
254 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18758 */
255 : rtx
256 45 : gen_ix86_rotldi3_doubleword (const rtx operand0, const rtx operand1, const rtx operand2)
257 : {
258 45 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
259 45 : static const uint8_t expand_encoding[] = {
260 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x4e, 0x12,
261 : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11, 0x21,
262 : 0x00, 0x31, 0x11
263 : };
264 45 : return expand_rtx (expand_encoding, operands);
265 : }
266 :
267 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19173 */
268 : rtx
269 0 : gen_lshrsi3_carry (const rtx operand0, const rtx operand1)
270 : {
271 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
272 0 : static const uint8_t expand_encoding[] = {
273 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a,
274 : 0x08, 0x02, 0x49, 0x11, 0x01, 0x01, 0x27, 0x01,
275 : 0x27, 0x00, 0x29, 0x1f, 0x01, 0x00, 0x50, 0x11,
276 : 0x01, 0x01, 0x27, 0x01
277 : };
278 0 : return expand_rtx (expand_encoding, operands);
279 : }
280 :
281 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21068 */
282 : rtx
283 489 : gen_simple_return_internal_long (void)
284 : {
285 489 : static const uint8_t expand_encoding[] = {
286 : 0x17, 0x00, 0x02, 0x24, 0x1a, 0x00, 0x01, 0x27,
287 : 0x00, 0x1e
288 : };
289 489 : return expand_rtx (expand_encoding, nullptr);
290 : }
291 :
292 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21474 */
293 : rtx
294 598 : gen_ctzsi2 (const rtx operand0, const rtx operand1)
295 : {
296 598 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
297 598 : static const uint8_t expand_encoding[] = {
298 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x81, 0x01,
299 : 0x11, 0x01, 0x01, 0x05, 0x02, 0x11
300 : };
301 598 : return expand_rtx (expand_encoding, operands);
302 : }
303 :
304 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21938 */
305 : rtx
306 23 : gen_clzsi2_lzcnt (const rtx operand0, const rtx operand1)
307 : {
308 23 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
309 23 : static const uint8_t expand_encoding[] = {
310 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x81, 0x00,
311 : 0x11, 0x01, 0x01, 0x05, 0x02, 0x11
312 : };
313 23 : return expand_rtx (expand_encoding, operands);
314 : }
315 :
316 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22154 */
317 : rtx
318 0 : gen_tzcnt_hi_nf (const rtx operand0, const rtx operand1)
319 : {
320 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
321 0 : static const uint8_t expand_encoding[] = {
322 : 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x01, 0x01, 0x01,
323 : 0x62
324 : };
325 0 : return expand_rtx (expand_encoding, operands);
326 : }
327 :
328 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22585 */
329 : rtx
330 5 : gen_tbm_bextri_si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
331 : {
332 5 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
333 5 : static const uint8_t expand_encoding[] = {
334 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x81, 0x06,
335 : 0x11, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x05,
336 : 0x02, 0x11
337 : };
338 5 : return expand_rtx (expand_encoding, operands);
339 : }
340 :
341 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:23934 */
342 : rtx
343 16 : gen_rcphf2 (const rtx operand0, const rtx operand1)
344 : {
345 16 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
346 16 : static const uint8_t expand_encoding[] = {
347 : 0x1f, 0x01, 0x00, 0x1a, 0x2b, 0x01, 0x01, 0x01,
348 : 0x37
349 : };
350 16 : return expand_rtx (expand_encoding, operands);
351 : }
352 :
353 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24477 */
354 : rtx
355 2 : gen_cosxf2 (const rtx operand0, const rtx operand1)
356 : {
357 2 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
358 2 : static const uint8_t expand_encoding[] = {
359 : 0x1f, 0x01, 0x00, 0x1a, 0x2f, 0x01, 0x01, 0x01,
360 : 0x42
361 : };
362 2 : return expand_rtx (expand_encoding, operands);
363 : }
364 :
365 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25299 */
366 : rtx
367 2 : gen_avx512f_scalefsf2 (const rtx operand0, const rtx operand1, const rtx operand2)
368 : {
369 2 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
370 2 : static const uint8_t expand_encoding[] = {
371 : 0x1f, 0x01, 0x00, 0x1a, 0x2d, 0x02, 0x01, 0x01,
372 : 0x01, 0x02, 0x3b
373 : };
374 2 : return expand_rtx (expand_encoding, operands);
375 : }
376 :
377 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25677 */
378 : rtx
379 0 : gen_frndintxf2_roundeven (const rtx operand0, const rtx operand1)
380 : {
381 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
382 0 : static const uint8_t expand_encoding[] = {
383 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x2f,
384 : 0x01, 0x01, 0x01, 0x4b, 0x05, 0x02, 0x11
385 : };
386 0 : return expand_rtx (expand_encoding, operands);
387 : }
388 :
389 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25833 */
390 : rtx
391 0 : gen_fisthi2_floor (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
392 : {
393 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
394 0 : static const uint8_t expand_encoding[] = {
395 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x1a, 0x10,
396 : 0x01, 0x01, 0x01, 0x4f, 0x20, 0x00, 0x01, 0x02,
397 : 0x20, 0x00, 0x01, 0x03
398 : };
399 0 : return expand_rtx (expand_encoding, operands);
400 : }
401 :
402 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27262 */
403 : rtx
404 315 : gen_smaxsf3 (const rtx operand0, const rtx operand1, const rtx operand2)
405 : {
406 315 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
407 315 : static const uint8_t expand_encoding[] = {
408 : 0x1f, 0x01, 0x00, 0x53, 0x2d, 0x01, 0x01, 0x01,
409 : 0x02
410 : };
411 315 : return expand_rtx (expand_encoding, operands);
412 : }
413 :
414 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27832 */
415 : rtx
416 0 : gen_pro_epilogue_adjust_stack_sub_si (const rtx operand0, const rtx operand1, const rtx operand2)
417 : {
418 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
419 0 : static const uint8_t expand_encoding[] = {
420 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x3c, 0x11,
421 : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11, 0x21,
422 : 0x00, 0x36, 0x01, 0x31, 0x00
423 : };
424 0 : return expand_rtx (expand_encoding, operands);
425 : }
426 :
427 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28058 */
428 : rtx
429 0 : gen_stack_protect_set_1_di_si (const rtx operand0, const rtx operand1, const rtx operand2)
430 : {
431 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
432 0 : static const uint8_t expand_encoding[] = {
433 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x1a, 0x12,
434 : 0x01, 0x01, 0x01, 0x5d, 0x1f, 0x01, 0x02, 0x27,
435 : 0x00, 0x05, 0x02, 0x11
436 : };
437 0 : return expand_rtx (expand_encoding, operands);
438 : }
439 :
440 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29867 */
441 : rtx
442 0 : gen_rdpmc (const rtx operand0, const rtx operand1)
443 : {
444 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
445 0 : static const uint8_t expand_encoding[] = {
446 : 0x1f, 0x01, 0x00, 0x1b, 0x12, 0x01, 0x01, 0x01,
447 : 0x0b
448 : };
449 0 : return expand_rtx (expand_encoding, operands);
450 : }
451 :
452 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29954 */
453 : rtx
454 19 : gen_fxrstor (const rtx operand0)
455 : {
456 19 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
457 19 : static const uint8_t expand_encoding[] = {
458 : 0x1b, 0x00, 0x01, 0x01, 0x00, 0x15
459 : };
460 19 : return expand_rtx (expand_encoding, operands);
461 : }
462 :
463 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30037 */
464 : rtx
465 21 : gen_xsave64 (const rtx operand0, const rtx operand1, const rtx operand2)
466 : {
467 21 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
468 21 : static const uint8_t expand_encoding[] = {
469 : 0x1f, 0x01, 0x00, 0x1b, 0x01, 0x02, 0x01, 0x01,
470 : 0x01, 0x02, 0x1a
471 : };
472 21 : return expand_rtx (expand_encoding, operands);
473 : }
474 :
475 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30091 */
476 : rtx
477 0 : gen_xsetbv (const rtx operand0, const rtx operand1)
478 : {
479 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
480 0 : static const uint8_t expand_encoding[] = {
481 : 0x1b, 0x11, 0x02, 0x01, 0x00, 0x01, 0x01, 0x25
482 : };
483 0 : return expand_rtx (expand_encoding, operands);
484 : }
485 :
486 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30196 */
487 : rtx
488 0 : gen_lwp_llwpcbsi (const rtx operand0)
489 : {
490 0 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
491 0 : static const uint8_t expand_encoding[] = {
492 : 0x1b, 0x00, 0x01, 0x01, 0x00, 0x0c
493 : };
494 0 : return expand_rtx (expand_encoding, operands);
495 : }
496 :
497 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30253 */
498 : rtx
499 19 : gen_rdfsbasedi (const rtx operand0)
500 : {
501 19 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
502 19 : static const uint8_t expand_encoding[] = {
503 : 0x1f, 0x01, 0x00, 0x1b, 0x12, 0x01, 0x27, 0x00,
504 : 0x10
505 : };
506 19 : return expand_rtx (expand_encoding, operands);
507 : }
508 :
509 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30280 */
510 : rtx
511 42 : gen_rdrandsi (const rtx operand0)
512 : {
513 42 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
514 42 : static const uint8_t expand_encoding[] = {
515 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1b, 0x11,
516 : 0x01, 0x27, 0x00, 0x2c, 0x1f, 0x30, 0x08, 0x11,
517 : 0x1b, 0x08, 0x01, 0x27, 0x00, 0x2c
518 : };
519 42 : return expand_rtx (expand_encoding, operands);
520 : }
521 :
522 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30344 */
523 : rtx
524 19 : gen_rstorssp (const rtx operand0)
525 : {
526 19 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
527 19 : static const uint8_t expand_encoding[] = {
528 : 0x1b, 0x00, 0x01, 0x01, 0x00, 0x3e
529 : };
530 19 : return expand_rtx (expand_encoding, operands);
531 : }
532 :
533 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30438 */
534 : rtx
535 23 : gen_xabort (const rtx operand0)
536 : {
537 23 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
538 23 : static const uint8_t expand_encoding[] = {
539 : 0x1b, 0x00, 0x01, 0x01, 0x00, 0x30
540 : };
541 23 : return expand_rtx (expand_encoding, operands);
542 : }
543 :
544 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30561 */
545 : rtx
546 0 : gen_rdpid (const rtx operand0)
547 : {
548 0 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
549 0 : static const uint8_t expand_encoding[] = {
550 : 0x1f, 0x01, 0x00, 0x1b, 0x11, 0x01, 0x27, 0x00,
551 : 0x39
552 : };
553 0 : return expand_rtx (expand_encoding, operands);
554 : }
555 :
556 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30623 */
557 : rtx
558 19 : gen_enqcmd_di (const rtx operand0, const rtx operand1)
559 : {
560 19 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
561 19 : static const uint8_t expand_encoding[] = {
562 : 0x1f, 0x30, 0x0c, 0x11, 0x1b, 0x0c, 0x02, 0x01,
563 : 0x00, 0x01, 0x01, 0x4f
564 : };
565 19 : return expand_rtx (expand_encoding, operands);
566 : }
567 :
568 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30708 */
569 : rtx
570 19 : gen_cldemote (const rtx operand0)
571 : {
572 19 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
573 19 : static const uint8_t expand_encoding[] = {
574 : 0x1b, 0x00, 0x01, 0x01, 0x00, 0x4c
575 : };
576 19 : return expand_rtx (expand_encoding, operands);
577 : }
578 :
579 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30880 */
580 : rtx
581 11 : gen_movrshi (const rtx operand0, const rtx operand1)
582 : {
583 11 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
584 11 : static const uint8_t expand_encoding[] = {
585 : 0x1f, 0x01, 0x00, 0x1b, 0x10, 0x01, 0x01, 0x01,
586 : 0x59
587 : };
588 11 : return expand_rtx (expand_encoding, operands);
589 : }
590 :
591 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:978 */
592 : rtx
593 14 : gen_mmx_rsqit1v2sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
594 : {
595 14 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
596 14 : static const uint8_t expand_encoding[] = {
597 : 0x1f, 0x01, 0x00, 0x1a, 0x67, 0x02, 0x01, 0x01,
598 : 0x01, 0x02, 0x75
599 : };
600 14 : return expand_rtx (expand_encoding, operands);
601 : }
602 :
603 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1580 */
604 : rtx
605 14 : gen_mmx_fix_truncv2sfv2si2 (const rtx operand0, const rtx operand1)
606 : {
607 14 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
608 14 : static const uint8_t expand_encoding[] = {
609 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x74, 0x4a,
610 : 0x01, 0x01, 0x1a, 0x00, 0x01, 0x27, 0x00, 0x6f
611 : };
612 14 : return expand_rtx (expand_encoding, operands);
613 : }
614 :
615 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2604 */
616 : rtx
617 0 : gen_xorv4bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
618 : {
619 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
620 0 : static const uint8_t expand_encoding[] = {
621 : 0x1f, 0x01, 0x00, 0x4b, 0x65, 0x01, 0x01, 0x01,
622 : 0x02
623 : };
624 0 : return expand_rtx (expand_encoding, operands);
625 : }
626 :
627 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3253 */
628 : rtx
629 806 : gen_addv2hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
630 : {
631 806 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
632 806 : static const uint8_t expand_encoding[] = {
633 : 0x1f, 0x01, 0x00, 0x3b, 0x46, 0x01, 0x01, 0x01,
634 : 0x02
635 : };
636 806 : return expand_rtx (expand_encoding, operands);
637 : }
638 :
639 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3365 */
640 : rtx
641 0 : gen_sssubv2qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
642 : {
643 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
644 0 : static const uint8_t expand_encoding[] = {
645 : 0x1f, 0x01, 0x00, 0x81, 0x10, 0x44, 0x01, 0x01,
646 : 0x01, 0x02
647 : };
648 0 : return expand_rtx (expand_encoding, operands);
649 : }
650 :
651 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3686 */
652 : rtx
653 0 : gen_smaxv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
654 : {
655 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
656 0 : static const uint8_t expand_encoding[] = {
657 : 0x1f, 0x01, 0x00, 0x53, 0x48, 0x01, 0x01, 0x01,
658 : 0x02
659 : };
660 0 : return expand_rtx (expand_encoding, operands);
661 : }
662 :
663 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3751 */
664 : rtx
665 5 : gen_smaxv2hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
666 : {
667 5 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
668 5 : static const uint8_t expand_encoding[] = {
669 : 0x1f, 0x01, 0x00, 0x53, 0x46, 0x01, 0x01, 0x01,
670 : 0x02
671 : };
672 5 : return expand_rtx (expand_encoding, operands);
673 : }
674 :
675 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3826 */
676 : rtx
677 1 : gen_umaxv2hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
678 : {
679 1 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
680 1 : static const uint8_t expand_encoding[] = {
681 : 0x1f, 0x01, 0x00, 0x55, 0x46, 0x01, 0x01, 0x01,
682 : 0x02
683 : };
684 1 : return expand_rtx (expand_encoding, operands);
685 : }
686 :
687 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3918 */
688 : rtx
689 88 : gen_mmx_lshrv4hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
690 : {
691 88 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
692 88 : static const uint8_t expand_encoding[] = {
693 : 0x1f, 0x01, 0x00, 0x50, 0x49, 0x01, 0x01, 0x01,
694 : 0x02
695 : };
696 88 : return expand_rtx (expand_encoding, operands);
697 : }
698 :
699 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4033 */
700 : rtx
701 6 : gen_ashlv2qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
702 : {
703 6 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
704 6 : static const uint8_t expand_encoding[] = {
705 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4d, 0x44,
706 : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
707 : };
708 6 : return expand_rtx (expand_encoding, operands);
709 : }
710 :
711 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4539 */
712 : rtx
713 27 : gen_mmx_ppermv64 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
714 : {
715 27 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
716 27 : static const uint8_t expand_encoding[] = {
717 : 0x1f, 0x01, 0x00, 0x1a, 0x48, 0x03, 0x01, 0x01,
718 : 0x01, 0x02, 0x01, 0x03, 0x36
719 : };
720 27 : return expand_rtx (expand_encoding, operands);
721 : }
722 :
723 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4839 */
724 : rtx
725 56 : gen_mmx_packssdw (const rtx operand0, const rtx operand1, const rtx operand2)
726 : {
727 56 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
728 56 : static const uint8_t expand_encoding[] = {
729 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x49, 0x81, 0x17,
730 : 0x46, 0x01, 0x01, 0x81, 0x17, 0x46, 0x01, 0x02
731 : };
732 56 : return expand_rtx (expand_encoding, operands);
733 : }
734 :
735 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5038 */
736 : rtx
737 45 : gen_sse4_1_zero_extendv4qiv4hi2 (const rtx operand0, const rtx operand1)
738 : {
739 45 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
740 45 : static const uint8_t expand_encoding[] = {
741 : 0x1f, 0x01, 0x00, 0x6f, 0x49, 0x81, 0x0a, 0x45,
742 : 0x01, 0x01, 0x17, 0x00, 0x04, 0x27, 0x00, 0x27,
743 : 0x01, 0x27, 0x02, 0x27, 0x03
744 : };
745 45 : return expand_rtx (expand_encoding, operands);
746 : }
747 :
748 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5204 */
749 : rtx
750 6 : gen_avx512vl_truncv2siv2hi2 (const rtx operand0, const rtx operand1)
751 : {
752 6 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
753 6 : static const uint8_t expand_encoding[] = {
754 : 0x1f, 0x01, 0x00, 0x70, 0x46, 0x01, 0x01
755 : };
756 6 : return expand_rtx (expand_encoding, operands);
757 : }
758 :
759 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6877 */
760 : rtx
761 22 : gen_mmx_pmovmskb (const rtx operand0, const rtx operand1)
762 : {
763 22 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
764 22 : static const uint8_t expand_encoding[] = {
765 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01, 0x01,
766 : 0x32
767 : };
768 22 : return expand_rtx (expand_encoding, operands);
769 : }
770 :
771 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6993 */
772 : rtx
773 1 : gen_popcountv4hi2 (const rtx operand0, const rtx operand1)
774 : {
775 1 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
776 1 : static const uint8_t expand_encoding[] = {
777 : 0x1f, 0x01, 0x00, 0x81, 0x02, 0x49, 0x01, 0x01
778 : };
779 1 : return expand_rtx (expand_encoding, operands);
780 : }
781 :
782 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1486 */
783 : rtx
784 0 : gen_movv8si_internal (const rtx operand0, const rtx operand1)
785 : {
786 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
787 0 : static const uint8_t expand_encoding[] = {
788 : 0x1f, 0x01, 0x00, 0x01, 0x01
789 : };
790 0 : return expand_rtx (expand_encoding, operands);
791 : }
792 :
793 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1486 */
794 : rtx
795 0 : gen_movv8hf_internal (const rtx operand0, const rtx operand1)
796 : {
797 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
798 0 : static const uint8_t expand_encoding[] = {
799 : 0x1f, 0x01, 0x00, 0x01, 0x01
800 : };
801 0 : return expand_rtx (expand_encoding, operands);
802 : }
803 :
804 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1708 */
805 : rtx
806 24 : gen_avx512f_movhf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
807 : {
808 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
809 24 : static const uint8_t expand_encoding[] = {
810 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x09,
811 : 0x6a, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
812 : 0x01, 0x27, 0x01
813 : };
814 24 : return expand_rtx (expand_encoding, operands);
815 : }
816 :
817 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1769 */
818 : rtx
819 12 : gen_avx512vl_blendmv4di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
820 : {
821 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
822 12 : static const uint8_t expand_encoding[] = {
823 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x01, 0x02,
824 : 0x01, 0x01, 0x01, 0x03
825 : };
826 12 : return expand_rtx (expand_encoding, operands);
827 : }
828 :
829 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1805 */
830 : rtx
831 12 : gen_avx512vl_blendmv32qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
832 : {
833 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
834 12 : static const uint8_t expand_encoding[] = {
835 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x01, 0x02,
836 : 0x01, 0x01, 0x01, 0x03
837 : };
838 12 : return expand_rtx (expand_encoding, operands);
839 : }
840 :
841 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1904 */
842 : rtx
843 0 : gen_movdi_to_sse (const rtx operand0, const rtx operand1)
844 : {
845 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
846 0 : static const uint8_t expand_encoding[] = {
847 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x51,
848 : 0x01, 0x01, 0x01, 0x77, 0x21, 0x00, 0x31, 0x51
849 : };
850 0 : return expand_rtx (expand_encoding, operands);
851 : }
852 :
853 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2059 */
854 : rtx
855 11 : gen_avx_movntv4di (const rtx operand0, const rtx operand1)
856 : {
857 11 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
858 11 : static const uint8_t expand_encoding[] = {
859 : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x01, 0x01, 0x01,
860 : 0x76
861 : };
862 11 : return expand_rtx (expand_encoding, operands);
863 : }
864 :
865 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2120 */
866 : rtx
867 11 : gen_kiorsi (const rtx operand0, const rtx operand1, const rtx operand2)
868 : {
869 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
870 11 : static const uint8_t expand_encoding[] = {
871 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a, 0x11,
872 : 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01, 0x27,
873 : 0x00, 0x81, 0x2f
874 : };
875 11 : return expand_rtx (expand_encoding, operands);
876 : }
877 :
878 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2203 */
879 : rtx
880 23 : gen_kxnorhi (const rtx operand0, const rtx operand1, const rtx operand2)
881 : {
882 23 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
883 23 : static const uint8_t expand_encoding[] = {
884 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4c, 0x10,
885 : 0x4b, 0x10, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00,
886 : 0x01, 0x27, 0x00, 0x81, 0x2f
887 : };
888 23 : return expand_rtx (expand_encoding, operands);
889 : }
890 :
891 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2279 */
892 : rtx
893 11 : gen_kadddi (const rtx operand0, const rtx operand1, const rtx operand2)
894 : {
895 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
896 11 : static const uint8_t expand_encoding[] = {
897 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3b, 0x12,
898 : 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01, 0x27,
899 : 0x00, 0x81, 0x2f
900 : };
901 11 : return expand_rtx (expand_encoding, operands);
902 : }
903 :
904 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2361 */
905 : rtx
906 44 : gen_ktesthi (const rtx operand0, const rtx operand1)
907 : {
908 44 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
909 44 : static const uint8_t expand_encoding[] = {
910 : 0x1f, 0x30, 0x02, 0x11, 0x1a, 0x02, 0x02, 0x01,
911 : 0x00, 0x01, 0x01, 0x81, 0x31
912 : };
913 44 : return expand_rtx (expand_encoding, operands);
914 : }
915 :
916 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2395 */
917 : rtx
918 0 : gen_kortestdi_ccz (const rtx operand0, const rtx operand1)
919 : {
920 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
921 0 : static const uint8_t expand_encoding[] = {
922 : 0x1f, 0x30, 0x0c, 0x11, 0x1a, 0x0c, 0x02, 0x01,
923 : 0x00, 0x01, 0x01, 0x81, 0x30
924 : };
925 0 : return expand_rtx (expand_encoding, operands);
926 : }
927 :
928 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2736 */
929 : rtx
930 24 : gen_avx512fp16_vmsubv8hf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
931 : {
932 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
933 24 : static const uint8_t expand_encoding[] = {
934 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x09,
935 : 0x6a, 0x3c, 0x6a, 0x01, 0x01, 0x01, 0x02, 0x01,
936 : 0x03, 0x01, 0x04, 0x01, 0x01, 0x27, 0x01
937 : };
938 24 : return expand_rtx (expand_encoding, operands);
939 : }
940 :
941 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2736 */
942 : rtx
943 12 : gen_sse2_vmaddv2df3 (const rtx operand0, const rtx operand1, const rtx operand2)
944 : {
945 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
946 12 : static const uint8_t expand_encoding[] = {
947 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x3b, 0x6c,
948 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x01, 0x27, 0x01
949 : };
950 12 : return expand_rtx (expand_encoding, operands);
951 : }
952 :
953 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2827 */
954 : rtx
955 0 : gen_avx512fp16_vmmulv8hf3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
956 : {
957 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
958 0 : static const uint8_t expand_encoding[] = {
959 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
960 : 0x6a, 0x3e, 0x6a, 0x01, 0x01, 0x01, 0x02, 0x01,
961 : 0x01, 0x27, 0x01, 0x01, 0x03, 0x81, 0x33
962 : };
963 0 : return expand_rtx (expand_encoding, operands);
964 : }
965 :
966 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2827 */
967 : rtx
968 46 : gen_sse_vmmulv4sf3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
969 : {
970 46 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
971 46 : static const uint8_t expand_encoding[] = {
972 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
973 : 0x6b, 0x81, 0x09, 0x6b, 0x3e, 0x6b, 0x01, 0x01,
974 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01, 0x01,
975 : 0x27, 0x01, 0x01, 0x05, 0x81, 0x33
976 : };
977 46 : return expand_rtx (expand_encoding, operands);
978 : }
979 :
980 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2827 */
981 : rtx
982 0 : gen_sse2_vmdivv2df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
983 : {
984 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
985 0 : static const uint8_t expand_encoding[] = {
986 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x09,
987 : 0x6c, 0x43, 0x6c, 0x01, 0x01, 0x01, 0x02, 0x01,
988 : 0x03, 0x01, 0x04, 0x01, 0x01, 0x27, 0x01
989 : };
990 0 : return expand_rtx (expand_encoding, operands);
991 : }
992 :
993 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2928 */
994 : rtx
995 0 : gen_avx512f_divv16sf3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
996 : {
997 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
998 0 : static const uint8_t expand_encoding[] = {
999 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x43, 0x74,
1000 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x33
1001 : };
1002 0 : return expand_rtx (expand_encoding, operands);
1003 : }
1004 :
1005 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2928 */
1006 : rtx
1007 55 : gen_avx512f_divv8df3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1008 : {
1009 55 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1010 55 : static const uint8_t expand_encoding[] = {
1011 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81, 0x09,
1012 : 0x75, 0x43, 0x75, 0x01, 0x01, 0x01, 0x02, 0x01,
1013 : 0x03, 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
1014 : };
1015 55 : return expand_rtx (expand_encoding, operands);
1016 : }
1017 :
1018 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2998 */
1019 : rtx
1020 36 : gen_avx512fp16_rcpv8hf2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1021 : {
1022 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1023 36 : static const uint8_t expand_encoding[] = {
1024 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
1025 : 0x01, 0x01, 0x01, 0x37, 0x01, 0x02, 0x01, 0x03
1026 : };
1027 36 : return expand_rtx (expand_encoding, operands);
1028 : }
1029 :
1030 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3063 */
1031 : rtx
1032 24 : gen_srcp14v4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1033 : {
1034 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1035 24 : static const uint8_t expand_encoding[] = {
1036 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x09,
1037 : 0x6b, 0x1a, 0x6b, 0x01, 0x01, 0x01, 0x81, 0x22,
1038 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x02, 0x27, 0x01
1039 : };
1040 24 : return expand_rtx (expand_encoding, operands);
1041 : }
1042 :
1043 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3102 */
1044 : rtx
1045 0 : gen_avx512f_sqrtv16sf2_round (const rtx operand0, const rtx operand1, const rtx operand2)
1046 : {
1047 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1048 0 : static const uint8_t expand_encoding[] = {
1049 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x7c, 0x74,
1050 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x33
1051 : };
1052 0 : return expand_rtx (expand_encoding, operands);
1053 : }
1054 :
1055 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3102 */
1056 : rtx
1057 0 : gen_avx_sqrtv4df2 (const rtx operand0, const rtx operand1)
1058 : {
1059 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
1060 0 : static const uint8_t expand_encoding[] = {
1061 : 0x1f, 0x01, 0x00, 0x7c, 0x70, 0x01, 0x01
1062 : };
1063 0 : return expand_rtx (expand_encoding, operands);
1064 : }
1065 :
1066 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3117 */
1067 : rtx
1068 12 : gen_sse_vmsqrtv4sf2 (const rtx operand0, const rtx operand1, const rtx operand2)
1069 : {
1070 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1071 12 : static const uint8_t expand_encoding[] = {
1072 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x7c, 0x6b,
1073 : 0x01, 0x01, 0x01, 0x02, 0x27, 0x01
1074 : };
1075 12 : return expand_rtx (expand_encoding, operands);
1076 : }
1077 :
1078 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3174 */
1079 : rtx
1080 11 : gen_avx_rsqrtv8sf2 (const rtx operand0, const rtx operand1)
1081 : {
1082 11 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
1083 11 : static const uint8_t expand_encoding[] = {
1084 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x01, 0x01, 0x01,
1085 : 0x38
1086 : };
1087 11 : return expand_rtx (expand_encoding, operands);
1088 : }
1089 :
1090 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3196 */
1091 : rtx
1092 36 : gen_rsqrt14v16sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1093 : {
1094 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1095 36 : static const uint8_t expand_encoding[] = {
1096 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x1a, 0x74,
1097 : 0x01, 0x01, 0x01, 0x81, 0x23, 0x01, 0x02, 0x01,
1098 : 0x03
1099 : };
1100 36 : return expand_rtx (expand_encoding, operands);
1101 : }
1102 :
1103 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3241 */
1104 : rtx
1105 13 : gen_sse_vmrsqrtv4sf2 (const rtx operand0, const rtx operand1, const rtx operand2)
1106 : {
1107 13 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1108 13 : static const uint8_t expand_encoding[] = {
1109 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
1110 : 0x01, 0x01, 0x01, 0x38, 0x01, 0x02, 0x27, 0x01
1111 : };
1112 13 : return expand_rtx (expand_encoding, operands);
1113 : }
1114 :
1115 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3481 */
1116 : rtx
1117 33 : gen_ieee_minv32hf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1118 : {
1119 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1120 33 : static const uint8_t expand_encoding[] = {
1121 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x1a, 0x73,
1122 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3f, 0x01, 0x03,
1123 : 0x01, 0x04
1124 : };
1125 33 : return expand_rtx (expand_encoding, operands);
1126 : }
1127 :
1128 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3481 */
1129 : rtx
1130 0 : gen_ieee_maxv16sf3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1131 : {
1132 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1133 0 : static const uint8_t expand_encoding[] = {
1134 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x1a, 0x74,
1135 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x40, 0x01, 0x03,
1136 : 0x81, 0x33
1137 : };
1138 0 : return expand_rtx (expand_encoding, operands);
1139 : }
1140 :
1141 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3481 */
1142 : rtx
1143 22 : gen_ieee_minv8sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1144 : {
1145 22 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1146 22 : static const uint8_t expand_encoding[] = {
1147 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x1a, 0x6f,
1148 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3f, 0x01, 0x03,
1149 : 0x01, 0x04
1150 : };
1151 22 : return expand_rtx (expand_encoding, operands);
1152 : }
1153 :
1154 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3481 */
1155 : rtx
1156 0 : gen_ieee_minv8df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1157 : {
1158 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1159 0 : static const uint8_t expand_encoding[] = {
1160 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x1a, 0x75,
1161 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3f, 0x01, 0x03,
1162 : 0x01, 0x04
1163 : };
1164 0 : return expand_rtx (expand_encoding, operands);
1165 : }
1166 :
1167 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3573 */
1168 : rtx
1169 24 : gen_avx512fp16_ieee_vmmaxv8hf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1170 : {
1171 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1172 24 : static const uint8_t expand_encoding[] = {
1173 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x09,
1174 : 0x6a, 0x1a, 0x6a, 0x02, 0x01, 0x01, 0x01, 0x02,
1175 : 0x40, 0x01, 0x03, 0x01, 0x04, 0x01, 0x01, 0x27,
1176 : 0x01
1177 : };
1178 24 : return expand_rtx (expand_encoding, operands);
1179 : }
1180 :
1181 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3573 */
1182 : rtx
1183 46 : gen_sse_ieee_vmmaxv4sf3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1184 : {
1185 46 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1186 46 : static const uint8_t expand_encoding[] = {
1187 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
1188 : 0x6b, 0x81, 0x09, 0x6b, 0x1a, 0x6b, 0x02, 0x01,
1189 : 0x01, 0x01, 0x02, 0x40, 0x01, 0x03, 0x01, 0x04,
1190 : 0x01, 0x01, 0x27, 0x01, 0x01, 0x05, 0x81, 0x33
1191 : };
1192 46 : return expand_rtx (expand_encoding, operands);
1193 : }
1194 :
1195 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3573 */
1196 : rtx
1197 46 : gen_sse2_ieee_vmminv2df3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1198 : {
1199 46 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1200 46 : static const uint8_t expand_encoding[] = {
1201 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
1202 : 0x6c, 0x81, 0x09, 0x6c, 0x1a, 0x6c, 0x02, 0x01,
1203 : 0x01, 0x01, 0x02, 0x3f, 0x01, 0x03, 0x01, 0x04,
1204 : 0x01, 0x01, 0x27, 0x01, 0x01, 0x05, 0x81, 0x33
1205 : };
1206 46 : return expand_rtx (expand_encoding, operands);
1207 : }
1208 :
1209 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4281 */
1210 : rtx
1211 66 : gen_reducepv32hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1212 : {
1213 66 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1214 66 : static const uint8_t expand_encoding[] = {
1215 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x81, 0x09,
1216 : 0x73, 0x1a, 0x73, 0x02, 0x01, 0x01, 0x01, 0x02,
1217 : 0x81, 0x41, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05,
1218 : 0x81, 0x33
1219 : };
1220 66 : return expand_rtx (expand_encoding, operands);
1221 : }
1222 :
1223 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4281 */
1224 : rtx
1225 24 : gen_reducepv16sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1226 : {
1227 24 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1228 24 : static const uint8_t expand_encoding[] = {
1229 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x81, 0x09,
1230 : 0x74, 0x1a, 0x74, 0x02, 0x01, 0x01, 0x01, 0x02,
1231 : 0x81, 0x41, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05,
1232 : 0x81, 0x33
1233 : };
1234 24 : return expand_rtx (expand_encoding, operands);
1235 : }
1236 :
1237 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4281 */
1238 : rtx
1239 24 : gen_reducepv2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1240 : {
1241 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1242 24 : static const uint8_t expand_encoding[] = {
1243 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
1244 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x41, 0x01,
1245 : 0x03, 0x01, 0x04
1246 : };
1247 24 : return expand_rtx (expand_encoding, operands);
1248 : }
1249 :
1250 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4294 */
1251 : rtx
1252 25 : gen_reducesv4sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
1253 : {
1254 25 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
1255 25 : static const uint8_t expand_encoding[] = {
1256 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
1257 : 0x6b, 0x81, 0x09, 0x6b, 0x1a, 0x6b, 0x03, 0x01,
1258 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x41, 0x01,
1259 : 0x04, 0x01, 0x05, 0x01, 0x01, 0x27, 0x01, 0x01,
1260 : 0x06, 0x81, 0x33
1261 : };
1262 25 : return expand_rtx (expand_encoding, operands);
1263 : }
1264 :
1265 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4604 */
1266 : rtx
1267 0 : gen_avx_maskcmpv8sf3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1268 : {
1269 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1270 0 : static const uint8_t expand_encoding[] = {
1271 : 0x1f, 0x01, 0x00, 0x03, 0x6f, 0x03, 0x01, 0x01,
1272 : 0x01, 0x02
1273 : };
1274 0 : return expand_rtx (expand_encoding, operands);
1275 : }
1276 :
1277 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4651 */
1278 : rtx
1279 0 : gen_avx512vl_cmpv16hf3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1280 : {
1281 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1282 0 : static const uint8_t expand_encoding[] = {
1283 : 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x03, 0x01, 0x01,
1284 : 0x01, 0x02, 0x01, 0x03, 0x3c
1285 : };
1286 0 : return expand_rtx (expand_encoding, operands);
1287 : }
1288 :
1289 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4651 */
1290 : rtx
1291 91 : gen_avx512vl_cmpv8sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1292 : {
1293 91 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1294 91 : static const uint8_t expand_encoding[] = {
1295 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x03,
1296 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c, 0x01,
1297 : 0x04
1298 : };
1299 91 : return expand_rtx (expand_encoding, operands);
1300 : }
1301 :
1302 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4651 */
1303 : rtx
1304 0 : gen_avx512vl_cmpv2df3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1305 : {
1306 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1307 0 : static const uint8_t expand_encoding[] = {
1308 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01, 0x01,
1309 : 0x01, 0x02, 0x01, 0x03, 0x3c
1310 : };
1311 0 : return expand_rtx (expand_encoding, operands);
1312 : }
1313 :
1314 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4846 */
1315 : rtx
1316 0 : gen_avx512vl_cmpv16hi3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1317 : {
1318 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1319 0 : static const uint8_t expand_encoding[] = {
1320 : 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x03, 0x01, 0x01,
1321 : 0x01, 0x02, 0x01, 0x03, 0x3c
1322 : };
1323 0 : return expand_rtx (expand_encoding, operands);
1324 : }
1325 :
1326 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4846 */
1327 : rtx
1328 134 : gen_avx512vl_cmpv4si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1329 : {
1330 134 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1331 134 : static const uint8_t expand_encoding[] = {
1332 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x03,
1333 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c, 0x01,
1334 : 0x04
1335 : };
1336 134 : return expand_rtx (expand_encoding, operands);
1337 : }
1338 :
1339 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5059 */
1340 : rtx
1341 6 : gen_avx512vl_ucmpv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1342 : {
1343 6 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1344 6 : static const uint8_t expand_encoding[] = {
1345 : 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x03, 0x01, 0x01,
1346 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1e
1347 : };
1348 6 : return expand_rtx (expand_encoding, operands);
1349 : }
1350 :
1351 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5059 */
1352 : rtx
1353 189 : gen_avx512f_ucmpv16si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1354 : {
1355 189 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1356 189 : static const uint8_t expand_encoding[] = {
1357 : 0x1f, 0x01, 0x00, 0x49, 0x10, 0x1a, 0x10, 0x03,
1358 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x1e,
1359 : 0x01, 0x04
1360 : };
1361 189 : return expand_rtx (expand_encoding, operands);
1362 : }
1363 :
1364 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5191 */
1365 : rtx
1366 0 : gen_avx512f_vmcmpv8hf3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1367 : {
1368 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1369 0 : static const uint8_t expand_encoding[] = {
1370 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x03,
1371 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c, 0x27,
1372 : 0x01
1373 : };
1374 0 : return expand_rtx (expand_encoding, operands);
1375 : }
1376 :
1377 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5207 */
1378 : rtx
1379 132 : gen_avx512f_vmcmpv4sf3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1380 : {
1381 132 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1382 132 : static const uint8_t expand_encoding[] = {
1383 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x02, 0x49, 0x0f,
1384 : 0x1a, 0x0f, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01,
1385 : 0x03, 0x3c, 0x49, 0x0f, 0x01, 0x04, 0x27, 0x01,
1386 : 0x01, 0x05, 0x81, 0x33
1387 : };
1388 132 : return expand_rtx (expand_encoding, operands);
1389 : }
1390 :
1391 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5225 */
1392 : rtx
1393 1 : gen_avx10_2_comxdf_round (const rtx operand0, const rtx operand1, const rtx operand2)
1394 : {
1395 1 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1396 1 : static const uint8_t expand_encoding[] = {
1397 : 0x1f, 0x30, 0x0d, 0x11, 0x1a, 0x0d, 0x02, 0x1a,
1398 : 0x0d, 0x02, 0x81, 0x0a, 0x2e, 0x01, 0x00, 0x17,
1399 : 0x00, 0x01, 0x27, 0x00, 0x81, 0x0a, 0x2e, 0x01,
1400 : 0x01, 0x17, 0x00, 0x01, 0x27, 0x00, 0x3e, 0x01,
1401 : 0x02, 0x81, 0x33
1402 : };
1403 1 : return expand_rtx (expand_encoding, operands);
1404 : }
1405 :
1406 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5241 */
1407 : rtx
1408 17 : gen_sse_ucomi_round (const rtx operand0, const rtx operand1, const rtx operand2)
1409 : {
1410 17 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1411 17 : static const uint8_t expand_encoding[] = {
1412 : 0x1f, 0x30, 0x0d, 0x11, 0x1a, 0x0d, 0x02, 0x1a,
1413 : 0x0d, 0x01, 0x3a, 0x0d, 0x81, 0x0a, 0x2d, 0x01,
1414 : 0x00, 0x17, 0x00, 0x01, 0x27, 0x00, 0x81, 0x0a,
1415 : 0x2d, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
1416 : 0x1b, 0x01, 0x02, 0x81, 0x33
1417 : };
1418 17 : return expand_rtx (expand_encoding, operands);
1419 : }
1420 :
1421 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5611 */
1422 : rtx
1423 24 : gen_avx_andnotv8sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1424 : {
1425 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1426 24 : static const uint8_t expand_encoding[] = {
1427 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x49, 0x6f,
1428 : 0x4c, 0x6f, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
1429 : 0x01, 0x04
1430 : };
1431 24 : return expand_rtx (expand_encoding, operands);
1432 : }
1433 :
1434 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5687 */
1435 : rtx
1436 0 : gen_avx512f_andnotv8df3 (const rtx operand0, const rtx operand1, const rtx operand2)
1437 : {
1438 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1439 0 : static const uint8_t expand_encoding[] = {
1440 : 0x1f, 0x01, 0x00, 0x49, 0x75, 0x4c, 0x75, 0x01,
1441 : 0x01, 0x01, 0x02
1442 : };
1443 0 : return expand_rtx (expand_encoding, operands);
1444 : }
1445 :
1446 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6044 */
1447 : rtx
1448 970 : gen_iorsf3 (const rtx operand0, const rtx operand1, const rtx operand2)
1449 : {
1450 970 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1451 970 : static const uint8_t expand_encoding[] = {
1452 : 0x1f, 0x01, 0x00, 0x4a, 0x2d, 0x01, 0x01, 0x01,
1453 : 0x02
1454 : };
1455 970 : return expand_rtx (expand_encoding, operands);
1456 : }
1457 :
1458 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6317 */
1459 : rtx
1460 23 : gen_fma_fmadd_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)
1461 : {
1462 23 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
1463 23 : static const uint8_t expand_encoding[] = {
1464 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x81, 0x09,
1465 : 0x74, 0x81, 0x19, 0x74, 0x01, 0x01, 0x01, 0x02,
1466 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x01, 0x06,
1467 : 0x81, 0x33
1468 : };
1469 23 : return expand_rtx (expand_encoding, operands);
1470 : }
1471 :
1472 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6355 */
1473 : rtx
1474 12 : gen_avx512vl_fmadd_v8sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1475 : {
1476 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1477 12 : static const uint8_t expand_encoding[] = {
1478 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x81, 0x19,
1479 : 0x6f, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
1480 : 0x01, 0x01, 0x04
1481 : };
1482 12 : return expand_rtx (expand_encoding, operands);
1483 : }
1484 :
1485 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6372 */
1486 : rtx
1487 0 : gen_avx512vl_fmadd_v16hf_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1488 : {
1489 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1490 0 : static const uint8_t expand_encoding[] = {
1491 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x02, 0x81, 0x09,
1492 : 0x6e, 0x81, 0x19, 0x6e, 0x01, 0x01, 0x01, 0x02,
1493 : 0x01, 0x03, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05,
1494 : 0x81, 0x33
1495 : };
1496 0 : return expand_rtx (expand_encoding, operands);
1497 : }
1498 :
1499 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6372 */
1500 : rtx
1501 12 : gen_avx512vl_fmadd_v4df_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1502 : {
1503 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1504 12 : static const uint8_t expand_encoding[] = {
1505 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x19,
1506 : 0x70, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
1507 : 0x03, 0x01, 0x04
1508 : };
1509 12 : return expand_rtx (expand_encoding, operands);
1510 : }
1511 :
1512 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6419 */
1513 : rtx
1514 23 : gen_fma_fmsub_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)
1515 : {
1516 23 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
1517 23 : static const uint8_t expand_encoding[] = {
1518 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x81, 0x09,
1519 : 0x74, 0x81, 0x19, 0x74, 0x01, 0x01, 0x01, 0x02,
1520 : 0x3d, 0x74, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05,
1521 : 0x01, 0x06, 0x81, 0x33
1522 : };
1523 23 : return expand_rtx (expand_encoding, operands);
1524 : }
1525 :
1526 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6459 */
1527 : rtx
1528 23 : gen_avx512fp16_fmsub_v8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1529 : {
1530 23 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1531 23 : static const uint8_t expand_encoding[] = {
1532 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x19,
1533 : 0x6a, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6a, 0x01,
1534 : 0x03, 0x01, 0x01, 0x01, 0x04
1535 : };
1536 23 : return expand_rtx (expand_encoding, operands);
1537 : }
1538 :
1539 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6459 */
1540 : rtx
1541 45 : gen_avx512f_fmsub_v8df_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1542 : {
1543 45 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1544 45 : static const uint8_t expand_encoding[] = {
1545 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81, 0x09,
1546 : 0x75, 0x81, 0x19, 0x75, 0x01, 0x01, 0x01, 0x02,
1547 : 0x3d, 0x75, 0x01, 0x03, 0x01, 0x01, 0x01, 0x04,
1548 : 0x01, 0x05, 0x81, 0x33
1549 : };
1550 45 : return expand_rtx (expand_encoding, operands);
1551 : }
1552 :
1553 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6477 */
1554 : rtx
1555 12 : gen_avx512vl_fmsub_v8sf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1556 : {
1557 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1558 12 : static const uint8_t expand_encoding[] = {
1559 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x81, 0x19,
1560 : 0x6f, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6f, 0x01,
1561 : 0x03, 0x01, 0x03, 0x01, 0x04
1562 : };
1563 12 : return expand_rtx (expand_encoding, operands);
1564 : }
1565 :
1566 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6525 */
1567 : rtx
1568 12 : gen_fma_fnmadd_v8hf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1569 : {
1570 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1571 12 : static const uint8_t expand_encoding[] = {
1572 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x19,
1573 : 0x6a, 0x3d, 0x6a, 0x01, 0x01, 0x01, 0x02, 0x01,
1574 : 0x03, 0x01, 0x04, 0x01, 0x05
1575 : };
1576 12 : return expand_rtx (expand_encoding, operands);
1577 : }
1578 :
1579 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6565 */
1580 : rtx
1581 46 : gen_avx512bw_fnmadd_v32hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1582 : {
1583 46 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1584 46 : static const uint8_t expand_encoding[] = {
1585 : 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x81, 0x09,
1586 : 0x73, 0x81, 0x19, 0x73, 0x3d, 0x73, 0x01, 0x01,
1587 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x01, 0x01, 0x04,
1588 : 0x01, 0x05, 0x81, 0x33
1589 : };
1590 46 : return expand_rtx (expand_encoding, operands);
1591 : }
1592 :
1593 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6583 */
1594 : rtx
1595 0 : gen_avx512bw_fnmadd_v32hf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1596 : {
1597 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1598 0 : static const uint8_t expand_encoding[] = {
1599 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x81, 0x19,
1600 : 0x73, 0x3d, 0x73, 0x01, 0x01, 0x01, 0x02, 0x01,
1601 : 0x03, 0x01, 0x03, 0x01, 0x04
1602 : };
1603 0 : return expand_rtx (expand_encoding, operands);
1604 : }
1605 :
1606 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6583 */
1607 : rtx
1608 12 : gen_avx512vl_fnmadd_v4df_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1609 : {
1610 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1611 12 : static const uint8_t expand_encoding[] = {
1612 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x19,
1613 : 0x70, 0x3d, 0x70, 0x01, 0x01, 0x01, 0x02, 0x01,
1614 : 0x03, 0x01, 0x03, 0x01, 0x04
1615 : };
1616 12 : return expand_rtx (expand_encoding, operands);
1617 : }
1618 :
1619 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6632 */
1620 : rtx
1621 13 : gen_fma_fnmsub_v4sf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1622 : {
1623 13 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1624 13 : static const uint8_t expand_encoding[] = {
1625 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x19,
1626 : 0x6b, 0x3d, 0x6b, 0x01, 0x01, 0x01, 0x02, 0x3d,
1627 : 0x6b, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05
1628 : };
1629 13 : return expand_rtx (expand_encoding, operands);
1630 : }
1631 :
1632 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6674 */
1633 : rtx
1634 52 : gen_avx512f_fnmsub_v16sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1635 : {
1636 52 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1637 52 : static const uint8_t expand_encoding[] = {
1638 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x81, 0x09,
1639 : 0x74, 0x81, 0x19, 0x74, 0x3d, 0x74, 0x01, 0x01,
1640 : 0x01, 0x02, 0x3d, 0x74, 0x01, 0x03, 0x01, 0x01,
1641 : 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
1642 : };
1643 52 : return expand_rtx (expand_encoding, operands);
1644 : }
1645 :
1646 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6693 */
1647 : rtx
1648 12 : gen_avx512fp16_fnmsub_v8hf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1649 : {
1650 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1651 12 : static const uint8_t expand_encoding[] = {
1652 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x19,
1653 : 0x6a, 0x3d, 0x6a, 0x01, 0x01, 0x01, 0x02, 0x3d,
1654 : 0x6a, 0x01, 0x03, 0x01, 0x03, 0x01, 0x04
1655 : };
1656 12 : return expand_rtx (expand_encoding, operands);
1657 : }
1658 :
1659 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6693 */
1660 : rtx
1661 22 : gen_avx512f_fnmsub_v8df_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1662 : {
1663 22 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1664 22 : static const uint8_t expand_encoding[] = {
1665 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81, 0x09,
1666 : 0x75, 0x81, 0x19, 0x75, 0x3d, 0x75, 0x01, 0x01,
1667 : 0x01, 0x02, 0x3d, 0x75, 0x01, 0x03, 0x01, 0x03,
1668 : 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
1669 : };
1670 22 : return expand_rtx (expand_encoding, operands);
1671 : }
1672 :
1673 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6795 */
1674 : rtx
1675 24 : gen_fma_fmaddsub_v8sf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1676 : {
1677 24 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1678 24 : static const uint8_t expand_encoding[] = {
1679 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x1a, 0x6f,
1680 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1681 : 0x06, 0x01, 0x04, 0x01, 0x05
1682 : };
1683 24 : return expand_rtx (expand_encoding, operands);
1684 : }
1685 :
1686 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6811 */
1687 : rtx
1688 0 : gen_avx512vl_fmaddsub_v16hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1689 : {
1690 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1691 0 : static const uint8_t expand_encoding[] = {
1692 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x02, 0x81, 0x09,
1693 : 0x6e, 0x1a, 0x6e, 0x03, 0x01, 0x01, 0x01, 0x02,
1694 : 0x01, 0x03, 0x81, 0x06, 0x01, 0x01, 0x01, 0x04,
1695 : 0x01, 0x05, 0x81, 0x33
1696 : };
1697 0 : return expand_rtx (expand_encoding, operands);
1698 : }
1699 :
1700 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6811 */
1701 : rtx
1702 0 : gen_avx512vl_fmaddsub_v4df_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1703 : {
1704 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1705 0 : static const uint8_t expand_encoding[] = {
1706 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x81, 0x09,
1707 : 0x70, 0x1a, 0x70, 0x03, 0x01, 0x01, 0x01, 0x02,
1708 : 0x01, 0x03, 0x81, 0x06, 0x01, 0x01, 0x01, 0x04,
1709 : 0x01, 0x05, 0x81, 0x33
1710 : };
1711 0 : return expand_rtx (expand_encoding, operands);
1712 : }
1713 :
1714 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6829 */
1715 : rtx
1716 12 : gen_avx512vl_fmaddsub_v8sf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1717 : {
1718 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1719 12 : static const uint8_t expand_encoding[] = {
1720 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x1a, 0x6f,
1721 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1722 : 0x06, 0x01, 0x03, 0x01, 0x04
1723 : };
1724 12 : return expand_rtx (expand_encoding, operands);
1725 : }
1726 :
1727 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6829 */
1728 : rtx
1729 12 : gen_avx512vl_fmaddsub_v2df_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1730 : {
1731 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1732 12 : static const uint8_t expand_encoding[] = {
1733 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
1734 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1735 : 0x06, 0x01, 0x03, 0x01, 0x04
1736 : };
1737 12 : return expand_rtx (expand_encoding, operands);
1738 : }
1739 :
1740 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6864 */
1741 : rtx
1742 0 : gen_fma_fmsubadd_v4sf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1743 : {
1744 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1745 0 : static const uint8_t expand_encoding[] = {
1746 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
1747 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6b, 0x01,
1748 : 0x03, 0x81, 0x06, 0x01, 0x04, 0x01, 0x05
1749 : };
1750 0 : return expand_rtx (expand_encoding, operands);
1751 : }
1752 :
1753 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6881 */
1754 : rtx
1755 0 : gen_avx512fp16_fmsubadd_v8hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1756 : {
1757 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1758 0 : static const uint8_t expand_encoding[] = {
1759 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
1760 : 0x6a, 0x1a, 0x6a, 0x03, 0x01, 0x01, 0x01, 0x02,
1761 : 0x3d, 0x6a, 0x01, 0x03, 0x81, 0x06, 0x01, 0x01,
1762 : 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
1763 : };
1764 0 : return expand_rtx (expand_encoding, operands);
1765 : }
1766 :
1767 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6881 */
1768 : rtx
1769 0 : gen_avx512vl_fmsubadd_v2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1770 : {
1771 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1772 0 : static const uint8_t expand_encoding[] = {
1773 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
1774 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6c, 0x01,
1775 : 0x03, 0x81, 0x06, 0x01, 0x01, 0x01, 0x04
1776 : };
1777 0 : return expand_rtx (expand_encoding, operands);
1778 : }
1779 :
1780 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6900 */
1781 : rtx
1782 22 : gen_avx512f_fmsubadd_v16sf_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1783 : {
1784 22 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1785 22 : static const uint8_t expand_encoding[] = {
1786 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x81, 0x09,
1787 : 0x74, 0x1a, 0x74, 0x03, 0x01, 0x01, 0x01, 0x02,
1788 : 0x3d, 0x74, 0x01, 0x03, 0x81, 0x06, 0x01, 0x03,
1789 : 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
1790 : };
1791 22 : return expand_rtx (expand_encoding, operands);
1792 : }
1793 :
1794 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7040 */
1795 : rtx
1796 0 : gen_avx512f_vmfmadd_v8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1797 : {
1798 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1799 0 : static const uint8_t expand_encoding[] = {
1800 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x09,
1801 : 0x6a, 0x81, 0x19, 0x6a, 0x01, 0x01, 0x01, 0x02,
1802 : 0x01, 0x03, 0x01, 0x01, 0x01, 0x04, 0x01, 0x01,
1803 : 0x27, 0x01
1804 : };
1805 0 : return expand_rtx (expand_encoding, operands);
1806 : }
1807 :
1808 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7060 */
1809 : rtx
1810 50 : gen_avx512f_vmfmadd_v4sf_mask3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1811 : {
1812 50 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1813 50 : static const uint8_t expand_encoding[] = {
1814 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
1815 : 0x6b, 0x81, 0x09, 0x6b, 0x81, 0x19, 0x6b, 0x01,
1816 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x03, 0x01,
1817 : 0x04, 0x01, 0x03, 0x27, 0x01, 0x01, 0x05, 0x81,
1818 : 0x33
1819 : };
1820 50 : return expand_rtx (expand_encoding, operands);
1821 : }
1822 :
1823 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7133 */
1824 : rtx
1825 0 : gen_avx512f_vmfmsub_v4sf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1826 : {
1827 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1828 0 : static const uint8_t expand_encoding[] = {
1829 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x09,
1830 : 0x6b, 0x81, 0x19, 0x6b, 0x01, 0x01, 0x01, 0x02,
1831 : 0x3d, 0x6b, 0x01, 0x03, 0x01, 0x03, 0x01, 0x04,
1832 : 0x01, 0x03, 0x27, 0x01
1833 : };
1834 0 : return expand_rtx (expand_encoding, operands);
1835 : }
1836 :
1837 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7173 */
1838 : rtx
1839 0 : gen_avx512f_vmfnmadd_v2df_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1840 : {
1841 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1842 0 : static const uint8_t expand_encoding[] = {
1843 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
1844 : 0x6c, 0x81, 0x09, 0x6c, 0x81, 0x19, 0x6c, 0x3d,
1845 : 0x6c, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
1846 : 0x01, 0x01, 0x04, 0x01, 0x01, 0x27, 0x01, 0x01,
1847 : 0x05, 0x81, 0x33
1848 : };
1849 0 : return expand_rtx (expand_encoding, operands);
1850 : }
1851 :
1852 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7227 */
1853 : rtx
1854 0 : gen_avx512f_vmfnmadd_v2df_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
1855 : {
1856 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
1857 0 : static const uint8_t expand_encoding[] = {
1858 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x09,
1859 : 0x6c, 0x81, 0x19, 0x6c, 0x3d, 0x6c, 0x01, 0x02,
1860 : 0x01, 0x01, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05,
1861 : 0x01, 0x01, 0x27, 0x01
1862 : };
1863 0 : return expand_rtx (expand_encoding, operands);
1864 : }
1865 :
1866 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7534 */
1867 : rtx
1868 13 : gen_fma_fmaddc_v16hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1869 : {
1870 13 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1871 13 : static const uint8_t expand_encoding[] = {
1872 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x03, 0x01, 0x01,
1873 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x5a
1874 : };
1875 13 : return expand_rtx (expand_encoding, operands);
1876 : }
1877 :
1878 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7547 */
1879 : rtx
1880 0 : gen_fma_v32hf_fadd_fmul (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1881 : {
1882 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1883 0 : static const uint8_t expand_encoding[] = {
1884 : 0x1f, 0x01, 0x00, 0x3b, 0x73, 0x1a, 0x73, 0x02,
1885 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x5e, 0x01, 0x03
1886 : };
1887 0 : return expand_rtx (expand_encoding, operands);
1888 : }
1889 :
1890 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7581 */
1891 : rtx
1892 0 : gen_fma_fcmaddc_v16hf_fma_zero (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1893 : {
1894 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1895 0 : static const uint8_t expand_encoding[] = {
1896 : 0x1f, 0x01, 0x00, 0x3b, 0x6e, 0x1a, 0x6e, 0x03,
1897 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x5c,
1898 : 0x01, 0x04
1899 : };
1900 0 : return expand_rtx (expand_encoding, operands);
1901 : }
1902 :
1903 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7612 */
1904 : rtx
1905 0 : gen_fma_v16hf_fmaddc_bcst (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1906 : {
1907 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
1908 0 : static const uint8_t expand_encoding[] = {
1909 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x03, 0x01, 0x01,
1910 : 0x32, 0x6e, 0x01, 0x02, 0x00, 0x01, 0x03, 0x81,
1911 : 0x5a
1912 : };
1913 0 : return expand_rtx (expand_encoding, operands);
1914 : }
1915 :
1916 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7667 */
1917 : rtx
1918 24 : gen_avx512vl_fcmaddc_v16hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1919 : {
1920 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1921 24 : static const uint8_t expand_encoding[] = {
1922 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x1a, 0x6e,
1923 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
1924 : 0x5c, 0x01, 0x01, 0x1a, 0x10, 0x01, 0x01, 0x04,
1925 : 0x81, 0x60
1926 : };
1927 24 : return expand_rtx (expand_encoding, operands);
1928 : }
1929 :
1930 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7693 */
1931 : rtx
1932 14 : gen_avx512vl_fmulc_v16hf (const rtx operand0, const rtx operand1, const rtx operand2)
1933 : {
1934 14 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
1935 14 : static const uint8_t expand_encoding[] = {
1936 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x02, 0x01, 0x01,
1937 : 0x01, 0x02, 0x81, 0x5e
1938 : };
1939 14 : return expand_rtx (expand_encoding, operands);
1940 : }
1941 :
1942 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7693 */
1943 : rtx
1944 26 : gen_avx512fp16_fcmulc_v8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1945 : {
1946 26 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1947 26 : static const uint8_t expand_encoding[] = {
1948 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
1949 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x5f, 0x01,
1950 : 0x03, 0x1a, 0x0f, 0x01, 0x01, 0x04, 0x81, 0x60
1951 : };
1952 26 : return expand_rtx (expand_encoding, operands);
1953 : }
1954 :
1955 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7874 */
1956 : rtx
1957 10 : gen_avx512fp16_fcmaddcsh_v8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1958 : {
1959 10 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1960 10 : static const uint8_t expand_encoding[] = {
1961 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x09,
1962 : 0x6a, 0x1a, 0x6a, 0x03, 0x01, 0x01, 0x01, 0x02,
1963 : 0x01, 0x03, 0x81, 0x5c, 0x01, 0x01, 0x1a, 0x0f,
1964 : 0x01, 0x01, 0x04, 0x81, 0x60, 0x01, 0x02, 0x27,
1965 : 0x03
1966 : };
1967 10 : return expand_rtx (expand_encoding, operands);
1968 : }
1969 :
1970 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
1971 : rtx
1972 0 : gen_avx512fp16_vcvtph2uw_v32hi (const rtx operand0, const rtx operand1)
1973 : {
1974 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
1975 0 : static const uint8_t expand_encoding[] = {
1976 : 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x01, 0x01, 0x01,
1977 : 0x81, 0x1d
1978 : };
1979 0 : return expand_rtx (expand_encoding, operands);
1980 : }
1981 :
1982 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
1983 : rtx
1984 69 : gen_avx512fp16_vcvtph2w_v32hi_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
1985 : {
1986 69 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
1987 69 : static const uint8_t expand_encoding[] = {
1988 : 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x02, 0x81, 0x09,
1989 : 0x5a, 0x1a, 0x5a, 0x01, 0x01, 0x01, 0x2f, 0x01,
1990 : 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
1991 : };
1992 69 : return expand_rtx (expand_encoding, operands);
1993 : }
1994 :
1995 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
1996 : rtx
1997 0 : gen_avx512fp16_vcvtph2uqq_v8di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
1998 : {
1999 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2000 0 : static const uint8_t expand_encoding[] = {
2001 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x1a, 0x5c,
2002 : 0x01, 0x01, 0x01, 0x81, 0x1d, 0x01, 0x02, 0x01,
2003 : 0x03
2004 : };
2005 0 : return expand_rtx (expand_encoding, operands);
2006 : }
2007 :
2008 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2009 : rtx
2010 0 : gen_avx512fp16_vcvtph2w_v16hi_round (const rtx operand0, const rtx operand1, const rtx operand2)
2011 : {
2012 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2013 0 : static const uint8_t expand_encoding[] = {
2014 : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x02, 0x1a, 0x55,
2015 : 0x01, 0x01, 0x01, 0x2f, 0x01, 0x02, 0x81, 0x33
2016 : };
2017 0 : return expand_rtx (expand_encoding, operands);
2018 : }
2019 :
2020 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2021 : rtx
2022 0 : gen_avx512fp16_vcvtph2dq_v8si_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2023 : {
2024 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2025 0 : static const uint8_t expand_encoding[] = {
2026 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x02, 0x81, 0x09,
2027 : 0x56, 0x1a, 0x56, 0x01, 0x01, 0x01, 0x2f, 0x01,
2028 : 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2029 : };
2030 0 : return expand_rtx (expand_encoding, operands);
2031 : }
2032 :
2033 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2034 : rtx
2035 0 : gen_avx512fp16_vcvtph2uw_v8hi_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2036 : {
2037 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2038 0 : static const uint8_t expand_encoding[] = {
2039 : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x02, 0x81, 0x09,
2040 : 0x50, 0x1a, 0x50, 0x01, 0x01, 0x01, 0x81, 0x1d,
2041 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2042 : };
2043 0 : return expand_rtx (expand_encoding, operands);
2044 : }
2045 :
2046 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8006 */
2047 : rtx
2048 0 : gen_avx512fp16_vcvtph2dq_v4si_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2049 : {
2050 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2051 0 : static const uint8_t expand_encoding[] = {
2052 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x02, 0x81, 0x09,
2053 : 0x51, 0x1a, 0x51, 0x01, 0x01, 0x01, 0x2f, 0x01,
2054 : 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2055 : };
2056 0 : return expand_rtx (expand_encoding, operands);
2057 : }
2058 :
2059 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8023 */
2060 : rtx
2061 0 : gen_avx512fp16_vcvtw2ph_v8hi_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2062 : {
2063 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2064 0 : static const uint8_t expand_encoding[] = {
2065 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
2066 : 0x6a, 0x73, 0x6a, 0x01, 0x01, 0x01, 0x02, 0x01,
2067 : 0x03, 0x01, 0x04, 0x81, 0x33
2068 : };
2069 0 : return expand_rtx (expand_encoding, operands);
2070 : }
2071 :
2072 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8023 */
2073 : rtx
2074 0 : gen_avx512fp16_vcvtuw2ph_v16hi_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2075 : {
2076 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2077 0 : static const uint8_t expand_encoding[] = {
2078 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x02, 0x81, 0x09,
2079 : 0x6e, 0x75, 0x6e, 0x01, 0x01, 0x01, 0x02, 0x01,
2080 : 0x03, 0x01, 0x04, 0x81, 0x33
2081 : };
2082 0 : return expand_rtx (expand_encoding, operands);
2083 : }
2084 :
2085 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8023 */
2086 : rtx
2087 0 : gen_avx512fp16_vcvtdq2ph_v8si_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2088 : {
2089 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2090 0 : static const uint8_t expand_encoding[] = {
2091 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
2092 : 0x6a, 0x73, 0x6a, 0x01, 0x01, 0x01, 0x02, 0x01,
2093 : 0x03, 0x01, 0x04, 0x81, 0x33
2094 : };
2095 0 : return expand_rtx (expand_encoding, operands);
2096 : }
2097 :
2098 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8023 */
2099 : rtx
2100 69 : gen_avx512fp16_vcvtudq2ph_v16si_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2101 : {
2102 69 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2103 69 : static const uint8_t expand_encoding[] = {
2104 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x02, 0x81, 0x09,
2105 : 0x6e, 0x75, 0x6e, 0x01, 0x01, 0x01, 0x02, 0x01,
2106 : 0x03, 0x01, 0x04, 0x81, 0x33
2107 : };
2108 69 : return expand_rtx (expand_encoding, operands);
2109 : }
2110 :
2111 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8185 */
2112 : rtx
2113 23 : gen_avx512fp16_vcvtsh2si_round (const rtx operand0, const rtx operand1, const rtx operand2)
2114 : {
2115 23 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2116 23 : static const uint8_t expand_encoding[] = {
2117 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x02, 0x1a, 0x11,
2118 : 0x01, 0x81, 0x0a, 0x2b, 0x01, 0x01, 0x17, 0x00,
2119 : 0x01, 0x27, 0x00, 0x2f, 0x01, 0x02, 0x81, 0x33
2120 : };
2121 23 : return expand_rtx (expand_encoding, operands);
2122 : }
2123 :
2124 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8211 */
2125 : rtx
2126 0 : gen_avx512fp16_vcvtusi2sh (const rtx operand0, const rtx operand1, const rtx operand2)
2127 : {
2128 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2129 0 : static const uint8_t expand_encoding[] = {
2130 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x0c,
2131 : 0x6a, 0x75, 0x2b, 0x01, 0x02, 0x01, 0x01, 0x27,
2132 : 0x01
2133 : };
2134 0 : return expand_rtx (expand_encoding, operands);
2135 : }
2136 :
2137 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8231 */
2138 : rtx
2139 0 : gen_unspec_avx512fp16_fix_truncv8hi2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2140 : {
2141 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2142 0 : static const uint8_t expand_encoding[] = {
2143 : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x02, 0x81, 0x09,
2144 : 0x50, 0x1a, 0x50, 0x01, 0x01, 0x01, 0x81, 0x2d,
2145 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2146 : };
2147 0 : return expand_rtx (expand_encoding, operands);
2148 : }
2149 :
2150 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8231 */
2151 : rtx
2152 0 : gen_unspec_avx512fp16_fix_truncv32hi2 (const rtx operand0, const rtx operand1)
2153 : {
2154 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2155 0 : static const uint8_t expand_encoding[] = {
2156 : 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x01, 0x01, 0x01,
2157 : 0x81, 0x2d
2158 : };
2159 0 : return expand_rtx (expand_encoding, operands);
2160 : }
2161 :
2162 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8231 */
2163 : rtx
2164 0 : gen_unspec_avx512fp16_fix_truncv8si2 (const rtx operand0, const rtx operand1)
2165 : {
2166 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2167 0 : static const uint8_t expand_encoding[] = {
2168 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x01, 0x01, 0x01,
2169 : 0x81, 0x2d
2170 : };
2171 0 : return expand_rtx (expand_encoding, operands);
2172 : }
2173 :
2174 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8231 */
2175 : rtx
2176 0 : gen_unspec_avx512fp16_fix_truncv16si2 (const rtx operand0, const rtx operand1)
2177 : {
2178 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2179 0 : static const uint8_t expand_encoding[] = {
2180 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x01, 0x01, 0x01,
2181 : 0x81, 0x2d
2182 : };
2183 0 : return expand_rtx (expand_encoding, operands);
2184 : }
2185 :
2186 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8231 */
2187 : rtx
2188 0 : gen_unspec_avx512fp16_fix_truncv8di2 (const rtx operand0, const rtx operand1)
2189 : {
2190 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2191 0 : static const uint8_t expand_encoding[] = {
2192 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x01, 0x01, 0x01,
2193 : 0x81, 0x2d
2194 : };
2195 0 : return expand_rtx (expand_encoding, operands);
2196 : }
2197 :
2198 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8242 */
2199 : rtx
2200 0 : gen_avx512fp16_fix_truncv8hi2 (const rtx operand0, const rtx operand1)
2201 : {
2202 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2203 0 : static const uint8_t expand_encoding[] = {
2204 : 0x1f, 0x01, 0x00, 0x74, 0x50, 0x01, 0x01
2205 : };
2206 0 : return expand_rtx (expand_encoding, operands);
2207 : }
2208 :
2209 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8242 */
2210 : rtx
2211 0 : gen_avx512fp16_fix_truncv16hi2 (const rtx operand0, const rtx operand1)
2212 : {
2213 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2214 0 : static const uint8_t expand_encoding[] = {
2215 : 0x1f, 0x01, 0x00, 0x74, 0x55, 0x01, 0x01
2216 : };
2217 0 : return expand_rtx (expand_encoding, operands);
2218 : }
2219 :
2220 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8242 */
2221 : rtx
2222 0 : gen_avx512fp16_fixuns_truncv16hi2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2223 : {
2224 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2225 0 : static const uint8_t expand_encoding[] = {
2226 : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x02, 0x81, 0x09,
2227 : 0x55, 0x76, 0x55, 0x01, 0x01, 0x01, 0x02, 0x01,
2228 : 0x03, 0x01, 0x04, 0x81, 0x33
2229 : };
2230 0 : return expand_rtx (expand_encoding, operands);
2231 : }
2232 :
2233 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8242 */
2234 : rtx
2235 0 : gen_avx512fp16_fix_truncv8si2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2236 : {
2237 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2238 0 : static const uint8_t expand_encoding[] = {
2239 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x02, 0x81, 0x09,
2240 : 0x56, 0x74, 0x56, 0x01, 0x01, 0x01, 0x02, 0x01,
2241 : 0x03, 0x01, 0x04, 0x81, 0x33
2242 : };
2243 0 : return expand_rtx (expand_encoding, operands);
2244 : }
2245 :
2246 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8242 */
2247 : rtx
2248 0 : gen_avx512fp16_fix_truncv8di2 (const rtx operand0, const rtx operand1)
2249 : {
2250 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2251 0 : static const uint8_t expand_encoding[] = {
2252 : 0x1f, 0x01, 0x00, 0x74, 0x5c, 0x01, 0x01
2253 : };
2254 0 : return expand_rtx (expand_encoding, operands);
2255 : }
2256 :
2257 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8242 */
2258 : rtx
2259 0 : gen_avx512fp16_fixuns_truncv8di2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2260 : {
2261 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2262 0 : static const uint8_t expand_encoding[] = {
2263 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x02, 0x81, 0x09,
2264 : 0x5c, 0x76, 0x5c, 0x01, 0x01, 0x01, 0x02, 0x01,
2265 : 0x03, 0x01, 0x04, 0x81, 0x33
2266 : };
2267 0 : return expand_rtx (expand_encoding, operands);
2268 : }
2269 :
2270 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8280 */
2271 : rtx
2272 0 : gen_avx512fp16_fixuns_truncv4si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2273 : {
2274 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2275 0 : static const uint8_t expand_encoding[] = {
2276 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x76, 0x51,
2277 : 0x81, 0x0a, 0x66, 0x01, 0x01, 0x17, 0x00, 0x04,
2278 : 0x27, 0x00, 0x27, 0x01, 0x27, 0x02, 0x27, 0x03,
2279 : 0x01, 0x02, 0x01, 0x03
2280 : };
2281 0 : return expand_rtx (expand_encoding, operands);
2282 : }
2283 :
2284 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8330 */
2285 : rtx
2286 0 : gen_avx512fp16_fixuns_truncv2di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2287 : {
2288 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2289 0 : static const uint8_t expand_encoding[] = {
2290 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x76, 0x52,
2291 : 0x81, 0x0a, 0x63, 0x01, 0x01, 0x17, 0x00, 0x02,
2292 : 0x27, 0x00, 0x27, 0x01, 0x01, 0x02, 0x01, 0x03
2293 : };
2294 0 : return expand_rtx (expand_encoding, operands);
2295 : }
2296 :
2297 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8363 */
2298 : rtx
2299 0 : gen_avx512fp16_fix_truncdi2 (const rtx operand0, const rtx operand1)
2300 : {
2301 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2302 0 : static const uint8_t expand_encoding[] = {
2303 : 0x1f, 0x01, 0x00, 0x74, 0x12, 0x81, 0x0a, 0x2b,
2304 : 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
2305 : };
2306 0 : return expand_rtx (expand_encoding, operands);
2307 : }
2308 :
2309 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8395 */
2310 : rtx
2311 0 : gen_avx512fp16_float_extend_phv8df2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2312 : {
2313 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2314 0 : static const uint8_t expand_encoding[] = {
2315 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x71, 0x75,
2316 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x33
2317 : };
2318 0 : return expand_rtx (expand_encoding, operands);
2319 : }
2320 :
2321 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8395 */
2322 : rtx
2323 0 : gen_avx512fp16_float_extend_phv8sf2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2324 : {
2325 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2326 0 : static const uint8_t expand_encoding[] = {
2327 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x02, 0x81, 0x09,
2328 : 0x6f, 0x71, 0x6f, 0x01, 0x01, 0x01, 0x02, 0x01,
2329 : 0x03, 0x01, 0x04, 0x81, 0x33
2330 : };
2331 0 : return expand_rtx (expand_encoding, operands);
2332 : }
2333 :
2334 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8489 */
2335 : rtx
2336 0 : gen_avx512fp16_vcvtps2ph_v16sf (const rtx operand0, const rtx operand1)
2337 : {
2338 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2339 0 : static const uint8_t expand_encoding[] = {
2340 : 0x1f, 0x01, 0x00, 0x72, 0x6e, 0x01, 0x01
2341 : };
2342 0 : return expand_rtx (expand_encoding, operands);
2343 : }
2344 :
2345 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8656 */
2346 : rtx
2347 0 : gen_avx512fp16_vcvtsh2sd_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2348 : {
2349 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2350 0 : static const uint8_t expand_encoding[] = {
2351 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x09,
2352 : 0x6c, 0x81, 0x0c, 0x6c, 0x71, 0x2e, 0x81, 0x0a,
2353 : 0x2b, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
2354 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x02, 0x27, 0x01
2355 : };
2356 0 : return expand_rtx (expand_encoding, operands);
2357 : }
2358 :
2359 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8672 */
2360 : rtx
2361 0 : gen_avx512fp16_vcvtsh2ss_mask_mem (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2362 : {
2363 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2364 0 : static const uint8_t expand_encoding[] = {
2365 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x09,
2366 : 0x6b, 0x81, 0x0c, 0x6b, 0x71, 0x2d, 0x01, 0x01,
2367 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x02, 0x27, 0x01
2368 : };
2369 0 : return expand_rtx (expand_encoding, operands);
2370 : }
2371 :
2372 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8702 */
2373 : rtx
2374 0 : gen_avx512fp16_vcvtss2sh_mask_mem (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2375 : {
2376 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2377 0 : static const uint8_t expand_encoding[] = {
2378 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x09,
2379 : 0x6a, 0x81, 0x0c, 0x6a, 0x72, 0x2b, 0x01, 0x01,
2380 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x02, 0x27, 0x01
2381 : };
2382 0 : return expand_rtx (expand_encoding, operands);
2383 : }
2384 :
2385 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8913 */
2386 : rtx
2387 35 : gen_sse_cvtss2si (const rtx operand0, const rtx operand1)
2388 : {
2389 35 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2390 35 : static const uint8_t expand_encoding[] = {
2391 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x81, 0x0a,
2392 : 0x2d, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
2393 : 0x2f
2394 : };
2395 35 : return expand_rtx (expand_encoding, operands);
2396 : }
2397 :
2398 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8943 */
2399 : rtx
2400 25 : gen_unspec_sse_cvttss2siq_round (const rtx operand0, const rtx operand1, const rtx operand2)
2401 : {
2402 25 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2403 25 : static const uint8_t expand_encoding[] = {
2404 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x02, 0x1a, 0x12,
2405 : 0x01, 0x01, 0x01, 0x81, 0x2d, 0x01, 0x02, 0x81,
2406 : 0x33
2407 : };
2408 25 : return expand_rtx (expand_encoding, operands);
2409 : }
2410 :
2411 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8988 */
2412 : rtx
2413 0 : gen_cvtusi2sd64 (const rtx operand0, const rtx operand1, const rtx operand2)
2414 : {
2415 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2416 0 : static const uint8_t expand_encoding[] = {
2417 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x0c,
2418 : 0x6c, 0x75, 0x2e, 0x01, 0x02, 0x01, 0x01, 0x27,
2419 : 0x01
2420 : };
2421 0 : return expand_rtx (expand_encoding, operands);
2422 : }
2423 :
2424 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9015 */
2425 : rtx
2426 66 : gen_floatunsv16siv16sf2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2427 : {
2428 66 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2429 66 : static const uint8_t expand_encoding[] = {
2430 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x81, 0x09,
2431 : 0x74, 0x75, 0x74, 0x01, 0x01, 0x01, 0x02, 0x01,
2432 : 0x03, 0x01, 0x04, 0x81, 0x33
2433 : };
2434 66 : return expand_rtx (expand_encoding, operands);
2435 : }
2436 :
2437 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9059 */
2438 : rtx
2439 66 : gen_avx512f_fix_notruncv16sfv16si_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2440 : {
2441 66 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2442 66 : static const uint8_t expand_encoding[] = {
2443 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x02, 0x81, 0x09,
2444 : 0x5b, 0x1a, 0x5b, 0x01, 0x01, 0x01, 0x2f, 0x01,
2445 : 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
2446 : };
2447 66 : return expand_rtx (expand_encoding, operands);
2448 : }
2449 :
2450 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9104 */
2451 : rtx
2452 0 : gen_avx512dq_cvtps2uqqv8di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2453 : {
2454 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2455 0 : static const uint8_t expand_encoding[] = {
2456 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x1a, 0x5c,
2457 : 0x01, 0x01, 0x01, 0x81, 0x1d, 0x01, 0x02, 0x01,
2458 : 0x03
2459 : };
2460 0 : return expand_rtx (expand_encoding, operands);
2461 : }
2462 :
2463 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9127 */
2464 : rtx
2465 0 : gen_unspec_fixuns_truncv16sfv16si2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2466 : {
2467 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2468 0 : static const uint8_t expand_encoding[] = {
2469 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x02, 0x1a, 0x5b,
2470 : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x81,
2471 : 0x33
2472 : };
2473 0 : return expand_rtx (expand_encoding, operands);
2474 : }
2475 :
2476 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9138 */
2477 : rtx
2478 0 : gen_fixuns_truncv16sfv16si2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2479 : {
2480 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2481 0 : static const uint8_t expand_encoding[] = {
2482 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x02, 0x81, 0x09,
2483 : 0x5b, 0x76, 0x5b, 0x01, 0x01, 0x01, 0x02, 0x01,
2484 : 0x03, 0x01, 0x04, 0x81, 0x33
2485 : };
2486 0 : return expand_rtx (expand_encoding, operands);
2487 : }
2488 :
2489 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9297 */
2490 : rtx
2491 0 : gen_sse2_cvttpd2pi (const rtx operand0, const rtx operand1)
2492 : {
2493 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2494 0 : static const uint8_t expand_encoding[] = {
2495 : 0x1f, 0x01, 0x00, 0x74, 0x4a, 0x01, 0x01
2496 : };
2497 0 : return expand_rtx (expand_encoding, operands);
2498 : }
2499 :
2500 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9385 */
2501 : rtx
2502 19 : gen_avx512f_vcvtss2usiq_round (const rtx operand0, const rtx operand1, const rtx operand2)
2503 : {
2504 19 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2505 19 : static const uint8_t expand_encoding[] = {
2506 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x02, 0x1a, 0x12,
2507 : 0x01, 0x81, 0x0a, 0x2d, 0x01, 0x01, 0x17, 0x00,
2508 : 0x01, 0x27, 0x00, 0x81, 0x1d, 0x01, 0x02, 0x81,
2509 : 0x33
2510 : };
2511 19 : return expand_rtx (expand_encoding, operands);
2512 : }
2513 :
2514 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9434 */
2515 : rtx
2516 0 : gen_unspec_avx512f_vcvttsd2usi (const rtx operand0, const rtx operand1)
2517 : {
2518 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2519 0 : static const uint8_t expand_encoding[] = {
2520 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01, 0x01,
2521 : 0x81, 0x2e
2522 : };
2523 0 : return expand_rtx (expand_encoding, operands);
2524 : }
2525 :
2526 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9457 */
2527 : rtx
2528 23 : gen_sse2_cvtsd2si (const rtx operand0, const rtx operand1)
2529 : {
2530 23 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2531 23 : static const uint8_t expand_encoding[] = {
2532 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x81, 0x0a,
2533 : 0x2e, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
2534 : 0x2f
2535 : };
2536 23 : return expand_rtx (expand_encoding, operands);
2537 : }
2538 :
2539 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9488 */
2540 : rtx
2541 25 : gen_unspec_sse2_cvttsd2siq_round (const rtx operand0, const rtx operand1, const rtx operand2)
2542 : {
2543 25 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2544 25 : static const uint8_t expand_encoding[] = {
2545 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x02, 0x1a, 0x12,
2546 : 0x01, 0x01, 0x01, 0x81, 0x2d, 0x01, 0x02, 0x81,
2547 : 0x33
2548 : };
2549 25 : return expand_rtx (expand_encoding, operands);
2550 : }
2551 :
2552 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9536 */
2553 : rtx
2554 0 : gen_floatv8div8df2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2555 : {
2556 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2557 0 : static const uint8_t expand_encoding[] = {
2558 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x73, 0x75,
2559 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x33
2560 : };
2561 0 : return expand_rtx (expand_encoding, operands);
2562 : }
2563 :
2564 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9536 */
2565 : rtx
2566 0 : gen_floatv4div4df2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2567 : {
2568 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2569 0 : static const uint8_t expand_encoding[] = {
2570 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x81, 0x09,
2571 : 0x70, 0x73, 0x70, 0x01, 0x01, 0x01, 0x02, 0x01,
2572 : 0x03, 0x01, 0x04, 0x81, 0x33
2573 : };
2574 0 : return expand_rtx (expand_encoding, operands);
2575 : }
2576 :
2577 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9550 */
2578 : rtx
2579 8 : gen_floatv8div8sf2 (const rtx operand0, const rtx operand1)
2580 : {
2581 8 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2582 8 : static const uint8_t expand_encoding[] = {
2583 : 0x1f, 0x01, 0x00, 0x73, 0x6f, 0x01, 0x01
2584 : };
2585 8 : return expand_rtx (expand_encoding, operands);
2586 : }
2587 :
2588 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9550 */
2589 : rtx
2590 8 : gen_floatv4div4sf2 (const rtx operand0, const rtx operand1)
2591 : {
2592 8 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2593 8 : static const uint8_t expand_encoding[] = {
2594 : 0x1f, 0x01, 0x00, 0x73, 0x6b, 0x01, 0x01
2595 : };
2596 8 : return expand_rtx (expand_encoding, operands);
2597 : }
2598 :
2599 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9700 */
2600 : rtx
2601 36 : gen_floatunsv4siv4df2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2602 : {
2603 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2604 36 : static const uint8_t expand_encoding[] = {
2605 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x75, 0x70,
2606 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2607 : };
2608 36 : return expand_rtx (expand_encoding, operands);
2609 : }
2610 :
2611 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9773 */
2612 : rtx
2613 15 : gen_avx_cvtpd2dq256 (const rtx operand0, const rtx operand1)
2614 : {
2615 15 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2616 15 : static const uint8_t expand_encoding[] = {
2617 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x01, 0x01, 0x01,
2618 : 0x2f
2619 : };
2620 15 : return expand_rtx (expand_encoding, operands);
2621 : }
2622 :
2623 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9863 */
2624 : rtx
2625 0 : gen_fixuns_notruncv4dfv4si2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2626 : {
2627 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2628 0 : static const uint8_t expand_encoding[] = {
2629 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x02, 0x1a, 0x51,
2630 : 0x01, 0x01, 0x01, 0x81, 0x1d, 0x01, 0x02, 0x81,
2631 : 0x33
2632 : };
2633 0 : return expand_rtx (expand_encoding, operands);
2634 : }
2635 :
2636 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9921 */
2637 : rtx
2638 0 : gen_unspec_fixuns_truncv8dfv8si2 (const rtx operand0, const rtx operand1)
2639 : {
2640 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2641 0 : static const uint8_t expand_encoding[] = {
2642 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x01, 0x01, 0x01,
2643 : 0x81, 0x2e
2644 : };
2645 0 : return expand_rtx (expand_encoding, operands);
2646 : }
2647 :
2648 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9932 */
2649 : rtx
2650 0 : gen_fixuns_truncv8dfv8si2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2651 : {
2652 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2653 0 : static const uint8_t expand_encoding[] = {
2654 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x02, 0x76, 0x56,
2655 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x33
2656 : };
2657 0 : return expand_rtx (expand_encoding, operands);
2658 : }
2659 :
2660 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10031 */
2661 : rtx
2662 0 : gen_unspec_fixuns_truncv4dfv4si2 (const rtx operand0, const rtx operand1)
2663 : {
2664 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2665 0 : static const uint8_t expand_encoding[] = {
2666 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x01, 0x01, 0x01,
2667 : 0x81, 0x2e
2668 : };
2669 0 : return expand_rtx (expand_encoding, operands);
2670 : }
2671 :
2672 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10050 */
2673 : rtx
2674 0 : gen_unspec_fixuns_truncv8dfv8di2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2675 : {
2676 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2677 0 : static const uint8_t expand_encoding[] = {
2678 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x02, 0x1a, 0x5c,
2679 : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x81,
2680 : 0x33
2681 : };
2682 0 : return expand_rtx (expand_encoding, operands);
2683 : }
2684 :
2685 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10050 */
2686 : rtx
2687 0 : gen_unspec_fixuns_truncv2dfv2di2 (const rtx operand0, const rtx operand1)
2688 : {
2689 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2690 0 : static const uint8_t expand_encoding[] = {
2691 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x01, 0x01, 0x01,
2692 : 0x81, 0x2e
2693 : };
2694 0 : return expand_rtx (expand_encoding, operands);
2695 : }
2696 :
2697 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10061 */
2698 : rtx
2699 0 : gen_fixuns_truncv8dfv8di2_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2700 : {
2701 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2702 0 : static const uint8_t expand_encoding[] = {
2703 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x02, 0x81, 0x09,
2704 : 0x5c, 0x76, 0x5c, 0x01, 0x01, 0x01, 0x02, 0x01,
2705 : 0x03, 0x01, 0x04, 0x81, 0x33
2706 : };
2707 0 : return expand_rtx (expand_encoding, operands);
2708 : }
2709 :
2710 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10071 */
2711 : rtx
2712 0 : gen_fix_notruncv4dfv4di2 (const rtx operand0, const rtx operand1)
2713 : {
2714 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2715 0 : static const uint8_t expand_encoding[] = {
2716 : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x01, 0x01, 0x01,
2717 : 0x2f
2718 : };
2719 0 : return expand_rtx (expand_encoding, operands);
2720 : }
2721 :
2722 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10082 */
2723 : rtx
2724 0 : gen_fixuns_notruncv4dfv4di2 (const rtx operand0, const rtx operand1)
2725 : {
2726 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2727 0 : static const uint8_t expand_encoding[] = {
2728 : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x01, 0x01, 0x01,
2729 : 0x81, 0x1d
2730 : };
2731 0 : return expand_rtx (expand_encoding, operands);
2732 : }
2733 :
2734 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10093 */
2735 : rtx
2736 0 : gen_unspec_fixuns_truncv8sfv8di2 (const rtx operand0, const rtx operand1)
2737 : {
2738 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2739 0 : static const uint8_t expand_encoding[] = {
2740 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x01, 0x01, 0x01,
2741 : 0x81, 0x2e
2742 : };
2743 0 : return expand_rtx (expand_encoding, operands);
2744 : }
2745 :
2746 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10104 */
2747 : rtx
2748 0 : gen_fix_truncv8sfv8di2_round (const rtx operand0, const rtx operand1, const rtx operand2)
2749 : {
2750 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2751 0 : static const uint8_t expand_encoding[] = {
2752 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x02, 0x74, 0x5c,
2753 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x33
2754 : };
2755 0 : return expand_rtx (expand_encoding, operands);
2756 : }
2757 :
2758 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10104 */
2759 : rtx
2760 0 : gen_fixuns_truncv4sfv4di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2761 : {
2762 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2763 0 : static const uint8_t expand_encoding[] = {
2764 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x76, 0x57,
2765 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
2766 : };
2767 0 : return expand_rtx (expand_encoding, operands);
2768 : }
2769 :
2770 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10264 */
2771 : rtx
2772 36 : gen_unspec_fixuns_truncv4sfv4si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2773 : {
2774 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2775 36 : static const uint8_t expand_encoding[] = {
2776 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
2777 : 0x01, 0x01, 0x01, 0x81, 0x2e, 0x01, 0x02, 0x01,
2778 : 0x03
2779 : };
2780 36 : return expand_rtx (expand_encoding, operands);
2781 : }
2782 :
2783 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10404 */
2784 : rtx
2785 12 : gen_sse2_cvtss2sd (const rtx operand0, const rtx operand1, const rtx operand2)
2786 : {
2787 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2788 12 : static const uint8_t expand_encoding[] = {
2789 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x71, 0x6c,
2790 : 0x81, 0x0a, 0x67, 0x01, 0x02, 0x17, 0x00, 0x02,
2791 : 0x27, 0x00, 0x27, 0x01, 0x01, 0x01, 0x27, 0x01
2792 : };
2793 12 : return expand_rtx (expand_encoding, operands);
2794 : }
2795 :
2796 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10513 */
2797 : rtx
2798 565 : gen_truncv2dfv2sf2 (const rtx operand0, const rtx operand1)
2799 : {
2800 565 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2801 565 : static const uint8_t expand_encoding[] = {
2802 : 0x1f, 0x01, 0x00, 0x72, 0x67, 0x01, 0x01
2803 : };
2804 565 : return expand_rtx (expand_encoding, operands);
2805 : }
2806 :
2807 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10620 */
2808 : rtx
2809 13 : gen_avx512bw_cvtb2maskv64qi (const rtx operand0, const rtx operand1)
2810 : {
2811 13 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2812 13 : static const uint8_t expand_encoding[] = {
2813 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x01, 0x01,
2814 : 0x81, 0x40
2815 : };
2816 13 : return expand_rtx (expand_encoding, operands);
2817 : }
2818 :
2819 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10630 */
2820 : rtx
2821 12 : gen_avx512vl_cvtd2maskv4si (const rtx operand0, const rtx operand1)
2822 : {
2823 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2824 12 : static const uint8_t expand_encoding[] = {
2825 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x01, 0x01, 0x01,
2826 : 0x81, 0x40
2827 : };
2828 12 : return expand_rtx (expand_encoding, operands);
2829 : }
2830 :
2831 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11482 */
2832 : rtx
2833 0 : gen_sse_movlhps_v8hi (const rtx operand0, const rtx operand1, const rtx operand2)
2834 : {
2835 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2836 0 : static const uint8_t expand_encoding[] = {
2837 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x50, 0x81, 0x0b,
2838 : 0x55, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x08,
2839 : 0x27, 0x00, 0x27, 0x01, 0x27, 0x02, 0x27, 0x03,
2840 : 0x27, 0x08, 0x27, 0x09, 0x27, 0x0a, 0x27, 0x0b
2841 : };
2842 0 : return expand_rtx (expand_encoding, operands);
2843 : }
2844 :
2845 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11612 */
2846 : rtx
2847 24 : gen_avx_unpcklps256_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2848 : {
2849 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2850 24 : static const uint8_t expand_encoding[] = {
2851 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x81, 0x0a,
2852 : 0x6f, 0x81, 0x0b, 0x74, 0x01, 0x01, 0x01, 0x02,
2853 : 0x17, 0x00, 0x08, 0x27, 0x00, 0x27, 0x08, 0x27,
2854 : 0x01, 0x27, 0x09, 0x27, 0x04, 0x27, 0x0c, 0x27,
2855 : 0x05, 0x27, 0x0d, 0x01, 0x03, 0x01, 0x04
2856 : };
2857 24 : return expand_rtx (expand_encoding, operands);
2858 : }
2859 :
2860 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11828 */
2861 : rtx
2862 558 : gen_avx_shufps256_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, const rtx operand10)
2863 : {
2864 558 : rtx operands[11] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7, operand8, operand9, operand10 };
2865 558 : static const uint8_t expand_encoding[] = {
2866 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6f, 0x81, 0x0b,
2867 : 0x74, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x08,
2868 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x01, 0x06,
2869 : 0x01, 0x07, 0x01, 0x08, 0x01, 0x09, 0x01, 0x0a
2870 : };
2871 558 : return expand_rtx (expand_encoding, operands);
2872 : }
2873 :
2874 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12072 */
2875 : rtx
2876 15 : gen_avx2_vec_dupv8sf (const rtx operand0, const rtx operand1)
2877 : {
2878 15 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2879 15 : static const uint8_t expand_encoding[] = {
2880 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x6f, 0x81, 0x0a,
2881 : 0x2d, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
2882 : };
2883 15 : return expand_rtx (expand_encoding, operands);
2884 : }
2885 :
2886 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12323 */
2887 : rtx
2888 5 : gen_vec_setv8bf_0 (const rtx operand0, const rtx operand1, const rtx operand2)
2889 : {
2890 5 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2891 5 : static const uint8_t expand_encoding[] = {
2892 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x81, 0x0c,
2893 : 0x69, 0x01, 0x02, 0x01, 0x01, 0x27, 0x01
2894 : };
2895 5 : return expand_rtx (expand_encoding, operands);
2896 : }
2897 :
2898 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12535 */
2899 : rtx
2900 22 : gen_vec_setv16sf_0 (const rtx operand0, const rtx operand1, const rtx operand2)
2901 : {
2902 22 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2903 22 : static const uint8_t expand_encoding[] = {
2904 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x81, 0x0c,
2905 : 0x74, 0x01, 0x02, 0x01, 0x01, 0x27, 0x01
2906 : };
2907 22 : return expand_rtx (expand_encoding, operands);
2908 : }
2909 :
2910 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13004 */
2911 : rtx
2912 797 : gen_vec_extract_lo_v8df (const rtx operand0, const rtx operand1)
2913 : {
2914 797 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2915 797 : static const uint8_t expand_encoding[] = {
2916 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x70, 0x01, 0x01,
2917 : 0x17, 0x00, 0x04, 0x27, 0x00, 0x27, 0x01, 0x27,
2918 : 0x02, 0x27, 0x03
2919 : };
2920 797 : return expand_rtx (expand_encoding, operands);
2921 : }
2922 :
2923 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13072 */
2924 : rtx
2925 743 : gen_vec_extract_hi_v16si (const rtx operand0, const rtx operand1)
2926 : {
2927 743 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2928 743 : static const uint8_t expand_encoding[] = {
2929 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x56, 0x01, 0x01,
2930 : 0x17, 0x00, 0x08, 0x27, 0x08, 0x27, 0x09, 0x27,
2931 : 0x0a, 0x27, 0x0b, 0x27, 0x0c, 0x27, 0x0d, 0x27,
2932 : 0x0e, 0x27, 0x0f
2933 : };
2934 743 : return expand_rtx (expand_encoding, operands);
2935 : }
2936 :
2937 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13248 */
2938 : rtx
2939 3999 : gen_vec_extract_lo_v4df (const rtx operand0, const rtx operand1)
2940 : {
2941 3999 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2942 3999 : static const uint8_t expand_encoding[] = {
2943 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6c, 0x01, 0x01,
2944 : 0x17, 0x00, 0x02, 0x27, 0x00, 0x27, 0x01
2945 : };
2946 3999 : return expand_rtx (expand_encoding, operands);
2947 : }
2948 :
2949 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13352 */
2950 : rtx
2951 27 : gen_vec_extract_hi_v8sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
2952 : {
2953 27 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
2954 27 : static const uint8_t expand_encoding[] = {
2955 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x0a,
2956 : 0x6b, 0x01, 0x01, 0x17, 0x00, 0x04, 0x27, 0x04,
2957 : 0x27, 0x05, 0x27, 0x06, 0x27, 0x07, 0x01, 0x02,
2958 : 0x01, 0x03
2959 : };
2960 27 : return expand_rtx (expand_encoding, operands);
2961 : }
2962 :
2963 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13446 */
2964 : rtx
2965 107 : gen_vec_extract_lo_v16hf (const rtx operand0, const rtx operand1)
2966 : {
2967 107 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
2968 107 : static const uint8_t expand_encoding[] = {
2969 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6a, 0x01, 0x01,
2970 : 0x17, 0x00, 0x08, 0x27, 0x00, 0x27, 0x01, 0x27,
2971 : 0x02, 0x27, 0x03, 0x27, 0x04, 0x27, 0x05, 0x27,
2972 : 0x06, 0x27, 0x07
2973 : };
2974 107 : return expand_rtx (expand_encoding, operands);
2975 : }
2976 :
2977 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13705 */
2978 : rtx
2979 12 : gen_avx_unpckhpd256 (const rtx operand0, const rtx operand1, const rtx operand2)
2980 : {
2981 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
2982 12 : static const uint8_t expand_encoding[] = {
2983 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x70, 0x81, 0x0b,
2984 : 0x75, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x04,
2985 : 0x27, 0x01, 0x27, 0x05, 0x27, 0x03, 0x27, 0x07
2986 : };
2987 12 : return expand_rtx (expand_encoding, operands);
2988 : }
2989 :
2990 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13818 */
2991 : rtx
2992 36 : gen_avx512f_unpcklpd512_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
2993 : {
2994 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
2995 36 : static const uint8_t expand_encoding[] = {
2996 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x81, 0x0a,
2997 : 0x75, 0x81, 0x0b, 0x7a, 0x01, 0x01, 0x01, 0x02,
2998 : 0x17, 0x00, 0x08, 0x27, 0x00, 0x27, 0x08, 0x27,
2999 : 0x02, 0x27, 0x0a, 0x27, 0x04, 0x27, 0x0c, 0x27,
3000 : 0x06, 0x27, 0x0e, 0x01, 0x03, 0x01, 0x04
3001 : };
3002 36 : return expand_rtx (expand_encoding, operands);
3003 : }
3004 :
3005 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13977 */
3006 : rtx
3007 0 : gen_avx512f_vmscalefv4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3008 : {
3009 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3010 0 : static const uint8_t expand_encoding[] = {
3011 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x09,
3012 : 0x6b, 0x1a, 0x6b, 0x02, 0x01, 0x01, 0x01, 0x02,
3013 : 0x3b, 0x01, 0x03, 0x01, 0x04, 0x01, 0x01, 0x27,
3014 : 0x01
3015 : };
3016 0 : return expand_rtx (expand_encoding, operands);
3017 : }
3018 :
3019 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13991 */
3020 : rtx
3021 0 : gen_avx512vl_scalefv16hf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3022 : {
3023 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3024 0 : static const uint8_t expand_encoding[] = {
3025 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x02, 0x1a, 0x6e,
3026 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3b, 0x01, 0x03,
3027 : 0x81, 0x33
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 0 : gen_avx512f_scalefv16sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3035 : {
3036 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3037 0 : static const uint8_t expand_encoding[] = {
3038 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x1a, 0x74,
3039 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3b, 0x01, 0x03,
3040 : 0x01, 0x04
3041 : };
3042 0 : return expand_rtx (expand_encoding, operands);
3043 : }
3044 :
3045 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13991 */
3046 : rtx
3047 0 : gen_avx512f_scalefv8df_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3048 : {
3049 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3050 0 : static const uint8_t expand_encoding[] = {
3051 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x1a, 0x75,
3052 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3b, 0x01, 0x03,
3053 : 0x81, 0x33
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 36 : gen_avx512vl_scalefv2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3061 : {
3062 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3063 36 : static const uint8_t expand_encoding[] = {
3064 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
3065 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x3b, 0x01, 0x03,
3066 : 0x01, 0x04
3067 : };
3068 36 : return expand_rtx (expand_encoding, operands);
3069 : }
3070 :
3071 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14017 */
3072 : rtx
3073 9 : gen_avx512vl_vternlogv4di_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
3074 : {
3075 9 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
3076 9 : static const uint8_t expand_encoding[] = {
3077 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x1a, 0x57,
3078 : 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
3079 : 0x04, 0x81, 0x25, 0x01, 0x05, 0x01, 0x06
3080 : };
3081 9 : return expand_rtx (expand_encoding, operands);
3082 : }
3083 :
3084 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14401 */
3085 : rtx
3086 0 : gen_avx512fp16_getexpv8hf_round (const rtx operand0, const rtx operand1, const rtx operand2)
3087 : {
3088 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3089 0 : static const uint8_t expand_encoding[] = {
3090 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x1a, 0x6a,
3091 : 0x01, 0x01, 0x01, 0x81, 0x26, 0x01, 0x02, 0x81,
3092 : 0x33
3093 : };
3094 0 : return expand_rtx (expand_encoding, operands);
3095 : }
3096 :
3097 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14401 */
3098 : rtx
3099 36 : gen_avx512vl_getexpv8sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3100 : {
3101 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3102 36 : static const uint8_t expand_encoding[] = {
3103 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x1a, 0x6f,
3104 : 0x01, 0x01, 0x01, 0x81, 0x26, 0x01, 0x02, 0x01,
3105 : 0x03
3106 : };
3107 36 : return expand_rtx (expand_encoding, operands);
3108 : }
3109 :
3110 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14401 */
3111 : rtx
3112 0 : gen_avx512vl_getexpv4df_round (const rtx operand0, const rtx operand1, const rtx operand2)
3113 : {
3114 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3115 0 : static const uint8_t expand_encoding[] = {
3116 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x1a, 0x70,
3117 : 0x01, 0x01, 0x01, 0x81, 0x26, 0x01, 0x02, 0x81,
3118 : 0x33
3119 : };
3120 0 : return expand_rtx (expand_encoding, operands);
3121 : }
3122 :
3123 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14410 */
3124 : rtx
3125 0 : gen_avx512f_sgetexpv8hf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3126 : {
3127 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3128 0 : static const uint8_t expand_encoding[] = {
3129 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x81, 0x09,
3130 : 0x6a, 0x1a, 0x6a, 0x02, 0x01, 0x01, 0x01, 0x02,
3131 : 0x81, 0x26, 0x01, 0x01, 0x27, 0x01, 0x01, 0x03,
3132 : 0x81, 0x33
3133 : };
3134 0 : return expand_rtx (expand_encoding, operands);
3135 : }
3136 :
3137 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14424 */
3138 : rtx
3139 24 : gen_avx512vl_alignv8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3140 : {
3141 24 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3142 24 : static const uint8_t expand_encoding[] = {
3143 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
3144 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
3145 : 0x28, 0x01, 0x04, 0x01, 0x05
3146 : };
3147 24 : return expand_rtx (expand_encoding, operands);
3148 : }
3149 :
3150 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14513 */
3151 : rtx
3152 0 : gen_avx512vl_fixupimmv8sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3153 : {
3154 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3155 0 : static const uint8_t expand_encoding[] = {
3156 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01, 0x01,
3157 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x24
3158 : };
3159 0 : return expand_rtx (expand_encoding, operands);
3160 : }
3161 :
3162 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14513 */
3163 : rtx
3164 0 : gen_avx512f_fixupimmv8df_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3165 : {
3166 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3167 0 : static const uint8_t expand_encoding[] = {
3168 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x1a, 0x75,
3169 : 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
3170 : 0x04, 0x81, 0x24, 0x01, 0x05, 0x81, 0x33
3171 : };
3172 0 : return expand_rtx (expand_encoding, operands);
3173 : }
3174 :
3175 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14513 */
3176 : rtx
3177 0 : gen_avx512vl_fixupimmv2df_maskz_1_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6, const rtx operand7)
3178 : {
3179 0 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7 };
3180 0 : static const uint8_t expand_encoding[] = {
3181 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
3182 : 0x6c, 0x1a, 0x6c, 0x04, 0x01, 0x01, 0x01, 0x02,
3183 : 0x01, 0x03, 0x01, 0x04, 0x81, 0x24, 0x01, 0x05,
3184 : 0x01, 0x06, 0x01, 0x07, 0x81, 0x33
3185 : };
3186 0 : return expand_rtx (expand_encoding, operands);
3187 : }
3188 :
3189 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14526 */
3190 : rtx
3191 18 : gen_avx512vl_fixupimmv2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3192 : {
3193 18 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3194 18 : static const uint8_t expand_encoding[] = {
3195 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
3196 : 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
3197 : 0x04, 0x81, 0x24, 0x01, 0x01, 0x01, 0x05
3198 : };
3199 18 : return expand_rtx (expand_encoding, operands);
3200 : }
3201 :
3202 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14558 */
3203 : rtx
3204 19 : gen_avx512f_sfixupimmv2df_maskz_1_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6, const rtx operand7)
3205 : {
3206 19 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7 };
3207 19 : static const uint8_t expand_encoding[] = {
3208 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
3209 : 0x6c, 0x81, 0x09, 0x6c, 0x1a, 0x6c, 0x04, 0x01,
3210 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81,
3211 : 0x24, 0x01, 0x05, 0x01, 0x06, 0x01, 0x02, 0x27,
3212 : 0x01, 0x01, 0x07, 0x81, 0x33
3213 : };
3214 19 : return expand_rtx (expand_encoding, operands);
3215 : }
3216 :
3217 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14593 */
3218 : rtx
3219 0 : gen_avx512vl_rndscalev16hf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3220 : {
3221 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3222 0 : static const uint8_t expand_encoding[] = {
3223 : 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x02, 0x81, 0x09,
3224 : 0x6e, 0x1a, 0x6e, 0x02, 0x01, 0x01, 0x01, 0x02,
3225 : 0x5f, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x81,
3226 : 0x33
3227 : };
3228 0 : return expand_rtx (expand_encoding, operands);
3229 : }
3230 :
3231 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14593 */
3232 : rtx
3233 0 : gen_avx512vl_rndscalev8sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3234 : {
3235 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3236 0 : static const uint8_t expand_encoding[] = {
3237 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x02, 0x81, 0x09,
3238 : 0x6f, 0x1a, 0x6f, 0x02, 0x01, 0x01, 0x01, 0x02,
3239 : 0x5f, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x81,
3240 : 0x33
3241 : };
3242 0 : return expand_rtx (expand_encoding, operands);
3243 : }
3244 :
3245 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14593 */
3246 : rtx
3247 0 : gen_avx512vl_rndscalev4df_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3248 : {
3249 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3250 0 : static const uint8_t expand_encoding[] = {
3251 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x81, 0x09,
3252 : 0x70, 0x1a, 0x70, 0x02, 0x01, 0x01, 0x01, 0x02,
3253 : 0x5f, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x81,
3254 : 0x33
3255 : };
3256 0 : return expand_rtx (expand_encoding, operands);
3257 : }
3258 :
3259 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14605 */
3260 : rtx
3261 49 : gen_avx512f_rndscalev4sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
3262 : {
3263 49 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
3264 49 : static const uint8_t expand_encoding[] = {
3265 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
3266 : 0x6b, 0x81, 0x09, 0x6b, 0x1a, 0x6b, 0x02, 0x01,
3267 : 0x02, 0x01, 0x03, 0x5f, 0x01, 0x04, 0x01, 0x05,
3268 : 0x01, 0x01, 0x27, 0x01, 0x01, 0x06, 0x81, 0x33
3269 : };
3270 49 : return expand_rtx (expand_encoding, operands);
3271 : }
3272 :
3273 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14804 */
3274 : rtx
3275 16 : gen_sse2_shufpd_v2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
3276 : {
3277 16 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
3278 16 : static const uint8_t expand_encoding[] = {
3279 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x0a,
3280 : 0x6c, 0x81, 0x0b, 0x70, 0x01, 0x01, 0x01, 0x02,
3281 : 0x17, 0x00, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
3282 : 0x05, 0x01, 0x06
3283 : };
3284 16 : return expand_rtx (expand_encoding, operands);
3285 : }
3286 :
3287 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14896 */
3288 : rtx
3289 36 : gen_avx512f_interleave_lowv8di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3290 : {
3291 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3292 36 : static const uint8_t expand_encoding[] = {
3293 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x81, 0x0a,
3294 : 0x5c, 0x81, 0x0b, 0x61, 0x01, 0x01, 0x01, 0x02,
3295 : 0x17, 0x00, 0x08, 0x27, 0x00, 0x27, 0x08, 0x27,
3296 : 0x02, 0x27, 0x0a, 0x27, 0x04, 0x27, 0x0c, 0x27,
3297 : 0x06, 0x27, 0x0e, 0x01, 0x03, 0x01, 0x04
3298 : };
3299 36 : return expand_rtx (expand_encoding, operands);
3300 : }
3301 :
3302 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15257 */
3303 : rtx
3304 24 : gen_vec_dupv2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3305 : {
3306 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3307 24 : static const uint8_t expand_encoding[] = {
3308 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x0c,
3309 : 0x6c, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
3310 : };
3311 24 : return expand_rtx (expand_encoding, operands);
3312 : }
3313 :
3314 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15503 */
3315 : rtx
3316 36 : gen_avx512f_us_truncatev8div8si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3317 : {
3318 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3319 36 : static const uint8_t expand_encoding[] = {
3320 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x81, 0x18,
3321 : 0x56, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
3322 : };
3323 36 : return expand_rtx (expand_encoding, operands);
3324 : }
3325 :
3326 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15675 */
3327 : rtx
3328 36 : gen_avx512vl_ss_truncatev4div4si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3329 : {
3330 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3331 36 : static const uint8_t expand_encoding[] = {
3332 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x81, 0x17,
3333 : 0x51, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
3334 : };
3335 36 : return expand_rtx (expand_encoding, operands);
3336 : }
3337 :
3338 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15736 */
3339 : rtx
3340 0 : gen_avx512vl_us_truncatev4div4qi2 (const rtx operand0, const rtx operand1, const rtx operand2)
3341 : {
3342 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3343 0 : static const uint8_t expand_encoding[] = {
3344 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x81, 0x18,
3345 : 0x45, 0x01, 0x01, 0x01, 0x02
3346 : };
3347 0 : return expand_rtx (expand_encoding, operands);
3348 : }
3349 :
3350 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15736 */
3351 : rtx
3352 0 : gen_avx512vl_us_truncatev4siv4qi2 (const rtx operand0, const rtx operand1, const rtx operand2)
3353 : {
3354 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3355 0 : static const uint8_t expand_encoding[] = {
3356 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x81, 0x18,
3357 : 0x45, 0x01, 0x01, 0x01, 0x02
3358 : };
3359 0 : return expand_rtx (expand_encoding, operands);
3360 : }
3361 :
3362 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15889 */
3363 : rtx
3364 36 : gen_avx512vl_ss_truncatev4siv4qi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3365 : {
3366 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3367 36 : static const uint8_t expand_encoding[] = {
3368 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x81, 0x09,
3369 : 0x45, 0x81, 0x17, 0x45, 0x01, 0x01, 0x81, 0x0a,
3370 : 0x45, 0x01, 0x02, 0x17, 0x00, 0x04, 0x27, 0x00,
3371 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x01, 0x03,
3372 : 0x2c, 0x4c, 0x0c, 0x27, 0x00, 0x27, 0x00, 0x27,
3373 : 0x00, 0x27, 0x00, 0x27, 0x00, 0x27, 0x00, 0x27,
3374 : 0x00, 0x27, 0x00, 0x27, 0x00, 0x27, 0x00, 0x27,
3375 : 0x00, 0x27, 0x00
3376 : };
3377 36 : return expand_rtx (expand_encoding, operands);
3378 : }
3379 :
3380 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15933 */
3381 : rtx
3382 11 : gen_avx512vl_us_truncatev4div4qi2_mask_store_1 (const rtx operand0, const rtx operand1, const rtx operand2)
3383 : {
3384 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3385 11 : static const uint8_t expand_encoding[] = {
3386 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x45, 0x81, 0x18,
3387 : 0x45, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
3388 : };
3389 11 : return expand_rtx (expand_encoding, operands);
3390 : }
3391 :
3392 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16031 */
3393 : rtx
3394 11 : gen_avx512vl_ss_truncatev8siv8qi2_mask_store_1 (const rtx operand0, const rtx operand1, const rtx operand2)
3395 : {
3396 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3397 11 : static const uint8_t expand_encoding[] = {
3398 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x48, 0x81, 0x17,
3399 : 0x48, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
3400 : };
3401 11 : return expand_rtx (expand_encoding, operands);
3402 : }
3403 :
3404 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16091 */
3405 : rtx
3406 0 : gen_avx512vl_ss_truncatev2div2hi2 (const rtx operand0, const rtx operand1, const rtx operand2)
3407 : {
3408 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3409 0 : static const uint8_t expand_encoding[] = {
3410 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x50, 0x81, 0x17,
3411 : 0x46, 0x01, 0x01, 0x01, 0x02
3412 : };
3413 0 : return expand_rtx (expand_encoding, operands);
3414 : }
3415 :
3416 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16149 */
3417 : rtx
3418 36 : gen_avx512vl_truncatev4div4hi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3419 : {
3420 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3421 36 : static const uint8_t expand_encoding[] = {
3422 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x50, 0x81, 0x09,
3423 : 0x49, 0x70, 0x49, 0x01, 0x01, 0x81, 0x0a, 0x49,
3424 : 0x01, 0x02, 0x17, 0x00, 0x04, 0x27, 0x00, 0x27,
3425 : 0x01, 0x27, 0x02, 0x27, 0x03, 0x01, 0x03, 0x2c,
3426 : 0x49, 0x04, 0x27, 0x00, 0x27, 0x00, 0x27, 0x00,
3427 : 0x27, 0x00
3428 : };
3429 36 : return expand_rtx (expand_encoding, operands);
3430 : }
3431 :
3432 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16276 */
3433 : rtx
3434 12 : gen_avx512vl_truncatev2div2hi2_mask_store_1 (const rtx operand0, const rtx operand1, const rtx operand2)
3435 : {
3436 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3437 12 : static const uint8_t expand_encoding[] = {
3438 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x46, 0x70, 0x46,
3439 : 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
3440 : };
3441 12 : return expand_rtx (expand_encoding, operands);
3442 : }
3443 :
3444 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16390 */
3445 : rtx
3446 36 : gen_avx512vl_truncatev2div2si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3447 : {
3448 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3449 36 : static const uint8_t expand_encoding[] = {
3450 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x51, 0x81, 0x09,
3451 : 0x4a, 0x70, 0x4a, 0x01, 0x01, 0x81, 0x0a, 0x4a,
3452 : 0x01, 0x02, 0x17, 0x00, 0x02, 0x27, 0x00, 0x27,
3453 : 0x01, 0x01, 0x03, 0x2c, 0x4a, 0x02, 0x27, 0x00,
3454 : 0x27, 0x00
3455 : };
3456 36 : return expand_rtx (expand_encoding, operands);
3457 : }
3458 :
3459 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16547 */
3460 : rtx
3461 13 : gen_avx512f_us_truncatev8div16qi2_mask_store_1 (const rtx operand0, const rtx operand1, const rtx operand2)
3462 : {
3463 13 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3464 13 : static const uint8_t expand_encoding[] = {
3465 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x48, 0x81, 0x18,
3466 : 0x48, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
3467 : };
3468 13 : return expand_rtx (expand_encoding, operands);
3469 : }
3470 :
3471 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17467 */
3472 : rtx
3473 40 : gen_ashrv8hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3474 : {
3475 40 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3476 40 : static const uint8_t expand_encoding[] = {
3477 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x4f, 0x50,
3478 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3479 : };
3480 40 : return expand_rtx (expand_encoding, operands);
3481 : }
3482 :
3483 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17511 */
3484 : rtx
3485 60 : gen_ashrv4di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3486 : {
3487 60 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3488 60 : static const uint8_t expand_encoding[] = {
3489 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x4f, 0x57,
3490 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3491 : };
3492 60 : return expand_rtx (expand_encoding, operands);
3493 : }
3494 :
3495 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17663 */
3496 : rtx
3497 38 : gen_lshrv4si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3498 : {
3499 38 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3500 38 : static const uint8_t expand_encoding[] = {
3501 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x50, 0x51,
3502 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3503 : };
3504 38 : return expand_rtx (expand_encoding, operands);
3505 : }
3506 :
3507 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17677 */
3508 : rtx
3509 11277 : gen_lshrv4si3 (const rtx operand0, const rtx operand1, const rtx operand2)
3510 : {
3511 11277 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3512 11277 : static const uint8_t expand_encoding[] = {
3513 : 0x1f, 0x01, 0x00, 0x50, 0x51, 0x01, 0x01, 0x01,
3514 : 0x02
3515 : };
3516 11277 : return expand_rtx (expand_encoding, operands);
3517 : }
3518 :
3519 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17751 */
3520 : rtx
3521 99 : gen_ashlv16si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3522 : {
3523 99 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3524 99 : static const uint8_t expand_encoding[] = {
3525 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x4d, 0x5b,
3526 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3527 : };
3528 99 : return expand_rtx (expand_encoding, operands);
3529 : }
3530 :
3531 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17985 */
3532 : rtx
3533 20 : gen_avx2_ashlv2ti3 (const rtx operand0, const rtx operand1, const rtx operand2)
3534 : {
3535 20 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3536 20 : static const uint8_t expand_encoding[] = {
3537 : 0x1f, 0x01, 0x00, 0x4d, 0x58, 0x01, 0x01, 0x01,
3538 : 0x02
3539 : };
3540 20 : return expand_rtx (expand_encoding, operands);
3541 : }
3542 :
3543 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18012 */
3544 : rtx
3545 0 : gen_avx512vl_rorvv8si (const rtx operand0, const rtx operand1, const rtx operand2)
3546 : {
3547 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3548 0 : static const uint8_t expand_encoding[] = {
3549 : 0x1f, 0x01, 0x00, 0x51, 0x56, 0x01, 0x01, 0x01,
3550 : 0x02
3551 : };
3552 0 : return expand_rtx (expand_encoding, operands);
3553 : }
3554 :
3555 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18012 */
3556 : rtx
3557 0 : gen_avx512f_rorvv8di (const rtx operand0, const rtx operand1, const rtx operand2)
3558 : {
3559 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3560 0 : static const uint8_t expand_encoding[] = {
3561 : 0x1f, 0x01, 0x00, 0x51, 0x5c, 0x01, 0x01, 0x01,
3562 : 0x02
3563 : };
3564 0 : return expand_rtx (expand_encoding, operands);
3565 : }
3566 :
3567 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18012 */
3568 : rtx
3569 0 : gen_avx512vl_rorvv2di (const rtx operand0, const rtx operand1, const rtx operand2)
3570 : {
3571 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3572 0 : static const uint8_t expand_encoding[] = {
3573 : 0x1f, 0x01, 0x00, 0x51, 0x52, 0x01, 0x01, 0x01,
3574 : 0x02
3575 : };
3576 0 : return expand_rtx (expand_encoding, operands);
3577 : }
3578 :
3579 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18022 */
3580 : rtx
3581 24 : gen_avx512vl_rorv8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3582 : {
3583 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3584 24 : static const uint8_t expand_encoding[] = {
3585 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x51, 0x56,
3586 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
3587 : };
3588 24 : return expand_rtx (expand_encoding, operands);
3589 : }
3590 :
3591 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18022 */
3592 : rtx
3593 0 : gen_avx512vl_rorv4di (const rtx operand0, const rtx operand1, const rtx operand2)
3594 : {
3595 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3596 0 : static const uint8_t expand_encoding[] = {
3597 : 0x1f, 0x01, 0x00, 0x51, 0x57, 0x01, 0x01, 0x01,
3598 : 0x02
3599 : };
3600 0 : return expand_rtx (expand_encoding, operands);
3601 : }
3602 :
3603 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18666 */
3604 : rtx
3605 0 : gen_avx2_gtv8si3 (const rtx operand0, const rtx operand1, const rtx operand2)
3606 : {
3607 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3608 0 : static const uint8_t expand_encoding[] = {
3609 : 0x1f, 0x01, 0x00, 0x5f, 0x56, 0x01, 0x01, 0x01,
3610 : 0x02
3611 : };
3612 0 : return expand_rtx (expand_encoding, operands);
3613 : }
3614 :
3615 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19327 */
3616 : rtx
3617 4 : gen_xorv1ti3 (const rtx operand0, const rtx operand1, const rtx operand2)
3618 : {
3619 4 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3620 4 : static const uint8_t expand_encoding[] = {
3621 : 0x1f, 0x01, 0x00, 0x4b, 0x53, 0x01, 0x01, 0x01,
3622 : 0x02
3623 : };
3624 4 : return expand_rtx (expand_encoding, operands);
3625 : }
3626 :
3627 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19449 */
3628 : rtx
3629 24 : gen_avx512vl_testmv16hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3630 : {
3631 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3632 24 : static const uint8_t expand_encoding[] = {
3633 : 0x1f, 0x01, 0x00, 0x49, 0x10, 0x1a, 0x10, 0x02,
3634 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x1f, 0x01, 0x03
3635 : };
3636 24 : return expand_rtx (expand_encoding, operands);
3637 : }
3638 :
3639 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19449 */
3640 : rtx
3641 24 : gen_avx512f_testmv8di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3642 : {
3643 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3644 24 : static const uint8_t expand_encoding[] = {
3645 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x02,
3646 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x1f, 0x01, 0x03
3647 : };
3648 24 : return expand_rtx (expand_encoding, operands);
3649 : }
3650 :
3651 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19460 */
3652 : rtx
3653 0 : gen_avx512bw_testnmv32hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
3654 : {
3655 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3656 0 : static const uint8_t expand_encoding[] = {
3657 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x02, 0x01, 0x01,
3658 : 0x01, 0x02, 0x81, 0x20
3659 : };
3660 0 : return expand_rtx (expand_encoding, operands);
3661 : }
3662 :
3663 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19460 */
3664 : rtx
3665 24 : gen_avx512vl_testnmv8si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3666 : {
3667 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3668 24 : static const uint8_t expand_encoding[] = {
3669 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x02,
3670 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x20, 0x01, 0x03
3671 : };
3672 24 : return expand_rtx (expand_encoding, operands);
3673 : }
3674 :
3675 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19625 */
3676 : rtx
3677 16 : gen_avx2_packsswb (const rtx operand0, const rtx operand1, const rtx operand2)
3678 : {
3679 16 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3680 16 : static const uint8_t expand_encoding[] = {
3681 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x54, 0x81, 0x0b,
3682 : 0x54, 0x81, 0x17, 0x4f, 0x01, 0x01, 0x81, 0x17,
3683 : 0x4f, 0x01, 0x02, 0x17, 0x00, 0x20, 0x27, 0x00,
3684 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x27, 0x04,
3685 : 0x27, 0x05, 0x27, 0x06, 0x27, 0x07, 0x27, 0x10,
3686 : 0x27, 0x11, 0x27, 0x12, 0x27, 0x13, 0x27, 0x14,
3687 : 0x27, 0x15, 0x27, 0x16, 0x27, 0x17, 0x27, 0x08,
3688 : 0x27, 0x09, 0x27, 0x0a, 0x27, 0x0b, 0x27, 0x0c,
3689 : 0x27, 0x0d, 0x27, 0x0e, 0x27, 0x0f, 0x27, 0x18,
3690 : 0x27, 0x19, 0x27, 0x1a, 0x27, 0x1b, 0x27, 0x1c,
3691 : 0x27, 0x1d, 0x27, 0x1e, 0x27, 0x1f
3692 : };
3693 16 : return expand_rtx (expand_encoding, operands);
3694 : }
3695 :
3696 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19773 */
3697 : rtx
3698 96 : gen_avx2_packuswb (const rtx operand0, const rtx operand1, const rtx operand2)
3699 : {
3700 96 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3701 96 : static const uint8_t expand_encoding[] = {
3702 : 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x02, 0x01, 0x01,
3703 : 0x01, 0x02, 0x3a
3704 : };
3705 96 : return expand_rtx (expand_encoding, operands);
3706 : }
3707 :
3708 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19833 */
3709 : rtx
3710 134 : gen_avx2_interleave_highv32qi (const rtx operand0, const rtx operand1, const rtx operand2)
3711 : {
3712 134 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3713 134 : static const uint8_t expand_encoding[] = {
3714 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x54, 0x81, 0x0b,
3715 : 0x59, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x20,
3716 : 0x27, 0x08, 0x27, 0x28, 0x27, 0x09, 0x27, 0x29,
3717 : 0x27, 0x0a, 0x27, 0x2a, 0x27, 0x0b, 0x27, 0x2b,
3718 : 0x27, 0x0c, 0x27, 0x2c, 0x27, 0x0d, 0x27, 0x2d,
3719 : 0x27, 0x0e, 0x27, 0x2e, 0x27, 0x0f, 0x27, 0x2f,
3720 : 0x27, 0x18, 0x27, 0x38, 0x27, 0x19, 0x27, 0x39,
3721 : 0x27, 0x1a, 0x27, 0x3a, 0x27, 0x1b, 0x27, 0x3b,
3722 : 0x27, 0x1c, 0x27, 0x3c, 0x27, 0x1d, 0x27, 0x3d,
3723 : 0x27, 0x1e, 0x27, 0x3e, 0x27, 0x1f, 0x27, 0x3f
3724 : };
3725 134 : return expand_rtx (expand_encoding, operands);
3726 : }
3727 :
3728 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19957 */
3729 : rtx
3730 4316 : gen_vec_interleave_lowv16qi (const rtx operand0, const rtx operand1, const rtx operand2)
3731 : {
3732 4316 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3733 4316 : static const uint8_t expand_encoding[] = {
3734 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x4f, 0x81, 0x0b,
3735 : 0x54, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x10,
3736 : 0x27, 0x00, 0x27, 0x10, 0x27, 0x01, 0x27, 0x11,
3737 : 0x27, 0x02, 0x27, 0x12, 0x27, 0x03, 0x27, 0x13,
3738 : 0x27, 0x04, 0x27, 0x14, 0x27, 0x05, 0x27, 0x15,
3739 : 0x27, 0x06, 0x27, 0x16, 0x27, 0x07, 0x27, 0x17
3740 : };
3741 4316 : return expand_rtx (expand_encoding, operands);
3742 : }
3743 :
3744 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20009 */
3745 : rtx
3746 24 : gen_avx2_interleave_highv16hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3747 : {
3748 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3749 24 : static const uint8_t expand_encoding[] = {
3750 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x81, 0x0a,
3751 : 0x55, 0x81, 0x0b, 0x5a, 0x01, 0x01, 0x01, 0x02,
3752 : 0x17, 0x00, 0x10, 0x27, 0x04, 0x27, 0x14, 0x27,
3753 : 0x05, 0x27, 0x15, 0x27, 0x06, 0x27, 0x16, 0x27,
3754 : 0x07, 0x27, 0x17, 0x27, 0x0c, 0x27, 0x1c, 0x27,
3755 : 0x0d, 0x27, 0x1d, 0x27, 0x0e, 0x27, 0x1e, 0x27,
3756 : 0x0f, 0x27, 0x1f, 0x01, 0x03, 0x01, 0x04
3757 : };
3758 24 : return expand_rtx (expand_encoding, operands);
3759 : }
3760 :
3761 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20029 */
3762 : rtx
3763 0 : gen_vec_interleave_highv8bf (const rtx operand0, const rtx operand1, const rtx operand2)
3764 : {
3765 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3766 0 : static const uint8_t expand_encoding[] = {
3767 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x69, 0x81, 0x0b,
3768 : 0x6d, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x08,
3769 : 0x27, 0x04, 0x27, 0x0c, 0x27, 0x05, 0x27, 0x0d,
3770 : 0x27, 0x06, 0x27, 0x0e, 0x27, 0x07, 0x27, 0x0f
3771 : };
3772 0 : return expand_rtx (expand_encoding, operands);
3773 : }
3774 :
3775 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20077 */
3776 : rtx
3777 0 : gen_avx2_interleave_lowv16bf (const rtx operand0, const rtx operand1, const rtx operand2)
3778 : {
3779 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3780 0 : static const uint8_t expand_encoding[] = {
3781 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6d, 0x81, 0x0b,
3782 : 0x72, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x10,
3783 : 0x27, 0x00, 0x27, 0x10, 0x27, 0x01, 0x27, 0x11,
3784 : 0x27, 0x02, 0x27, 0x12, 0x27, 0x03, 0x27, 0x13,
3785 : 0x27, 0x08, 0x27, 0x18, 0x27, 0x09, 0x27, 0x19,
3786 : 0x27, 0x0a, 0x27, 0x1a, 0x27, 0x0b, 0x27, 0x1b
3787 : };
3788 0 : return expand_rtx (expand_encoding, operands);
3789 : }
3790 :
3791 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20097 */
3792 : rtx
3793 0 : gen_vec_interleave_lowv8bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
3794 : {
3795 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
3796 0 : static const uint8_t expand_encoding[] = {
3797 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x81, 0x0a,
3798 : 0x69, 0x81, 0x0b, 0x6d, 0x01, 0x01, 0x01, 0x02,
3799 : 0x17, 0x00, 0x08, 0x27, 0x00, 0x27, 0x08, 0x27,
3800 : 0x01, 0x27, 0x09, 0x27, 0x02, 0x27, 0x0a, 0x27,
3801 : 0x03, 0x27, 0x0b, 0x01, 0x03, 0x01, 0x04
3802 : };
3803 0 : return expand_rtx (expand_encoding, operands);
3804 : }
3805 :
3806 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20277 */
3807 : rtx
3808 5 : gen_sse2_pinsrw (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3809 : {
3810 5 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3811 5 : static const uint8_t expand_encoding[] = {
3812 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x81, 0x0c,
3813 : 0x50, 0x01, 0x02, 0x01, 0x01, 0x01, 0x03
3814 : };
3815 5 : return expand_rtx (expand_encoding, operands);
3816 : }
3817 :
3818 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20437 */
3819 : rtx
3820 65 : gen_avx512f_vinserti32x4_1_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
3821 : {
3822 65 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
3823 65 : static const uint8_t expand_encoding[] = {
3824 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x81, 0x09,
3825 : 0x5b, 0x01, 0x01, 0x81, 0x0c, 0x5b, 0x01, 0x02,
3826 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05
3827 : };
3828 65 : return expand_rtx (expand_encoding, operands);
3829 : }
3830 :
3831 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20527 */
3832 : rtx
3833 0 : gen_vec_set_lo_v8di (const rtx operand0, const rtx operand1, const rtx operand2)
3834 : {
3835 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3836 0 : static const uint8_t expand_encoding[] = {
3837 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x5c, 0x01, 0x02,
3838 : 0x81, 0x0a, 0x57, 0x01, 0x01, 0x17, 0x00, 0x04,
3839 : 0x27, 0x04, 0x27, 0x05, 0x27, 0x06, 0x27, 0x07
3840 : };
3841 0 : return expand_rtx (expand_encoding, operands);
3842 : }
3843 :
3844 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20634 */
3845 : rtx
3846 0 : gen_avx512f_shuf_f64x2_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, const rtx operand10)
3847 : {
3848 0 : rtx operands[11] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7, operand8, operand9, operand10 };
3849 0 : static const uint8_t expand_encoding[] = {
3850 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x75, 0x81, 0x0b,
3851 : 0x7a, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x08,
3852 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x01, 0x06,
3853 : 0x01, 0x07, 0x01, 0x08, 0x01, 0x09, 0x01, 0x0a
3854 : };
3855 0 : return expand_rtx (expand_encoding, operands);
3856 : }
3857 :
3858 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20807 */
3859 : rtx
3860 0 : gen_avx512f_shuf_i32x4_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, const rtx operand10, const rtx operand11, const rtx operand12, const rtx operand13, const rtx operand14, const rtx operand15, const rtx operand16, const rtx operand17, const rtx operand18)
3861 : {
3862 0 : rtx operands[19] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7, operand8, operand9, operand10, operand11, operand12, operand13, operand14, operand15, operand16, operand17, operand18 };
3863 0 : static const uint8_t expand_encoding[] = {
3864 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x5b, 0x81, 0x0b,
3865 : 0x60, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x10,
3866 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x01, 0x06,
3867 : 0x01, 0x07, 0x01, 0x08, 0x01, 0x09, 0x01, 0x0a,
3868 : 0x01, 0x0b, 0x01, 0x0c, 0x01, 0x0d, 0x01, 0x0e,
3869 : 0x01, 0x0f, 0x01, 0x10, 0x01, 0x11, 0x01, 0x12
3870 : };
3871 0 : return expand_rtx (expand_encoding, operands);
3872 : }
3873 :
3874 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21252 */
3875 : rtx
3876 16 : gen_sse2_pshuflw_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)
3877 : {
3878 16 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7 };
3879 16 : static const uint8_t expand_encoding[] = {
3880 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x81, 0x0a,
3881 : 0x50, 0x01, 0x01, 0x17, 0x00, 0x08, 0x01, 0x02,
3882 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x27, 0x04,
3883 : 0x27, 0x05, 0x27, 0x06, 0x27, 0x07, 0x01, 0x06,
3884 : 0x01, 0x07
3885 : };
3886 16 : return expand_rtx (expand_encoding, operands);
3887 : }
3888 :
3889 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22378 */
3890 : rtx
3891 768 : gen_sse_movmskps (const rtx operand0, const rtx operand1)
3892 : {
3893 768 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
3894 768 : static const uint8_t expand_encoding[] = {
3895 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01, 0x01,
3896 : 0x32
3897 : };
3898 768 : return expand_rtx (expand_encoding, operands);
3899 : }
3900 :
3901 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22986 */
3902 : rtx
3903 26 : gen_sse3_monitor_di (const rtx operand0, const rtx operand1, const rtx operand2)
3904 : {
3905 26 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3906 26 : static const uint8_t expand_encoding[] = {
3907 : 0x1b, 0x00, 0x03, 0x01, 0x00, 0x01, 0x01, 0x01,
3908 : 0x02, 0x5f
3909 : };
3910 26 : return expand_rtx (expand_encoding, operands);
3911 : }
3912 :
3913 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23063 */
3914 : rtx
3915 15 : gen_ssse3_phaddswv4hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
3916 : {
3917 15 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3918 15 : static const uint8_t expand_encoding[] = {
3919 : 0x1f, 0x01, 0x00, 0x81, 0x0e, 0x49, 0x81, 0x0a,
3920 : 0x49, 0x81, 0x0b, 0x50, 0x01, 0x01, 0x01, 0x02,
3921 : 0x17, 0x00, 0x04, 0x27, 0x00, 0x27, 0x02, 0x27,
3922 : 0x04, 0x27, 0x06, 0x81, 0x0a, 0x49, 0x81, 0x0b,
3923 : 0x50, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x04,
3924 : 0x27, 0x01, 0x27, 0x03, 0x27, 0x05, 0x27, 0x07
3925 : };
3926 15 : return expand_rtx (expand_encoding, operands);
3927 : }
3928 :
3929 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23128 */
3930 : rtx
3931 29 : gen_ssse3_phadddv4si3 (const rtx operand0, const rtx operand1, const rtx operand2)
3932 : {
3933 29 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3934 29 : static const uint8_t expand_encoding[] = {
3935 : 0x1f, 0x01, 0x00, 0x3b, 0x51, 0x81, 0x0a, 0x51,
3936 : 0x81, 0x0b, 0x56, 0x01, 0x01, 0x01, 0x02, 0x17,
3937 : 0x00, 0x04, 0x27, 0x00, 0x27, 0x02, 0x27, 0x04,
3938 : 0x27, 0x06, 0x81, 0x0a, 0x51, 0x81, 0x0b, 0x56,
3939 : 0x01, 0x01, 0x01, 0x02, 0x17, 0x00, 0x04, 0x27,
3940 : 0x01, 0x27, 0x03, 0x27, 0x05, 0x27, 0x07
3941 : };
3942 29 : return expand_rtx (expand_encoding, operands);
3943 : }
3944 :
3945 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23265 */
3946 : rtx
3947 0 : gen_avx512bw_umulhrswv32hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
3948 : {
3949 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3950 0 : static const uint8_t expand_encoding[] = {
3951 : 0x1f, 0x01, 0x00, 0x70, 0x5a, 0x50, 0x60, 0x3b,
3952 : 0x60, 0x50, 0x60, 0x3e, 0x60, 0x6e, 0x60, 0x01,
3953 : 0x01, 0x6e, 0x60, 0x01, 0x02, 0x27, 0x0e, 0x2c,
3954 : 0x5a, 0x20, 0x27, 0x01, 0x27, 0x01, 0x27, 0x01,
3955 : 0x27, 0x01, 0x27, 0x01, 0x27, 0x01, 0x27, 0x01,
3956 : 0x27, 0x01, 0x27, 0x01, 0x27, 0x01, 0x27, 0x01,
3957 : 0x27, 0x01, 0x27, 0x01, 0x27, 0x01, 0x27, 0x01,
3958 : 0x27, 0x01, 0x27, 0x01, 0x27, 0x01, 0x27, 0x01,
3959 : 0x27, 0x01, 0x27, 0x01, 0x27, 0x01, 0x27, 0x01,
3960 : 0x27, 0x01, 0x27, 0x01, 0x27, 0x01, 0x27, 0x01,
3961 : 0x27, 0x01, 0x27, 0x01, 0x27, 0x01, 0x27, 0x01,
3962 : 0x27, 0x01, 0x27, 0x01
3963 : };
3964 0 : return expand_rtx (expand_encoding, operands);
3965 : }
3966 :
3967 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23647 */
3968 : rtx
3969 14 : gen_ssse3_psignv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
3970 : {
3971 14 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
3972 14 : static const uint8_t expand_encoding[] = {
3973 : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x02, 0x01, 0x01,
3974 : 0x01, 0x02, 0x79
3975 : };
3976 14 : return expand_rtx (expand_encoding, operands);
3977 : }
3978 :
3979 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23705 */
3980 : rtx
3981 118 : gen_avx2_palignrv2ti (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3982 : {
3983 118 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3984 118 : static const uint8_t expand_encoding[] = {
3985 : 0x1f, 0x01, 0x00, 0x1a, 0x58, 0x03, 0x01, 0x01,
3986 : 0x01, 0x02, 0x01, 0x03, 0x7a
3987 : };
3988 118 : return expand_rtx (expand_encoding, operands);
3989 : }
3990 :
3991 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23832 */
3992 : rtx
3993 24 : gen_absv8di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
3994 : {
3995 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
3996 24 : static const uint8_t expand_encoding[] = {
3997 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x7b, 0x5c,
3998 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
3999 : };
4000 24 : return expand_rtx (expand_encoding, operands);
4001 : }
4002 :
4003 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23881 */
4004 : rtx
4005 0 : gen_sse4a_movntdf (const rtx operand0, const rtx operand1)
4006 : {
4007 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4008 0 : static const uint8_t expand_encoding[] = {
4009 : 0x1f, 0x01, 0x00, 0x1a, 0x2e, 0x01, 0x01, 0x01,
4010 : 0x76
4011 : };
4012 0 : return expand_rtx (expand_encoding, operands);
4013 : }
4014 :
4015 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23966 */
4016 : rtx
4017 20 : gen_sse4_1_blendpd (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4018 : {
4019 20 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4020 20 : static const uint8_t expand_encoding[] = {
4021 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x01, 0x02,
4022 : 0x01, 0x01, 0x01, 0x03
4023 : };
4024 20 : return expand_rtx (expand_encoding, operands);
4025 : }
4026 :
4027 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24220 */
4028 : rtx
4029 24 : gen_sse4_1_dppd (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4030 : {
4031 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4032 24 : static const uint8_t expand_encoding[] = {
4033 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x03, 0x01, 0x01,
4034 : 0x01, 0x02, 0x01, 0x03, 0x7f
4035 : };
4036 24 : return expand_rtx (expand_encoding, operands);
4037 : }
4038 :
4039 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24310 */
4040 : rtx
4041 355 : gen_avx2_packusdw (const rtx operand0, const rtx operand1, const rtx operand2)
4042 : {
4043 355 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4044 355 : static const uint8_t expand_encoding[] = {
4045 : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x02, 0x01, 0x01,
4046 : 0x01, 0x02, 0x3a
4047 : };
4048 355 : return expand_rtx (expand_encoding, operands);
4049 : }
4050 :
4051 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24564 */
4052 : rtx
4053 22 : gen_avx2_pblenddv8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4054 : {
4055 22 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4056 22 : static const uint8_t expand_encoding[] = {
4057 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x01, 0x02,
4058 : 0x01, 0x01, 0x01, 0x03
4059 : };
4060 22 : return expand_rtx (expand_encoding, operands);
4061 : }
4062 :
4063 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24648 */
4064 : rtx
4065 36 : gen_avx512bw_zero_extendv32qiv32hi2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4066 : {
4067 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4068 36 : static const uint8_t expand_encoding[] = {
4069 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x6f, 0x5a,
4070 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4071 : };
4072 36 : return expand_rtx (expand_encoding, operands);
4073 : }
4074 :
4075 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24889 */
4076 : rtx
4077 27 : gen_avx2_zero_extendv8qiv8si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4078 : {
4079 27 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4080 27 : static const uint8_t expand_encoding[] = {
4081 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x6f, 0x56,
4082 : 0x81, 0x0a, 0x48, 0x01, 0x01, 0x17, 0x00, 0x08,
4083 : 0x27, 0x00, 0x27, 0x01, 0x27, 0x02, 0x27, 0x03,
4084 : 0x27, 0x04, 0x27, 0x05, 0x27, 0x06, 0x27, 0x07,
4085 : 0x01, 0x02, 0x01, 0x03
4086 : };
4087 27 : return expand_rtx (expand_encoding, operands);
4088 : }
4089 :
4090 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25130 */
4091 : rtx
4092 35 : gen_avx2_sign_extendv8hiv8si2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4093 : {
4094 35 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4095 35 : static const uint8_t expand_encoding[] = {
4096 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x6e, 0x56,
4097 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4098 : };
4099 35 : return expand_rtx (expand_encoding, operands);
4100 : }
4101 :
4102 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25344 */
4103 : rtx
4104 40 : gen_avx512f_zero_extendv8qiv8di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4105 : {
4106 40 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4107 40 : static const uint8_t expand_encoding[] = {
4108 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x6f, 0x5c,
4109 : 0x81, 0x0a, 0x48, 0x01, 0x01, 0x17, 0x00, 0x08,
4110 : 0x27, 0x00, 0x27, 0x01, 0x27, 0x02, 0x27, 0x03,
4111 : 0x27, 0x04, 0x27, 0x05, 0x27, 0x06, 0x27, 0x07,
4112 : 0x01, 0x02, 0x01, 0x03
4113 : };
4114 40 : return expand_rtx (expand_encoding, operands);
4115 : }
4116 :
4117 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25591 */
4118 : rtx
4119 36 : gen_avx512f_zero_extendv8hiv8di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4120 : {
4121 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4122 36 : static const uint8_t expand_encoding[] = {
4123 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x6f, 0x5c,
4124 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4125 : };
4126 36 : return expand_rtx (expand_encoding, operands);
4127 : }
4128 :
4129 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25786 */
4130 : rtx
4131 36 : gen_avx512f_sign_extendv8siv8di2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4132 : {
4133 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4134 36 : static const uint8_t expand_encoding[] = {
4135 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x6e, 0x5c,
4136 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4137 : };
4138 36 : return expand_rtx (expand_encoding, operands);
4139 : }
4140 :
4141 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26041 */
4142 : rtx
4143 33 : gen_avx_vtestps256 (const rtx operand0, const rtx operand1)
4144 : {
4145 33 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4146 33 : static const uint8_t expand_encoding[] = {
4147 : 0x1f, 0x30, 0x02, 0x11, 0x1a, 0x02, 0x02, 0x01,
4148 : 0x00, 0x01, 0x01, 0x81, 0x15
4149 : };
4150 33 : return expand_rtx (expand_encoding, operands);
4151 : }
4152 :
4153 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26339 */
4154 : rtx
4155 0 : gen_sse4_1_roundsh (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4156 : {
4157 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4158 0 : static const uint8_t expand_encoding[] = {
4159 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
4160 : 0x02, 0x01, 0x02, 0x01, 0x03, 0x5f, 0x01, 0x01,
4161 : 0x27, 0x01
4162 : };
4163 0 : return expand_rtx (expand_encoding, operands);
4164 : }
4165 :
4166 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26844 */
4167 : rtx
4168 140 : gen_sse4_2_pcmpistr_cconly (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4169 : {
4170 140 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4171 140 : static const uint8_t expand_encoding[] = {
4172 : 0x17, 0x00, 0x03, 0x1f, 0x30, 0x02, 0x11, 0x1a,
4173 : 0x02, 0x03, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04,
4174 : 0x81, 0x05, 0x21, 0x00, 0x31, 0x4f, 0x21, 0x00,
4175 : 0x31, 0x11
4176 : };
4177 140 : return expand_rtx (expand_encoding, operands);
4178 : }
4179 :
4180 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26955 */
4181 : rtx
4182 8 : gen_xop_pmadcsswd (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4183 : {
4184 8 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4185 8 : static const uint8_t expand_encoding[] = {
4186 : 0x1f, 0x01, 0x00, 0x81, 0x0e, 0x51, 0x3b, 0x51,
4187 : 0x3e, 0x51, 0x6e, 0x51, 0x81, 0x0a, 0x49, 0x01,
4188 : 0x01, 0x17, 0x00, 0x04, 0x27, 0x00, 0x27, 0x02,
4189 : 0x27, 0x04, 0x27, 0x06, 0x6e, 0x51, 0x81, 0x0a,
4190 : 0x49, 0x01, 0x02, 0x17, 0x00, 0x04, 0x27, 0x00,
4191 : 0x27, 0x02, 0x27, 0x04, 0x27, 0x06, 0x3e, 0x51,
4192 : 0x6e, 0x51, 0x81, 0x0a, 0x49, 0x01, 0x01, 0x17,
4193 : 0x00, 0x04, 0x27, 0x01, 0x27, 0x03, 0x27, 0x05,
4194 : 0x27, 0x07, 0x6e, 0x51, 0x81, 0x0a, 0x49, 0x01,
4195 : 0x02, 0x17, 0x00, 0x04, 0x27, 0x01, 0x27, 0x03,
4196 : 0x27, 0x05, 0x27, 0x07, 0x01, 0x03
4197 : };
4198 8 : return expand_rtx (expand_encoding, operands);
4199 : }
4200 :
4201 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26989 */
4202 : rtx
4203 0 : gen_xop_pcmov_v4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4204 : {
4205 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4206 0 : static const uint8_t expand_encoding[] = {
4207 : 0x1f, 0x01, 0x00, 0x39, 0x6b, 0x01, 0x03, 0x01,
4208 : 0x01, 0x01, 0x02
4209 : };
4210 0 : return expand_rtx (expand_encoding, operands);
4211 : }
4212 :
4213 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27134 */
4214 : rtx
4215 9 : gen_xop_phaddwd (const rtx operand0, const rtx operand1)
4216 : {
4217 9 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4218 9 : static const uint8_t expand_encoding[] = {
4219 : 0x1f, 0x01, 0x00, 0x3b, 0x51, 0x6e, 0x51, 0x81,
4220 : 0x0a, 0x49, 0x01, 0x01, 0x17, 0x00, 0x04, 0x27,
4221 : 0x00, 0x27, 0x02, 0x27, 0x04, 0x27, 0x06, 0x6e,
4222 : 0x51, 0x81, 0x0a, 0x49, 0x01, 0x01, 0x17, 0x00,
4223 : 0x04, 0x27, 0x01, 0x27, 0x03, 0x27, 0x05, 0x27,
4224 : 0x07
4225 : };
4226 9 : return expand_rtx (expand_encoding, operands);
4227 : }
4228 :
4229 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27228 */
4230 : rtx
4231 9 : gen_xop_phsubwd (const rtx operand0, const rtx operand1)
4232 : {
4233 9 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4234 9 : static const uint8_t expand_encoding[] = {
4235 : 0x1f, 0x01, 0x00, 0x3c, 0x51, 0x6e, 0x51, 0x81,
4236 : 0x0a, 0x49, 0x01, 0x01, 0x17, 0x00, 0x04, 0x27,
4237 : 0x00, 0x27, 0x02, 0x27, 0x04, 0x27, 0x06, 0x6e,
4238 : 0x51, 0x81, 0x0a, 0x49, 0x01, 0x01, 0x17, 0x00,
4239 : 0x04, 0x27, 0x01, 0x27, 0x03, 0x27, 0x05, 0x27,
4240 : 0x07
4241 : };
4242 9 : return expand_rtx (expand_encoding, operands);
4243 : }
4244 :
4245 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27399 */
4246 : rtx
4247 0 : gen_xop_rotrv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
4248 : {
4249 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4250 0 : static const uint8_t expand_encoding[] = {
4251 : 0x1f, 0x01, 0x00, 0x51, 0x50, 0x01, 0x01, 0x01,
4252 : 0x02
4253 : };
4254 0 : return expand_rtx (expand_encoding, operands);
4255 : }
4256 :
4257 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27675 */
4258 : rtx
4259 178 : gen_xop_shav2di3 (const rtx operand0, const rtx operand1, const rtx operand2)
4260 : {
4261 178 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4262 178 : static const uint8_t expand_encoding[] = {
4263 : 0x1f, 0x01, 0x00, 0x39, 0x52, 0x5e, 0x52, 0x01,
4264 : 0x02, 0x27, 0x00, 0x4d, 0x52, 0x01, 0x01, 0x01,
4265 : 0x02, 0x4f, 0x52, 0x01, 0x01, 0x3d, 0x52, 0x01,
4266 : 0x02
4267 : };
4268 178 : return expand_rtx (expand_encoding, operands);
4269 : }
4270 :
4271 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27852 */
4272 : rtx
4273 8 : gen_xop_frczv4df2 (const rtx operand0, const rtx operand1)
4274 : {
4275 8 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4276 8 : static const uint8_t expand_encoding[] = {
4277 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x01, 0x01, 0x01,
4278 : 0x81, 0x09
4279 : };
4280 8 : return expand_rtx (expand_encoding, operands);
4281 : }
4282 :
4283 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27913 */
4284 : rtx
4285 16 : gen_xop_maskcmp_uns2v8hi3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4286 : {
4287 16 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4288 16 : static const uint8_t expand_encoding[] = {
4289 : 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x01, 0x03, 0x50,
4290 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x07
4291 : };
4292 16 : return expand_rtx (expand_encoding, operands);
4293 : }
4294 :
4295 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27943 */
4296 : rtx
4297 18 : gen_xop_vpermil2v2df3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4298 : {
4299 18 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4300 18 : static const uint8_t expand_encoding[] = {
4301 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01, 0x01,
4302 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x12
4303 : };
4304 18 : return expand_rtx (expand_encoding, operands);
4305 : }
4306 :
4307 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28149 */
4308 : rtx
4309 0 : gen_avx2_pbroadcastv8di (const rtx operand0, const rtx operand1)
4310 : {
4311 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4312 0 : static const uint8_t expand_encoding[] = {
4313 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x5c, 0x81, 0x0a,
4314 : 0x12, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4315 : };
4316 0 : return expand_rtx (expand_encoding, operands);
4317 : }
4318 :
4319 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28149 */
4320 : rtx
4321 15 : gen_avx2_pbroadcastv2di (const rtx operand0, const rtx operand1)
4322 : {
4323 15 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4324 15 : static const uint8_t expand_encoding[] = {
4325 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x52, 0x81, 0x0a,
4326 : 0x12, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4327 : };
4328 15 : return expand_rtx (expand_encoding, operands);
4329 : }
4330 :
4331 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28163 */
4332 : rtx
4333 0 : gen_avx2_pbroadcastv4di_1 (const rtx operand0, const rtx operand1)
4334 : {
4335 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4336 0 : static const uint8_t expand_encoding[] = {
4337 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x57, 0x81, 0x0a,
4338 : 0x12, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4339 : };
4340 0 : return expand_rtx (expand_encoding, operands);
4341 : }
4342 :
4343 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28181 */
4344 : rtx
4345 39 : gen_avx512f_permvarv16sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4346 : {
4347 39 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4348 39 : static const uint8_t expand_encoding[] = {
4349 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x1a, 0x74,
4350 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x18, 0x01,
4351 : 0x03, 0x01, 0x04
4352 : };
4353 39 : return expand_rtx (expand_encoding, operands);
4354 : }
4355 :
4356 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28201 */
4357 : rtx
4358 0 : gen_avx512vl_permvarv16qi (const rtx operand0, const rtx operand1, const rtx operand2)
4359 : {
4360 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4361 0 : static const uint8_t expand_encoding[] = {
4362 : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x02, 0x01, 0x01,
4363 : 0x01, 0x02, 0x81, 0x18
4364 : };
4365 0 : return expand_rtx (expand_encoding, operands);
4366 : }
4367 :
4368 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28214 */
4369 : rtx
4370 47 : gen_avx512bw_permvarv32hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4371 : {
4372 47 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4373 47 : static const uint8_t expand_encoding[] = {
4374 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x1a, 0x5a,
4375 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x18, 0x01,
4376 : 0x03, 0x01, 0x04
4377 : };
4378 47 : return expand_rtx (expand_encoding, operands);
4379 : }
4380 :
4381 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28214 */
4382 : rtx
4383 0 : gen_avx512bw_permvarv32bf (const rtx operand0, const rtx operand1, const rtx operand2)
4384 : {
4385 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4386 0 : static const uint8_t expand_encoding[] = {
4387 : 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x02, 0x01, 0x01,
4388 : 0x01, 0x02, 0x81, 0x18
4389 : };
4390 0 : return expand_rtx (expand_encoding, operands);
4391 : }
4392 :
4393 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28487 */
4394 : rtx
4395 39 : gen_avx512f_permv8di_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)
4396 : {
4397 39 : rtx operands[12] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7, operand8, operand9, operand10, operand11 };
4398 39 : static const uint8_t expand_encoding[] = {
4399 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x81, 0x0a,
4400 : 0x5c, 0x01, 0x01, 0x17, 0x00, 0x08, 0x01, 0x02,
4401 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x01, 0x06,
4402 : 0x01, 0x07, 0x01, 0x08, 0x01, 0x09, 0x01, 0x0a,
4403 : 0x01, 0x0b
4404 : };
4405 39 : return expand_rtx (expand_encoding, operands);
4406 : }
4407 :
4408 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28585 */
4409 : rtx
4410 0 : gen_avx512f_vec_dupv8di (const rtx operand0, const rtx operand1)
4411 : {
4412 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4413 0 : static const uint8_t expand_encoding[] = {
4414 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x5c, 0x81, 0x0a,
4415 : 0x12, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4416 : };
4417 0 : return expand_rtx (expand_encoding, operands);
4418 : }
4419 :
4420 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28585 */
4421 : rtx
4422 0 : gen_avx512vl_vec_dupv8sf (const rtx operand0, const rtx operand1)
4423 : {
4424 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4425 0 : static const uint8_t expand_encoding[] = {
4426 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x6f, 0x81, 0x0a,
4427 : 0x2d, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4428 : };
4429 0 : return expand_rtx (expand_encoding, operands);
4430 : }
4431 :
4432 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28585 */
4433 : rtx
4434 0 : gen_avx512vl_vec_dupv2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4435 : {
4436 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4437 0 : static const uint8_t expand_encoding[] = {
4438 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x0c,
4439 : 0x6c, 0x81, 0x0a, 0x2e, 0x01, 0x01, 0x17, 0x00,
4440 : 0x01, 0x27, 0x00, 0x01, 0x02, 0x01, 0x03
4441 : };
4442 0 : return expand_rtx (expand_encoding, operands);
4443 : }
4444 :
4445 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28604 */
4446 : rtx
4447 0 : gen_avx512vl_vec_dupv8hi (const rtx operand0, const rtx operand1)
4448 : {
4449 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4450 0 : static const uint8_t expand_encoding[] = {
4451 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x50, 0x81, 0x0a,
4452 : 0x10, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00
4453 : };
4454 0 : return expand_rtx (expand_encoding, operands);
4455 : }
4456 :
4457 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28604 */
4458 : rtx
4459 0 : gen_avx512bw_vec_dupv32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4460 : {
4461 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4462 0 : static const uint8_t expand_encoding[] = {
4463 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x81, 0x0c,
4464 : 0x72, 0x81, 0x0a, 0x2c, 0x01, 0x01, 0x17, 0x00,
4465 : 0x01, 0x27, 0x00, 0x01, 0x02, 0x01, 0x03
4466 : };
4467 0 : return expand_rtx (expand_encoding, operands);
4468 : }
4469 :
4470 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28642 */
4471 : rtx
4472 24 : gen_avx512vl_vec_dup_gprv32qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4473 : {
4474 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4475 24 : static const uint8_t expand_encoding[] = {
4476 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x81, 0x0c,
4477 : 0x54, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4478 : };
4479 24 : return expand_rtx (expand_encoding, operands);
4480 : }
4481 :
4482 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28654 */
4483 : rtx
4484 24 : gen_avx512f_vec_dup_gprv16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4485 : {
4486 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4487 24 : static const uint8_t expand_encoding[] = {
4488 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x81, 0x0c,
4489 : 0x5b, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4490 : };
4491 24 : return expand_rtx (expand_encoding, operands);
4492 : }
4493 :
4494 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28654 */
4495 : rtx
4496 0 : gen_avx512vl_vec_dup_gprv4df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4497 : {
4498 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4499 0 : static const uint8_t expand_encoding[] = {
4500 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81, 0x0c,
4501 : 0x70, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4502 : };
4503 0 : return expand_rtx (expand_encoding, operands);
4504 : }
4505 :
4506 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28824 */
4507 : rtx
4508 13 : gen_vec_dupv4df (const rtx operand0, const rtx operand1)
4509 : {
4510 13 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4511 13 : static const uint8_t expand_encoding[] = {
4512 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x70, 0x01, 0x01
4513 : };
4514 13 : return expand_rtx (expand_encoding, operands);
4515 : }
4516 :
4517 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28928 */
4518 : rtx
4519 36 : gen_avx512dq_broadcastv8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4520 : {
4521 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4522 36 : static const uint8_t expand_encoding[] = {
4523 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x81, 0x0c,
4524 : 0x56, 0x81, 0x0a, 0x4a, 0x01, 0x01, 0x17, 0x00,
4525 : 0x02, 0x27, 0x00, 0x27, 0x01, 0x01, 0x02, 0x01,
4526 : 0x03
4527 : };
4528 36 : return expand_rtx (expand_encoding, operands);
4529 : }
4530 :
4531 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28973 */
4532 : rtx
4533 36 : gen_avx512dq_broadcastv4di_mask_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4534 : {
4535 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4536 36 : static const uint8_t expand_encoding[] = {
4537 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x81, 0x0c,
4538 : 0x57, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
4539 : };
4540 36 : return expand_rtx (expand_encoding, operands);
4541 : }
4542 :
4543 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29013 */
4544 : rtx
4545 85 : gen_avx_vpermilvarv8sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
4546 : {
4547 85 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4548 85 : static const uint8_t expand_encoding[] = {
4549 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x02, 0x01, 0x01,
4550 : 0x01, 0x02, 0x81, 0x11
4551 : };
4552 85 : return expand_rtx (expand_encoding, operands);
4553 : }
4554 :
4555 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29013 */
4556 : rtx
4557 24 : gen_avx_vpermilvarv2df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4558 : {
4559 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4560 24 : static const uint8_t expand_encoding[] = {
4561 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a, 0x6c,
4562 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x11, 0x01,
4563 : 0x03, 0x01, 0x04
4564 : };
4565 24 : return expand_rtx (expand_encoding, operands);
4566 : }
4567 :
4568 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29115 */
4569 : rtx
4570 1 : gen_avx512vl_vpermt2varv8sf3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4571 : {
4572 1 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4573 1 : static const uint8_t expand_encoding[] = {
4574 : 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x03, 0x01, 0x01,
4575 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1c
4576 : };
4577 1 : return expand_rtx (expand_encoding, operands);
4578 : }
4579 :
4580 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29115 */
4581 : rtx
4582 12 : gen_avx512vl_vpermt2varv4sf3_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
4583 : {
4584 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
4585 12 : static const uint8_t expand_encoding[] = {
4586 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
4587 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4588 : 0x1c, 0x01, 0x04, 0x01, 0x05
4589 : };
4590 12 : return expand_rtx (expand_encoding, operands);
4591 : }
4592 :
4593 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29115 */
4594 : rtx
4595 11 : gen_avx512bw_vpermt2varv64qi3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4596 : {
4597 11 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4598 11 : static const uint8_t expand_encoding[] = {
4599 : 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x03, 0x01, 0x01,
4600 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x1c
4601 : };
4602 11 : return expand_rtx (expand_encoding, operands);
4603 : }
4604 :
4605 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29131 */
4606 : rtx
4607 0 : gen_avx512vl_vpermt2varv16hf3_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
4608 : {
4609 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
4610 0 : static const uint8_t expand_encoding[] = {
4611 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x1a, 0x6e,
4612 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4613 : 0x1c, 0x01, 0x04, 0x01, 0x05
4614 : };
4615 0 : return expand_rtx (expand_encoding, operands);
4616 : }
4617 :
4618 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29146 */
4619 : rtx
4620 24 : gen_avx512f_vpermt2varv8di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4621 : {
4622 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4623 24 : static const uint8_t expand_encoding[] = {
4624 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x1a, 0x5c,
4625 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4626 : 0x1c, 0x01, 0x02, 0x01, 0x04
4627 : };
4628 24 : return expand_rtx (expand_encoding, operands);
4629 : }
4630 :
4631 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29146 */
4632 : rtx
4633 24 : gen_avx512bw_vpermt2varv32hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4634 : {
4635 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4636 24 : static const uint8_t expand_encoding[] = {
4637 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x1a, 0x5a,
4638 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4639 : 0x1c, 0x01, 0x02, 0x01, 0x04
4640 : };
4641 24 : return expand_rtx (expand_encoding, operands);
4642 : }
4643 :
4644 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29352 */
4645 : rtx
4646 14 : gen_vec_set_hi_v4di (const rtx operand0, const rtx operand1, const rtx operand2)
4647 : {
4648 14 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4649 14 : static const uint8_t expand_encoding[] = {
4650 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x57, 0x81, 0x0a,
4651 : 0x52, 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x00,
4652 : 0x27, 0x01, 0x01, 0x02
4653 : };
4654 14 : return expand_rtx (expand_encoding, operands);
4655 : }
4656 :
4657 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29401 */
4658 : rtx
4659 24 : gen_vec_set_hi_v8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4660 : {
4661 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4662 24 : static const uint8_t expand_encoding[] = {
4663 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x81, 0x0b,
4664 : 0x56, 0x81, 0x0a, 0x51, 0x01, 0x01, 0x17, 0x00,
4665 : 0x04, 0x27, 0x00, 0x27, 0x01, 0x27, 0x02, 0x27,
4666 : 0x03, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
4667 : };
4668 24 : return expand_rtx (expand_encoding, operands);
4669 : }
4670 :
4671 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29525 */
4672 : rtx
4673 11 : gen_avx_maskloadps (const rtx operand0, const rtx operand1, const rtx operand2)
4674 : {
4675 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4676 11 : static const uint8_t expand_encoding[] = {
4677 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x01, 0x02,
4678 : 0x01, 0x01, 0x30
4679 : };
4680 11 : return expand_rtx (expand_encoding, operands);
4681 : }
4682 :
4683 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29546 */
4684 : rtx
4685 11 : gen_avx_maskstoreps (const rtx operand0, const rtx operand1, const rtx operand2)
4686 : {
4687 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4688 11 : static const uint8_t expand_encoding[] = {
4689 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x03, 0x01, 0x01,
4690 : 0x01, 0x02, 0x01, 0x00, 0x30
4691 : };
4692 11 : return expand_rtx (expand_encoding, operands);
4693 : }
4694 :
4695 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29638 */
4696 : rtx
4697 24 : gen_avx512vl_storev4si_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4698 : {
4699 24 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4700 24 : static const uint8_t expand_encoding[] = {
4701 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x01,
4702 : 0x01, 0x00, 0x01, 0x02, 0x30
4703 : };
4704 24 : return expand_rtx (expand_encoding, operands);
4705 : }
4706 :
4707 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29667 */
4708 : rtx
4709 14 : gen_avx512bw_storev64qi_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4710 : {
4711 14 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4712 14 : static const uint8_t expand_encoding[] = {
4713 : 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x03, 0x01, 0x01,
4714 : 0x01, 0x00, 0x01, 0x02, 0x30
4715 : };
4716 14 : return expand_rtx (expand_encoding, operands);
4717 : }
4718 :
4719 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29667 */
4720 : rtx
4721 0 : gen_avx512vl_storev16bf_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4722 : {
4723 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4724 0 : static const uint8_t expand_encoding[] = {
4725 : 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x03, 0x01, 0x01,
4726 : 0x01, 0x00, 0x01, 0x02, 0x30
4727 : };
4728 0 : return expand_rtx (expand_encoding, operands);
4729 : }
4730 :
4731 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29807 */
4732 : rtx
4733 33 : gen_avx512f_ashrvv16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4734 : {
4735 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4736 33 : static const uint8_t expand_encoding[] = {
4737 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x4f, 0x5b,
4738 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
4739 : };
4740 33 : return expand_rtx (expand_encoding, operands);
4741 : }
4742 :
4743 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29818 */
4744 : rtx
4745 34 : gen_avx512bw_ashrvv32hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4746 : {
4747 34 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4748 34 : static const uint8_t expand_encoding[] = {
4749 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x4f, 0x5a,
4750 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
4751 : };
4752 34 : return expand_rtx (expand_encoding, operands);
4753 : }
4754 :
4755 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29829 */
4756 : rtx
4757 23 : gen_avx2_lshrvv4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4758 : {
4759 23 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4760 23 : static const uint8_t expand_encoding[] = {
4761 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x50, 0x51,
4762 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
4763 : };
4764 23 : return expand_rtx (expand_encoding, operands);
4765 : }
4766 :
4767 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29829 */
4768 : rtx
4769 12 : gen_avx2_lshrvv2di (const rtx operand0, const rtx operand1, const rtx operand2)
4770 : {
4771 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4772 12 : static const uint8_t expand_encoding[] = {
4773 : 0x1f, 0x01, 0x00, 0x50, 0x52, 0x01, 0x01, 0x01,
4774 : 0x02
4775 : };
4776 12 : return expand_rtx (expand_encoding, operands);
4777 : }
4778 :
4779 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29840 */
4780 : rtx
4781 33 : gen_avx512vl_lshrvv16hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
4782 : {
4783 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
4784 33 : static const uint8_t expand_encoding[] = {
4785 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x50, 0x55,
4786 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
4787 : };
4788 33 : return expand_rtx (expand_encoding, operands);
4789 : }
4790 :
4791 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29851 */
4792 : rtx
4793 6 : gen_avx_vec_concatv8sf (const rtx operand0, const rtx operand1, const rtx operand2)
4794 : {
4795 6 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4796 6 : static const uint8_t expand_encoding[] = {
4797 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6f, 0x01, 0x01,
4798 : 0x01, 0x02
4799 : };
4800 6 : return expand_rtx (expand_encoding, operands);
4801 : }
4802 :
4803 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29981 */
4804 : rtx
4805 31 : gen_vcvtph2ps (const rtx operand0, const rtx operand1)
4806 : {
4807 31 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
4808 31 : static const uint8_t expand_encoding[] = {
4809 : 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6b, 0x1a, 0x6f,
4810 : 0x01, 0x01, 0x01, 0x81, 0x16, 0x17, 0x00, 0x04,
4811 : 0x27, 0x00, 0x27, 0x01, 0x27, 0x02, 0x27, 0x03
4812 : };
4813 31 : return expand_rtx (expand_encoding, operands);
4814 : }
4815 :
4816 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30558 */
4817 : rtx
4818 24 : gen_avx512f_compressv16sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4819 : {
4820 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4821 24 : static const uint8_t expand_encoding[] = {
4822 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x03, 0x01, 0x01,
4823 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x2a
4824 : };
4825 24 : return expand_rtx (expand_encoding, operands);
4826 : }
4827 :
4828 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30558 */
4829 : rtx
4830 24 : gen_avx512vl_compressv2di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4831 : {
4832 24 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4833 24 : static const uint8_t expand_encoding[] = {
4834 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x03, 0x01, 0x01,
4835 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x2a
4836 : };
4837 24 : return expand_rtx (expand_encoding, operands);
4838 : }
4839 :
4840 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30586 */
4841 : rtx
4842 12 : gen_avx512f_compressstorev8di_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4843 : {
4844 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4845 12 : static const uint8_t expand_encoding[] = {
4846 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x03, 0x01, 0x01,
4847 : 0x01, 0x00, 0x01, 0x02, 0x81, 0x2b
4848 : };
4849 12 : return expand_rtx (expand_encoding, operands);
4850 : }
4851 :
4852 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30601 */
4853 : rtx
4854 12 : gen_compressstorev64qi_mask (const rtx operand0, const rtx operand1, const rtx operand2)
4855 : {
4856 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4857 12 : static const uint8_t expand_encoding[] = {
4858 : 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x03, 0x01, 0x01,
4859 : 0x01, 0x00, 0x01, 0x02, 0x81, 0x2b
4860 : };
4861 12 : return expand_rtx (expand_encoding, operands);
4862 : }
4863 :
4864 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30626 */
4865 : rtx
4866 45 : gen_expandv8df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4867 : {
4868 45 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4869 45 : static const uint8_t expand_encoding[] = {
4870 : 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x03, 0x01, 0x01,
4871 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
4872 : };
4873 45 : return expand_rtx (expand_encoding, operands);
4874 : }
4875 :
4876 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30641 */
4877 : rtx
4878 44 : gen_expandv16qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4879 : {
4880 44 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4881 44 : static const uint8_t expand_encoding[] = {
4882 : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x03, 0x01, 0x01,
4883 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
4884 : };
4885 44 : return expand_rtx (expand_encoding, operands);
4886 : }
4887 :
4888 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30722 */
4889 : rtx
4890 27 : gen_avx512dq_rangepv8sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
4891 : {
4892 27 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
4893 27 : static const uint8_t expand_encoding[] = {
4894 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x1a, 0x6f,
4895 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4896 : 0x43, 0x01, 0x04, 0x01, 0x05
4897 : };
4898 27 : return expand_rtx (expand_encoding, operands);
4899 : }
4900 :
4901 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30742 */
4902 : rtx
4903 0 : gen_avx512dq_rangesv4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4904 : {
4905 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4906 0 : static const uint8_t expand_encoding[] = {
4907 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a, 0x6b,
4908 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4909 : 0x43, 0x01, 0x01, 0x27, 0x01
4910 : };
4911 0 : return expand_rtx (expand_encoding, operands);
4912 : }
4913 :
4914 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30765 */
4915 : rtx
4916 18 : gen_avx512dq_fpclassv32hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4917 : {
4918 18 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4919 18 : static const uint8_t expand_encoding[] = {
4920 : 0x1f, 0x01, 0x00, 0x49, 0x11, 0x1a, 0x11, 0x02,
4921 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x42, 0x01, 0x03
4922 : };
4923 18 : return expand_rtx (expand_encoding, operands);
4924 : }
4925 :
4926 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30765 */
4927 : rtx
4928 17 : gen_avx512dq_fpclassv4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4929 : {
4930 17 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4931 17 : static const uint8_t expand_encoding[] = {
4932 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x02,
4933 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x42, 0x01, 0x03
4934 : };
4935 17 : return expand_rtx (expand_encoding, operands);
4936 : }
4937 :
4938 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30778 */
4939 : rtx
4940 18 : gen_avx512dq_vmfpclassv4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4941 : {
4942 18 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4943 18 : static const uint8_t expand_encoding[] = {
4944 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x49, 0x0f, 0x1a,
4945 : 0x0f, 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x42,
4946 : 0x27, 0x01, 0x01, 0x03
4947 : };
4948 18 : return expand_rtx (expand_encoding, operands);
4949 : }
4950 :
4951 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30793 */
4952 : rtx
4953 0 : gen_avx512fp16_getmantv8hf (const rtx operand0, const rtx operand1, const rtx operand2)
4954 : {
4955 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4956 0 : static const uint8_t expand_encoding[] = {
4957 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x01, 0x01,
4958 : 0x01, 0x02, 0x81, 0x27
4959 : };
4960 0 : return expand_rtx (expand_encoding, operands);
4961 : }
4962 :
4963 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30793 */
4964 : rtx
4965 70 : gen_avx512f_getmantv16sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
4966 : {
4967 70 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
4968 70 : static const uint8_t expand_encoding[] = {
4969 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x81, 0x09,
4970 : 0x74, 0x1a, 0x74, 0x02, 0x01, 0x01, 0x01, 0x02,
4971 : 0x81, 0x27, 0x01, 0x03, 0x01, 0x04, 0x01, 0x05,
4972 : 0x81, 0x33
4973 : };
4974 70 : return expand_rtx (expand_encoding, operands);
4975 : }
4976 :
4977 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30793 */
4978 : rtx
4979 0 : gen_avx512vl_getmantv4df (const rtx operand0, const rtx operand1, const rtx operand2)
4980 : {
4981 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
4982 0 : static const uint8_t expand_encoding[] = {
4983 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x01, 0x01,
4984 : 0x01, 0x02, 0x81, 0x27
4985 : };
4986 0 : return expand_rtx (expand_encoding, operands);
4987 : }
4988 :
4989 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30810 */
4990 : rtx
4991 0 : gen_avx512f_vgetmantv8hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
4992 : {
4993 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
4994 0 : static const uint8_t expand_encoding[] = {
4995 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
4996 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
4997 : 0x27, 0x01, 0x01, 0x27, 0x01
4998 : };
4999 0 : return expand_rtx (expand_encoding, operands);
5000 : }
5001 :
5002 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30810 */
5003 : rtx
5004 0 : gen_avx512f_vgetmantv2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5005 : {
5006 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5007 0 : static const uint8_t expand_encoding[] = {
5008 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81, 0x09,
5009 : 0x6c, 0x1a, 0x6c, 0x03, 0x01, 0x01, 0x01, 0x02,
5010 : 0x01, 0x03, 0x81, 0x27, 0x01, 0x04, 0x01, 0x05,
5011 : 0x01, 0x01, 0x27, 0x01
5012 : };
5013 0 : return expand_rtx (expand_encoding, operands);
5014 : }
5015 :
5016 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30849 */
5017 : rtx
5018 3 : gen_clzv4si2 (const rtx operand0, const rtx operand1)
5019 : {
5020 3 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5021 3 : static const uint8_t expand_encoding[] = {
5022 : 0x1f, 0x01, 0x00, 0x81, 0x00, 0x51, 0x01, 0x01
5023 : };
5024 3 : return expand_rtx (expand_encoding, operands);
5025 : }
5026 :
5027 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30860 */
5028 : rtx
5029 33 : gen_conflictv8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5030 : {
5031 33 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5032 33 : static const uint8_t expand_encoding[] = {
5033 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
5034 : 0x01, 0x01, 0x01, 0x81, 0x29, 0x01, 0x02, 0x01,
5035 : 0x03
5036 : };
5037 33 : return expand_rtx (expand_encoding, operands);
5038 : }
5039 :
5040 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30929 */
5041 : rtx
5042 12 : gen_sha256msg2 (const rtx operand0, const rtx operand1, const rtx operand2)
5043 : {
5044 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5045 12 : static const uint8_t expand_encoding[] = {
5046 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x02, 0x01, 0x01,
5047 : 0x01, 0x02, 0x81, 0x39
5048 : };
5049 12 : return expand_rtx (expand_encoding, operands);
5050 : }
5051 :
5052 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31025 */
5053 : rtx
5054 15 : gen_vsm4key4_v4si (const rtx operand0, const rtx operand1, const rtx operand2)
5055 : {
5056 15 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5057 15 : static const uint8_t expand_encoding[] = {
5058 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x02, 0x01, 0x01,
5059 : 0x01, 0x02, 0x81, 0x73
5060 : };
5061 15 : return expand_rtx (expand_encoding, operands);
5062 : }
5063 :
5064 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31122 */
5065 : rtx
5066 0 : gen_vpmadd52luqv8di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5067 : {
5068 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5069 0 : static const uint8_t expand_encoding[] = {
5070 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x03, 0x01, 0x01,
5071 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x44
5072 : };
5073 0 : return expand_rtx (expand_encoding, operands);
5074 : }
5075 :
5076 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31154 */
5077 : rtx
5078 13 : gen_vpmadd52luqv2di_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5079 : {
5080 13 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5081 13 : static const uint8_t expand_encoding[] = {
5082 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x1a, 0x52,
5083 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5084 : 0x44, 0x01, 0x04, 0x01, 0x05
5085 : };
5086 13 : return expand_rtx (expand_encoding, operands);
5087 : }
5088 :
5089 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31188 */
5090 : rtx
5091 0 : gen_vpmultishiftqbv16qi (const rtx operand0, const rtx operand1, const rtx operand2)
5092 : {
5093 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5094 0 : static const uint8_t expand_encoding[] = {
5095 : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x02, 0x01, 0x01,
5096 : 0x01, 0x02, 0x81, 0x46
5097 : };
5098 0 : return expand_rtx (expand_encoding, operands);
5099 : }
5100 :
5101 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31206 */
5102 : rtx
5103 26 : gen_vpopcountv4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5104 : {
5105 26 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5106 26 : static const uint8_t expand_encoding[] = {
5107 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x81, 0x02,
5108 : 0x51, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
5109 : };
5110 26 : return expand_rtx (expand_encoding, operands);
5111 : }
5112 :
5113 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31256 */
5114 : rtx
5115 12 : gen_vpopcountv32qi (const rtx operand0, const rtx operand1)
5116 : {
5117 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5118 12 : static const uint8_t expand_encoding[] = {
5119 : 0x1f, 0x01, 0x00, 0x81, 0x02, 0x54, 0x01, 0x01
5120 : };
5121 12 : return expand_rtx (expand_encoding, operands);
5122 : }
5123 :
5124 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31263 */
5125 : rtx
5126 16 : gen_vgf2p8affineinvqb_v64qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5127 : {
5128 16 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5129 16 : static const uint8_t expand_encoding[] = {
5130 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x59, 0x1a, 0x59,
5131 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5132 : 0x47, 0x01, 0x04, 0x01, 0x05
5133 : };
5134 16 : return expand_rtx (expand_encoding, operands);
5135 : }
5136 :
5137 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31297 */
5138 : rtx
5139 12 : gen_vgf2p8mulb_v64qi (const rtx operand0, const rtx operand1, const rtx operand2)
5140 : {
5141 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5142 12 : static const uint8_t expand_encoding[] = {
5143 : 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x02, 0x01, 0x01,
5144 : 0x01, 0x02, 0x81, 0x49
5145 : };
5146 12 : return expand_rtx (expand_encoding, operands);
5147 : }
5148 :
5149 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31313 */
5150 : rtx
5151 22 : gen_vpshrd_v16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5152 : {
5153 22 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5154 22 : static const uint8_t expand_encoding[] = {
5155 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a, 0x5b,
5156 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5157 : 0x4b, 0x01, 0x04, 0x01, 0x05
5158 : };
5159 22 : return expand_rtx (expand_encoding, operands);
5160 : }
5161 :
5162 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31313 */
5163 : rtx
5164 11 : gen_vpshrd_v4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5165 : {
5166 11 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5167 11 : static const uint8_t expand_encoding[] = {
5168 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x01,
5169 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4b
5170 : };
5171 11 : return expand_rtx (expand_encoding, operands);
5172 : }
5173 :
5174 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31324 */
5175 : rtx
5176 24 : gen_vpshld_v8di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5177 : {
5178 24 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5179 24 : static const uint8_t expand_encoding[] = {
5180 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x1a, 0x5c,
5181 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5182 : 0x4a, 0x01, 0x04, 0x01, 0x05
5183 : };
5184 24 : return expand_rtx (expand_encoding, operands);
5185 : }
5186 :
5187 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31324 */
5188 : rtx
5189 11 : gen_vpshld_v2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5190 : {
5191 11 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5192 11 : static const uint8_t expand_encoding[] = {
5193 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x03, 0x01, 0x01,
5194 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4a
5195 : };
5196 11 : return expand_rtx (expand_encoding, operands);
5197 : }
5198 :
5199 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31335 */
5200 : rtx
5201 12 : gen_vpshrdv_v4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5202 : {
5203 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5204 12 : static const uint8_t expand_encoding[] = {
5205 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x01,
5206 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4c
5207 : };
5208 12 : return expand_rtx (expand_encoding, operands);
5209 : }
5210 :
5211 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31347 */
5212 : rtx
5213 12 : gen_vpshrdv_v2di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5214 : {
5215 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5216 12 : static const uint8_t expand_encoding[] = {
5217 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x1a, 0x52,
5218 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5219 : 0x4c, 0x01, 0x01, 0x01, 0x04
5220 : };
5221 12 : return expand_rtx (expand_encoding, operands);
5222 : }
5223 :
5224 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31392 */
5225 : rtx
5226 12 : gen_vpshldv_v32hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5227 : {
5228 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5229 12 : static const uint8_t expand_encoding[] = {
5230 : 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x03, 0x01, 0x01,
5231 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4d
5232 : };
5233 12 : return expand_rtx (expand_encoding, operands);
5234 : }
5235 :
5236 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31392 */
5237 : rtx
5238 12 : gen_vpshldv_v2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5239 : {
5240 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5241 12 : static const uint8_t expand_encoding[] = {
5242 : 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x03, 0x01, 0x01,
5243 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4d
5244 : };
5245 12 : return expand_rtx (expand_encoding, operands);
5246 : }
5247 :
5248 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31434 */
5249 : rtx
5250 12 : gen_vpshldv_v32hi_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5251 : {
5252 12 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5253 12 : static const uint8_t expand_encoding[] = {
5254 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x1a, 0x5a,
5255 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5256 : 0x4d, 0x01, 0x04, 0x01, 0x05
5257 : };
5258 12 : return expand_rtx (expand_encoding, operands);
5259 : }
5260 :
5261 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31508 */
5262 : rtx
5263 35 : gen_vpdpbusd_v8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5264 : {
5265 35 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5266 35 : static const uint8_t expand_encoding[] = {
5267 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x03, 0x01, 0x01,
5268 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4e
5269 : };
5270 35 : return expand_rtx (expand_encoding, operands);
5271 : }
5272 :
5273 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31577 */
5274 : rtx
5275 20 : gen_vpdpbusds_v4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5276 : {
5277 20 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5278 20 : static const uint8_t expand_encoding[] = {
5279 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x01,
5280 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x4f
5281 : };
5282 20 : return expand_rtx (expand_encoding, operands);
5283 : }
5284 :
5285 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31646 */
5286 : rtx
5287 22 : gen_vpdpwssd_v8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5288 : {
5289 22 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5290 22 : static const uint8_t expand_encoding[] = {
5291 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x03, 0x01, 0x01,
5292 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x50
5293 : };
5294 22 : return expand_rtx (expand_encoding, operands);
5295 : }
5296 :
5297 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31690 */
5298 : rtx
5299 13 : gen_vpdpwssd_v4si_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5300 : {
5301 13 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5302 13 : static const uint8_t expand_encoding[] = {
5303 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5304 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5305 : 0x50, 0x01, 0x04, 0x01, 0x05
5306 : };
5307 13 : return expand_rtx (expand_encoding, operands);
5308 : }
5309 :
5310 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31792 */
5311 : rtx
5312 12 : gen_vaesdeclast_v32qi (const rtx operand0, const rtx operand1, const rtx operand2)
5313 : {
5314 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5315 12 : static const uint8_t expand_encoding[] = {
5316 : 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x02, 0x01, 0x01,
5317 : 0x01, 0x02, 0x81, 0x53
5318 : };
5319 12 : return expand_rtx (expand_encoding, operands);
5320 : }
5321 :
5322 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31830 */
5323 : rtx
5324 11 : gen_vaesenclast_v64qi (const rtx operand0, const rtx operand1, const rtx operand2)
5325 : {
5326 11 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5327 11 : static const uint8_t expand_encoding[] = {
5328 : 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x02, 0x01, 0x01,
5329 : 0x01, 0x02, 0x81, 0x55
5330 : };
5331 11 : return expand_rtx (expand_encoding, operands);
5332 : }
5333 :
5334 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31898 */
5335 : rtx
5336 13 : gen_avx512vp2intersect_2intersectv8di (const rtx operand0, const rtx operand1, const rtx operand2)
5337 : {
5338 13 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5339 13 : static const uint8_t expand_encoding[] = {
5340 : 0x1f, 0x01, 0x00, 0x1a, 0x16, 0x02, 0x01, 0x01,
5341 : 0x01, 0x02, 0x81, 0x58
5342 : };
5343 13 : return expand_rtx (expand_encoding, operands);
5344 : }
5345 :
5346 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31945 */
5347 : rtx
5348 23 : gen_avx512f_cvtne2ps2bf16_v16bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5349 : {
5350 23 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5351 23 : static const uint8_t expand_encoding[] = {
5352 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6d, 0x81, 0x0b,
5353 : 0x6d, 0x72, 0x69, 0x01, 0x02, 0x72, 0x69, 0x01,
5354 : 0x01, 0x01, 0x03, 0x01, 0x04
5355 : };
5356 23 : return expand_rtx (expand_encoding, operands);
5357 : }
5358 :
5359 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32126 */
5360 : rtx
5361 11 : gen_avx512f_dpbf16ps_v4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5362 : {
5363 11 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5364 11 : static const uint8_t expand_encoding[] = {
5365 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x03, 0x01, 0x01,
5366 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x59
5367 : };
5368 11 : return expand_rtx (expand_encoding, operands);
5369 : }
5370 :
5371 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32284 */
5372 : rtx
5373 12 : gen_aesenc128klu8 (const rtx operand0, const rtx operand1, const rtx operand2)
5374 : {
5375 12 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5376 12 : static const uint8_t expand_encoding[] = {
5377 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1b, 0x52,
5378 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x64, 0x1f, 0x30,
5379 : 0x0c, 0x11, 0x1b, 0x0c, 0x02, 0x01, 0x01, 0x01,
5380 : 0x02, 0x64
5381 : };
5382 12 : return expand_rtx (expand_encoding, operands);
5383 : }
5384 :
5385 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32499 */
5386 : rtx
5387 14 : gen_vpdpbsud_v4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5388 : {
5389 14 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5390 14 : static const uint8_t expand_encoding[] = {
5391 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x01,
5392 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x66
5393 : };
5394 14 : return expand_rtx (expand_encoding, operands);
5395 : }
5396 :
5397 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32521 */
5398 : rtx
5399 12 : gen_vpdpbssd_v16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5400 : {
5401 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5402 12 : static const uint8_t expand_encoding[] = {
5403 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a, 0x5b,
5404 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5405 : 0x64, 0x01, 0x01, 0x01, 0x04
5406 : };
5407 12 : return expand_rtx (expand_encoding, operands);
5408 : }
5409 :
5410 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32521 */
5411 : rtx
5412 12 : gen_vpdpbuud_v8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5413 : {
5414 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5415 12 : static const uint8_t expand_encoding[] = {
5416 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
5417 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5418 : 0x68, 0x01, 0x01, 0x01, 0x04
5419 : };
5420 12 : return expand_rtx (expand_encoding, operands);
5421 : }
5422 :
5423 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32573 */
5424 : rtx
5425 12 : gen_vbcstnesh2ps_v8sf (const rtx operand0, const rtx operand1)
5426 : {
5427 12 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5428 12 : static const uint8_t expand_encoding[] = {
5429 : 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x6f, 0x71, 0x2d,
5430 : 0x01, 0x01
5431 : };
5432 12 : return expand_rtx (expand_encoding, operands);
5433 : }
5434 :
5435 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32644 */
5436 : rtx
5437 0 : gen_avx10_2_cvt2ps2phx_v32hf (const rtx operand0, const rtx operand1, const rtx operand2)
5438 : {
5439 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5440 0 : static const uint8_t expand_encoding[] = {
5441 : 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x73, 0x72, 0x6e,
5442 : 0x01, 0x02, 0x72, 0x6e, 0x01, 0x01
5443 : };
5444 0 : return expand_rtx (expand_encoding, operands);
5445 : }
5446 :
5447 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32667 */
5448 : rtx
5449 0 : gen_vcvt2ph2bf8sv32hf (const rtx operand0, const rtx operand1, const rtx operand2)
5450 : {
5451 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5452 0 : static const uint8_t expand_encoding[] = {
5453 : 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x02, 0x01, 0x01,
5454 : 0x01, 0x02, 0x81, 0x7b
5455 : };
5456 0 : return expand_rtx (expand_encoding, operands);
5457 : }
5458 :
5459 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32667 */
5460 : rtx
5461 0 : gen_vcvt2ph2bf8sv16hf (const rtx operand0, const rtx operand1, const rtx operand2)
5462 : {
5463 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5464 0 : static const uint8_t expand_encoding[] = {
5465 : 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x02, 0x01, 0x01,
5466 : 0x01, 0x02, 0x81, 0x7b
5467 : };
5468 0 : return expand_rtx (expand_encoding, operands);
5469 : }
5470 :
5471 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32667 */
5472 : rtx
5473 0 : gen_vcvt2ph2bf8sv8hf (const rtx operand0, const rtx operand1, const rtx operand2)
5474 : {
5475 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5476 0 : static const uint8_t expand_encoding[] = {
5477 : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x02, 0x01, 0x01,
5478 : 0x01, 0x02, 0x81, 0x7b
5479 : };
5480 0 : return expand_rtx (expand_encoding, operands);
5481 : }
5482 :
5483 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32759 */
5484 : rtx
5485 0 : gen_vcvtbiasph2bf8sv32hf (const rtx operand0, const rtx operand1, const rtx operand2)
5486 : {
5487 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5488 0 : static const uint8_t expand_encoding[] = {
5489 : 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x02, 0x01, 0x01,
5490 : 0x01, 0x02, 0x81, 0x77
5491 : };
5492 0 : return expand_rtx (expand_encoding, operands);
5493 : }
5494 :
5495 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32759 */
5496 : rtx
5497 36 : gen_vcvtbiasph2bf8sv16hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5498 : {
5499 36 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5500 36 : static const uint8_t expand_encoding[] = {
5501 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x1a, 0x4f,
5502 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x77, 0x01,
5503 : 0x03, 0x01, 0x04
5504 : };
5505 36 : return expand_rtx (expand_encoding, operands);
5506 : }
5507 :
5508 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32844 */
5509 : rtx
5510 0 : gen_vcvtph2hf8sv16hf (const rtx operand0, const rtx operand1)
5511 : {
5512 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5513 0 : static const uint8_t expand_encoding[] = {
5514 : 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x01, 0x01, 0x01,
5515 : 0x82, 0x01
5516 : };
5517 0 : return expand_rtx (expand_encoding, operands);
5518 : }
5519 :
5520 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32844 */
5521 : rtx
5522 36 : gen_vcvtph2hf8sv32hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5523 : {
5524 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5525 36 : static const uint8_t expand_encoding[] = {
5526 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x1a, 0x54,
5527 : 0x01, 0x01, 0x01, 0x82, 0x01, 0x01, 0x02, 0x01,
5528 : 0x03
5529 : };
5530 36 : return expand_rtx (expand_encoding, operands);
5531 : }
5532 :
5533 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32911 */
5534 : rtx
5535 29 : gen_vpdpwuud_v8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5536 : {
5537 29 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5538 29 : static const uint8_t expand_encoding[] = {
5539 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x03, 0x01, 0x01,
5540 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x6e
5541 : };
5542 29 : return expand_rtx (expand_encoding, operands);
5543 : }
5544 :
5545 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32922 */
5546 : rtx
5547 12 : gen_vpdpwsud_v16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5548 : {
5549 12 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5550 12 : static const uint8_t expand_encoding[] = {
5551 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x03, 0x01, 0x01,
5552 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x6c
5553 : };
5554 12 : return expand_rtx (expand_encoding, operands);
5555 : }
5556 :
5557 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32933 */
5558 : rtx
5559 12 : gen_vpdpwusd_v8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5560 : {
5561 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5562 12 : static const uint8_t expand_encoding[] = {
5563 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
5564 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5565 : 0x6a, 0x01, 0x01, 0x01, 0x04
5566 : };
5567 12 : return expand_rtx (expand_encoding, operands);
5568 : }
5569 :
5570 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32933 */
5571 : rtx
5572 12 : gen_vpdpwuud_v4si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5573 : {
5574 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5575 12 : static const uint8_t expand_encoding[] = {
5576 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5577 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
5578 : 0x6e, 0x01, 0x01, 0x01, 0x04
5579 : };
5580 12 : return expand_rtx (expand_encoding, operands);
5581 : }
5582 :
5583 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33026 */
5584 : rtx
5585 24 : gen_avx10_2_scalefbf16_v32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5586 : {
5587 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5588 24 : static const uint8_t expand_encoding[] = {
5589 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x1a, 0x72,
5590 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x82, 0x03, 0x01,
5591 : 0x03, 0x01, 0x04
5592 : };
5593 24 : return expand_rtx (expand_encoding, operands);
5594 : }
5595 :
5596 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33043 */
5597 : rtx
5598 24 : gen_avx10_2_smaxbf16_v16bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5599 : {
5600 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5601 24 : static const uint8_t expand_encoding[] = {
5602 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6d, 0x53, 0x6d,
5603 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
5604 : };
5605 24 : return expand_rtx (expand_encoding, operands);
5606 : }
5607 :
5608 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33053 */
5609 : rtx
5610 13 : gen_avx10_2_mulbf16_v32bf (const rtx operand0, const rtx operand1, const rtx operand2)
5611 : {
5612 13 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5613 13 : static const uint8_t expand_encoding[] = {
5614 : 0x1f, 0x01, 0x00, 0x3e, 0x72, 0x01, 0x01, 0x01,
5615 : 0x02
5616 : };
5617 13 : return expand_rtx (expand_encoding, operands);
5618 : }
5619 :
5620 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33053 */
5621 : rtx
5622 24 : gen_avx10_2_mulbf16_v16bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5623 : {
5624 24 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5625 24 : static const uint8_t expand_encoding[] = {
5626 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6d, 0x3e, 0x6d,
5627 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04
5628 : };
5629 24 : return expand_rtx (expand_encoding, operands);
5630 : }
5631 :
5632 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33077 */
5633 : rtx
5634 0 : gen_avx10_2_fmaddbf16_v32bf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5635 : {
5636 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5637 0 : static const uint8_t expand_encoding[] = {
5638 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x72, 0x01, 0x01,
5639 : 0x01, 0x02, 0x01, 0x03
5640 : };
5641 0 : return expand_rtx (expand_encoding, operands);
5642 : }
5643 :
5644 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33109 */
5645 : rtx
5646 12 : gen_avx10_2_fmaddbf16_v16bf_mask3 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5647 : {
5648 12 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5649 12 : static const uint8_t expand_encoding[] = {
5650 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6d, 0x81, 0x19,
5651 : 0x6d, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
5652 : 0x03, 0x01, 0x04
5653 : };
5654 12 : return expand_rtx (expand_encoding, operands);
5655 : }
5656 :
5657 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33155 */
5658 : rtx
5659 23 : gen_avx10_2_fnmaddbf16_v8bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5660 : {
5661 23 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5662 23 : static const uint8_t expand_encoding[] = {
5663 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x81, 0x19,
5664 : 0x69, 0x3d, 0x69, 0x01, 0x01, 0x01, 0x02, 0x01,
5665 : 0x03, 0x01, 0x01, 0x01, 0x04
5666 : };
5667 23 : return expand_rtx (expand_encoding, operands);
5668 : }
5669 :
5670 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33204 */
5671 : rtx
5672 11 : gen_avx10_2_fmsubbf16_v8bf_maskz_1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5673 : {
5674 11 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5675 11 : static const uint8_t expand_encoding[] = {
5676 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x81, 0x19,
5677 : 0x69, 0x01, 0x01, 0x01, 0x02, 0x3d, 0x69, 0x01,
5678 : 0x03, 0x01, 0x04, 0x01, 0x05
5679 : };
5680 11 : return expand_rtx (expand_encoding, operands);
5681 : }
5682 :
5683 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33269 */
5684 : rtx
5685 0 : gen_avx10_2_fnmsubbf16_v8bf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5686 : {
5687 0 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5688 0 : static const uint8_t expand_encoding[] = {
5689 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x69, 0x3d, 0x69,
5690 : 0x01, 0x01, 0x01, 0x02, 0x3d, 0x69, 0x01, 0x03
5691 : };
5692 0 : return expand_rtx (expand_encoding, operands);
5693 : }
5694 :
5695 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33322 */
5696 : rtx
5697 36 : gen_avx10_2_rsqrtbf16_v32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5698 : {
5699 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5700 36 : static const uint8_t expand_encoding[] = {
5701 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x1a, 0x72,
5702 : 0x01, 0x01, 0x01, 0x38, 0x01, 0x02, 0x01, 0x03
5703 : };
5704 36 : return expand_rtx (expand_encoding, operands);
5705 : }
5706 :
5707 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33339 */
5708 : rtx
5709 1 : gen_avx10_2_rcpbf16_v32bf (const rtx operand0, const rtx operand1)
5710 : {
5711 1 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5712 1 : static const uint8_t expand_encoding[] = {
5713 : 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x01, 0x01, 0x01,
5714 : 0x37
5715 : };
5716 1 : return expand_rtx (expand_encoding, operands);
5717 : }
5718 :
5719 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33348 */
5720 : rtx
5721 0 : gen_avx10_2_getexpbf16_v16bf (const rtx operand0, const rtx operand1)
5722 : {
5723 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5724 0 : static const uint8_t expand_encoding[] = {
5725 : 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x01, 0x01, 0x01,
5726 : 0x81, 0x26
5727 : };
5728 0 : return expand_rtx (expand_encoding, operands);
5729 : }
5730 :
5731 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33367 */
5732 : rtx
5733 33 : gen_avx10_2_getmantbf16_v32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5734 : {
5735 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5736 33 : static const uint8_t expand_encoding[] = {
5737 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x72, 0x1a, 0x72,
5738 : 0x02, 0x01, 0x01, 0x01, 0x02, 0x82, 0x06, 0x01,
5739 : 0x03, 0x01, 0x04
5740 : };
5741 33 : return expand_rtx (expand_encoding, operands);
5742 : }
5743 :
5744 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33367 */
5745 : rtx
5746 0 : gen_avx10_2_getmantbf16_v8bf (const rtx operand0, const rtx operand1, const rtx operand2)
5747 : {
5748 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5749 0 : static const uint8_t expand_encoding[] = {
5750 : 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x02, 0x01, 0x01,
5751 : 0x01, 0x02, 0x82, 0x06
5752 : };
5753 0 : return expand_rtx (expand_encoding, operands);
5754 : }
5755 :
5756 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33387 */
5757 : rtx
5758 22 : gen_avx10_2_cmpbf16_v32bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5759 : {
5760 22 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5761 22 : static const uint8_t expand_encoding[] = {
5762 : 0x1f, 0x01, 0x00, 0x49, 0x11, 0x1a, 0x11, 0x03,
5763 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c, 0x01,
5764 : 0x04
5765 : };
5766 22 : return expand_rtx (expand_encoding, operands);
5767 : }
5768 :
5769 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33426 */
5770 : rtx
5771 0 : gen_avx10_2_cvttbf162iubsv32bf (const rtx operand0, const rtx operand1)
5772 : {
5773 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5774 0 : static const uint8_t expand_encoding[] = {
5775 : 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x01, 0x01, 0x01,
5776 : 0x82, 0x0f
5777 : };
5778 0 : return expand_rtx (expand_encoding, operands);
5779 : }
5780 :
5781 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33426 */
5782 : rtx
5783 36 : gen_avx10_2_cvttbf162iubsv16bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5784 : {
5785 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5786 36 : static const uint8_t expand_encoding[] = {
5787 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x1a, 0x55,
5788 : 0x01, 0x01, 0x01, 0x82, 0x0f, 0x01, 0x02, 0x01,
5789 : 0x03
5790 : };
5791 36 : return expand_rtx (expand_encoding, operands);
5792 : }
5793 :
5794 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33441 */
5795 : rtx
5796 36 : gen_avx10_2_cvtph2ibsv32hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5797 : {
5798 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5799 36 : static const uint8_t expand_encoding[] = {
5800 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x1a, 0x5a,
5801 : 0x01, 0x01, 0x01, 0x82, 0x0a, 0x01, 0x02, 0x01,
5802 : 0x03
5803 : };
5804 36 : return expand_rtx (expand_encoding, operands);
5805 : }
5806 :
5807 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33441 */
5808 : rtx
5809 36 : gen_avx10_2_cvtph2ibsv8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5810 : {
5811 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5812 36 : static const uint8_t expand_encoding[] = {
5813 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x1a, 0x50,
5814 : 0x01, 0x01, 0x01, 0x82, 0x0a, 0x01, 0x02, 0x01,
5815 : 0x03
5816 : };
5817 36 : return expand_rtx (expand_encoding, operands);
5818 : }
5819 :
5820 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33456 */
5821 : rtx
5822 0 : gen_avx10_2_cvttph2ibsv16hf (const rtx operand0, const rtx operand1)
5823 : {
5824 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5825 0 : static const uint8_t expand_encoding[] = {
5826 : 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x01, 0x01, 0x01,
5827 : 0x82, 0x10
5828 : };
5829 0 : return expand_rtx (expand_encoding, operands);
5830 : }
5831 :
5832 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33471 */
5833 : rtx
5834 0 : gen_avx10_2_cvtps2ibsv16sf (const rtx operand0, const rtx operand1)
5835 : {
5836 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5837 0 : static const uint8_t expand_encoding[] = {
5838 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x01, 0x01, 0x01,
5839 : 0x82, 0x0c
5840 : };
5841 0 : return expand_rtx (expand_encoding, operands);
5842 : }
5843 :
5844 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33471 */
5845 : rtx
5846 36 : gen_avx10_2_cvtps2ibsv8sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5847 : {
5848 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5849 36 : static const uint8_t expand_encoding[] = {
5850 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
5851 : 0x01, 0x01, 0x01, 0x82, 0x0c, 0x01, 0x02, 0x01,
5852 : 0x03
5853 : };
5854 36 : return expand_rtx (expand_encoding, operands);
5855 : }
5856 :
5857 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33486 */
5858 : rtx
5859 33 : gen_avx10_2_cvttps2ibsv16sf_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
5860 : {
5861 33 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
5862 33 : static const uint8_t expand_encoding[] = {
5863 : 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x02, 0x81, 0x09,
5864 : 0x5b, 0x1a, 0x5b, 0x01, 0x01, 0x01, 0x82, 0x12,
5865 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81, 0x33
5866 : };
5867 33 : return expand_rtx (expand_encoding, operands);
5868 : }
5869 :
5870 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33486 */
5871 : rtx
5872 36 : gen_avx10_2_cvttps2iubsv4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5873 : {
5874 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5875 36 : static const uint8_t expand_encoding[] = {
5876 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5877 : 0x01, 0x01, 0x01, 0x82, 0x13, 0x01, 0x02, 0x01,
5878 : 0x03
5879 : };
5880 36 : return expand_rtx (expand_encoding, operands);
5881 : }
5882 :
5883 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33510 */
5884 : rtx
5885 0 : gen_avx10_2_vcvttps2udqsv8sf (const rtx operand0, const rtx operand1)
5886 : {
5887 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5888 0 : static const uint8_t expand_encoding[] = {
5889 : 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x01, 0x01, 0x01,
5890 : 0x82, 0x15
5891 : };
5892 0 : return expand_rtx (expand_encoding, operands);
5893 : }
5894 :
5895 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33510 */
5896 : rtx
5897 36 : gen_avx10_2_vcvttpd2dqsv8df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5898 : {
5899 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5900 36 : static const uint8_t expand_encoding[] = {
5901 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a, 0x56,
5902 : 0x01, 0x01, 0x01, 0x82, 0x14, 0x01, 0x02, 0x01,
5903 : 0x03
5904 : };
5905 36 : return expand_rtx (expand_encoding, operands);
5906 : }
5907 :
5908 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33510 */
5909 : rtx
5910 36 : gen_avx10_2_vcvttpd2dqsv2df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
5911 : {
5912 36 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
5913 36 : static const uint8_t expand_encoding[] = {
5914 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
5915 : 0x01, 0x01, 0x01, 0x82, 0x14, 0x01, 0x02, 0x01,
5916 : 0x03
5917 : };
5918 36 : return expand_rtx (expand_encoding, operands);
5919 : }
5920 :
5921 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33521 */
5922 : rtx
5923 0 : gen_avx10_2_vcvttpd2qqsv4df (const rtx operand0, const rtx operand1)
5924 : {
5925 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5926 0 : static const uint8_t expand_encoding[] = {
5927 : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x01, 0x01, 0x01,
5928 : 0x82, 0x14
5929 : };
5930 0 : return expand_rtx (expand_encoding, operands);
5931 : }
5932 :
5933 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33532 */
5934 : rtx
5935 0 : gen_avx10_2_vcvttps2qqsv8di_round (const rtx operand0, const rtx operand1, const rtx operand2)
5936 : {
5937 0 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
5938 0 : static const uint8_t expand_encoding[] = {
5939 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x02, 0x1a, 0x5c,
5940 : 0x01, 0x01, 0x01, 0x82, 0x14, 0x01, 0x02, 0x81,
5941 : 0x33
5942 : };
5943 0 : return expand_rtx (expand_encoding, operands);
5944 : }
5945 :
5946 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33532 */
5947 : rtx
5948 0 : gen_avx10_2_vcvttps2uqqsv4di (const rtx operand0, const rtx operand1)
5949 : {
5950 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5951 0 : static const uint8_t expand_encoding[] = {
5952 : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x01, 0x01, 0x01,
5953 : 0x82, 0x15
5954 : };
5955 0 : return expand_rtx (expand_encoding, operands);
5956 : }
5957 :
5958 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33543 */
5959 : rtx
5960 0 : gen_avx10_2_vcvttsd2usissi (const rtx operand0, const rtx operand1)
5961 : {
5962 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5963 0 : static const uint8_t expand_encoding[] = {
5964 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x81, 0x0a,
5965 : 0x2e, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
5966 : 0x82, 0x15
5967 : };
5968 0 : return expand_rtx (expand_encoding, operands);
5969 : }
5970 :
5971 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33556 */
5972 : rtx
5973 0 : gen_avx10_2_vcvttss2sisdi (const rtx operand0, const rtx operand1)
5974 : {
5975 0 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
5976 0 : static const uint8_t expand_encoding[] = {
5977 : 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x01, 0x81, 0x0a,
5978 : 0x2d, 0x01, 0x01, 0x17, 0x00, 0x01, 0x27, 0x00,
5979 : 0x82, 0x14
5980 : };
5981 0 : return expand_rtx (expand_encoding, operands);
5982 : }
5983 :
5984 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33569 */
5985 : rtx
5986 48 : gen_avx10_2_minmaxbf16_v8bf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
5987 : {
5988 48 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
5989 48 : static const uint8_t expand_encoding[] = {
5990 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x69, 0x1a, 0x69,
5991 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x82,
5992 : 0x16, 0x01, 0x04, 0x01, 0x05
5993 : };
5994 48 : return expand_rtx (expand_encoding, operands);
5995 : }
5996 :
5997 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33581 */
5998 : rtx
5999 48 : gen_avx10_2_minmaxpv8hf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
6000 : {
6001 48 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
6002 48 : static const uint8_t expand_encoding[] = {
6003 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x1a, 0x6a,
6004 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x82,
6005 : 0x17, 0x01, 0x04, 0x01, 0x05
6006 : };
6007 48 : return expand_rtx (expand_encoding, operands);
6008 : }
6009 :
6010 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33581 */
6011 : rtx
6012 0 : gen_avx10_2_minmaxpv4sf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
6013 : {
6014 0 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
6015 0 : static const uint8_t expand_encoding[] = {
6016 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x1a, 0x6b,
6017 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x82,
6018 : 0x17, 0x01, 0x04, 0x81, 0x33
6019 : };
6020 0 : return expand_rtx (expand_encoding, operands);
6021 : }
6022 :
6023 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33581 */
6024 : rtx
6025 48 : gen_avx10_2_minmaxpv4df_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
6026 : {
6027 48 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
6028 48 : static const uint8_t expand_encoding[] = {
6029 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x1a, 0x70,
6030 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x82,
6031 : 0x17, 0x01, 0x04, 0x01, 0x05
6032 : };
6033 48 : return expand_rtx (expand_encoding, operands);
6034 : }
6035 :
6036 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33593 */
6037 : rtx
6038 0 : gen_avx10_2_minmaxsv4sf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
6039 : {
6040 0 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
6041 0 : static const uint8_t expand_encoding[] = {
6042 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x81, 0x09,
6043 : 0x6b, 0x1a, 0x6b, 0x03, 0x01, 0x01, 0x01, 0x02,
6044 : 0x01, 0x03, 0x82, 0x17, 0x01, 0x04, 0x01, 0x05,
6045 : 0x01, 0x01, 0x27, 0x01
6046 : };
6047 0 : return expand_rtx (expand_encoding, operands);
6048 : }
6049 :
6050 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33608 */
6051 : rtx
6052 33 : gen_avx10_2_vmovrsbv32qi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6053 : {
6054 33 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6055 33 : static const uint8_t expand_encoding[] = {
6056 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x1a, 0x54,
6057 : 0x01, 0x01, 0x01, 0x82, 0x1b, 0x01, 0x02, 0x01,
6058 : 0x03
6059 : };
6060 33 : return expand_rtx (expand_encoding, operands);
6061 : }
6062 :
6063 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33608 */
6064 : rtx
6065 33 : gen_avx10_2_vmovrsdv16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6066 : {
6067 33 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6068 33 : static const uint8_t expand_encoding[] = {
6069 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x1a, 0x5b,
6070 : 0x01, 0x01, 0x01, 0x82, 0x1b, 0x01, 0x02, 0x01,
6071 : 0x03
6072 : };
6073 33 : return expand_rtx (expand_encoding, operands);
6074 : }
6075 :
6076 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33623 */
6077 : rtx
6078 11 : gen_avx512bmm_vbmacor16x16x16_v32hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6079 : {
6080 11 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6081 11 : static const uint8_t expand_encoding[] = {
6082 : 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x03, 0x01, 0x01,
6083 : 0x01, 0x02, 0x01, 0x03, 0x82, 0x18
6084 : };
6085 11 : return expand_rtx (expand_encoding, operands);
6086 : }
6087 :
6088 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:95 */
6089 : rtx
6090 14 : gen_mfence_sse2 (const rtx operand0)
6091 : {
6092 14 : rtx operands[1] ATTRIBUTE_UNUSED = { operand0 };
6093 14 : static const uint8_t expand_encoding[] = {
6094 : 0x1f, 0x01, 0x00, 0x1a, 0x01, 0x01, 0x01, 0x00,
6095 : 0x82, 0x1e
6096 : };
6097 14 : return expand_rtx (expand_encoding, operands);
6098 : }
6099 :
6100 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:365 */
6101 : rtx
6102 920 : gen_loaddi_via_sse (const rtx operand0, const rtx operand1)
6103 : {
6104 920 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6105 920 : static const uint8_t expand_encoding[] = {
6106 : 0x1f, 0x01, 0x00, 0x1a, 0x2e, 0x01, 0x01, 0x01,
6107 : 0x82, 0x21
6108 : };
6109 920 : return expand_rtx (expand_encoding, operands);
6110 : }
6111 :
6112 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:693 */
6113 : rtx
6114 1158 : gen_atomic_fetch_addhi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6115 : {
6116 1158 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6117 1158 : static const uint8_t expand_encoding[] = {
6118 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x1b, 0x10,
6119 : 0x02, 0x01, 0x01, 0x01, 0x03, 0x6e, 0x1f, 0x01,
6120 : 0x01, 0x3b, 0x10, 0x01, 0x01, 0x01, 0x02, 0x05,
6121 : 0x02, 0x11
6122 : };
6123 1158 : return expand_rtx (expand_encoding, operands);
6124 : }
6125 :
6126 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:800 */
6127 : rtx
6128 3325 : gen_atomic_exchangedi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6129 : {
6130 3325 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6131 3325 : static const uint8_t expand_encoding[] = {
6132 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1b, 0x12,
6133 : 0x02, 0x01, 0x01, 0x01, 0x03, 0x6e, 0x1f, 0x01,
6134 : 0x01, 0x01, 0x02
6135 : };
6136 3325 : return expand_rtx (expand_encoding, operands);
6137 : }
6138 :
6139 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:851 */
6140 : rtx
6141 859 : gen_atomic_subdi (const rtx operand0, const rtx operand1, const rtx operand2)
6142 : {
6143 859 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6144 859 : static const uint8_t expand_encoding[] = {
6145 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1b, 0x12,
6146 : 0x02, 0x3c, 0x12, 0x01, 0x00, 0x01, 0x01, 0x01,
6147 : 0x02, 0x6f, 0x05, 0x02, 0x11
6148 : };
6149 859 : return expand_rtx (expand_encoding, operands);
6150 : }
6151 :
6152 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:878 */
6153 : rtx
6154 134 : gen_atomic_anddi (const rtx operand0, const rtx operand1, const rtx operand2)
6155 : {
6156 134 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6157 134 : static const uint8_t expand_encoding[] = {
6158 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1b, 0x12,
6159 : 0x02, 0x49, 0x12, 0x01, 0x00, 0x01, 0x01, 0x01,
6160 : 0x02, 0x6f, 0x05, 0x02, 0x11
6161 : };
6162 134 : return expand_rtx (expand_encoding, operands);
6163 : }
6164 :
6165 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:985 */
6166 : rtx
6167 85 : gen_atomic_bit_test_and_resetsi_1 (const rtx operand0, const rtx operand1, const rtx operand2)
6168 : {
6169 85 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6170 85 : static const uint8_t expand_encoding[] = {
6171 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a,
6172 : 0x08, 0x1b, 0x11, 0x02, 0x01, 0x00, 0x01, 0x02,
6173 : 0x6e, 0x27, 0x00, 0x1f, 0x81, 0x06, 0x11, 0x01,
6174 : 0x00, 0x27, 0x01, 0x01, 0x01, 0x27, 0x00
6175 : };
6176 85 : return expand_rtx (expand_encoding, operands);
6177 : }
6178 :
6179 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1046 */
6180 : rtx
6181 104 : gen_atomic_sub_fetch_cmp_0hi_1 (const rtx operand0, const rtx operand1, const rtx operand2)
6182 : {
6183 104 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6184 104 : static const uint8_t expand_encoding[] = {
6185 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x04, 0x11, 0x3a,
6186 : 0x04, 0x3c, 0x10, 0x1b, 0x10, 0x02, 0x01, 0x00,
6187 : 0x01, 0x02, 0x6e, 0x01, 0x01, 0x27, 0x00, 0x1f,
6188 : 0x01, 0x00, 0x3c, 0x10, 0x01, 0x00, 0x01, 0x01
6189 : };
6190 104 : return expand_rtx (expand_encoding, operands);
6191 : }
6192 :
6193 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1089 */
6194 : rtx
6195 28 : gen_atomic_or_fetch_cmp_0si_1 (const rtx operand0, const rtx operand1, const rtx operand2)
6196 : {
6197 28 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
6198 28 : static const uint8_t expand_encoding[] = {
6199 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x05, 0x11, 0x3a,
6200 : 0x05, 0x4a, 0x11, 0x1b, 0x11, 0x02, 0x01, 0x00,
6201 : 0x01, 0x02, 0x6e, 0x01, 0x01, 0x27, 0x00, 0x1f,
6202 : 0x01, 0x00, 0x4a, 0x11, 0x01, 0x00, 0x01, 0x01
6203 : };
6204 28 : return expand_rtx (expand_encoding, operands);
6205 : }
6206 :
6207 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1442 */
6208 : rtx
6209 2478703 : gen_cbranchdi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6210 : {
6211 2478703 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6212 2478703 : start_sequence ();
6213 2478703 : {
6214 : #define FAIL return (end_sequence (), nullptr)
6215 : #define DONE return end_sequence ()
6216 : #line 1452 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6217 : {
6218 : if (MEM_P (operands[1]) && MEM_P (operands[2]))
6219 : operands[1] = force_reg (DImode, operands[1]);
6220 : ix86_expand_branch (GET_CODE (operands[0]),
6221 : operands[1], operands[2], operands[3]);
6222 : DONE;
6223 : }
6224 : #undef DONE
6225 : #undef FAIL
6226 : }
6227 : static const uint8_t expand_encoding[] = {
6228 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
6229 : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x03,
6230 : 0x00, 0x00, 0x30, 0x02, 0x11, 0x27, 0x00, 0x37,
6231 : 0x00, 0x01, 0x03, 0x2f
6232 : };
6233 : return complete_seq (expand_encoding, operands);
6234 : }
6235 :
6236 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1648 */
6237 : rtx
6238 : gen_cmpqi_ext_3 (const rtx operand0, const rtx operand1)
6239 : {
6240 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6241 : static const uint8_t expand_encoding[] = {
6242 : 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x32, 0x0f,
6243 : 0x81, 0x06, 0x10, 0x01, 0x00, 0x27, 0x08, 0x27,
6244 : 0x08, 0x00, 0x01, 0x01
6245 : };
6246 : return expand_rtx (expand_encoding, operands);
6247 : }
6248 :
6249 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1800 */
6250 : rtx
6251 : gen_cbranchsf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6252 : {
6253 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6254 : start_sequence ();
6255 : {
6256 : #define FAIL return (end_sequence (), nullptr)
6257 : #define DONE return end_sequence ()
6258 : #line 1811 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6259 : {
6260 : ix86_expand_branch (GET_CODE (operands[0]),
6261 : operands[1], operands[2], operands[3]);
6262 : DONE;
6263 : }
6264 : #undef DONE
6265 : #undef FAIL
6266 : }
6267 : static const uint8_t expand_encoding[] = {
6268 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
6269 : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x03,
6270 : 0x00, 0x00, 0x30, 0x02, 0x11, 0x27, 0x00, 0x37,
6271 : 0x00, 0x01, 0x03, 0x2f
6272 : };
6273 : return complete_seq (expand_encoding, operands);
6274 : }
6275 :
6276 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1918 */
6277 : rtx
6278 : gen_cstoreccgc4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6279 : {
6280 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6281 : start_sequence ();
6282 : {
6283 : #define FAIL return (end_sequence (), nullptr)
6284 : #define DONE return end_sequence ()
6285 : #line 1924 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6286 : {
6287 : ix86_expand_setcc (operands[0], GET_CODE (operands[1]),
6288 : operands[2], operands[3]);
6289 : DONE;
6290 : }
6291 : #undef DONE
6292 : #undef FAIL
6293 : }
6294 : static const uint8_t expand_encoding[] = {
6295 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x00, 0x01, 0x01,
6296 : 0x02, 0x01, 0x03
6297 : };
6298 : return complete_seq (expand_encoding, operands);
6299 : }
6300 :
6301 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:1918 */
6302 : rtx
6303 : gen_cstoreccp4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6304 : {
6305 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6306 : start_sequence ();
6307 : {
6308 : #define FAIL return (end_sequence (), nullptr)
6309 : #define DONE return end_sequence ()
6310 : #line 1924 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6311 : {
6312 : ix86_expand_setcc (operands[0], GET_CODE (operands[1]),
6313 : operands[2], operands[3]);
6314 : DONE;
6315 : }
6316 : #undef DONE
6317 : #undef FAIL
6318 : }
6319 : static const uint8_t expand_encoding[] = {
6320 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x00, 0x01, 0x01,
6321 : 0x02, 0x01, 0x03
6322 : };
6323 : return complete_seq (expand_encoding, operands);
6324 : }
6325 :
6326 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2228 */
6327 : extern rtx_insn *gen_peephole2_3 (rtx_insn *, rtx *);
6328 : rtx_insn *
6329 : gen_peephole2_3 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6330 : {
6331 : HARD_REG_SET _regs_allocated;
6332 : CLEAR_HARD_REG_SET (_regs_allocated);
6333 : if ((operands[2] = peep2_find_free_register (0, 0, "r", DImode, &_regs_allocated)) == NULL_RTX)
6334 : return NULL;
6335 : if (dump_file)
6336 : fprintf (dump_file, "Splitting with gen_peephole2_3 (i386.md:2228)\n");
6337 : start_sequence ();
6338 : static const uint8_t expand_encoding[] = {
6339 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x1f, 0x01,
6340 : 0x00, 0x01, 0x02
6341 : };
6342 : return complete_seq (expand_encoding, operands);
6343 : }
6344 :
6345 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2275 */
6346 : extern rtx_insn *gen_split_12 (rtx_insn *, rtx *);
6347 : rtx_insn *
6348 : gen_split_12 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6349 : {
6350 : if (dump_file)
6351 : fprintf (dump_file, "Splitting with gen_split_12 (i386.md:2275)\n");
6352 : start_sequence ();
6353 : #define FAIL return (end_sequence (), nullptr)
6354 : #define DONE return end_sequence ()
6355 : #line 2281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6356 : {
6357 : operands[2] = GEN_INT (-PUSH_ROUNDING (GET_MODE_SIZE (DImode)));
6358 : /* Preserve memory attributes. */
6359 : operands[0] = replace_equiv_address (operands[0], stack_pointer_rtx);
6360 : }
6361 : #undef DONE
6362 : #undef FAIL
6363 : static const uint8_t expand_encoding[] = {
6364 : 0x02, 0x1f, 0x30, 0x12, 0x07, 0x3b, 0x12, 0x30,
6365 : 0x12, 0x07, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x01,
6366 : 0x01
6367 : };
6368 : return complete_seq (expand_encoding, operands);
6369 : }
6370 :
6371 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2441 */
6372 : extern rtx_insn *gen_split_14 (rtx_insn *, rtx *);
6373 : rtx_insn *
6374 : gen_split_14 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6375 : {
6376 : if (dump_file)
6377 : fprintf (dump_file, "Splitting with gen_split_14 (i386.md:2441)\n");
6378 : start_sequence ();
6379 : #define FAIL return (end_sequence (), nullptr)
6380 : #define DONE return end_sequence ()
6381 : #line 2449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6382 :
6383 : #undef DONE
6384 : #undef FAIL
6385 : static const uint8_t expand_encoding[] = {
6386 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
6387 : };
6388 : return complete_seq (expand_encoding, operands);
6389 : }
6390 :
6391 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:2798 */
6392 : extern rtx_insn *gen_split_24 (rtx_insn *, rtx *);
6393 : rtx_insn *
6394 : gen_split_24 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
6395 : {
6396 : if (dump_file)
6397 : fprintf (dump_file, "Splitting with gen_split_24 (i386.md:2798)\n");
6398 : start_sequence ();
6399 : #define FAIL return (end_sequence (), nullptr)
6400 : #define DONE return end_sequence ()
6401 : #line 2803 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6402 : ix86_split_long_move (operands); DONE;
6403 : #undef DONE
6404 : #undef FAIL
6405 : static const uint8_t expand_encoding[] = {
6406 : 0x01, 0x27, 0x00
6407 : };
6408 : return complete_seq (expand_encoding, operands);
6409 : }
6410 :
6411 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3002 */
6412 : extern rtx_insn *gen_peephole2_9 (rtx_insn *, rtx *);
6413 : rtx_insn *
6414 : gen_peephole2_9 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6415 : {
6416 : if (dump_file)
6417 : fprintf (dump_file, "Splitting with gen_peephole2_9 (i386.md:3002)\n");
6418 : start_sequence ();
6419 : static const uint8_t expand_encoding[] = {
6420 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x01,
6421 : 0x01, 0x05, 0x02, 0x11
6422 : };
6423 : return complete_seq (expand_encoding, operands);
6424 : }
6425 :
6426 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3420 */
6427 : extern rtx_insn *gen_peephole2_18 (rtx_insn *, rtx *);
6428 : rtx_insn *
6429 : gen_peephole2_18 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6430 : {
6431 : if (dump_file)
6432 : fprintf (dump_file, "Splitting with gen_peephole2_18 (i386.md:3420)\n");
6433 : start_sequence ();
6434 : static const uint8_t expand_encoding[] = {
6435 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x01, 0x01,
6436 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01
6437 : };
6438 : return complete_seq (expand_encoding, operands);
6439 : }
6440 :
6441 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3456 */
6442 : extern rtx_insn *gen_peephole2_28 (rtx_insn *, rtx *);
6443 : rtx_insn *
6444 : gen_peephole2_28 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6445 : {
6446 : if (dump_file)
6447 : fprintf (dump_file, "Splitting with gen_peephole2_28 (i386.md:3456)\n");
6448 : start_sequence ();
6449 : static const uint8_t expand_encoding[] = {
6450 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x01,
6451 : 0x01, 0x1f, 0x01, 0x01, 0x01, 0x00
6452 : };
6453 : return complete_seq (expand_encoding, operands);
6454 : }
6455 :
6456 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3609 */
6457 : rtx
6458 : gen_insvhi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
6459 : {
6460 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
6461 : start_sequence ();
6462 : {
6463 : #define FAIL return (end_sequence (), nullptr)
6464 : #define DONE return end_sequence ()
6465 : #line 3615 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6466 : {
6467 : rtx dst;
6468 :
6469 : if (ix86_expand_pinsr (operands))
6470 : DONE;
6471 :
6472 : /* Handle insertions to %ah et al. */
6473 : if (INTVAL (operands[1]) != 8 || INTVAL (operands[2]) != 8)
6474 : FAIL;
6475 :
6476 : unsigned int regno = reg_or_subregno (operands[0]);
6477 :
6478 : /* Be careful to expand only with registers having upper parts. */
6479 : if (regno <= LAST_VIRTUAL_REGISTER && !QI_REGNO_P (regno))
6480 : dst = copy_to_reg (operands[0]);
6481 : else
6482 : dst = operands[0];
6483 :
6484 : emit_insn (gen_insv_1 (HImode, dst, operands[3]));
6485 :
6486 : /* Fix up the destination if needed. */
6487 : if (dst != operands[0])
6488 : emit_move_insn (operands[0], dst);
6489 :
6490 : DONE;
6491 : }
6492 : #undef DONE
6493 : #undef FAIL
6494 : }
6495 : static const uint8_t expand_encoding[] = {
6496 : 0x01, 0x1f, 0x81, 0x06, 0x10, 0x01, 0x00, 0x01,
6497 : 0x01, 0x01, 0x02, 0x01, 0x03
6498 : };
6499 : return complete_seq (expand_encoding, operands);
6500 : }
6501 :
6502 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3686 */
6503 : extern rtx_insn *gen_peephole2_40 (rtx_insn *, rtx *);
6504 : rtx_insn *
6505 : gen_peephole2_40 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6506 : {
6507 : if (dump_file)
6508 : fprintf (dump_file, "Splitting with gen_peephole2_40 (i386.md:3686)\n");
6509 : start_sequence ();
6510 : #define FAIL return (end_sequence (), nullptr)
6511 : #define DONE return end_sequence ()
6512 : #line 3696 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6513 : {
6514 : HOST_WIDE_INT tmp = INTVAL (operands[1]) & ~HOST_WIDE_INT_C (0xff00);
6515 : tmp |= (INTVAL (operands[3]) & 0xff) << 8;
6516 : operands[4] = gen_int_mode (tmp, DImode);
6517 : }
6518 : #undef DONE
6519 : #undef FAIL
6520 : static const uint8_t expand_encoding[] = {
6521 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x04
6522 : };
6523 : return complete_seq (expand_encoding, operands);
6524 : }
6525 :
6526 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:3811 */
6527 : extern rtx_insn *gen_split_37 (rtx_insn *, rtx *);
6528 : rtx_insn *
6529 : gen_split_37 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6530 : {
6531 : if (dump_file)
6532 : fprintf (dump_file, "Splitting with gen_split_37 (i386.md:3811)\n");
6533 : start_sequence ();
6534 : #define FAIL return (end_sequence (), nullptr)
6535 : #define DONE return end_sequence ()
6536 : #line 3817 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6537 : {
6538 : /* Preserve memory attributes. */
6539 : operands[0] = replace_equiv_address (operands[0], stack_pointer_rtx);
6540 : }
6541 : #undef DONE
6542 : #undef FAIL
6543 : static const uint8_t expand_encoding[] = {
6544 : 0x02, 0x1f, 0x30, 0x11, 0x07, 0x3b, 0x11, 0x30,
6545 : 0x11, 0x07, 0x27, 0x81, 0xff, 0xff, 0xff, 0xff,
6546 : 0xff, 0xff, 0xff, 0xff, 0x70, 0x1f, 0x01, 0x00,
6547 : 0x01, 0x01
6548 : };
6549 : return complete_seq (expand_encoding, operands);
6550 : }
6551 :
6552 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:4011 */
6553 : extern rtx_insn *gen_split_47 (rtx_insn *, rtx *);
6554 : rtx_insn *
6555 : gen_split_47 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6556 : {
6557 : if (dump_file)
6558 : fprintf (dump_file, "Splitting with gen_split_47 (i386.md:4011)\n");
6559 : start_sequence ();
6560 : #define FAIL return (end_sequence (), nullptr)
6561 : #define DONE return end_sequence ()
6562 : #line 4017 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6563 : {
6564 : rtx op = XEXP (operands[0], 0);
6565 : if (GET_CODE (op) == PRE_DEC)
6566 : {
6567 : gcc_assert (!TARGET_64BIT);
6568 : op = GEN_INT (-4);
6569 : }
6570 : else
6571 : {
6572 : op = XEXP (XEXP (op, 1), 1);
6573 : gcc_assert (CONST_INT_P (op));
6574 : }
6575 : operands[2] = op;
6576 : /* Preserve memory attributes. */
6577 : operands[0] = replace_equiv_address (operands[0], stack_pointer_rtx);
6578 : }
6579 : #undef DONE
6580 : #undef FAIL
6581 : static const uint8_t expand_encoding[] = {
6582 : 0x02, 0x1f, 0x30, 0x12, 0x07, 0x3b, 0x12, 0x30,
6583 : 0x12, 0x07, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x01,
6584 : 0x01
6585 : };
6586 : return complete_seq (expand_encoding, operands);
6587 : }
6588 :
6589 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:4655 */
6590 : extern rtx_insn *gen_split_55 (rtx_insn *, rtx *);
6591 : rtx_insn *
6592 : gen_split_55 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6593 : {
6594 : if (dump_file)
6595 : fprintf (dump_file, "Splitting with gen_split_55 (i386.md:4655)\n");
6596 : start_sequence ();
6597 : #define FAIL return (end_sequence (), nullptr)
6598 : #define DONE return end_sequence ()
6599 : #line 4664 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6600 : operands[2] = find_constant_src (curr_insn);
6601 : #undef DONE
6602 : #undef FAIL
6603 : static const uint8_t expand_encoding[] = {
6604 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x02
6605 : };
6606 : return complete_seq (expand_encoding, operands);
6607 : }
6608 :
6609 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:4882 */
6610 : extern rtx_insn *gen_split_63 (rtx_insn *, rtx *);
6611 : rtx_insn *
6612 : gen_split_63 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6613 : {
6614 : if (dump_file)
6615 : fprintf (dump_file, "Splitting with gen_split_63 (i386.md:4882)\n");
6616 : start_sequence ();
6617 : #define FAIL return (end_sequence (), nullptr)
6618 : #define DONE return end_sequence ()
6619 : #line 4892 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6620 : {
6621 : if (!REG_P (operands[1])
6622 : || REGNO (operands[0]) != REGNO (operands[1]))
6623 : {
6624 : ix86_expand_clear (operands[0]);
6625 :
6626 : gcc_assert (!TARGET_PARTIAL_REG_STALL);
6627 : emit_insn (gen_rtx_SET
6628 : (gen_rtx_STRICT_LOW_PART
6629 : (VOIDmode, gen_lowpart (QImode, operands[0])),
6630 : operands[1]));
6631 : DONE;
6632 : }
6633 :
6634 : operands[2] = GEN_INT (GET_MODE_MASK (QImode));
6635 : }
6636 : #undef DONE
6637 : #undef FAIL
6638 : static const uint8_t expand_encoding[] = {
6639 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49,
6640 : 0x11, 0x01, 0x00, 0x01, 0x02, 0x05, 0x02, 0x11
6641 : };
6642 : return complete_seq (expand_encoding, operands);
6643 : }
6644 :
6645 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5046 */
6646 : extern rtx_insn *gen_split_67 (rtx_insn *, rtx *);
6647 : rtx_insn *
6648 : gen_split_67 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
6649 : {
6650 : if (dump_file)
6651 : fprintf (dump_file, "Splitting with gen_split_67 (i386.md:5046)\n");
6652 : start_sequence ();
6653 : #define FAIL return (end_sequence (), nullptr)
6654 : #define DONE return end_sequence ()
6655 : #line 5053 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6656 : {
6657 : rtx bits = GEN_INT (8 * BITS_PER_UNIT - 1);
6658 :
6659 : split_double_mode (TImode, &operands[0], 1, &operands[3], &operands[4]);
6660 :
6661 : emit_move_insn (operands[3], operands[1]);
6662 :
6663 : /* Generate a cltd if possible and doing so it profitable. */
6664 : if ((optimize_function_for_size_p (cfun) || TARGET_USE_CLTD)
6665 : && REGNO (operands[1]) == AX_REG
6666 : && REGNO (operands[2]) == DX_REG)
6667 : {
6668 : emit_insn (gen_ashrdi3_cvt (operands[2], operands[1], bits));
6669 : }
6670 : else
6671 : {
6672 : emit_move_insn (operands[2], operands[1]);
6673 : emit_insn (gen_ashrdi3_cvt (operands[2], operands[2], bits));
6674 : }
6675 : emit_move_insn (operands[4], operands[2]);
6676 : DONE;
6677 : }
6678 : #undef DONE
6679 : #undef FAIL
6680 : static const uint8_t expand_encoding[] = {
6681 : 0x01, 0x27, 0x00
6682 : };
6683 : return complete_seq (expand_encoding, operands);
6684 : }
6685 :
6686 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5448 */
6687 : extern rtx_insn *gen_split_77 (rtx_insn *, rtx *);
6688 : rtx_insn *
6689 : gen_split_77 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6690 : {
6691 : if (dump_file)
6692 : fprintf (dump_file, "Splitting with gen_split_77 (i386.md:5448)\n");
6693 : start_sequence ();
6694 : #define FAIL return (end_sequence (), nullptr)
6695 : #define DONE return end_sequence ()
6696 : #line 5467 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6697 : {
6698 : operands[0] = lowpart_subreg (V2DFmode, operands[0], DFmode);
6699 : emit_move_insn (operands[0], CONST0_RTX (V2DFmode));
6700 : }
6701 : #undef DONE
6702 : #undef FAIL
6703 : static const uint8_t expand_encoding[] = {
6704 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81,
6705 : 0x0c, 0x6c, 0x71, 0x2e, 0x01, 0x01, 0x01, 0x00,
6706 : 0x27, 0x01
6707 : };
6708 : return complete_seq (expand_encoding, operands);
6709 : }
6710 :
6711 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5739 */
6712 : rtx
6713 : gen_truncdfhf2 (const rtx operand0, const rtx operand1)
6714 : {
6715 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6716 : static const uint8_t expand_encoding[] = {
6717 : 0x1f, 0x01, 0x00, 0x72, 0x2b, 0x01, 0x01
6718 : };
6719 : return expand_rtx (expand_encoding, operands);
6720 : }
6721 :
6722 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5793 */
6723 : rtx
6724 : gen_fix_truncsfdi2 (const rtx operand0, const rtx operand1)
6725 : {
6726 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
6727 : start_sequence ();
6728 : {
6729 : #define FAIL return (end_sequence (), nullptr)
6730 : #define DONE return end_sequence ()
6731 : #line 5798 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6732 : {
6733 : if (TARGET_FISTTP
6734 : && !(TARGET_64BIT && SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH))
6735 : {
6736 : emit_insn (gen_fix_truncdi_i387_fisttp (operands[0], operands[1]));
6737 : DONE;
6738 : }
6739 : if (TARGET_64BIT && SSE_FLOAT_MODE_P (SFmode))
6740 : {
6741 : rtx out = REG_P (operands[0]) ? operands[0] : gen_reg_rtx (DImode);
6742 : emit_insn (gen_fix_truncsfdi_sse (out, operands[1]));
6743 : if (out != operands[0])
6744 : emit_move_insn (operands[0], out);
6745 : DONE;
6746 : }
6747 : }
6748 : #undef DONE
6749 : #undef FAIL
6750 : }
6751 : static const uint8_t expand_encoding[] = {
6752 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x74,
6753 : 0x12, 0x01, 0x01, 0x05, 0x02, 0x11
6754 : };
6755 : return complete_seq (expand_encoding, operands);
6756 : }
6757 :
6758 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:5975 */
6759 : rtx
6760 : gen_fixuns_trunchfhi2 (const rtx operand0, const rtx operand1)
6761 : {
6762 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
6763 : start_sequence ();
6764 : {
6765 : #define FAIL return (end_sequence (), nullptr)
6766 : #define DONE return end_sequence ()
6767 : #line 5981 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6768 : operands[2] = gen_reg_rtx (SImode);
6769 : #undef DONE
6770 : #undef FAIL
6771 : }
6772 : static const uint8_t expand_encoding[] = {
6773 : 0x02, 0x1f, 0x01, 0x02, 0x74, 0x11, 0x01, 0x01,
6774 : 0x1f, 0x01, 0x00, 0x32, 0x10, 0x01, 0x02, 0x00
6775 : };
6776 : return complete_seq (expand_encoding, operands);
6777 : }
6778 :
6779 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6039 */
6780 : extern rtx_insn *gen_split_82 (rtx_insn *, rtx *);
6781 : rtx_insn *
6782 : gen_split_82 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
6783 : {
6784 : if (dump_file)
6785 : fprintf (dump_file, "Splitting with gen_split_82 (i386.md:6039)\n");
6786 : start_sequence ();
6787 : #define FAIL return (end_sequence (), nullptr)
6788 : #define DONE return end_sequence ()
6789 : #line 6051 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6790 : {
6791 : ix86_optimize_mode_switching[I387_TRUNC] = 1;
6792 :
6793 : operands[2] = assign_386_stack_local (HImode, SLOT_CW_STORED);
6794 : operands[3] = assign_386_stack_local (HImode, SLOT_CW_TRUNC);
6795 :
6796 : emit_insn (gen_fix_trunchi_i387 (operands[0], operands[1],
6797 : operands[2], operands[3]));
6798 : DONE;
6799 : }
6800 : #undef DONE
6801 : #undef FAIL
6802 : static const uint8_t expand_encoding[] = {
6803 : 0x01, 0x27, 0x00
6804 : };
6805 : return complete_seq (expand_encoding, operands);
6806 : }
6807 :
6808 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6253 */
6809 : extern rtx_insn *gen_split_92 (rtx_insn *, rtx *);
6810 : rtx_insn *
6811 : gen_split_92 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6812 : {
6813 : if (dump_file)
6814 : fprintf (dump_file, "Splitting with gen_split_92 (i386.md:6253)\n");
6815 : start_sequence ();
6816 : #define FAIL return (end_sequence (), nullptr)
6817 : #define DONE return end_sequence ()
6818 : #line 6267 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6819 : {
6820 : /* The DImode arrived in a pair of integral registers (e.g. %edx:%eax).
6821 : Assemble the 64-bit DImode value in an xmm register. */
6822 : emit_insn (gen_sse2_loadld (operands[3], CONST0_RTX (V4SImode),
6823 : gen_lowpart (SImode, operands[1])));
6824 : if (TARGET_SSE4_1)
6825 : emit_insn (gen_sse4_1_pinsrd (operands[3], operands[3],
6826 : gen_highpart (SImode, operands[1]),
6827 : GEN_INT (2)));
6828 : else
6829 : {
6830 : emit_insn (gen_sse2_loadld (operands[4], CONST0_RTX (V4SImode),
6831 : gen_highpart (SImode, operands[1])));
6832 : emit_insn (gen_vec_interleave_lowv4si (operands[3], operands[3],
6833 : operands[4]));
6834 : }
6835 : operands[3] = gen_lowpart (DImode, operands[3]);
6836 : }
6837 : #undef DONE
6838 : #undef FAIL
6839 : static const uint8_t expand_encoding[] = {
6840 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x03, 0x1f, 0x01,
6841 : 0x00, 0x73, 0x2f, 0x01, 0x02
6842 : };
6843 : return complete_seq (expand_encoding, operands);
6844 : }
6845 :
6846 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6443 */
6847 : extern rtx_insn *gen_peephole2_60 (rtx_insn *, rtx *);
6848 : rtx_insn *
6849 : gen_peephole2_60 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
6850 : {
6851 : if (dump_file)
6852 : fprintf (dump_file, "Splitting with gen_peephole2_60 (i386.md:6443)\n");
6853 : start_sequence ();
6854 : #define FAIL return (end_sequence (), nullptr)
6855 : #define DONE return end_sequence ()
6856 : #line 6450 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6857 : {
6858 : machine_mode mode = SImode;
6859 :
6860 : /* Emit all operations in SImode for zero-extended addresses. */
6861 : if (SImode_address_operand (operands[1], VOIDmode))
6862 : mode = SImode;
6863 :
6864 : ix86_split_lea_for_addr (peep2_next_insn (0), operands, mode);
6865 :
6866 : /* Zero-extend return register to DImode for zero-extended addresses. */
6867 : if (mode != SImode)
6868 : emit_insn (gen_zero_extendsidi2 (operands[0],
6869 : gen_lowpart (mode, operands[0])));
6870 :
6871 : DONE;
6872 : }
6873 : #undef DONE
6874 : #undef FAIL
6875 : static const uint8_t expand_encoding[] = {
6876 : 0x01, 0x27, 0x00
6877 : };
6878 : return complete_seq (expand_encoding, operands);
6879 : }
6880 :
6881 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6514 */
6882 : extern rtx_insn *gen_peephole2_67 (rtx_insn *, rtx *);
6883 : rtx_insn *
6884 : gen_peephole2_67 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6885 : {
6886 : if (dump_file)
6887 : fprintf (dump_file, "Splitting with gen_peephole2_67 (i386.md:6514)\n");
6888 : start_sequence ();
6889 : static const uint8_t expand_encoding[] = {
6890 : 0x01, 0x1f, 0x01, 0x03, 0x3b, 0x12, 0x3b, 0x12,
6891 : 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
6892 : };
6893 : return complete_seq (expand_encoding, operands);
6894 : }
6895 :
6896 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6600 */
6897 : extern rtx_insn *gen_split_106 (rtx_insn *, rtx *);
6898 : rtx_insn *
6899 : gen_split_106 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6900 : {
6901 : if (dump_file)
6902 : fprintf (dump_file, "Splitting with gen_split_106 (i386.md:6600)\n");
6903 : start_sequence ();
6904 : #define FAIL return (end_sequence (), nullptr)
6905 : #define DONE return end_sequence ()
6906 : #line 6623 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6907 : split_double_mode (DImode, &operands[0], 2, &operands[0], &operands[3]);
6908 : #undef DONE
6909 : #undef FAIL
6910 : static const uint8_t expand_encoding[] = {
6911 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
6912 : 0x3a, 0x08, 0x3b, 0x11, 0x01, 0x01, 0x01, 0x02,
6913 : 0x01, 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x01,
6914 : 0x01, 0x01, 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01,
6915 : 0x03, 0x3b, 0x11, 0x3b, 0x11, 0x66, 0x11, 0x30,
6916 : 0x02, 0x11, 0x27, 0x00, 0x01, 0x04, 0x27, 0x00,
6917 : 0x05, 0x02, 0x11
6918 : };
6919 : return complete_seq (expand_encoding, operands);
6920 : }
6921 :
6922 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:6656 */
6923 : extern rtx_insn *gen_split_114 (rtx_insn *, rtx *);
6924 : rtx_insn *
6925 : gen_split_114 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6926 : {
6927 : if (dump_file)
6928 : fprintf (dump_file, "Splitting with gen_split_114 (i386.md:6656)\n");
6929 : start_sequence ();
6930 : #define FAIL return (end_sequence (), nullptr)
6931 : #define DONE return end_sequence ()
6932 : #line 6687 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6933 : split_double_mode (DImode, &operands[0], 1, &operands[0], &operands[5]);
6934 : #undef DONE
6935 : #undef FAIL
6936 : static const uint8_t expand_encoding[] = {
6937 : 0x04, 0x1f, 0x01, 0x00, 0x01, 0x04, 0x17, 0x00,
6938 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x3b,
6939 : 0x11, 0x01, 0x00, 0x01, 0x01, 0x01, 0x00, 0x1f,
6940 : 0x01, 0x00, 0x3b, 0x11, 0x01, 0x00, 0x01, 0x01,
6941 : 0x1f, 0x01, 0x05, 0x01, 0x02, 0x17, 0x00, 0x02,
6942 : 0x1f, 0x01, 0x05, 0x3b, 0x11, 0x3b, 0x11, 0x66,
6943 : 0x11, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01, 0x05,
6944 : 0x27, 0x00, 0x05, 0x02, 0x11
6945 : };
6946 : return complete_seq (expand_encoding, operands);
6947 : }
6948 :
6949 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7108 */
6950 : extern rtx_insn *gen_split_125 (rtx_insn *, rtx *);
6951 : rtx_insn *
6952 : gen_split_125 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6953 : {
6954 : if (dump_file)
6955 : fprintf (dump_file, "Splitting with gen_split_125 (i386.md:7108)\n");
6956 : start_sequence ();
6957 : #define FAIL return (end_sequence (), nullptr)
6958 : #define DONE return end_sequence ()
6959 : #line 7133 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6960 :
6961 : #undef DONE
6962 : #undef FAIL
6963 : static const uint8_t expand_encoding[] = {
6964 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x32, 0x0f,
6965 : 0x81, 0x06, 0x10, 0x01, 0x02, 0x27, 0x08, 0x27,
6966 : 0x08, 0x00, 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00,
6967 : 0x01, 0x00, 0x3b, 0x0f, 0x32, 0x0f, 0x81, 0x06,
6968 : 0x10, 0x01, 0x01, 0x27, 0x08, 0x27, 0x08, 0x00,
6969 : 0x01, 0x00, 0x05, 0x02, 0x11
6970 : };
6971 : return complete_seq (expand_encoding, operands);
6972 : }
6973 :
6974 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7181 */
6975 : extern rtx_insn *gen_split_137 (rtx_insn *, rtx *);
6976 : rtx_insn *
6977 : gen_split_137 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
6978 : {
6979 : if (dump_file)
6980 : fprintf (dump_file, "Splitting with gen_split_137 (i386.md:7181)\n");
6981 : start_sequence ();
6982 : #define FAIL return (end_sequence (), nullptr)
6983 : #define DONE return end_sequence ()
6984 : #line 7189 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
6985 : {
6986 : if (SImode != SImode)
6987 : {
6988 : operands[0] = gen_lowpart (SImode, operands[0]);
6989 : operands[1] = gen_lowpart (SImode, operands[1]);
6990 : operands[2] = gen_lowpart (SImode, operands[2]);
6991 : }
6992 : }
6993 : #undef DONE
6994 : #undef FAIL
6995 : static const uint8_t expand_encoding[] = {
6996 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x01, 0x01,
6997 : 0x01, 0x02
6998 : };
6999 : return complete_seq (expand_encoding, operands);
7000 : }
7001 :
7002 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7656 */
7003 : extern rtx_insn *gen_split_148 (rtx_insn *, rtx *);
7004 : rtx_insn *
7005 : gen_split_148 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7006 : {
7007 : if (dump_file)
7008 : fprintf (dump_file, "Splitting with gen_split_148 (i386.md:7656)\n");
7009 : start_sequence ();
7010 : #define FAIL return (end_sequence (), nullptr)
7011 : #define DONE return end_sequence ()
7012 : #line 7693 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7013 :
7014 : #undef DONE
7015 : #undef FAIL
7016 : static const uint8_t expand_encoding[] = {
7017 : 0x02, 0x1f, 0x81, 0x06, 0x11, 0x01, 0x00, 0x27,
7018 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x11, 0x01, 0x01,
7019 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
7020 : 0x81, 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27,
7021 : 0x08, 0x32, 0x11, 0x3b, 0x0f, 0x32, 0x0f, 0x81,
7022 : 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
7023 : 0x00, 0x32, 0x0f, 0x81, 0x06, 0x11, 0x01, 0x02,
7024 : 0x27, 0x08, 0x27, 0x08, 0x00, 0x00, 0x05, 0x02,
7025 : 0x11
7026 : };
7027 : return complete_seq (expand_encoding, operands);
7028 : }
7029 :
7030 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:7779 */
7031 : extern rtx_insn *gen_split_153 (rtx_insn *, rtx *);
7032 : rtx_insn *
7033 : gen_split_153 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7034 : {
7035 : if (dump_file)
7036 : fprintf (dump_file, "Splitting with gen_split_153 (i386.md:7779)\n");
7037 : start_sequence ();
7038 : #define FAIL return (end_sequence (), nullptr)
7039 : #define DONE return end_sequence ()
7040 : #line 7819 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7041 : {
7042 : split_double_mode (TImode, &operands[0], 3, &operands[0], &operands[3]);
7043 : }
7044 : #undef DONE
7045 : #undef FAIL
7046 : static const uint8_t expand_encoding[] = {
7047 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
7048 : 0x3a, 0x08, 0x3b, 0x12, 0x01, 0x01, 0x01, 0x02,
7049 : 0x01, 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x12, 0x01,
7050 : 0x01, 0x01, 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30,
7051 : 0x09, 0x11, 0x5d, 0x09, 0x3b, 0x13, 0x3b, 0x13,
7052 : 0x66, 0x13, 0x30, 0x02, 0x11, 0x27, 0x00, 0x6e,
7053 : 0x13, 0x01, 0x04, 0x6e, 0x13, 0x01, 0x05, 0x6e,
7054 : 0x13, 0x3b, 0x12, 0x3b, 0x12, 0x66, 0x12, 0x30,
7055 : 0x02, 0x11, 0x27, 0x00, 0x01, 0x04, 0x01, 0x05,
7056 : 0x1f, 0x01, 0x03, 0x3b, 0x12, 0x3b, 0x12, 0x66,
7057 : 0x12, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01, 0x04,
7058 : 0x01, 0x05
7059 : };
7060 : return complete_seq (expand_encoding, operands);
7061 : }
7062 :
7063 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8013 */
7064 : extern rtx_insn *gen_split_160 (rtx_insn *, rtx *);
7065 : rtx_insn *
7066 : gen_split_160 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7067 : {
7068 : if (dump_file)
7069 : fprintf (dump_file, "Splitting with gen_split_160 (i386.md:8013)\n");
7070 : start_sequence ();
7071 : #define FAIL return (end_sequence (), nullptr)
7072 : #define DONE return end_sequence ()
7073 : #line 8026 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7074 : {
7075 : operands[0] = gen_lowpart (SImode, operands[0]);
7076 : operands[1] = gen_lowpart (SImode, operands[1]);
7077 : operands[3] = gen_lowpart (SImode, operands[3]);
7078 : }
7079 : #undef DONE
7080 : #undef FAIL
7081 : static const uint8_t expand_encoding[] = {
7082 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x4d, 0x11,
7083 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
7084 : };
7085 : return complete_seq (expand_encoding, operands);
7086 : }
7087 :
7088 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8110 */
7089 : extern rtx_insn *gen_split_170 (rtx_insn *, rtx *);
7090 : rtx_insn *
7091 : gen_split_170 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7092 : {
7093 : if (dump_file)
7094 : fprintf (dump_file, "Splitting with gen_split_170 (i386.md:8110)\n");
7095 : start_sequence ();
7096 : #define FAIL return (end_sequence (), nullptr)
7097 : #define DONE return end_sequence ()
7098 : #line 8125 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7099 : operands[2] = GEN_INT (1 << INTVAL (operands[2]));
7100 : #undef DONE
7101 : #undef FAIL
7102 : static const uint8_t expand_encoding[] = {
7103 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x3e, 0x11,
7104 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
7105 : };
7106 : return complete_seq (expand_encoding, operands);
7107 : }
7108 :
7109 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8131 */
7110 : rtx
7111 : gen_subdi3 (const rtx operand0, const rtx operand1, const rtx operand2)
7112 : {
7113 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7114 : start_sequence ();
7115 : {
7116 : #define FAIL return (end_sequence (), nullptr)
7117 : #define DONE return end_sequence ()
7118 : #line 8136 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7119 : {
7120 : ix86_expand_binary_operator (MINUS, DImode, operands, TARGET_APX_NDD);
7121 : DONE;
7122 : }
7123 : #undef DONE
7124 : #undef FAIL
7125 : }
7126 : static const uint8_t expand_encoding[] = {
7127 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x12, 0x01, 0x01,
7128 : 0x01, 0x02
7129 : };
7130 : return complete_seq (expand_encoding, operands);
7131 : }
7132 :
7133 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8283 */
7134 : extern rtx_insn *gen_split_182 (rtx_insn *, rtx *);
7135 : rtx_insn *
7136 : gen_split_182 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7137 : {
7138 : if (dump_file)
7139 : fprintf (dump_file, "Splitting with gen_split_182 (i386.md:8283)\n");
7140 : start_sequence ();
7141 : #define FAIL return (end_sequence (), nullptr)
7142 : #define DONE return end_sequence ()
7143 : #line 8306 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7144 :
7145 : #undef DONE
7146 : #undef FAIL
7147 : static const uint8_t expand_encoding[] = {
7148 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x01, 0x01,
7149 : 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00,
7150 : 0x3c, 0x0f, 0x01, 0x00, 0x32, 0x0f, 0x81, 0x06,
7151 : 0x12, 0x01, 0x02, 0x27, 0x08, 0x27, 0x08, 0x00,
7152 : 0x05, 0x02, 0x11
7153 : };
7154 : return complete_seq (expand_encoding, operands);
7155 : }
7156 :
7157 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8461 */
7158 : rtx
7159 : gen_subvqi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
7160 : {
7161 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
7162 : start_sequence ();
7163 : {
7164 : #define FAIL return (end_sequence (), nullptr)
7165 : #define DONE return end_sequence ()
7166 : #line 8479 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7167 : {
7168 : ix86_fixup_binary_operands_no_copy (MINUS, QImode, operands,
7169 : TARGET_APX_NDD);
7170 : if (CONST_SCALAR_INT_P (operands[2]))
7171 : operands[4] = operands[2];
7172 : else
7173 : operands[4] = gen_rtx_SIGN_EXTEND (HImode, operands[2]);
7174 : }
7175 : #undef DONE
7176 : #undef FAIL
7177 : }
7178 : static const uint8_t expand_encoding[] = {
7179 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x09, 0x11,
7180 : 0x5d, 0x09, 0x3c, 0x10, 0x6e, 0x10, 0x01, 0x01,
7181 : 0x01, 0x04, 0x6e, 0x10, 0x3c, 0x0f, 0x01, 0x01,
7182 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x3c, 0x0f, 0x01,
7183 : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x5d,
7184 : 0x00, 0x30, 0x09, 0x11, 0x27, 0x00, 0x37, 0x00,
7185 : 0x01, 0x03, 0x2f
7186 : };
7187 : return complete_seq (expand_encoding, operands);
7188 : }
7189 :
7190 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8705 */
7191 : rtx
7192 : gen_usubvhi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
7193 : {
7194 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
7195 : start_sequence ();
7196 : {
7197 : #define FAIL return (end_sequence (), nullptr)
7198 : #define DONE return end_sequence ()
7199 : #line 8717 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7200 : ix86_fixup_binary_operands_no_copy (MINUS, HImode, operands,
7201 : TARGET_APX_NDD);
7202 : #undef DONE
7203 : #undef FAIL
7204 : }
7205 : static const uint8_t expand_encoding[] = {
7206 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x02, 0x11,
7207 : 0x3a, 0x02, 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01,
7208 : 0x00, 0x3c, 0x10, 0x01, 0x01, 0x01, 0x02, 0x1f,
7209 : 0x2f, 0x39, 0x00, 0x66, 0x00, 0x30, 0x02, 0x11,
7210 : 0x27, 0x00, 0x37, 0x00, 0x01, 0x03, 0x2f
7211 : };
7212 : return complete_seq (expand_encoding, operands);
7213 : }
7214 :
7215 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8745 */
7216 : extern rtx_insn *gen_peephole2_71 (rtx_insn *, rtx *);
7217 : rtx_insn *
7218 : gen_peephole2_71 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7219 : {
7220 : if (dump_file)
7221 : fprintf (dump_file, "Splitting with gen_peephole2_71 (i386.md:8745)\n");
7222 : start_sequence ();
7223 : static const uint8_t expand_encoding[] = {
7224 : 0x01, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7225 : 0x00, 0x01, 0x01
7226 : };
7227 : return complete_seq (expand_encoding, operands);
7228 : }
7229 :
7230 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8783 */
7231 : extern rtx_insn *gen_peephole2_80 (rtx_insn *, rtx *);
7232 : rtx_insn *
7233 : gen_peephole2_80 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7234 : {
7235 : if (dump_file)
7236 : fprintf (dump_file, "Splitting with gen_peephole2_80 (i386.md:8783)\n");
7237 : start_sequence ();
7238 : static const uint8_t expand_encoding[] = {
7239 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x17, 0x00,
7240 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7241 : 0x02, 0x01, 0x00, 0x1f, 0x01, 0x02, 0x3c, 0x11,
7242 : 0x01, 0x02, 0x01, 0x00
7243 : };
7244 : return complete_seq (expand_encoding, operands);
7245 : }
7246 :
7247 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8897 */
7248 : extern rtx_insn *gen_peephole2_87 (rtx_insn *, rtx *);
7249 : rtx_insn *
7250 : gen_peephole2_87 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7251 : {
7252 : if (dump_file)
7253 : fprintf (dump_file, "Splitting with gen_peephole2_87 (i386.md:8897)\n");
7254 : start_sequence ();
7255 : static const uint8_t expand_encoding[] = {
7256 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
7257 : 0x02, 0x1f, 0x01, 0x01, 0x3b, 0x10, 0x3b, 0x10,
7258 : 0x02, 0x04, 0x01, 0x03, 0x27, 0x00, 0x01, 0x01,
7259 : 0x01, 0x00, 0x05, 0x02, 0x11
7260 : };
7261 : return complete_seq (expand_encoding, operands);
7262 : }
7263 :
7264 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:8922 */
7265 : extern rtx_insn *gen_peephole2_93 (rtx_insn *, rtx *);
7266 : rtx_insn *
7267 : gen_peephole2_93 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7268 : {
7269 : if (dump_file)
7270 : fprintf (dump_file, "Splitting with gen_peephole2_93 (i386.md:8922)\n");
7271 : start_sequence ();
7272 : static const uint8_t expand_encoding[] = {
7273 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
7274 : 0x02, 0x1f, 0x01, 0x01, 0x3b, 0x12, 0x3b, 0x12,
7275 : 0x02, 0x04, 0x01, 0x03, 0x27, 0x00, 0x01, 0x01,
7276 : 0x01, 0x00, 0x05, 0x02, 0x11
7277 : };
7278 : return complete_seq (expand_encoding, operands);
7279 : }
7280 :
7281 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:9431 */
7282 : extern rtx_insn *gen_peephole2_103 (rtx_insn *, rtx *);
7283 : rtx_insn *
7284 : gen_peephole2_103 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7285 : {
7286 : if (dump_file)
7287 : fprintf (dump_file, "Splitting with gen_peephole2_103 (i386.md:9431)\n");
7288 : start_sequence ();
7289 : static const uint8_t expand_encoding[] = {
7290 : 0x03, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
7291 : 0x3a, 0x08, 0x6f, 0x13, 0x3b, 0x12, 0x3b, 0x12,
7292 : 0x02, 0x04, 0x01, 0x02, 0x27, 0x00, 0x01, 0x01,
7293 : 0x01, 0x00, 0x3b, 0x13, 0x02, 0x03, 0x01, 0x02,
7294 : 0x27, 0x00, 0x6f, 0x13, 0x01, 0x00, 0x1f, 0x01,
7295 : 0x01, 0x3b, 0x12, 0x3b, 0x12, 0x02, 0x04, 0x01,
7296 : 0x02, 0x27, 0x00, 0x01, 0x01, 0x01, 0x00, 0x1f,
7297 : 0x01, 0x05, 0x66, 0x0f, 0x30, 0x08, 0x11, 0x27,
7298 : 0x00, 0x1f, 0x01, 0x06, 0x6f, 0x12, 0x01, 0x05
7299 : };
7300 : return complete_seq (expand_encoding, operands);
7301 : }
7302 :
7303 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:9989 */
7304 : extern rtx_insn *gen_peephole2_114 (rtx_insn *, rtx *);
7305 : rtx_insn *
7306 : gen_peephole2_114 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7307 : {
7308 : if (dump_file)
7309 : fprintf (dump_file, "Splitting with gen_peephole2_114 (i386.md:9989)\n");
7310 : start_sequence ();
7311 : static const uint8_t expand_encoding[] = {
7312 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x17, 0x00,
7313 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x6f,
7314 : 0x12, 0x01, 0x02, 0x3b, 0x12, 0x02, 0x04, 0x01,
7315 : 0x03, 0x27, 0x00, 0x6f, 0x12, 0x01, 0x00, 0x1f,
7316 : 0x01, 0x02, 0x3c, 0x11, 0x3c, 0x11, 0x01, 0x02,
7317 : 0x02, 0x05, 0x01, 0x03, 0x27, 0x00, 0x01, 0x00
7318 : };
7319 : return complete_seq (expand_encoding, operands);
7320 : }
7321 :
7322 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10221 */
7323 : rtx
7324 : gen_usubcsi5 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
7325 : {
7326 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
7327 : start_sequence ();
7328 : {
7329 : #define FAIL return (end_sequence (), nullptr)
7330 : #define DONE return end_sequence ()
7331 : #line 10228 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7332 : {
7333 : rtx cf, pat, pat2;
7334 : if (operands[4] == const0_rtx)
7335 : {
7336 : cf = gen_rtx_REG (CCmode, FLAGS_REG);
7337 : emit_insn (gen_subborrowsi_0 (operands[0], operands[2],
7338 : operands[3]));
7339 : }
7340 : else
7341 : {
7342 : cf = gen_rtx_REG (CCCmode, FLAGS_REG);
7343 : ix86_expand_carry (operands[4]);
7344 : pat = gen_rtx_LTU (DImode, cf, const0_rtx);
7345 : pat2 = gen_rtx_LTU (SImode, cf, const0_rtx);
7346 : emit_insn (gen_subborrowsi (operands[0], operands[2], operands[3],
7347 : cf, pat, pat2));
7348 : }
7349 : rtx cc = gen_reg_rtx (QImode);
7350 : pat = gen_rtx_LTU (QImode, cf, const0_rtx);
7351 : emit_insn (gen_rtx_SET (cc, pat));
7352 : emit_insn (gen_zero_extendqisi2 (operands[1], cc));
7353 : DONE;
7354 : }
7355 : #undef DONE
7356 : #undef FAIL
7357 : }
7358 : static const uint8_t expand_encoding[] = {
7359 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
7360 : 0x03, 0x01, 0x04
7361 : };
7362 : return complete_seq (expand_encoding, operands);
7363 : }
7364 :
7365 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10365 */
7366 : extern rtx_insn *gen_peephole2_125 (rtx_insn *, rtx *);
7367 : rtx_insn *
7368 : gen_peephole2_125 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7369 : {
7370 : if (dump_file)
7371 : fprintf (dump_file, "Splitting with gen_peephole2_125 (i386.md:10365)\n");
7372 : start_sequence ();
7373 : static const uint8_t expand_encoding[] = {
7374 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
7375 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x3b,
7376 : 0x10, 0x01, 0x01, 0x01, 0x00, 0x01, 0x01, 0x1f,
7377 : 0x01, 0x01, 0x3b, 0x10, 0x01, 0x01, 0x01, 0x00
7378 : };
7379 : return complete_seq (expand_encoding, operands);
7380 : }
7381 :
7382 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10537 */
7383 : extern rtx_insn *gen_split_213 (rtx_insn *, rtx *);
7384 : rtx_insn *
7385 : gen_split_213 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7386 : {
7387 : if (dump_file)
7388 : fprintf (dump_file, "Splitting with gen_split_213 (i386.md:10537)\n");
7389 : start_sequence ();
7390 : #define FAIL return (end_sequence (), nullptr)
7391 : #define DONE return end_sequence ()
7392 : #line 10560 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7393 : {
7394 : operands[2] = gen_int_mode (~INTVAL (operands[2]),
7395 : HImode == DImode ? SImode : HImode);
7396 : }
7397 : #undef DONE
7398 : #undef FAIL
7399 : static const uint8_t expand_encoding[] = {
7400 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7401 : 0x03, 0x27, 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01,
7402 : 0x00, 0x3c, 0x10, 0x3c, 0x10, 0x01, 0x01, 0x66,
7403 : 0x10, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01, 0x02,
7404 : 0x05, 0x02, 0x11
7405 : };
7406 : return complete_seq (expand_encoding, operands);
7407 : }
7408 :
7409 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10586 */
7410 : extern rtx_insn *gen_split_221 (rtx_insn *, rtx *);
7411 : rtx_insn *
7412 : gen_split_221 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7413 : {
7414 : if (dump_file)
7415 : fprintf (dump_file, "Splitting with gen_split_221 (i386.md:10586)\n");
7416 : start_sequence ();
7417 : #define FAIL return (end_sequence (), nullptr)
7418 : #define DONE return end_sequence ()
7419 : #line 10604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7420 : {
7421 : if (!nonimmediate_operand (operands[1], HImode))
7422 : operands[1] = force_reg (HImode, operands[1]);
7423 : }
7424 : #undef DONE
7425 : #undef FAIL
7426 : static const uint8_t expand_encoding[] = {
7427 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7428 : 0x02, 0x27, 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01,
7429 : 0x00, 0x3c, 0x10, 0x3c, 0x10, 0x01, 0x01, 0x66,
7430 : 0x10, 0x30, 0x02, 0x11, 0x27, 0x00, 0x27, 0x81,
7431 : 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
7432 : 0x7f, 0x05, 0x02, 0x11
7433 : };
7434 : return complete_seq (expand_encoding, operands);
7435 : }
7436 :
7437 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10660 */
7438 : extern rtx_insn *gen_split_234 (rtx_insn *, rtx *);
7439 : rtx_insn *
7440 : gen_split_234 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7441 : {
7442 : if (dump_file)
7443 : fprintf (dump_file, "Splitting with gen_split_234 (i386.md:10660)\n");
7444 : start_sequence ();
7445 : #define FAIL return (end_sequence (), nullptr)
7446 : #define DONE return end_sequence ()
7447 : #line 10684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7448 : {
7449 : operands[2] = gen_int_mode (-INTVAL (operands[2]),
7450 : SImode == DImode ? SImode : SImode);
7451 : }
7452 : #undef DONE
7453 : #undef FAIL
7454 : static const uint8_t expand_encoding[] = {
7455 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
7456 : 0x03, 0x27, 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01,
7457 : 0x00, 0x3c, 0x11, 0x3c, 0x11, 0x01, 0x01, 0x66,
7458 : 0x11, 0x30, 0x02, 0x11, 0x27, 0x00, 0x01, 0x02,
7459 : 0x05, 0x02, 0x11
7460 : };
7461 : return complete_seq (expand_encoding, operands);
7462 : }
7463 :
7464 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10733 */
7465 : rtx
7466 : gen_usaddqi3 (const rtx operand0, const rtx operand1, const rtx operand2)
7467 : {
7468 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7469 : start_sequence ();
7470 : {
7471 : #define FAIL return (end_sequence (), nullptr)
7472 : #define DONE return end_sequence ()
7473 : #line 10738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7474 : {
7475 : rtx res = gen_reg_rtx (QImode);
7476 : rtx dst;
7477 :
7478 : emit_insn (gen_addqi3_cc_overflow_1 (res, operands[1], operands[2]));
7479 :
7480 : if (TARGET_CMOVE)
7481 : {
7482 : rtx cmp = gen_rtx_GEU (VOIDmode, gen_rtx_REG (CCCmode, FLAGS_REG),
7483 : const0_rtx);
7484 :
7485 : if (1 < GET_MODE_SIZE (SImode))
7486 : {
7487 : dst = force_reg (QImode, operands[0]);
7488 : emit_insn (gen_movsicc (gen_lowpart (SImode, dst), cmp,
7489 : gen_lowpart (SImode, res), constm1_rtx));
7490 : }
7491 : else
7492 : {
7493 : dst = operands[0];
7494 : emit_insn (gen_movqicc (dst, cmp, res, constm1_rtx));
7495 : }
7496 : }
7497 : else
7498 : {
7499 : rtx msk = gen_reg_rtx (QImode);
7500 :
7501 : emit_insn (gen_x86_movqicc_0_m1_neg (msk));
7502 : dst = expand_simple_binop (QImode, IOR, res, msk,
7503 : operands[0], 1, OPTAB_WIDEN);
7504 : }
7505 :
7506 : if (!rtx_equal_p (dst, operands[0]))
7507 : emit_move_insn (operands[0], dst);
7508 : DONE;
7509 : }
7510 : #undef DONE
7511 : #undef FAIL
7512 : }
7513 : static const uint8_t expand_encoding[] = {
7514 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0f, 0x0f, 0x01,
7515 : 0x01, 0x01, 0x02
7516 : };
7517 : return complete_seq (expand_encoding, operands);
7518 : }
7519 :
7520 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:10818 */
7521 : rtx
7522 : gen_ustruncdisi2 (const rtx operand0, const rtx operand1)
7523 : {
7524 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
7525 : start_sequence ();
7526 : {
7527 : #define FAIL return (end_sequence (), nullptr)
7528 : #define DONE return end_sequence ()
7529 : #line 10822 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7530 : {
7531 : rtx op1 = force_reg (DImode, operands[1]);
7532 : rtx sat = force_reg (DImode, GEN_INT (GET_MODE_MASK (SImode)));
7533 : rtx dst;
7534 :
7535 : emit_insn (gen_cmpdi_1 (sat, op1));
7536 :
7537 : if (TARGET_CMOVE)
7538 : {
7539 : rtx cmp = gen_rtx_GEU (VOIDmode, gen_rtx_REG (CCCmode, FLAGS_REG),
7540 : const0_rtx);
7541 :
7542 : dst = force_reg (SImode, operands[0]);
7543 : emit_insn (gen_movsicc (gen_lowpart (SImode, dst), cmp,
7544 : gen_lowpart (SImode, op1),
7545 : gen_lowpart (SImode, sat)));
7546 : }
7547 : else
7548 : {
7549 : rtx msk = gen_reg_rtx (SImode);
7550 :
7551 : emit_insn (gen_x86_movsicc_0_m1_neg (msk));
7552 : dst = expand_simple_binop (SImode, IOR,
7553 : gen_lowpart (SImode, op1), msk,
7554 : operands[0], 1, OPTAB_WIDEN);
7555 : }
7556 :
7557 : if (!rtx_equal_p (dst, operands[0]))
7558 : emit_move_insn (operands[0], dst);
7559 : DONE;
7560 : }
7561 : #undef DONE
7562 : #undef FAIL
7563 : }
7564 : static const uint8_t expand_encoding[] = {
7565 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x18, 0x12, 0x01,
7566 : 0x01
7567 : };
7568 : return complete_seq (expand_encoding, operands);
7569 : }
7570 :
7571 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11095 */
7572 : rtx
7573 : gen_mulvdi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
7574 : {
7575 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
7576 : start_sequence ();
7577 : {
7578 : #define FAIL return (end_sequence (), nullptr)
7579 : #define DONE return end_sequence ()
7580 : #line 11112 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7581 : {
7582 : if (CONST_INT_P (operands[2]))
7583 : operands[4] = operands[2];
7584 : else
7585 : operands[4] = gen_rtx_SIGN_EXTEND (TImode, operands[2]);
7586 : }
7587 : #undef DONE
7588 : #undef FAIL
7589 : }
7590 : static const uint8_t expand_encoding[] = {
7591 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x09, 0x11,
7592 : 0x5d, 0x09, 0x3e, 0x13, 0x6e, 0x13, 0x01, 0x01,
7593 : 0x01, 0x04, 0x6e, 0x13, 0x3e, 0x12, 0x01, 0x01,
7594 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x3e, 0x12, 0x01,
7595 : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x5d,
7596 : 0x00, 0x30, 0x09, 0x11, 0x27, 0x00, 0x37, 0x00,
7597 : 0x01, 0x03, 0x2f
7598 : };
7599 : return complete_seq (expand_encoding, operands);
7600 : }
7601 :
7602 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11350 */
7603 : extern rtx_insn *gen_peephole2_128 (rtx_insn *, rtx *);
7604 : rtx_insn *
7605 : gen_peephole2_128 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7606 : {
7607 : if (dump_file)
7608 : fprintf (dump_file, "Splitting with gen_peephole2_128 (i386.md:11350)\n");
7609 : start_sequence ();
7610 : #define FAIL return (end_sequence (), nullptr)
7611 : #define DONE return end_sequence ()
7612 : #line 11367 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7613 : {
7614 : if (REGNO (operands[5]) == REGNO (operands[0]))
7615 : operands[0] = operands[4];
7616 : else
7617 : operands[1] = operands[4];
7618 : }
7619 : #undef DONE
7620 : #undef FAIL
7621 : static const uint8_t expand_encoding[] = {
7622 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3e,
7623 : 0x11, 0x01, 0x02, 0x01, 0x03, 0x1f, 0x01, 0x01,
7624 : 0x42, 0x11, 0x01, 0x02, 0x01, 0x03
7625 : };
7626 : return complete_seq (expand_encoding, operands);
7627 : }
7628 :
7629 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11645 */
7630 : extern rtx_insn *gen_peephole2_138 (rtx_insn *, rtx *);
7631 : rtx_insn *
7632 : gen_peephole2_138 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7633 : {
7634 : if (dump_file)
7635 : fprintf (dump_file, "Splitting with gen_peephole2_138 (i386.md:11645)\n");
7636 : start_sequence ();
7637 : static const uint8_t expand_encoding[] = {
7638 : 0x02, 0x1f, 0x01, 0x02, 0x01, 0x01, 0x17, 0x00,
7639 : 0x03, 0x1f, 0x01, 0x04, 0x6f, 0x12, 0x41, 0x11,
7640 : 0x01, 0x02, 0x01, 0x03, 0x21, 0x00, 0x01, 0x02,
7641 : 0x05, 0x02, 0x11
7642 : };
7643 : return complete_seq (expand_encoding, operands);
7644 : }
7645 :
7646 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11747 */
7647 : rtx
7648 : gen_udivmoddi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
7649 : {
7650 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
7651 : static const uint8_t expand_encoding[] = {
7652 : 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x47, 0x12,
7653 : 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01, 0x03, 0x48,
7654 : 0x12, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
7655 : };
7656 : return expand_rtx (expand_encoding, operands);
7657 : }
7658 :
7659 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11791 */
7660 : extern rtx_insn *gen_split_253 (rtx_insn *, rtx *);
7661 : rtx_insn *
7662 : gen_split_253 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
7663 : {
7664 : if (dump_file)
7665 : fprintf (dump_file, "Splitting with gen_split_253 (i386.md:11791)\n");
7666 : start_sequence ();
7667 : #define FAIL return (end_sequence (), nullptr)
7668 : #define DONE return end_sequence ()
7669 : #line 11805 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7670 : ix86_split_idivmod (SImode, operands, true); DONE;
7671 : #undef DONE
7672 : #undef FAIL
7673 : static const uint8_t expand_encoding[] = {
7674 : 0x01, 0x27, 0x00
7675 : };
7676 : return complete_seq (expand_encoding, operands);
7677 : }
7678 :
7679 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:11983 */
7680 : extern rtx_insn *gen_split_263 (rtx_insn *, rtx *);
7681 : rtx_insn *
7682 : gen_split_263 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7683 : {
7684 : if (dump_file)
7685 : fprintf (dump_file, "Splitting with gen_split_263 (i386.md:11983)\n");
7686 : start_sequence ();
7687 : #define FAIL return (end_sequence (), nullptr)
7688 : #define DONE return end_sequence ()
7689 : #line 12002 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7690 : {
7691 : operands[5] = GEN_INT (GET_MODE_BITSIZE (SImode)-1);
7692 :
7693 : if (SImode != HImode
7694 : && (optimize_function_for_size_p (cfun) || TARGET_USE_CLTD))
7695 : operands[4] = operands[2];
7696 : else
7697 : {
7698 : /* Avoid use of cltd in favor of a mov+shift. */
7699 : emit_move_insn (operands[1], operands[2]);
7700 : operands[4] = operands[1];
7701 : }
7702 : }
7703 : #undef DONE
7704 : #undef FAIL
7705 : static const uint8_t expand_encoding[] = {
7706 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x01, 0x4f,
7707 : 0x11, 0x01, 0x04, 0x01, 0x05, 0x05, 0x02, 0x11,
7708 : 0x17, 0x00, 0x04, 0x1f, 0x01, 0x00, 0x43, 0x11,
7709 : 0x01, 0x02, 0x01, 0x03, 0x1f, 0x01, 0x01, 0x46,
7710 : 0x11, 0x01, 0x02, 0x01, 0x03, 0x20, 0x00, 0x01,
7711 : 0x01, 0x05, 0x02, 0x11
7712 : };
7713 : return complete_seq (expand_encoding, operands);
7714 : }
7715 :
7716 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12147 */
7717 : extern rtx_insn *gen_split_273 (rtx_insn *, rtx *);
7718 : rtx_insn *
7719 : gen_split_273 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7720 : {
7721 : if (dump_file)
7722 : fprintf (dump_file, "Splitting with gen_split_273 (i386.md:12147)\n");
7723 : start_sequence ();
7724 : #define FAIL return (end_sequence (), nullptr)
7725 : #define DONE return end_sequence ()
7726 : #line 12167 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7727 : {
7728 : operands[5] = GEN_INT (GET_MODE_BITSIZE (SImode)-1);
7729 : operands[6] = gen_lowpart (SImode, operands[1]);
7730 :
7731 : if (optimize_function_for_size_p (cfun) || TARGET_USE_CLTD)
7732 : operands[4] = operands[2];
7733 : else
7734 : {
7735 : /* Avoid use of cltd in favor of a mov+shift. */
7736 : emit_move_insn (operands[6], operands[2]);
7737 : operands[4] = operands[6];
7738 : }
7739 : }
7740 : #undef DONE
7741 : #undef FAIL
7742 : static const uint8_t expand_encoding[] = {
7743 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x06, 0x4f,
7744 : 0x11, 0x01, 0x04, 0x01, 0x05, 0x05, 0x02, 0x11,
7745 : 0x17, 0x00, 0x04, 0x1f, 0x01, 0x01, 0x6f, 0x12,
7746 : 0x46, 0x11, 0x01, 0x02, 0x01, 0x03, 0x1f, 0x01,
7747 : 0x00, 0x43, 0x11, 0x01, 0x02, 0x01, 0x03, 0x20,
7748 : 0x00, 0x01, 0x06, 0x05, 0x02, 0x11
7749 : };
7750 : return complete_seq (expand_encoding, operands);
7751 : }
7752 :
7753 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12698 */
7754 : extern rtx_insn *gen_split_281 (rtx_insn *, rtx *);
7755 : rtx_insn *
7756 : gen_split_281 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7757 : {
7758 : if (dump_file)
7759 : fprintf (dump_file, "Splitting with gen_split_281 (i386.md:12698)\n");
7760 : start_sequence ();
7761 : #define FAIL return (end_sequence (), nullptr)
7762 : #define DONE return end_sequence ()
7763 : #line 12713 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7764 : operands[2] = gen_reg_rtx (QImode);
7765 : #undef DONE
7766 : #undef FAIL
7767 : static const uint8_t expand_encoding[] = {
7768 : 0x02, 0x1f, 0x01, 0x02, 0x4c, 0x0f, 0x01, 0x00,
7769 : 0x1f, 0x30, 0x0c, 0x11, 0x3a, 0x0c, 0x49, 0x0f,
7770 : 0x01, 0x02, 0x01, 0x01, 0x27, 0x00
7771 : };
7772 : return complete_seq (expand_encoding, operands);
7773 : }
7774 :
7775 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12766 */
7776 : extern rtx_insn *gen_split_288 (rtx_insn *, rtx *);
7777 : rtx_insn *
7778 : gen_split_288 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7779 : {
7780 : if (dump_file)
7781 : fprintf (dump_file, "Splitting with gen_split_288 (i386.md:12766)\n");
7782 : start_sequence ();
7783 : #define FAIL return (end_sequence (), nullptr)
7784 : #define DONE return end_sequence ()
7785 : #line 12783 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7786 : {
7787 : operands[2] = gen_lowpart (QImode, operands[2]);
7788 : operands[3] = gen_int_mode (INTVAL (operands[3]), QImode);
7789 : }
7790 : #undef DONE
7791 : #undef FAIL
7792 : static const uint8_t expand_encoding[] = {
7793 : 0x01, 0x1f, 0x01, 0x00, 0x02, 0x01, 0x49, 0x0f,
7794 : 0x01, 0x02, 0x01, 0x03, 0x27, 0x00
7795 : };
7796 : return complete_seq (expand_encoding, operands);
7797 : }
7798 :
7799 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:12845 */
7800 : rtx
7801 : gen_andhi3 (const rtx operand0, const rtx operand1, const rtx operand2)
7802 : {
7803 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
7804 : start_sequence ();
7805 : {
7806 : #define FAIL return (end_sequence (), nullptr)
7807 : #define DONE return end_sequence ()
7808 : #line 12850 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7809 : {
7810 : machine_mode mode = HImode;
7811 :
7812 : if (GET_MODE_SIZE (HImode) > UNITS_PER_WORD
7813 : && !x86_64_hilo_general_operand (operands[2], HImode))
7814 : operands[2] = force_reg (HImode, operands[2]);
7815 :
7816 : if (GET_MODE_SIZE (HImode) <= UNITS_PER_WORD
7817 : && const_int_operand (operands[2], HImode)
7818 : && register_operand (operands[0], HImode)
7819 : && !(TARGET_ZERO_EXTEND_WITH_AND
7820 : && optimize_function_for_speed_p (cfun)))
7821 : {
7822 : unsigned HOST_WIDE_INT ival = UINTVAL (operands[2]);
7823 :
7824 : if (ival == GET_MODE_MASK (SImode))
7825 : mode = SImode;
7826 : else if (ival == GET_MODE_MASK (HImode))
7827 : mode = HImode;
7828 : else if (ival == GET_MODE_MASK (QImode))
7829 : mode = QImode;
7830 : }
7831 :
7832 : if (mode != HImode)
7833 : emit_insn (gen_extend_insn
7834 : (operands[0], gen_lowpart (mode, operands[1]),
7835 : HImode, mode, 1));
7836 : else
7837 : ix86_expand_binary_operator (AND, HImode, operands, TARGET_APX_NDD);
7838 :
7839 : DONE;
7840 : }
7841 : #undef DONE
7842 : #undef FAIL
7843 : }
7844 : static const uint8_t expand_encoding[] = {
7845 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x10, 0x01, 0x01,
7846 : 0x01, 0x02
7847 : };
7848 : return complete_seq (expand_encoding, operands);
7849 : }
7850 :
7851 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13125 */
7852 : extern rtx_insn *gen_split_295 (rtx_insn *, rtx *);
7853 : rtx_insn *
7854 : gen_split_295 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7855 : {
7856 : if (dump_file)
7857 : fprintf (dump_file, "Splitting with gen_split_295 (i386.md:13125)\n");
7858 : start_sequence ();
7859 : #define FAIL return (end_sequence (), nullptr)
7860 : #define DONE return end_sequence ()
7861 : #line 13142 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7862 :
7863 : #undef DONE
7864 : #undef FAIL
7865 : static const uint8_t expand_encoding[] = {
7866 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x01, 0x01,
7867 : 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00,
7868 : 0x4b, 0x0f, 0x01, 0x00, 0x01, 0x02, 0x05, 0x02,
7869 : 0x11
7870 : };
7871 : return complete_seq (expand_encoding, operands);
7872 : }
7873 :
7874 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13147 */
7875 : extern rtx_insn *gen_split_305 (rtx_insn *, rtx *);
7876 : rtx_insn *
7877 : gen_split_305 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7878 : {
7879 : if (dump_file)
7880 : fprintf (dump_file, "Splitting with gen_split_305 (i386.md:13147)\n");
7881 : start_sequence ();
7882 : #define FAIL return (end_sequence (), nullptr)
7883 : #define DONE return end_sequence ()
7884 : #line 13170 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7885 :
7886 : #undef DONE
7887 : #undef FAIL
7888 : static const uint8_t expand_encoding[] = {
7889 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x01, 0x01,
7890 : 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00,
7891 : 0x49, 0x0f, 0x32, 0x0f, 0x81, 0x06, 0x12, 0x01,
7892 : 0x02, 0x27, 0x08, 0x27, 0x08, 0x00, 0x01, 0x00,
7893 : 0x05, 0x02, 0x11
7894 : };
7895 : return complete_seq (expand_encoding, operands);
7896 : }
7897 :
7898 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13174 */
7899 : extern rtx_insn *gen_split_315 (rtx_insn *, rtx *);
7900 : rtx_insn *
7901 : gen_split_315 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7902 : {
7903 : if (dump_file)
7904 : fprintf (dump_file, "Splitting with gen_split_315 (i386.md:13174)\n");
7905 : start_sequence ();
7906 : #define FAIL return (end_sequence (), nullptr)
7907 : #define DONE return end_sequence ()
7908 : #line 13199 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7909 :
7910 : #undef DONE
7911 : #undef FAIL
7912 : static const uint8_t expand_encoding[] = {
7913 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x32, 0x0f,
7914 : 0x81, 0x06, 0x12, 0x01, 0x02, 0x27, 0x08, 0x27,
7915 : 0x08, 0x00, 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00,
7916 : 0x01, 0x00, 0x4a, 0x0f, 0x32, 0x0f, 0x81, 0x06,
7917 : 0x12, 0x01, 0x01, 0x27, 0x08, 0x27, 0x08, 0x00,
7918 : 0x01, 0x00, 0x05, 0x02, 0x11
7919 : };
7920 : return complete_seq (expand_encoding, operands);
7921 : }
7922 :
7923 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13258 */
7924 : extern rtx_insn *gen_split_325 (rtx_insn *, rtx *);
7925 : rtx_insn *
7926 : gen_split_325 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7927 : {
7928 : if (dump_file)
7929 : fprintf (dump_file, "Splitting with gen_split_325 (i386.md:13258)\n");
7930 : start_sequence ();
7931 : #define FAIL return (end_sequence (), nullptr)
7932 : #define DONE return end_sequence ()
7933 : #line 13280 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7934 : operands[0] = gen_lowpart (HImode, operands[0]);
7935 : #undef DONE
7936 : #undef FAIL
7937 : static const uint8_t expand_encoding[] = {
7938 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x81, 0x06, 0x10,
7939 : 0x01, 0x00, 0x27, 0x08, 0x27, 0x08, 0x32, 0x10,
7940 : 0x4b, 0x0f, 0x32, 0x0f, 0x81, 0x06, 0x10, 0x01,
7941 : 0x00, 0x27, 0x08, 0x27, 0x08, 0x00, 0x32, 0x0f,
7942 : 0x81, 0x06, 0x10, 0x01, 0x00, 0x27, 0x08, 0x27,
7943 : 0x08, 0x00, 0x00, 0x05, 0x02, 0x11
7944 : };
7945 : return complete_seq (expand_encoding, operands);
7946 : }
7947 :
7948 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13409 */
7949 : extern rtx_insn *gen_split_335 (rtx_insn *, rtx *);
7950 : rtx_insn *
7951 : gen_split_335 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7952 : {
7953 : if (dump_file)
7954 : fprintf (dump_file, "Splitting with gen_split_335 (i386.md:13409)\n");
7955 : start_sequence ();
7956 : #define FAIL return (end_sequence (), nullptr)
7957 : #define DONE return end_sequence ()
7958 : #line 13434 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7959 :
7960 : #undef DONE
7961 : #undef FAIL
7962 : static const uint8_t expand_encoding[] = {
7963 : 0x02, 0x1f, 0x01, 0x00, 0x32, 0x0f, 0x81, 0x06,
7964 : 0x12, 0x01, 0x02, 0x27, 0x08, 0x27, 0x08, 0x00,
7965 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a, 0x0f,
7966 : 0x32, 0x0f, 0x81, 0x06, 0x12, 0x01, 0x01, 0x27,
7967 : 0x08, 0x27, 0x08, 0x00, 0x01, 0x00, 0x05, 0x02,
7968 : 0x11
7969 : };
7970 : return complete_seq (expand_encoding, operands);
7971 : }
7972 :
7973 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13453 */
7974 : extern rtx_insn *gen_split_344 (rtx_insn *, rtx *);
7975 : rtx_insn *
7976 : gen_split_344 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
7977 : {
7978 : if (dump_file)
7979 : fprintf (dump_file, "Splitting with gen_split_344 (i386.md:13453)\n");
7980 : start_sequence ();
7981 : #define FAIL return (end_sequence (), nullptr)
7982 : #define DONE return end_sequence ()
7983 : #line 13485 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
7984 :
7985 : #undef DONE
7986 : #undef FAIL
7987 : static const uint8_t expand_encoding[] = {
7988 : 0x02, 0x1f, 0x81, 0x06, 0x12, 0x01, 0x00, 0x27,
7989 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x12, 0x01, 0x01,
7990 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
7991 : 0x81, 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27,
7992 : 0x08, 0x32, 0x12, 0x4a, 0x0f, 0x32, 0x0f, 0x81,
7993 : 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
7994 : 0x00, 0x01, 0x02, 0x00, 0x05, 0x02, 0x11
7995 : };
7996 : return complete_seq (expand_encoding, operands);
7997 : }
7998 :
7999 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13491 */
8000 : extern rtx_insn *gen_split_354 (rtx_insn *, rtx *);
8001 : rtx_insn *
8002 : gen_split_354 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8003 : {
8004 : if (dump_file)
8005 : fprintf (dump_file, "Splitting with gen_split_354 (i386.md:13491)\n");
8006 : start_sequence ();
8007 : #define FAIL return (end_sequence (), nullptr)
8008 : #define DONE return end_sequence ()
8009 : #line 13537 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8010 :
8011 : #undef DONE
8012 : #undef FAIL
8013 : static const uint8_t expand_encoding[] = {
8014 : 0x02, 0x1f, 0x81, 0x06, 0x12, 0x01, 0x00, 0x27,
8015 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x12, 0x01, 0x01,
8016 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
8017 : 0x01, 0x04, 0x02, 0x05, 0x4b, 0x0f, 0x32, 0x0f,
8018 : 0x81, 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27,
8019 : 0x08, 0x00, 0x01, 0x02, 0x27, 0x00, 0x1f, 0x81,
8020 : 0x06, 0x12, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
8021 : 0x32, 0x12, 0x4b, 0x0f, 0x32, 0x0f, 0x81, 0x06,
8022 : 0x12, 0x01, 0x01, 0x27, 0x08, 0x27, 0x08, 0x00,
8023 : 0x01, 0x02, 0x00
8024 : };
8025 : return complete_seq (expand_encoding, operands);
8026 : }
8027 :
8028 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13585 */
8029 : extern rtx_insn *gen_split_365 (rtx_insn *, rtx *);
8030 : rtx_insn *
8031 : gen_split_365 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8032 : {
8033 : if (dump_file)
8034 : fprintf (dump_file, "Splitting with gen_split_365 (i386.md:13585)\n");
8035 : start_sequence ();
8036 : #define FAIL return (end_sequence (), nullptr)
8037 : #define DONE return end_sequence ()
8038 : #line 13613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8039 : operands[4] = gen_lowpart (GET_MODE (operands[1]), operands[0]);
8040 : #undef DONE
8041 : #undef FAIL
8042 : static const uint8_t expand_encoding[] = {
8043 : 0x02, 0x1f, 0x81, 0x06, 0x10, 0x01, 0x00, 0x27,
8044 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x10, 0x01, 0x01,
8045 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
8046 : 0x81, 0x06, 0x10, 0x01, 0x00, 0x27, 0x08, 0x27,
8047 : 0x08, 0x81, 0x06, 0x10, 0x4a, 0x00, 0x01, 0x04,
8048 : 0x01, 0x02, 0x27, 0x08, 0x27, 0x08, 0x05, 0x02,
8049 : 0x11
8050 : };
8051 : return complete_seq (expand_encoding, operands);
8052 : }
8053 :
8054 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13623 */
8055 : extern rtx_insn *gen_split_375 (rtx_insn *, rtx *);
8056 : rtx_insn *
8057 : gen_split_375 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8058 : {
8059 : if (dump_file)
8060 : fprintf (dump_file, "Splitting with gen_split_375 (i386.md:13623)\n");
8061 : start_sequence ();
8062 : #define FAIL return (end_sequence (), nullptr)
8063 : #define DONE return end_sequence ()
8064 : #line 13644 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8065 : {
8066 : operands[0] = gen_lowpart (HImode, operands[0]);
8067 : operands[1] = gen_lowpart (HImode, operands[1]);
8068 : operands[2] = gen_int_mode (INTVAL (operands[2]) >> 8, QImode);
8069 : }
8070 : #undef DONE
8071 : #undef FAIL
8072 : static const uint8_t expand_encoding[] = {
8073 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x81, 0x06, 0x10,
8074 : 0x01, 0x00, 0x27, 0x08, 0x27, 0x08, 0x32, 0x10,
8075 : 0x49, 0x0f, 0x32, 0x0f, 0x81, 0x06, 0x10, 0x01,
8076 : 0x01, 0x27, 0x08, 0x27, 0x08, 0x00, 0x01, 0x02,
8077 : 0x00, 0x05, 0x02, 0x11
8078 : };
8079 : return complete_seq (expand_encoding, operands);
8080 : }
8081 :
8082 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13794 */
8083 : extern rtx_insn *gen_split_386 (rtx_insn *, rtx *);
8084 : rtx_insn *
8085 : gen_split_386 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8086 : {
8087 : if (dump_file)
8088 : fprintf (dump_file, "Splitting with gen_split_386 (i386.md:13794)\n");
8089 : start_sequence ();
8090 : #define FAIL return (end_sequence (), nullptr)
8091 : #define DONE return end_sequence ()
8092 : #line 13810 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8093 : operands[4] = gen_reg_rtx (DImode);
8094 : #undef DONE
8095 : #undef FAIL
8096 : static const uint8_t expand_encoding[] = {
8097 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x49,
8098 : 0x12, 0x4c, 0x12, 0x01, 0x01, 0x01, 0x02, 0x05,
8099 : 0x02, 0x11, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00,
8100 : 0x4b, 0x12, 0x01, 0x04, 0x01, 0x03, 0x05, 0x02,
8101 : 0x11
8102 : };
8103 : return complete_seq (expand_encoding, operands);
8104 : }
8105 :
8106 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13874 */
8107 : rtx
8108 : gen_xorhi3 (const rtx operand0, const rtx operand1, const rtx operand2)
8109 : {
8110 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
8111 : start_sequence ();
8112 : {
8113 : #define FAIL return (end_sequence (), nullptr)
8114 : #define DONE return end_sequence ()
8115 : #line 13879 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8116 : {
8117 : if (GET_MODE_SIZE (HImode) > UNITS_PER_WORD
8118 : && !x86_64_hilo_general_operand (operands[2], HImode))
8119 : operands[2] = force_reg (HImode, operands[2]);
8120 :
8121 : ix86_expand_binary_operator (XOR, HImode, operands, TARGET_APX_NDD);
8122 : DONE;
8123 : }
8124 : #undef DONE
8125 : #undef FAIL
8126 : }
8127 : static const uint8_t expand_encoding[] = {
8128 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x10, 0x01, 0x01,
8129 : 0x01, 0x02
8130 : };
8131 : return complete_seq (expand_encoding, operands);
8132 : }
8133 :
8134 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:13888 */
8135 : extern rtx_insn *gen_split_396 (rtx_insn *, rtx *);
8136 : rtx_insn *
8137 : gen_split_396 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8138 : {
8139 : if (dump_file)
8140 : fprintf (dump_file, "Splitting with gen_split_396 (i386.md:13888)\n");
8141 : start_sequence ();
8142 : #define FAIL return (end_sequence (), nullptr)
8143 : #define DONE return end_sequence ()
8144 : #line 13898 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8145 : {
8146 : /* This insn may disappear completely when operands[2] == const0_rtx
8147 : and operands[0] == operands[1], which requires a NOTE_INSN_DELETED. */
8148 : bool emit_insn_deleted_note_p = false;
8149 :
8150 : split_double_mode (TImode, &operands[0], 3, &operands[0], &operands[3]);
8151 :
8152 : if (operands[2] == const0_rtx)
8153 : {
8154 : if (!rtx_equal_p (operands[0], operands[1]))
8155 : emit_move_insn (operands[0], operands[1]);
8156 : else
8157 : emit_insn_deleted_note_p = true;
8158 : }
8159 : else if (operands[2] == constm1_rtx)
8160 : {
8161 : if (XOR == IOR)
8162 : emit_move_insn (operands[0], constm1_rtx);
8163 : else
8164 : ix86_expand_unary_operator (NOT, DImode, &operands[0],
8165 : TARGET_APX_NDD);
8166 : }
8167 : else
8168 : ix86_expand_binary_operator (XOR, DImode, &operands[0],
8169 : TARGET_APX_NDD);
8170 :
8171 : if (operands[5] == const0_rtx)
8172 : {
8173 : if (!rtx_equal_p (operands[3], operands[4]))
8174 : emit_move_insn (operands[3], operands[4]);
8175 : else if (emit_insn_deleted_note_p)
8176 : emit_note (NOTE_INSN_DELETED);
8177 : }
8178 : else if (operands[5] == constm1_rtx)
8179 : {
8180 : if (XOR == IOR)
8181 : emit_move_insn (operands[3], constm1_rtx);
8182 : else
8183 : ix86_expand_unary_operator (NOT, DImode, &operands[3],
8184 : TARGET_APX_NDD);
8185 : }
8186 : else
8187 : ix86_expand_binary_operator (XOR, DImode, &operands[3],
8188 : TARGET_APX_NDD);
8189 :
8190 : DONE;
8191 : }
8192 : #undef DONE
8193 : #undef FAIL
8194 : static const uint8_t expand_encoding[] = {
8195 : 0x01, 0x27, 0x00
8196 : };
8197 : return complete_seq (expand_encoding, operands);
8198 : }
8199 :
8200 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14212 */
8201 : extern rtx_insn *gen_split_412 (rtx_insn *, rtx *);
8202 : rtx_insn *
8203 : gen_split_412 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8204 : {
8205 : if (dump_file)
8206 : fprintf (dump_file, "Splitting with gen_split_412 (i386.md:14212)\n");
8207 : start_sequence ();
8208 : #define FAIL return (end_sequence (), nullptr)
8209 : #define DONE return end_sequence ()
8210 : #line 14220 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8211 : operands[3] = gen_reg_rtx (DImode);
8212 : #undef DONE
8213 : #undef FAIL
8214 : static const uint8_t expand_encoding[] = {
8215 : 0x02, 0x1f, 0x01, 0x03, 0x6e, 0x12, 0x01, 0x01,
8216 : 0x1f, 0x01, 0x00, 0x49, 0x12, 0x01, 0x03, 0x01,
8217 : 0x02
8218 : };
8219 : return complete_seq (expand_encoding, operands);
8220 : }
8221 :
8222 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14232 */
8223 : extern rtx_insn *gen_split_422 (rtx_insn *, rtx *);
8224 : rtx_insn *
8225 : gen_split_422 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8226 : {
8227 : if (dump_file)
8228 : fprintf (dump_file, "Splitting with gen_split_422 (i386.md:14232)\n");
8229 : start_sequence ();
8230 : #define FAIL return (end_sequence (), nullptr)
8231 : #define DONE return end_sequence ()
8232 : #line 14240 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8233 : operands[3] = gen_reg_rtx (DImode);
8234 : #undef DONE
8235 : #undef FAIL
8236 : static const uint8_t expand_encoding[] = {
8237 : 0x02, 0x1f, 0x01, 0x03, 0x6e, 0x12, 0x01, 0x01,
8238 : 0x1f, 0x01, 0x00, 0x4a, 0x12, 0x01, 0x03, 0x01,
8239 : 0x02
8240 : };
8241 : return complete_seq (expand_encoding, operands);
8242 : }
8243 :
8244 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14370 */
8245 : extern rtx_insn *gen_split_432 (rtx_insn *, rtx *);
8246 : rtx_insn *
8247 : gen_split_432 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8248 : {
8249 : if (dump_file)
8250 : fprintf (dump_file, "Splitting with gen_split_432 (i386.md:14370)\n");
8251 : start_sequence ();
8252 : #define FAIL return (end_sequence (), nullptr)
8253 : #define DONE return end_sequence ()
8254 : #line 14385 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8255 : {
8256 : operands[0] = gen_lowpart (QImode, operands[0]);
8257 : operands[1] = gen_lowpart (QImode, operands[1]);
8258 : operands[2] = gen_int_mode (INTVAL (operands[2]), QImode);
8259 : }
8260 : #undef DONE
8261 : #undef FAIL
8262 : static const uint8_t expand_encoding[] = {
8263 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01,
8264 : 0x00, 0x4a, 0x0f, 0x01, 0x01, 0x01, 0x02, 0x05,
8265 : 0x02, 0x11
8266 : };
8267 : return complete_seq (expand_encoding, operands);
8268 : }
8269 :
8270 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14414 */
8271 : extern rtx_insn *gen_peephole2_144 (rtx_insn *, rtx *);
8272 : rtx_insn *
8273 : gen_peephole2_144 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8274 : {
8275 : if (dump_file)
8276 : fprintf (dump_file, "Splitting with gen_peephole2_144 (i386.md:14414)\n");
8277 : start_sequence ();
8278 : static const uint8_t expand_encoding[] = {
8279 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
8280 : };
8281 : return complete_seq (expand_encoding, operands);
8282 : }
8283 :
8284 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14414 */
8285 : extern rtx_insn *gen_peephole2_151 (rtx_insn *, rtx *);
8286 : rtx_insn *
8287 : gen_peephole2_151 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8288 : {
8289 : if (dump_file)
8290 : fprintf (dump_file, "Splitting with gen_peephole2_151 (i386.md:14414)\n");
8291 : start_sequence ();
8292 : static const uint8_t expand_encoding[] = {
8293 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
8294 : };
8295 : return complete_seq (expand_encoding, operands);
8296 : }
8297 :
8298 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14426 */
8299 : extern rtx_insn *gen_peephole2_161 (rtx_insn *, rtx *);
8300 : rtx_insn *
8301 : gen_peephole2_161 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8302 : {
8303 : if (dump_file)
8304 : fprintf (dump_file, "Splitting with gen_peephole2_161 (i386.md:14426)\n");
8305 : start_sequence ();
8306 : static const uint8_t expand_encoding[] = {
8307 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x27,
8308 : 0x00, 0x05, 0x02, 0x11
8309 : };
8310 : return complete_seq (expand_encoding, operands);
8311 : }
8312 :
8313 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14438 */
8314 : extern rtx_insn *gen_split_440 (rtx_insn *, rtx *);
8315 : rtx_insn *
8316 : gen_split_440 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8317 : {
8318 : if (dump_file)
8319 : fprintf (dump_file, "Splitting with gen_split_440 (i386.md:14438)\n");
8320 : start_sequence ();
8321 : #define FAIL return (end_sequence (), nullptr)
8322 : #define DONE return end_sequence ()
8323 : #line 14449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8324 : {
8325 : split_double_concat (TImode, operands[0], operands[3],
8326 : gen_lowpart (DImode, operands[1]));
8327 : DONE;
8328 : }
8329 : #undef DONE
8330 : #undef FAIL
8331 : static const uint8_t expand_encoding[] = {
8332 : 0x01, 0x27, 0x00
8333 : };
8334 : return complete_seq (expand_encoding, operands);
8335 : }
8336 :
8337 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14472 */
8338 : extern rtx_insn *gen_split_450 (rtx_insn *, rtx *);
8339 : rtx_insn *
8340 : gen_split_450 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8341 : {
8342 : if (dump_file)
8343 : fprintf (dump_file, "Splitting with gen_split_450 (i386.md:14472)\n");
8344 : start_sequence ();
8345 : #define FAIL return (end_sequence (), nullptr)
8346 : #define DONE return end_sequence ()
8347 : #line 14485 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8348 : {
8349 : if (SSE_REG_P (operands[0]))
8350 : {
8351 : rtx tmp = gen_rtx_REG (V2DImode, REGNO (operands[0]));
8352 : emit_insn (gen_vec_concatv2di (tmp, operands[3], operands[1]));
8353 : }
8354 : else
8355 : split_double_concat (DImode, operands[0], operands[3], operands[1]);
8356 : DONE;
8357 : }
8358 : #undef DONE
8359 : #undef FAIL
8360 : static const uint8_t expand_encoding[] = {
8361 : 0x01, 0x27, 0x00
8362 : };
8363 : return complete_seq (expand_encoding, operands);
8364 : }
8365 :
8366 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14497 */
8367 : extern rtx_insn *gen_split_460 (rtx_insn *, rtx *);
8368 : rtx_insn *
8369 : gen_split_460 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8370 : {
8371 : if (dump_file)
8372 : fprintf (dump_file, "Splitting with gen_split_460 (i386.md:14497)\n");
8373 : start_sequence ();
8374 : #define FAIL return (end_sequence (), nullptr)
8375 : #define DONE return end_sequence ()
8376 : #line 14510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8377 : {
8378 : split_double_concat (DImode, operands[0], operands[1], operands[2]);
8379 : DONE;
8380 : }
8381 : #undef DONE
8382 : #undef FAIL
8383 : static const uint8_t expand_encoding[] = {
8384 : 0x01, 0x27, 0x00
8385 : };
8386 : return complete_seq (expand_encoding, operands);
8387 : }
8388 :
8389 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14497 */
8390 : extern rtx_insn *gen_split_469 (rtx_insn *, rtx *);
8391 : rtx_insn *
8392 : gen_split_469 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8393 : {
8394 : if (dump_file)
8395 : fprintf (dump_file, "Splitting with gen_split_469 (i386.md:14497)\n");
8396 : start_sequence ();
8397 : #define FAIL return (end_sequence (), nullptr)
8398 : #define DONE return end_sequence ()
8399 : #line 14510 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8400 : {
8401 : split_double_concat (TImode, operands[0], operands[1], operands[2]);
8402 : DONE;
8403 : }
8404 : #undef DONE
8405 : #undef FAIL
8406 : static const uint8_t expand_encoding[] = {
8407 : 0x01, 0x27, 0x00
8408 : };
8409 : return complete_seq (expand_encoding, operands);
8410 : }
8411 :
8412 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14546 */
8413 : extern rtx_insn *gen_split_479 (rtx_insn *, rtx *);
8414 : rtx_insn *
8415 : gen_split_479 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8416 : {
8417 : if (dump_file)
8418 : fprintf (dump_file, "Splitting with gen_split_479 (i386.md:14546)\n");
8419 : start_sequence ();
8420 : #define FAIL return (end_sequence (), nullptr)
8421 : #define DONE return end_sequence ()
8422 : #line 14570 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8423 : {
8424 : rtx op3 = simplify_subreg (SImode, operands[3], DImode, 0);
8425 : split_double_concat (DImode, operands[0], op3, operands[1]);
8426 : DONE;
8427 : }
8428 : #undef DONE
8429 : #undef FAIL
8430 : static const uint8_t expand_encoding[] = {
8431 : 0x01, 0x27, 0x00
8432 : };
8433 : return complete_seq (expand_encoding, operands);
8434 : }
8435 :
8436 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14546 */
8437 : extern rtx_insn *gen_split_489 (rtx_insn *, rtx *);
8438 : rtx_insn *
8439 : gen_split_489 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8440 : {
8441 : if (dump_file)
8442 : fprintf (dump_file, "Splitting with gen_split_489 (i386.md:14546)\n");
8443 : start_sequence ();
8444 : #define FAIL return (end_sequence (), nullptr)
8445 : #define DONE return end_sequence ()
8446 : #line 14570 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8447 : {
8448 : rtx op3 = simplify_subreg (DImode, operands[3], TImode, 0);
8449 : split_double_concat (TImode, operands[0], op3, operands[1]);
8450 : DONE;
8451 : }
8452 : #undef DONE
8453 : #undef FAIL
8454 : static const uint8_t expand_encoding[] = {
8455 : 0x01, 0x27, 0x00
8456 : };
8457 : return complete_seq (expand_encoding, operands);
8458 : }
8459 :
8460 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14609 */
8461 : rtx
8462 : gen_negdi2 (const rtx operand0, const rtx operand1)
8463 : {
8464 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
8465 : start_sequence ();
8466 : {
8467 : #define FAIL return (end_sequence (), nullptr)
8468 : #define DONE return end_sequence ()
8469 : #line 14613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8470 : {
8471 : ix86_expand_unary_operator (NEG, DImode, operands, TARGET_APX_NDD);
8472 : DONE;
8473 : }
8474 : #undef DONE
8475 : #undef FAIL
8476 : }
8477 : static const uint8_t expand_encoding[] = {
8478 : 0x01, 0x1f, 0x01, 0x00, 0x3d, 0x12, 0x01, 0x01
8479 : };
8480 : return complete_seq (expand_encoding, operands);
8481 : }
8482 :
8483 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14857 */
8484 : rtx
8485 : gen_x86_negsi_ccc (const rtx operand0, const rtx operand1)
8486 : {
8487 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
8488 : static const uint8_t expand_encoding[] = {
8489 : 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a,
8490 : 0x08, 0x02, 0x01, 0x01, 0x27, 0x00, 0x29, 0x1f,
8491 : 0x01, 0x00, 0x3d, 0x11, 0x01, 0x01
8492 : };
8493 : return expand_rtx (expand_encoding, operands);
8494 : }
8495 :
8496 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14866 */
8497 : extern rtx_insn *gen_split_500 (rtx_insn *, rtx *);
8498 : rtx_insn *
8499 : gen_split_500 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8500 : {
8501 : if (dump_file)
8502 : fprintf (dump_file, "Splitting with gen_split_500 (i386.md:14866)\n");
8503 : start_sequence ();
8504 : #define FAIL return (end_sequence (), nullptr)
8505 : #define DONE return end_sequence ()
8506 : #line 14896 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8507 :
8508 : #undef DONE
8509 : #undef FAIL
8510 : static const uint8_t expand_encoding[] = {
8511 : 0x02, 0x1f, 0x81, 0x06, 0x10, 0x01, 0x00, 0x27,
8512 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x10, 0x01, 0x01,
8513 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
8514 : 0x81, 0x06, 0x10, 0x01, 0x00, 0x27, 0x08, 0x27,
8515 : 0x08, 0x32, 0x10, 0x3d, 0x0f, 0x32, 0x0f, 0x81,
8516 : 0x06, 0x10, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
8517 : 0x00, 0x00, 0x05, 0x02, 0x11
8518 : };
8519 : return complete_seq (expand_encoding, operands);
8520 : }
8521 :
8522 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:14946 */
8523 : extern rtx_insn *gen_peephole2_177 (rtx_insn *, rtx *);
8524 : rtx_insn *
8525 : gen_peephole2_177 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8526 : {
8527 : if (dump_file)
8528 : fprintf (dump_file, "Splitting with gen_peephole2_177 (i386.md:14946)\n");
8529 : start_sequence ();
8530 : static const uint8_t expand_encoding[] = {
8531 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x0c, 0x11,
8532 : 0x3a, 0x0c, 0x3d, 0x11, 0x01, 0x01, 0x27, 0x00,
8533 : 0x1f, 0x01, 0x00, 0x3d, 0x11, 0x01, 0x01
8534 : };
8535 : return complete_seq (expand_encoding, operands);
8536 : }
8537 :
8538 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15032 */
8539 : extern rtx_insn *gen_split_506 (rtx_insn *, rtx *);
8540 : rtx_insn *
8541 : gen_split_506 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8542 : {
8543 : if (dump_file)
8544 : fprintf (dump_file, "Splitting with gen_split_506 (i386.md:15032)\n");
8545 : start_sequence ();
8546 : #define FAIL return (end_sequence (), nullptr)
8547 : #define DONE return end_sequence ()
8548 : #line 15069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8549 : {
8550 : operands[1] = force_reg (TImode, operands[1]);
8551 : operands[2] = gen_reg_rtx (TImode);
8552 :
8553 : split_double_mode (TImode, &operands[0], 3, &operands[0], &operands[3]);
8554 : }
8555 : #undef DONE
8556 : #undef FAIL
8557 : static const uint8_t expand_encoding[] = {
8558 : 0x05, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
8559 : 0x1a, 0x08, 0x02, 0x01, 0x01, 0x27, 0x00, 0x29,
8560 : 0x1f, 0x01, 0x02, 0x3d, 0x12, 0x01, 0x01, 0x17,
8561 : 0x00, 0x02, 0x1f, 0x01, 0x05, 0x3b, 0x12, 0x3b,
8562 : 0x12, 0x66, 0x12, 0x30, 0x02, 0x11, 0x27, 0x00,
8563 : 0x01, 0x04, 0x27, 0x00, 0x05, 0x02, 0x11, 0x17,
8564 : 0x00, 0x02, 0x1f, 0x30, 0x04, 0x11, 0x3a, 0x04,
8565 : 0x3d, 0x12, 0x01, 0x05, 0x27, 0x00, 0x1f, 0x01,
8566 : 0x05, 0x3d, 0x12, 0x01, 0x05, 0x1f, 0x01, 0x00,
8567 : 0x39, 0x12, 0x61, 0x00, 0x30, 0x04, 0x11, 0x27,
8568 : 0x00, 0x01, 0x02, 0x01, 0x01, 0x1f, 0x01, 0x03,
8569 : 0x39, 0x12, 0x61, 0x00, 0x30, 0x04, 0x11, 0x27,
8570 : 0x00, 0x01, 0x05, 0x01, 0x04
8571 : };
8572 : return complete_seq (expand_encoding, operands);
8573 : }
8574 :
8575 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15137 */
8576 : extern rtx_insn *gen_split_515 (rtx_insn *, rtx *);
8577 : rtx_insn *
8578 : gen_split_515 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8579 : {
8580 : if (dump_file)
8581 : fprintf (dump_file, "Splitting with gen_split_515 (i386.md:15137)\n");
8582 : start_sequence ();
8583 : #define FAIL return (end_sequence (), nullptr)
8584 : #define DONE return end_sequence ()
8585 : #line 15147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8586 : {
8587 : if (TARGET_AVX)
8588 : {
8589 : if (MEM_P (operands[1]))
8590 : std::swap (operands[1], operands[2]);
8591 : }
8592 : else
8593 : {
8594 : if (operands_match_p (operands[0], operands[2]))
8595 : std::swap (operands[1], operands[2]);
8596 : }
8597 : }
8598 : #undef DONE
8599 : #undef FAIL
8600 : static const uint8_t expand_encoding[] = {
8601 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x30, 0x01, 0x01,
8602 : 0x01, 0x02
8603 : };
8604 : return complete_seq (expand_encoding, operands);
8605 : }
8606 :
8607 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15192 */
8608 : rtx
8609 : gen_negxf2 (const rtx operand0, const rtx operand1)
8610 : {
8611 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
8612 : start_sequence ();
8613 : {
8614 : #define FAIL return (end_sequence (), nullptr)
8615 : #define DONE return end_sequence ()
8616 : #line 15196 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8617 : ix86_expand_fp_absneg_operator (NEG, XFmode, operands); DONE;
8618 : #undef DONE
8619 : #undef FAIL
8620 : }
8621 : static const uint8_t expand_encoding[] = {
8622 : 0x01, 0x1f, 0x01, 0x00, 0x3d, 0x2f, 0x01, 0x01
8623 : };
8624 : return complete_seq (expand_encoding, operands);
8625 : }
8626 :
8627 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15222 */
8628 : extern rtx_insn *gen_split_530 (rtx_insn *, rtx *);
8629 : rtx_insn *
8630 : gen_split_530 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8631 : {
8632 : if (dump_file)
8633 : fprintf (dump_file, "Splitting with gen_split_530 (i386.md:15222)\n");
8634 : start_sequence ();
8635 : #define FAIL return (end_sequence (), nullptr)
8636 : #define DONE return end_sequence ()
8637 : #line 15233 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8638 : {
8639 : operands[0] = lowpart_subreg (V8HFmode, operands[0], HFmode);
8640 : operands[1] = lowpart_subreg (V8HFmode, operands[1], HFmode);
8641 : }
8642 : #undef DONE
8643 : #undef FAIL
8644 : static const uint8_t expand_encoding[] = {
8645 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x6a, 0x01, 0x01,
8646 : 0x01, 0x02
8647 : };
8648 : return complete_seq (expand_encoding, operands);
8649 : }
8650 :
8651 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15288 */
8652 : extern rtx_insn *gen_split_540 (rtx_insn *, rtx *);
8653 : rtx_insn *
8654 : gen_split_540 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8655 : {
8656 : if (dump_file)
8657 : fprintf (dump_file, "Splitting with gen_split_540 (i386.md:15288)\n");
8658 : start_sequence ();
8659 : #define FAIL return (end_sequence (), nullptr)
8660 : #define DONE return end_sequence ()
8661 : #line 15295 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8662 : ix86_split_fp_absneg_operator (ABS, SFmode, operands); DONE;
8663 : #undef DONE
8664 : #undef FAIL
8665 : static const uint8_t expand_encoding[] = {
8666 : 0x01, 0x27, 0x00
8667 : };
8668 : return complete_seq (expand_encoding, operands);
8669 : }
8670 :
8671 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15342 */
8672 : rtx
8673 : gen_xorsignhf3 (const rtx operand0, const rtx operand1, const rtx operand2)
8674 : {
8675 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
8676 : start_sequence ();
8677 : {
8678 : #define FAIL _Pragma ("GCC error \"xorsignhf3 cannot FAIL\"") (void)0
8679 : #define DONE return end_sequence ()
8680 : #line 15348 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8681 : {
8682 : if (rtx_equal_p (operands[1], operands[2]))
8683 : emit_insn (gen_abshf2 (operands[0], operands[1]));
8684 : else
8685 : ix86_expand_xorsign (operands);
8686 : DONE;
8687 : }
8688 : #undef DONE
8689 : #undef FAIL
8690 : }
8691 : static const uint8_t expand_encoding[] = {
8692 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
8693 : };
8694 : return complete_seq (expand_encoding, operands);
8695 : }
8696 :
8697 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15450 */
8698 : extern rtx_insn *gen_split_548 (rtx_insn *, rtx *);
8699 : rtx_insn *
8700 : gen_split_548 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8701 : {
8702 : if (dump_file)
8703 : fprintf (dump_file, "Splitting with gen_split_548 (i386.md:15450)\n");
8704 : start_sequence ();
8705 : #define FAIL return (end_sequence (), nullptr)
8706 : #define DONE return end_sequence ()
8707 : #line 15462 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8708 :
8709 : #undef DONE
8710 : #undef FAIL
8711 : static const uint8_t expand_encoding[] = {
8712 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x01, 0x01,
8713 : 0x1f, 0x33, 0x00, 0x01, 0x00, 0x4c, 0x0f, 0x01,
8714 : 0x00
8715 : };
8716 : return complete_seq (expand_encoding, operands);
8717 : }
8718 :
8719 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15571 */
8720 : rtx
8721 : gen_ashlqi3 (const rtx operand0, const rtx operand1, const rtx operand2)
8722 : {
8723 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
8724 : start_sequence ();
8725 : {
8726 : #define FAIL return (end_sequence (), nullptr)
8727 : #define DONE return end_sequence ()
8728 : #line 15576 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8729 : {
8730 : ix86_expand_binary_operator (ASHIFT, QImode, operands, TARGET_APX_NDD);
8731 : DONE;
8732 : }
8733 : #undef DONE
8734 : #undef FAIL
8735 : }
8736 : static const uint8_t expand_encoding[] = {
8737 : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x0f, 0x01, 0x01,
8738 : 0x01, 0x02
8739 : };
8740 : return complete_seq (expand_encoding, operands);
8741 : }
8742 :
8743 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:15643 */
8744 : extern rtx_insn *gen_split_561 (rtx_insn *, rtx *);
8745 : rtx_insn *
8746 : gen_split_561 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8747 : {
8748 : if (dump_file)
8749 : fprintf (dump_file, "Splitting with gen_split_561 (i386.md:15643)\n");
8750 : start_sequence ();
8751 : #define FAIL return (end_sequence (), nullptr)
8752 : #define DONE return end_sequence ()
8753 : #line 15670 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8754 : {
8755 : if ((INTVAL (operands[3]) & (8 * BITS_PER_UNIT)) != 0)
8756 : {
8757 : emit_insn (gen_ashlti3_doubleword (operands[0], operands[1],
8758 : operands[2]));
8759 : DONE;
8760 : }
8761 :
8762 : split_double_mode (TImode, &operands[0], 2, &operands[4], &operands[6]);
8763 :
8764 : operands[8] = GEN_INT (8 * BITS_PER_UNIT - 1);
8765 : operands[9] = GEN_INT (8 * BITS_PER_UNIT);
8766 :
8767 : if ((INTVAL (operands[3]) & ((8 * BITS_PER_UNIT) - 1))
8768 : != ((8 * BITS_PER_UNIT) - 1))
8769 : {
8770 : rtx tem = gen_reg_rtx (QImode);
8771 : emit_insn (gen_andqi3 (tem, operands[2], operands[3]));
8772 : operands[2] = tem;
8773 : }
8774 :
8775 : if (!rtx_equal_p (operands[6], operands[7]))
8776 : emit_move_insn (operands[6], operands[7]);
8777 : }
8778 : #undef DONE
8779 : #undef FAIL
8780 : static const uint8_t expand_encoding[] = {
8781 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x06, 0x4a,
8782 : 0x12, 0x4d, 0x12, 0x01, 0x06, 0x49, 0x0f, 0x01,
8783 : 0x02, 0x01, 0x08, 0x32, 0x12, 0x50, 0x13, 0x6f,
8784 : 0x13, 0x01, 0x05, 0x3c, 0x0f, 0x01, 0x09, 0x49,
8785 : 0x0f, 0x01, 0x02, 0x01, 0x08, 0x00, 0x05, 0x02,
8786 : 0x11, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x4d,
8787 : 0x12, 0x01, 0x05, 0x01, 0x02, 0x05, 0x02, 0x11
8788 : };
8789 : return complete_seq (expand_encoding, operands);
8790 : }
8791 :
8792 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16195 */
8793 : extern rtx_insn *gen_split_574 (rtx_insn *, rtx *);
8794 : rtx_insn *
8795 : gen_split_574 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8796 : {
8797 : if (dump_file)
8798 : fprintf (dump_file, "Splitting with gen_split_574 (i386.md:16195)\n");
8799 : start_sequence ();
8800 : static const uint8_t expand_encoding[] = {
8801 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a,
8802 : 0x11, 0x4d, 0x11, 0x01, 0x00, 0x49, 0x0f, 0x01,
8803 : 0x02, 0x27, 0x1f, 0x32, 0x11, 0x50, 0x12, 0x6f,
8804 : 0x12, 0x01, 0x01, 0x3c, 0x0f, 0x27, 0x20, 0x49,
8805 : 0x0f, 0x01, 0x02, 0x27, 0x1f, 0x00, 0x05, 0x02,
8806 : 0x11
8807 : };
8808 : return complete_seq (expand_encoding, operands);
8809 : }
8810 :
8811 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16361 */
8812 : extern rtx_insn *gen_split_576 (rtx_insn *, rtx *);
8813 : rtx_insn *
8814 : gen_split_576 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8815 : {
8816 : if (dump_file)
8817 : fprintf (dump_file, "Splitting with gen_split_576 (i386.md:16361)\n");
8818 : start_sequence ();
8819 : #define FAIL return (end_sequence (), nullptr)
8820 : #define DONE return end_sequence ()
8821 : #line 16368 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8822 : operands[2] = gen_lowpart (SImode, operands[2]);
8823 : #undef DONE
8824 : #undef FAIL
8825 : static const uint8_t expand_encoding[] = {
8826 : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x11, 0x01, 0x01,
8827 : 0x01, 0x02
8828 : };
8829 : return complete_seq (expand_encoding, operands);
8830 : }
8831 :
8832 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16467 */
8833 : extern rtx_insn *gen_split_580 (rtx_insn *, rtx *);
8834 : rtx_insn *
8835 : gen_split_580 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8836 : {
8837 : if (dump_file)
8838 : fprintf (dump_file, "Splitting with gen_split_580 (i386.md:16467)\n");
8839 : start_sequence ();
8840 : #define FAIL return (end_sequence (), nullptr)
8841 : #define DONE return end_sequence ()
8842 : #line 16476 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8843 : operands[2] = gen_lowpart (SImode, operands[2]);
8844 : #undef DONE
8845 : #undef FAIL
8846 : static const uint8_t expand_encoding[] = {
8847 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x4d, 0x11,
8848 : 0x01, 0x01, 0x01, 0x02
8849 : };
8850 : return complete_seq (expand_encoding, operands);
8851 : }
8852 :
8853 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16683 */
8854 : extern rtx_insn *gen_split_590 (rtx_insn *, rtx *);
8855 : rtx_insn *
8856 : gen_split_590 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8857 : {
8858 : if (dump_file)
8859 : fprintf (dump_file, "Splitting with gen_split_590 (i386.md:16683)\n");
8860 : start_sequence ();
8861 : #define FAIL return (end_sequence (), nullptr)
8862 : #define DONE return end_sequence ()
8863 : #line 16692 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8864 : {
8865 : if (DImode != DImode)
8866 : {
8867 : operands[0] = gen_lowpart (DImode, operands[0]);
8868 : operands[1] = gen_lowpart (DImode, operands[1]);
8869 : }
8870 : operands[2] = GEN_INT (1 << INTVAL (operands[2]));
8871 : }
8872 : #undef DONE
8873 : #undef FAIL
8874 : static const uint8_t expand_encoding[] = {
8875 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x12, 0x01, 0x01,
8876 : 0x01, 0x02
8877 : };
8878 : return complete_seq (expand_encoding, operands);
8879 : }
8880 :
8881 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:16948 */
8882 : rtx
8883 : gen_lshrdi3 (const rtx operand0, const rtx operand1, const rtx operand2)
8884 : {
8885 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
8886 : start_sequence ();
8887 : {
8888 : #define FAIL return (end_sequence (), nullptr)
8889 : #define DONE return end_sequence ()
8890 : #line 16953 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8891 : {
8892 : ix86_expand_binary_operator (LSHIFTRT, DImode, operands, TARGET_APX_NDD);
8893 : DONE;
8894 : }
8895 : #undef DONE
8896 : #undef FAIL
8897 : }
8898 : static const uint8_t expand_encoding[] = {
8899 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x12, 0x01, 0x01,
8900 : 0x01, 0x02
8901 : };
8902 : return complete_seq (expand_encoding, operands);
8903 : }
8904 :
8905 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17020 */
8906 : extern rtx_insn *gen_split_601 (rtx_insn *, rtx *);
8907 : rtx_insn *
8908 : gen_split_601 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
8909 : {
8910 : if (dump_file)
8911 : fprintf (dump_file, "Splitting with gen_split_601 (i386.md:17020)\n");
8912 : start_sequence ();
8913 : #define FAIL return (end_sequence (), nullptr)
8914 : #define DONE return end_sequence ()
8915 : #line 17047 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8916 : {
8917 : if ((INTVAL (operands[3]) & (8 * BITS_PER_UNIT)) != 0)
8918 : {
8919 : emit_insn (gen_lshrti3_doubleword (operands[0], operands[1],
8920 : operands[2]));
8921 : DONE;
8922 : }
8923 :
8924 : split_double_mode (TImode, &operands[0], 2, &operands[4], &operands[6]);
8925 :
8926 : operands[8] = GEN_INT (8 * BITS_PER_UNIT - 1);
8927 : operands[9] = GEN_INT (8 * BITS_PER_UNIT);
8928 :
8929 : if ((INTVAL (operands[3]) & ((8 * BITS_PER_UNIT) - 1))
8930 : != ((8 * BITS_PER_UNIT) - 1))
8931 : {
8932 : rtx tem = gen_reg_rtx (QImode);
8933 : emit_insn (gen_andqi3 (tem, operands[2], operands[3]));
8934 : operands[2] = tem;
8935 : }
8936 :
8937 : if (!rtx_equal_p (operands[4], operands[5]))
8938 : emit_move_insn (operands[4], operands[5]);
8939 : }
8940 : #undef DONE
8941 : #undef FAIL
8942 : static const uint8_t expand_encoding[] = {
8943 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x4a,
8944 : 0x12, 0x50, 0x12, 0x01, 0x04, 0x49, 0x0f, 0x01,
8945 : 0x02, 0x01, 0x08, 0x32, 0x12, 0x4d, 0x13, 0x6f,
8946 : 0x13, 0x01, 0x07, 0x3c, 0x0f, 0x01, 0x09, 0x49,
8947 : 0x0f, 0x01, 0x02, 0x01, 0x08, 0x00, 0x05, 0x02,
8948 : 0x11, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x06, 0x50,
8949 : 0x12, 0x01, 0x07, 0x01, 0x02, 0x05, 0x02, 0x11
8950 : };
8951 : return complete_seq (expand_encoding, operands);
8952 : }
8953 :
8954 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17096 */
8955 : extern rtx_insn *gen_peephole2_183 (rtx_insn *, rtx *);
8956 : rtx_insn *
8957 : gen_peephole2_183 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8958 : {
8959 : HARD_REG_SET _regs_allocated;
8960 : CLEAR_HARD_REG_SET (_regs_allocated);
8961 : if ((operands[3] = peep2_find_free_register (0, 1, "r", DImode, &_regs_allocated)) == NULL_RTX)
8962 : return NULL;
8963 : if (dump_file)
8964 : fprintf (dump_file, "Splitting with gen_peephole2_183 (i386.md:17096)\n");
8965 : start_sequence ();
8966 : #define FAIL return (end_sequence (), nullptr)
8967 : #define DONE return end_sequence ()
8968 : #line 17106 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8969 : {
8970 : if (TARGET_APX_NDD
8971 : && !rtx_equal_p (operands[0], operands[1]))
8972 : ix86_split_rshift_ndd (LSHIFTRT, operands, operands[3]);
8973 : else
8974 : ix86_split_lshr (operands, operands[3], TImode);
8975 : DONE;
8976 : }
8977 : #undef DONE
8978 : #undef FAIL
8979 : static const uint8_t expand_encoding[] = {
8980 : 0x01, 0x27, 0x00
8981 : };
8982 : return complete_seq (expand_encoding, operands);
8983 : }
8984 :
8985 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17238 */
8986 : extern rtx_insn *gen_split_615 (rtx_insn *, rtx *);
8987 : rtx_insn *
8988 : gen_split_615 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
8989 : {
8990 : if (dump_file)
8991 : fprintf (dump_file, "Splitting with gen_split_615 (i386.md:17238)\n");
8992 : start_sequence ();
8993 : #define FAIL return (end_sequence (), nullptr)
8994 : #define DONE return end_sequence ()
8995 : #line 17251 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
8996 : {
8997 : if (rtx_equal_p (operands[4], operands[0]))
8998 : {
8999 : operands[1] = force_reg (DImode, operands[1]);
9000 : emit_insn (gen_x86_64_shrd_1_nf (operands[0], operands[1],
9001 : operands[2], operands[3]));
9002 : }
9003 : else if (rtx_equal_p (operands[1], operands[0]))
9004 : {
9005 : operands[4] = force_reg (DImode, operands[4]);
9006 : emit_insn (gen_x86_64_shld_1_nf (operands[0], operands[4],
9007 : operands[3], operands[2]));
9008 : }
9009 : else if (TARGET_APX_NDD)
9010 : {
9011 : rtx tmp = gen_reg_rtx (DImode);
9012 : if (MEM_P (operands[4]))
9013 : {
9014 : operands[1] = force_reg (DImode, operands[1]);
9015 : emit_insn (gen_x86_64_shrd_ndd_1_nf (tmp, operands[4], operands[1],
9016 : operands[2], operands[3]));
9017 : }
9018 : else if (MEM_P (operands[1]))
9019 : emit_insn (gen_x86_64_shld_ndd_1_nf (tmp, operands[1], operands[4],
9020 : operands[3], operands[2]));
9021 : else
9022 : emit_insn (gen_x86_64_shrd_ndd_1_nf (tmp, operands[4], operands[1],
9023 : operands[2], operands[3]));
9024 : emit_move_insn (operands[0], tmp);
9025 : }
9026 : else
9027 : {
9028 : operands[1] = force_reg (DImode, operands[1]);
9029 : rtx tmp = gen_reg_rtx (DImode);
9030 : emit_move_insn (tmp, operands[4]);
9031 : emit_insn (gen_x86_64_shrd_1_nf (tmp, operands[1],
9032 : operands[2], operands[3]));
9033 : emit_move_insn (operands[0], tmp);
9034 : }
9035 : DONE;
9036 : }
9037 : #undef DONE
9038 : #undef FAIL
9039 : static const uint8_t expand_encoding[] = {
9040 : 0x01, 0x27, 0x00
9041 : };
9042 : return complete_seq (expand_encoding, operands);
9043 : }
9044 :
9045 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:17815 */
9046 : extern rtx_insn *gen_split_631 (rtx_insn *, rtx *);
9047 : rtx_insn *
9048 : gen_split_631 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9049 : {
9050 : if (dump_file)
9051 : fprintf (dump_file, "Splitting with gen_split_631 (i386.md:17815)\n");
9052 : start_sequence ();
9053 : #define FAIL return (end_sequence (), nullptr)
9054 : #define DONE return end_sequence ()
9055 : #line 17823 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9056 : operands[2] = gen_lowpart (DImode, operands[2]);
9057 : #undef DONE
9058 : #undef FAIL
9059 : static const uint8_t expand_encoding[] = {
9060 : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x12, 0x01, 0x01,
9061 : 0x01, 0x02
9062 : };
9063 : return complete_seq (expand_encoding, operands);
9064 : }
9065 :
9066 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18163 */
9067 : extern rtx_insn *gen_split_641 (rtx_insn *, rtx *);
9068 : rtx_insn *
9069 : gen_split_641 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9070 : {
9071 : if (dump_file)
9072 : fprintf (dump_file, "Splitting with gen_split_641 (i386.md:18163)\n");
9073 : start_sequence ();
9074 : #define FAIL return (end_sequence (), nullptr)
9075 : #define DONE return end_sequence ()
9076 : #line 18202 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9077 :
9078 : #undef DONE
9079 : #undef FAIL
9080 : static const uint8_t expand_encoding[] = {
9081 : 0x02, 0x1f, 0x81, 0x06, 0x11, 0x01, 0x00, 0x27,
9082 : 0x08, 0x27, 0x08, 0x81, 0x06, 0x11, 0x01, 0x01,
9083 : 0x27, 0x08, 0x27, 0x08, 0x17, 0x00, 0x02, 0x1f,
9084 : 0x81, 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27,
9085 : 0x08, 0x32, 0x11, 0x4f, 0x0f, 0x32, 0x0f, 0x81,
9086 : 0x06, 0x11, 0x01, 0x00, 0x27, 0x08, 0x27, 0x08,
9087 : 0x00, 0x01, 0x02, 0x00, 0x05, 0x02, 0x11
9088 : };
9089 : return complete_seq (expand_encoding, operands);
9090 : }
9091 :
9092 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18240 */
9093 : extern rtx_insn *gen_split_652 (rtx_insn *, rtx *);
9094 : rtx_insn *
9095 : gen_split_652 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9096 : {
9097 : if (dump_file)
9098 : fprintf (dump_file, "Splitting with gen_split_652 (i386.md:18240)\n");
9099 : start_sequence ();
9100 : #define FAIL return (end_sequence (), nullptr)
9101 : #define DONE return end_sequence ()
9102 : #line 18259 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9103 :
9104 : #undef DONE
9105 : #undef FAIL
9106 : static const uint8_t expand_encoding[] = {
9107 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4f,
9108 : 0x11, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9109 : };
9110 : return complete_seq (expand_encoding, operands);
9111 : }
9112 :
9113 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18287 */
9114 : extern rtx_insn *gen_split_662 (rtx_insn *, rtx *);
9115 : rtx_insn *
9116 : gen_split_662 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9117 : {
9118 : if (dump_file)
9119 : fprintf (dump_file, "Splitting with gen_split_662 (i386.md:18287)\n");
9120 : start_sequence ();
9121 : #define FAIL return (end_sequence (), nullptr)
9122 : #define DONE return end_sequence ()
9123 : #line 18305 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9124 :
9125 : #undef DONE
9126 : #undef FAIL
9127 : static const uint8_t expand_encoding[] = {
9128 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4d,
9129 : 0x11, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9130 : };
9131 : return complete_seq (expand_encoding, operands);
9132 : }
9133 :
9134 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18308 */
9135 : extern rtx_insn *gen_split_668 (rtx_insn *, rtx *);
9136 : rtx_insn *
9137 : gen_split_668 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9138 : {
9139 : if (dump_file)
9140 : fprintf (dump_file, "Splitting with gen_split_668 (i386.md:18308)\n");
9141 : start_sequence ();
9142 : #define FAIL return (end_sequence (), nullptr)
9143 : #define DONE return end_sequence ()
9144 : #line 18329 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9145 : {
9146 : HOST_WIDE_INT cnt = INTVAL (operands[3]) & (4 * BITS_PER_UNIT - 1);
9147 :
9148 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9149 : operands[2] = gen_lowpart (QImode, operands[2]);
9150 :
9151 : operands[4] = gen_reg_rtx (QImode);
9152 :
9153 : rtx (*insn)(rtx, rtx) = (cnt == 0) ? gen_negqi2 : gen_one_cmplqi2;
9154 : emit_insn (insn (operands[4], operands[2]));
9155 : }
9156 : #undef DONE
9157 : #undef FAIL
9158 : static const uint8_t expand_encoding[] = {
9159 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4d,
9160 : 0x11, 0x01, 0x01, 0x01, 0x04, 0x05, 0x02, 0x11
9161 : };
9162 : return complete_seq (expand_encoding, operands);
9163 : }
9164 :
9165 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18342 */
9166 : extern rtx_insn *gen_split_679 (rtx_insn *, rtx *);
9167 : rtx_insn *
9168 : gen_split_679 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9169 : {
9170 : if (dump_file)
9171 : fprintf (dump_file, "Splitting with gen_split_679 (i386.md:18342)\n");
9172 : start_sequence ();
9173 : #define FAIL return (end_sequence (), nullptr)
9174 : #define DONE return end_sequence ()
9175 : #line 18362 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9176 : {
9177 : HOST_WIDE_INT cnt = INTVAL (operands[3]) & (8 * BITS_PER_UNIT - 1);
9178 :
9179 : operands[4] = gen_reg_rtx (QImode);
9180 :
9181 : rtx (*insn)(rtx, rtx) = (cnt == 0) ? gen_negqi2 : gen_one_cmplqi2;
9182 : emit_insn (insn (operands[4], operands[2]));
9183 : }
9184 : #undef DONE
9185 : #undef FAIL
9186 : static const uint8_t expand_encoding[] = {
9187 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4f,
9188 : 0x12, 0x01, 0x01, 0x01, 0x04, 0x05, 0x02, 0x11
9189 : };
9190 : return complete_seq (expand_encoding, operands);
9191 : }
9192 :
9193 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18513 */
9194 : rtx
9195 : gen_rotlsi3 (const rtx operand0, const rtx operand1, const rtx operand2)
9196 : {
9197 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
9198 : start_sequence ();
9199 : {
9200 : #define FAIL return (end_sequence (), nullptr)
9201 : #define DONE return end_sequence ()
9202 : #line 18518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9203 : {
9204 : ix86_expand_binary_operator (ROTATE, SImode, operands, TARGET_APX_NDD);
9205 : DONE;
9206 : }
9207 : #undef DONE
9208 : #undef FAIL
9209 : }
9210 : static const uint8_t expand_encoding[] = {
9211 : 0x01, 0x1f, 0x01, 0x00, 0x4e, 0x11, 0x01, 0x01,
9212 : 0x01, 0x02
9213 : };
9214 : return complete_seq (expand_encoding, operands);
9215 : }
9216 :
9217 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18524 */
9218 : extern rtx_insn *gen_split_689 (rtx_insn *, rtx *);
9219 : rtx_insn *
9220 : gen_split_689 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9221 : {
9222 : if (dump_file)
9223 : fprintf (dump_file, "Splitting with gen_split_689 (i386.md:18524)\n");
9224 : start_sequence ();
9225 : #define FAIL return (end_sequence (), nullptr)
9226 : #define DONE return end_sequence ()
9227 : #line 18544 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9228 : {
9229 : operands[2] = force_lowpart_subreg (QImode, operands[2],
9230 : GET_MODE (operands[2]));
9231 : if (TARGET_APX_NF)
9232 : {
9233 : emit_move_insn (operands[0],
9234 : gen_rtx_ROTATERT (SImode, operands[1],
9235 : operands[2]));
9236 : DONE;
9237 : }
9238 : }
9239 : #undef DONE
9240 : #undef FAIL
9241 : static const uint8_t expand_encoding[] = {
9242 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x51,
9243 : 0x11, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9244 : };
9245 : return complete_seq (expand_encoding, operands);
9246 : }
9247 :
9248 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18556 */
9249 : extern rtx_insn *gen_split_699 (rtx_insn *, rtx *);
9250 : rtx_insn *
9251 : gen_split_699 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9252 : {
9253 : if (dump_file)
9254 : fprintf (dump_file, "Splitting with gen_split_699 (i386.md:18556)\n");
9255 : start_sequence ();
9256 : #define FAIL return (end_sequence (), nullptr)
9257 : #define DONE return end_sequence ()
9258 : #line 18571 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9259 : operands[5] = gen_reg_rtx (DImode);
9260 : #undef DONE
9261 : #undef FAIL
9262 : static const uint8_t expand_encoding[] = {
9263 : 0x02, 0x1f, 0x01, 0x05, 0x01, 0x01, 0x1f, 0x01,
9264 : 0x00, 0x51, 0x12, 0x01, 0x05, 0x32, 0x0f, 0x02,
9265 : 0x04, 0x01, 0x02, 0x01, 0x03, 0x00
9266 : };
9267 : return complete_seq (expand_encoding, operands);
9268 : }
9269 :
9270 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18602 */
9271 : extern rtx_insn *gen_split_709 (rtx_insn *, rtx *);
9272 : rtx_insn *
9273 : gen_split_709 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9274 : {
9275 : if (dump_file)
9276 : fprintf (dump_file, "Splitting with gen_split_709 (i386.md:18602)\n");
9277 : start_sequence ();
9278 : #define FAIL return (end_sequence (), nullptr)
9279 : #define DONE return end_sequence ()
9280 : #line 18615 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9281 : operands[4] = gen_reg_rtx (QImode);
9282 : #undef DONE
9283 : #undef FAIL
9284 : static const uint8_t expand_encoding[] = {
9285 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9286 : 0x00, 0x51, 0x0f, 0x01, 0x04, 0x49, 0x0f, 0x01,
9287 : 0x02, 0x01, 0x03
9288 : };
9289 : return complete_seq (expand_encoding, operands);
9290 : }
9291 :
9292 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18617 */
9293 : extern rtx_insn *gen_split_717 (rtx_insn *, rtx *);
9294 : rtx_insn *
9295 : gen_split_717 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9296 : {
9297 : if (dump_file)
9298 : fprintf (dump_file, "Splitting with gen_split_717 (i386.md:18617)\n");
9299 : start_sequence ();
9300 : #define FAIL return (end_sequence (), nullptr)
9301 : #define DONE return end_sequence ()
9302 : #line 18635 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9303 : {
9304 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9305 : operands[2] = gen_lowpart (QImode, operands[2]);
9306 : }
9307 : #undef DONE
9308 : #undef FAIL
9309 : static const uint8_t expand_encoding[] = {
9310 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x51,
9311 : 0x0f, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9312 : };
9313 : return complete_seq (expand_encoding, operands);
9314 : }
9315 :
9316 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18640 */
9317 : extern rtx_insn *gen_split_727 (rtx_insn *, rtx *);
9318 : rtx_insn *
9319 : gen_split_727 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9320 : {
9321 : if (dump_file)
9322 : fprintf (dump_file, "Splitting with gen_split_727 (i386.md:18640)\n");
9323 : start_sequence ();
9324 : #define FAIL return (end_sequence (), nullptr)
9325 : #define DONE return end_sequence ()
9326 : #line 18652 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9327 : operands[4] = gen_reg_rtx (HImode);
9328 : #undef DONE
9329 : #undef FAIL
9330 : static const uint8_t expand_encoding[] = {
9331 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9332 : 0x00, 0x51, 0x10, 0x01, 0x04, 0x32, 0x0f, 0x01,
9333 : 0x02, 0x00
9334 : };
9335 : return complete_seq (expand_encoding, operands);
9336 : }
9337 :
9338 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18654 */
9339 : extern rtx_insn *gen_split_737 (rtx_insn *, rtx *);
9340 : rtx_insn *
9341 : gen_split_737 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9342 : {
9343 : if (dump_file)
9344 : fprintf (dump_file, "Splitting with gen_split_737 (i386.md:18654)\n");
9345 : start_sequence ();
9346 : #define FAIL return (end_sequence (), nullptr)
9347 : #define DONE return end_sequence ()
9348 : #line 18671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9349 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9350 : #undef DONE
9351 : #undef FAIL
9352 : static const uint8_t expand_encoding[] = {
9353 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x51,
9354 : 0x11, 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:18673 */
9360 : extern rtx_insn *gen_split_747 (rtx_insn *, rtx *);
9361 : rtx_insn *
9362 : gen_split_747 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9363 : {
9364 : if (dump_file)
9365 : fprintf (dump_file, "Splitting with gen_split_747 (i386.md:18673)\n");
9366 : start_sequence ();
9367 : #define FAIL return (end_sequence (), nullptr)
9368 : #define DONE return end_sequence ()
9369 : #line 18684 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9370 : operands[4] = gen_reg_rtx (DImode);
9371 : #undef DONE
9372 : #undef FAIL
9373 : static const uint8_t expand_encoding[] = {
9374 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9375 : 0x00, 0x51, 0x12, 0x01, 0x04, 0x01, 0x02
9376 : };
9377 : return complete_seq (expand_encoding, operands);
9378 : }
9379 :
9380 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18709 */
9381 : extern rtx_insn *gen_split_757 (rtx_insn *, rtx *);
9382 : rtx_insn *
9383 : gen_split_757 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9384 : {
9385 : if (dump_file)
9386 : fprintf (dump_file, "Splitting with gen_split_757 (i386.md:18709)\n");
9387 : start_sequence ();
9388 : #define FAIL return (end_sequence (), nullptr)
9389 : #define DONE return end_sequence ()
9390 : #line 18721 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9391 : operands[4] = gen_reg_rtx (QImode);
9392 : #undef DONE
9393 : #undef FAIL
9394 : static const uint8_t expand_encoding[] = {
9395 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9396 : 0x00, 0x4e, 0x0f, 0x01, 0x04, 0x32, 0x0f, 0x01,
9397 : 0x02, 0x00
9398 : };
9399 : return complete_seq (expand_encoding, operands);
9400 : }
9401 :
9402 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18723 */
9403 : extern rtx_insn *gen_split_767 (rtx_insn *, rtx *);
9404 : rtx_insn *
9405 : gen_split_767 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9406 : {
9407 : if (dump_file)
9408 : fprintf (dump_file, "Splitting with gen_split_767 (i386.md:18723)\n");
9409 : start_sequence ();
9410 : #define FAIL return (end_sequence (), nullptr)
9411 : #define DONE return end_sequence ()
9412 : #line 18740 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9413 : operands[2] = force_reg (GET_MODE (operands[2]), operands[2]);
9414 : #undef DONE
9415 : #undef FAIL
9416 : static const uint8_t expand_encoding[] = {
9417 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4e,
9418 : 0x10, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9419 : };
9420 : return complete_seq (expand_encoding, operands);
9421 : }
9422 :
9423 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18742 */
9424 : extern rtx_insn *gen_split_777 (rtx_insn *, rtx *);
9425 : rtx_insn *
9426 : gen_split_777 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9427 : {
9428 : if (dump_file)
9429 : fprintf (dump_file, "Splitting with gen_split_777 (i386.md:18742)\n");
9430 : start_sequence ();
9431 : #define FAIL return (end_sequence (), nullptr)
9432 : #define DONE return end_sequence ()
9433 : #line 18753 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9434 : operands[4] = gen_reg_rtx (SImode);
9435 : #undef DONE
9436 : #undef FAIL
9437 : static const uint8_t expand_encoding[] = {
9438 : 0x02, 0x1f, 0x01, 0x04, 0x01, 0x01, 0x1f, 0x01,
9439 : 0x00, 0x4e, 0x11, 0x01, 0x04, 0x01, 0x02
9440 : };
9441 : return complete_seq (expand_encoding, operands);
9442 : }
9443 :
9444 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:18850 */
9445 : extern rtx_insn *gen_split_787 (rtx_insn *, rtx *);
9446 : rtx_insn *
9447 : gen_split_787 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9448 : {
9449 : if (dump_file)
9450 : fprintf (dump_file, "Splitting with gen_split_787 (i386.md:18850)\n");
9451 : start_sequence ();
9452 : #define FAIL return (end_sequence (), nullptr)
9453 : #define DONE return end_sequence ()
9454 : #line 18859 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9455 : {
9456 : split_double_mode (TImode, &operands[0], 2, &operands[0], &operands[2]);
9457 : if (rtx_equal_p (operands[0], operands[1]))
9458 : {
9459 : emit_insn (gen_swapdi (operands[0], operands[2]));
9460 : DONE;
9461 : }
9462 : }
9463 : #undef DONE
9464 : #undef FAIL
9465 : static const uint8_t expand_encoding[] = {
9466 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x03, 0x1f, 0x01,
9467 : 0x02, 0x01, 0x01
9468 : };
9469 : return complete_seq (expand_encoding, operands);
9470 : }
9471 :
9472 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19094 */
9473 : extern rtx_insn *gen_split_796 (rtx_insn *, rtx *);
9474 : rtx_insn *
9475 : gen_split_796 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9476 : {
9477 : if (dump_file)
9478 : fprintf (dump_file, "Splitting with gen_split_796 (i386.md:19094)\n");
9479 : start_sequence ();
9480 : #define FAIL return (end_sequence (), nullptr)
9481 : #define DONE return end_sequence ()
9482 : #line 19117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9483 :
9484 : #undef DONE
9485 : #undef FAIL
9486 : static const uint8_t expand_encoding[] = {
9487 : 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00, 0x01, 0x01,
9488 : 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01, 0x00,
9489 : 0x4e, 0x0f, 0x01, 0x00, 0x01, 0x02, 0x05, 0x02,
9490 : 0x11
9491 : };
9492 : return complete_seq (expand_encoding, operands);
9493 : }
9494 :
9495 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19252 */
9496 : extern rtx_insn *gen_split_806 (rtx_insn *, rtx *);
9497 : rtx_insn *
9498 : gen_split_806 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9499 : {
9500 : if (dump_file)
9501 : fprintf (dump_file, "Splitting with gen_split_806 (i386.md:19252)\n");
9502 : start_sequence ();
9503 : static const uint8_t expand_encoding[] = {
9504 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a,
9505 : 0x11, 0x4d, 0x11, 0x27, 0x01, 0x01, 0x01, 0x01,
9506 : 0x03, 0x05, 0x02, 0x11
9507 : };
9508 : return complete_seq (expand_encoding, operands);
9509 : }
9510 :
9511 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19321 */
9512 : extern rtx_insn *gen_split_812 (rtx_insn *, rtx *);
9513 : rtx_insn *
9514 : gen_split_812 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9515 : {
9516 : if (dump_file)
9517 : fprintf (dump_file, "Splitting with gen_split_812 (i386.md:19321)\n");
9518 : start_sequence ();
9519 : static const uint8_t expand_encoding[] = {
9520 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49,
9521 : 0x11, 0x4e, 0x11, 0x27, 0x81, 0xff, 0xff, 0xff,
9522 : 0xff, 0xff, 0xff, 0xff, 0xff, 0x7e, 0x01, 0x01,
9523 : 0x01, 0x03, 0x05, 0x02, 0x11
9524 : };
9525 : return complete_seq (expand_encoding, operands);
9526 : }
9527 :
9528 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19511 */
9529 : extern rtx_insn *gen_peephole2_187 (rtx_insn *, rtx *);
9530 : rtx_insn *
9531 : gen_peephole2_187 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9532 : {
9533 : HARD_REG_SET _regs_allocated;
9534 : CLEAR_HARD_REG_SET (_regs_allocated);
9535 : if ((operands[2] = peep2_find_free_register (0, 0, "r", DImode, &_regs_allocated)) == NULL_RTX)
9536 : return NULL;
9537 : if (dump_file)
9538 : fprintf (dump_file, "Splitting with gen_peephole2_187 (i386.md:19511)\n");
9539 : start_sequence ();
9540 : #define FAIL return (end_sequence (), nullptr)
9541 : #define DONE return end_sequence ()
9542 : #line 19524 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9543 : {
9544 : int i = INTVAL (operands[1]);
9545 :
9546 : operands[3] = gen_int_mode (HOST_WIDE_INT_1U << i, DImode);
9547 :
9548 : if (!x86_64_immediate_operand (operands[3], DImode))
9549 : {
9550 : emit_move_insn (operands[2], operands[3]);
9551 : operands[3] = operands[2];
9552 : }
9553 : }
9554 : #undef DONE
9555 : #undef FAIL
9556 : static const uint8_t expand_encoding[] = {
9557 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4b,
9558 : 0x12, 0x01, 0x00, 0x01, 0x03, 0x05, 0x02, 0x11
9559 : };
9560 : return complete_seq (expand_encoding, operands);
9561 : }
9562 :
9563 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19703 */
9564 : extern rtx_insn *gen_split_830 (rtx_insn *, rtx *);
9565 : rtx_insn *
9566 : gen_split_830 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9567 : {
9568 : if (dump_file)
9569 : fprintf (dump_file, "Splitting with gen_split_830 (i386.md:19703)\n");
9570 : start_sequence ();
9571 : #define FAIL return (end_sequence (), nullptr)
9572 : #define DONE return end_sequence ()
9573 : #line 19725 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9574 : {
9575 : if (GET_CODE (operands[5]) == EQ)
9576 : std::swap (operands[3], operands[4]);
9577 : }
9578 : #undef DONE
9579 : #undef FAIL
9580 : static const uint8_t expand_encoding[] = {
9581 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x27,
9582 : 0x00, 0x81, 0x06, 0x11, 0x01, 0x01, 0x27, 0x01,
9583 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x39, 0x11, 0x66,
9584 : 0x00, 0x30, 0x08, 0x11, 0x27, 0x00, 0x01, 0x03,
9585 : 0x01, 0x04
9586 : };
9587 : return complete_seq (expand_encoding, operands);
9588 : }
9589 :
9590 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19789 */
9591 : extern rtx_insn *gen_split_840 (rtx_insn *, rtx *);
9592 : rtx_insn *
9593 : gen_split_840 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9594 : {
9595 : if (dump_file)
9596 : fprintf (dump_file, "Splitting with gen_split_840 (i386.md:19789)\n");
9597 : start_sequence ();
9598 : static const uint8_t expand_encoding[] = {
9599 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x3a, 0x08, 0x27,
9600 : 0x00, 0x81, 0x06, 0x11, 0x01, 0x01, 0x27, 0x01,
9601 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x63, 0x0f, 0x30,
9602 : 0x08, 0x11, 0x27, 0x00
9603 : };
9604 : return complete_seq (expand_encoding, operands);
9605 : }
9606 :
9607 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:19852 */
9608 : extern rtx_insn *gen_split_848 (rtx_insn *, rtx *);
9609 : rtx_insn *
9610 : gen_split_848 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9611 : {
9612 : if (dump_file)
9613 : fprintf (dump_file, "Splitting with gen_split_848 (i386.md:19852)\n");
9614 : start_sequence ();
9615 : #define FAIL return (end_sequence (), nullptr)
9616 : #define DONE return end_sequence ()
9617 : #line 19865 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9618 : {
9619 : enum rtx_code new_code;
9620 :
9621 : operands[1] = shallow_copy_rtx (operands[1]);
9622 : switch (GET_CODE (operands[1]))
9623 : {
9624 : case GTU: new_code = NE; break;
9625 : case LEU: new_code = EQ; break;
9626 : default: gcc_unreachable ();
9627 : }
9628 : PUT_CODE (operands[1], new_code);
9629 :
9630 : operands[4] = GEN_INT (exact_log2 (UINTVAL (operands[3]) + 1));
9631 : }
9632 : #undef DONE
9633 : #undef FAIL
9634 : static const uint8_t expand_encoding[] = {
9635 : 0x02, 0x1f, 0x30, 0x0c, 0x11, 0x3a, 0x0c, 0x50,
9636 : 0x12, 0x01, 0x02, 0x01, 0x04, 0x27, 0x00, 0x1f,
9637 : 0x01, 0x00, 0x02, 0x01, 0x30, 0x0c, 0x11, 0x27,
9638 : 0x00
9639 : };
9640 : return complete_seq (expand_encoding, operands);
9641 : }
9642 :
9643 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20225 */
9644 : extern rtx_insn *gen_split_865 (rtx_insn *, rtx *);
9645 : rtx_insn *
9646 : gen_split_865 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9647 : {
9648 : if (dump_file)
9649 : fprintf (dump_file, "Splitting with gen_split_865 (i386.md:20225)\n");
9650 : start_sequence ();
9651 : #define FAIL return (end_sequence (), nullptr)
9652 : #define DONE return end_sequence ()
9653 : #line 20237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9654 : {
9655 : operands[0] = shallow_copy_rtx (operands[0]);
9656 : PUT_MODE (operands[0], VOIDmode);
9657 : PUT_CODE (operands[0],
9658 : ix86_reverse_condition (GET_CODE (operands[0]),
9659 : GET_MODE (XEXP (operands[0], 0))));
9660 :
9661 : /* Make sure that (a) the CCmode we have for the flags is strong
9662 : enough for the reversed compare or (b) we have a valid FP compare. */
9663 : if (! ix86_comparison_operator (operands[0], VOIDmode))
9664 : FAIL;
9665 : }
9666 : #undef DONE
9667 : #undef FAIL
9668 : static const uint8_t expand_encoding[] = {
9669 : 0x01, 0x1f, 0x2f, 0x39, 0x00, 0x01, 0x00, 0x37,
9670 : 0x00, 0x01, 0x01, 0x2f
9671 : };
9672 : return complete_seq (expand_encoding, operands);
9673 : }
9674 :
9675 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20527 */
9676 : rtx
9677 : gen_call (const rtx operand0, const rtx operand1, const rtx operand2)
9678 : {
9679 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
9680 : start_sequence ();
9681 : {
9682 : #define FAIL return (end_sequence (), nullptr)
9683 : #define DONE return end_sequence ()
9684 : #line 20532 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9685 : {
9686 : ix86_expand_call (NULL, operands[0], operands[1],
9687 : operands[2], NULL, false);
9688 : DONE;
9689 : }
9690 : #undef DONE
9691 : #undef FAIL
9692 : }
9693 : static const uint8_t expand_encoding[] = {
9694 : 0x02, 0x22, 0x00, 0x01, 0x00, 0x01, 0x01, 0x20,
9695 : 0x00, 0x01, 0x02
9696 : };
9697 : return complete_seq (expand_encoding, operands);
9698 : }
9699 :
9700 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20691 */
9701 : extern rtx_insn *gen_peephole2_201 (rtx_insn *, rtx *);
9702 : rtx_insn *
9703 : gen_peephole2_201 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9704 : {
9705 : if (dump_file)
9706 : fprintf (dump_file, "Splitting with gen_peephole2_201 (i386.md:20691)\n");
9707 : start_sequence ();
9708 : static const uint8_t expand_encoding[] = {
9709 : 0x02, 0x1b, 0x00, 0x01, 0x27, 0x00, 0x01, 0x17,
9710 : 0x00, 0x03, 0x22, 0x00, 0x36, 0x0f, 0x01, 0x01,
9711 : 0x01, 0x03, 0x1f, 0x30, 0x11, 0x07, 0x3b, 0x11,
9712 : 0x30, 0x11, 0x07, 0x01, 0x04, 0x1a, 0x00, 0x01,
9713 : 0x27, 0x00, 0x26
9714 : };
9715 : return complete_seq (expand_encoding, operands);
9716 : }
9717 :
9718 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:20929 */
9719 : rtx
9720 : gen_untyped_call (const rtx operand0, const rtx operand1, const rtx operand2)
9721 : {
9722 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
9723 : start_sequence ();
9724 : {
9725 : #define FAIL return (end_sequence (), nullptr)
9726 : #define DONE return end_sequence ()
9727 : #line 20935 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9728 : {
9729 : int i;
9730 :
9731 : /* In order to give reg-stack an easier job in validating two
9732 : coprocessor registers as containing a possible return value,
9733 : simply pretend the untyped call returns a complex long double
9734 : value.
9735 :
9736 : We can't use SSE_REGPARM_MAX here since callee is unprototyped
9737 : and should have the default ABI. */
9738 :
9739 : ix86_expand_call ((TARGET_FLOAT_RETURNS_IN_80387
9740 : ? gen_rtx_REG (XCmode, FIRST_FLOAT_REG) : NULL),
9741 : operands[0], const0_rtx,
9742 : GEN_INT ((TARGET_64BIT
9743 : ? (ix86_abi == SYSV_ABI
9744 : ? X86_64_SSE_REGPARM_MAX
9745 : : X86_64_MS_SSE_REGPARM_MAX)
9746 : : X86_32_SSE_REGPARM_MAX)
9747 : - 1),
9748 : NULL, false);
9749 :
9750 : for (i = 0; i < XVECLEN (operands[2], 0); i++)
9751 : {
9752 : rtx set = XVECEXP (operands[2], 0, i);
9753 : emit_move_insn (SET_DEST (set), SET_SRC (set));
9754 : }
9755 :
9756 : /* The optimizer does not know that the call sets the function value
9757 : registers we stored in the result block. We avoid problems by
9758 : claiming that all hard registers are used and clobbered at this
9759 : point. */
9760 : emit_insn (gen_blockage ());
9761 :
9762 : DONE;
9763 : }
9764 : #undef DONE
9765 : #undef FAIL
9766 : }
9767 : static const uint8_t expand_encoding[] = {
9768 : 0x01, 0x17, 0x00, 0x03, 0x22, 0x00, 0x01, 0x00,
9769 : 0x27, 0x00, 0x01, 0x01, 0x01, 0x02
9770 : };
9771 : return complete_seq (expand_encoding, operands);
9772 : }
9773 :
9774 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21539 */
9775 : extern rtx_insn *gen_split_873 (rtx_insn *, rtx *);
9776 : rtx_insn *
9777 : gen_split_873 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9778 : {
9779 : if (dump_file)
9780 : fprintf (dump_file, "Splitting with gen_split_873 (i386.md:21539)\n");
9781 : start_sequence ();
9782 : #define FAIL return (end_sequence (), nullptr)
9783 : #define DONE return end_sequence ()
9784 : #line 21558 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9785 : ix86_expand_clear (operands[0]);
9786 : #undef DONE
9787 : #undef FAIL
9788 : static const uint8_t expand_encoding[] = {
9789 : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x49,
9790 : 0x12, 0x32, 0x12, 0x81, 0x01, 0x11, 0x01, 0x01,
9791 : 0x00, 0x27, 0x3f, 0x1a, 0x00, 0x01, 0x01, 0x00,
9792 : 0x27, 0x05, 0x02, 0x11
9793 : };
9794 : return complete_seq (expand_encoding, operands);
9795 : }
9796 :
9797 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21836 */
9798 : extern rtx_insn *gen_split_882 (rtx_insn *, rtx *);
9799 : rtx_insn *
9800 : gen_split_882 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9801 : {
9802 : if (dump_file)
9803 : fprintf (dump_file, "Splitting with gen_split_882 (i386.md:21836)\n");
9804 : start_sequence ();
9805 : #define FAIL return (end_sequence (), nullptr)
9806 : #define DONE return end_sequence ()
9807 : #line 21857 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9808 : {
9809 : if (INTVAL (operands[2]) == 63)
9810 : {
9811 : emit_insn (gen_bsr_rex64_1 (operands[0], operands[1]));
9812 : DONE;
9813 : }
9814 : operands[3] = gen_reg_rtx (DImode);
9815 : operands[4] = GEN_INT (UINTVAL (operands[2]) - 63);
9816 : }
9817 : #undef DONE
9818 : #undef FAIL
9819 : static const uint8_t expand_encoding[] = {
9820 : 0x02, 0x1f, 0x01, 0x03, 0x3c, 0x12, 0x27, 0x3f,
9821 : 0x81, 0x00, 0x12, 0x01, 0x01, 0x1f, 0x01, 0x00,
9822 : 0x3b, 0x12, 0x01, 0x03, 0x01, 0x04
9823 : };
9824 : return complete_seq (expand_encoding, operands);
9825 : }
9826 :
9827 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:21938 */
9828 : extern rtx_insn *gen_split_889 (rtx_insn *, rtx *);
9829 : rtx_insn *
9830 : gen_split_889 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9831 : {
9832 : if (dump_file)
9833 : fprintf (dump_file, "Splitting with gen_split_889 (i386.md:21938)\n");
9834 : start_sequence ();
9835 : #define FAIL return (end_sequence (), nullptr)
9836 : #define DONE return end_sequence ()
9837 : #line 21953 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9838 : ix86_expand_clear (operands[0]);
9839 : #undef DONE
9840 : #undef FAIL
9841 : static const uint8_t expand_encoding[] = {
9842 : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x81,
9843 : 0x00, 0x12, 0x01, 0x01, 0x1a, 0x00, 0x01, 0x01,
9844 : 0x00, 0x27, 0x05, 0x02, 0x11
9845 : };
9846 : return complete_seq (expand_encoding, operands);
9847 : }
9848 :
9849 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22101 */
9850 : extern rtx_insn *gen_split_899 (rtx_insn *, rtx *);
9851 : rtx_insn *
9852 : gen_split_899 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9853 : {
9854 : if (dump_file)
9855 : fprintf (dump_file, "Splitting with gen_split_899 (i386.md:22101)\n");
9856 : start_sequence ();
9857 : #define FAIL return (end_sequence (), nullptr)
9858 : #define DONE return end_sequence ()
9859 : #line 22116 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9860 : ix86_expand_clear (operands[0]);
9861 : #undef DONE
9862 : #undef FAIL
9863 : static const uint8_t expand_encoding[] = {
9864 : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x01, 0x00, 0x1a,
9865 : 0x12, 0x01, 0x01, 0x01, 0x61, 0x1a, 0x00, 0x01,
9866 : 0x01, 0x00, 0x27, 0x05, 0x02, 0x11
9867 : };
9868 : return complete_seq (expand_encoding, operands);
9869 : }
9870 :
9871 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22367 */
9872 : extern rtx_insn *gen_split_909 (rtx_insn *, rtx *);
9873 : rtx_insn *
9874 : gen_split_909 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9875 : {
9876 : if (dump_file)
9877 : fprintf (dump_file, "Splitting with gen_split_909 (i386.md:22367)\n");
9878 : start_sequence ();
9879 : #define FAIL return (end_sequence (), nullptr)
9880 : #define DONE return end_sequence ()
9881 : #line 22398 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9882 : ix86_expand_clear (operands[0]);
9883 : #undef DONE
9884 : #undef FAIL
9885 : static const uint8_t expand_encoding[] = {
9886 : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x30, 0x0c, 0x11,
9887 : 0x3a, 0x0c, 0x49, 0x12, 0x3b, 0x12, 0x01, 0x01,
9888 : 0x27, 0x81, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9889 : 0xff, 0xff, 0x7f, 0x01, 0x01, 0x27, 0x00, 0x1f,
9890 : 0x01, 0x00, 0x49, 0x12, 0x3b, 0x12, 0x01, 0x01,
9891 : 0x27, 0x81, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
9892 : 0xff, 0xff, 0x7f, 0x01, 0x01, 0x1a, 0x00, 0x01,
9893 : 0x01, 0x00, 0x27
9894 : };
9895 : return complete_seq (expand_encoding, operands);
9896 : }
9897 :
9898 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:22970 */
9899 : rtx
9900 : gen_bswapdi2 (const rtx operand0, const rtx operand1)
9901 : {
9902 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
9903 : start_sequence ();
9904 : {
9905 : #define FAIL return (end_sequence (), nullptr)
9906 : #define DONE return end_sequence ()
9907 : #line 22974 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9908 : {
9909 : if (!TARGET_MOVBE)
9910 : operands[1] = force_reg (DImode, operands[1]);
9911 : }
9912 : #undef DONE
9913 : #undef FAIL
9914 : }
9915 : static const uint8_t expand_encoding[] = {
9916 : 0x01, 0x1f, 0x01, 0x00, 0x7d, 0x12, 0x01, 0x01
9917 : };
9918 : return complete_seq (expand_encoding, operands);
9919 : }
9920 :
9921 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:23177 */
9922 : rtx
9923 : gen_paritysi2 (const rtx operand0, const rtx operand1)
9924 : {
9925 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
9926 : start_sequence ();
9927 : {
9928 : #define FAIL _Pragma ("GCC error \"paritysi2 cannot FAIL\"") (void)0
9929 : #define DONE return end_sequence ()
9930 : #line 23181 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9931 : {
9932 : rtx scratch = gen_reg_rtx (QImode);
9933 : rtx shift = gen_reg_rtx (SImode);
9934 : rtx hipart = gen_reg_rtx (HImode);
9935 : rtx lopart = gen_reg_rtx (HImode);
9936 : rtx tmp = gen_reg_rtx (HImode);
9937 :
9938 : emit_insn (gen_lshrsi3 (shift, operands[1], GEN_INT (16)));
9939 : emit_move_insn (hipart, gen_lowpart (HImode, shift));
9940 : emit_move_insn (lopart, gen_lowpart (HImode, operands[1]));
9941 : emit_insn (gen_xorhi3 (tmp, hipart, lopart));
9942 :
9943 : emit_insn (gen_parityhi2_cmp (tmp));
9944 :
9945 : ix86_expand_setcc (scratch, ORDERED,
9946 : gen_rtx_REG (CCmode, FLAGS_REG), const0_rtx);
9947 :
9948 : emit_insn (gen_zero_extendqisi2 (operands[0], scratch));
9949 : DONE;
9950 : }
9951 : #undef DONE
9952 : #undef FAIL
9953 : }
9954 : static const uint8_t expand_encoding[] = {
9955 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x03, 0x11, 0x01,
9956 : 0x01
9957 : };
9958 : return complete_seq (expand_encoding, operands);
9959 : }
9960 :
9961 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:23598 */
9962 : extern rtx_insn *gen_split_918 (rtx_insn *, rtx *);
9963 : rtx_insn *
9964 : gen_split_918 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9965 : {
9966 : if (dump_file)
9967 : fprintf (dump_file, "Splitting with gen_split_918 (i386.md:23598)\n");
9968 : start_sequence ();
9969 : static const uint8_t expand_encoding[] = {
9970 : 0x01, 0x17, 0x00, 0x04, 0x1f, 0x01, 0x00, 0x1a,
9971 : 0x11, 0x04, 0x01, 0x01, 0x01, 0x03, 0x01, 0x02,
9972 : 0x30, 0x11, 0x07, 0x15, 0x21, 0x00, 0x01, 0x04,
9973 : 0x21, 0x00, 0x01, 0x05, 0x05, 0x02, 0x11
9974 : };
9975 : return complete_seq (expand_encoding, operands);
9976 : }
9977 :
9978 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:23661 */
9979 : extern rtx_insn *gen_split_923 (rtx_insn *, rtx *);
9980 : rtx_insn *
9981 : gen_split_923 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
9982 : {
9983 : if (dump_file)
9984 : fprintf (dump_file, "Splitting with gen_split_923 (i386.md:23661)\n");
9985 : start_sequence ();
9986 : #define FAIL return (end_sequence (), nullptr)
9987 : #define DONE return end_sequence ()
9988 : #line 23674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
9989 : {
9990 : operands[2] = gen_const_mem (DImode, GEN_INT (DEFAULT_TLS_SEG_OFFSET));
9991 : set_mem_addr_space (operands[2], DEFAULT_TLS_SEG_REG);
9992 : }
9993 : #undef DONE
9994 : #undef FAIL
9995 : static const uint8_t expand_encoding[] = {
9996 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3b,
9997 : 0x12, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
9998 : };
9999 : return complete_seq (expand_encoding, operands);
10000 : }
10001 :
10002 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24257 */
10003 : rtx
10004 : gen_sqrtsf2 (const rtx operand0, const rtx operand1)
10005 : {
10006 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10007 : start_sequence ();
10008 : {
10009 : #define FAIL _Pragma ("GCC error \"sqrtsf2 cannot FAIL\"") (void)0
10010 : #define DONE return end_sequence ()
10011 : #line 24263 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10012 : {
10013 : if (SFmode == SFmode
10014 : && TARGET_SSE && TARGET_SSE_MATH
10015 : && TARGET_RECIP_SQRT
10016 : && !optimize_function_for_size_p (cfun)
10017 : && flag_finite_math_only && !flag_trapping_math
10018 : && flag_unsafe_math_optimizations)
10019 : {
10020 : ix86_emit_swsqrtsf (operands[0], operands[1], SFmode, 0);
10021 : DONE;
10022 : }
10023 :
10024 : if (!(SSE_FLOAT_MODE_P (SFmode) && TARGET_SSE_MATH))
10025 : {
10026 : rtx op0 = gen_reg_rtx (XFmode);
10027 : rtx op1 = gen_reg_rtx (XFmode);
10028 :
10029 : emit_insn (gen_extendsfxf2 (op1, operands[1]));
10030 : emit_insn (gen_sqrtxf2 (op0, op1));
10031 : emit_insn (gen_truncxfsf2_i387_noop_unspec (operands[0], op0));
10032 : DONE;
10033 : }
10034 : }
10035 : #undef DONE
10036 : #undef FAIL
10037 : }
10038 : static const uint8_t expand_encoding[] = {
10039 : 0x01, 0x1f, 0x01, 0x00, 0x7c, 0x2d, 0x01, 0x01
10040 : };
10041 : return complete_seq (expand_encoding, operands);
10042 : }
10043 :
10044 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24489 */
10045 : rtx
10046 : gen_sindf2 (const rtx operand0, const rtx operand1)
10047 : {
10048 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10049 : start_sequence ();
10050 : {
10051 : #define FAIL _Pragma ("GCC error \"sindf2 cannot FAIL\"") (void)0
10052 : #define DONE return end_sequence ()
10053 : #line 24497 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10054 : {
10055 : rtx op0 = gen_reg_rtx (XFmode);
10056 : rtx op1 = gen_reg_rtx (XFmode);
10057 :
10058 : emit_insn (gen_extenddfxf2 (op1, operands[1]));
10059 : emit_insn (gen_sinxf2 (op0, op1));
10060 : emit_insn (gen_truncxfdf2 (operands[0], op0));
10061 : DONE;
10062 : }
10063 : #undef DONE
10064 : #undef FAIL
10065 : }
10066 : static const uint8_t expand_encoding[] = {
10067 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x2e, 0x01, 0x01,
10068 : 0x01, 0x41
10069 : };
10070 : return complete_seq (expand_encoding, operands);
10071 : }
10072 :
10073 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24629 */
10074 : rtx
10075 : gen_atansf2 (const rtx operand0, const rtx operand1)
10076 : {
10077 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10078 : start_sequence ();
10079 : {
10080 : #define FAIL _Pragma ("GCC error \"atansf2 cannot FAIL\"") (void)0
10081 : #define DONE return end_sequence ()
10082 : #line 24636 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10083 : {
10084 : rtx op0 = gen_reg_rtx (XFmode);
10085 : rtx op1 = gen_reg_rtx (XFmode);
10086 :
10087 : emit_insn (gen_extendsfxf2 (op1, operands[1]));
10088 : emit_insn (gen_atanxf2 (op0, op1));
10089 : emit_insn (gen_truncxfsf2 (operands[0], op0));
10090 : DONE;
10091 : }
10092 : #undef DONE
10093 : #undef FAIL
10094 : }
10095 : static const uint8_t expand_encoding[] = {
10096 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10097 : 0x01
10098 : };
10099 : return complete_seq (expand_encoding, operands);
10100 : }
10101 :
10102 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24733 */
10103 : rtx
10104 : gen_sinhsf2 (const rtx operand0, const rtx operand1)
10105 : {
10106 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10107 : start_sequence ();
10108 : {
10109 : #define FAIL _Pragma ("GCC error \"sinhsf2 cannot FAIL\"") (void)0
10110 : #define DONE return end_sequence ()
10111 : #line 24741 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10112 : {
10113 : rtx op0 = gen_reg_rtx (XFmode);
10114 : rtx op1 = gen_reg_rtx (XFmode);
10115 :
10116 : emit_insn (gen_extendsfxf2 (op1, operands[1]));
10117 : emit_insn (gen_sinhxf2 (op0, op1));
10118 : emit_insn (gen_truncxfsf2 (operands[0], op0));
10119 : DONE;
10120 : }
10121 : #undef DONE
10122 : #undef FAIL
10123 : }
10124 : static const uint8_t expand_encoding[] = {
10125 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10126 : 0x01
10127 : };
10128 : return complete_seq (expand_encoding, operands);
10129 : }
10130 :
10131 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24834 */
10132 : rtx
10133 : gen_acoshxf2 (const rtx operand0, const rtx operand1)
10134 : {
10135 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10136 : start_sequence ();
10137 : {
10138 : #define FAIL _Pragma ("GCC error \"acoshxf2 cannot FAIL\"") (void)0
10139 : #define DONE return end_sequence ()
10140 : #line 24839 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10141 : {
10142 : ix86_emit_i387_acosh (operands[0], operands[1]);
10143 : DONE;
10144 : }
10145 : #undef DONE
10146 : #undef FAIL
10147 : }
10148 : static const uint8_t expand_encoding[] = {
10149 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10150 : 0x01
10151 : };
10152 : return complete_seq (expand_encoding, operands);
10153 : }
10154 :
10155 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:24914 */
10156 : rtx
10157 : gen_logdf2 (const rtx operand0, const rtx operand1)
10158 : {
10159 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10160 : start_sequence ();
10161 : {
10162 : #define FAIL _Pragma ("GCC error \"logdf2 cannot FAIL\"") (void)0
10163 : #define DONE return end_sequence ()
10164 : #line 24921 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10165 : {
10166 : rtx op0 = gen_reg_rtx (XFmode);
10167 : rtx op1 = gen_reg_rtx (XFmode);
10168 :
10169 : emit_insn (gen_extenddfxf2 (op1, operands[1]));
10170 : emit_insn (gen_logxf2 (op0, op1));
10171 : emit_insn (gen_truncxfdf2 (operands[0], op0));
10172 : DONE;
10173 : }
10174 : #undef DONE
10175 : #undef FAIL
10176 : }
10177 : static const uint8_t expand_encoding[] = {
10178 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10179 : 0x01
10180 : };
10181 : return complete_seq (expand_encoding, operands);
10182 : }
10183 :
10184 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25051 */
10185 : rtx
10186 : gen_logbsf2 (const rtx operand0, const rtx operand1)
10187 : {
10188 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10189 : start_sequence ();
10190 : {
10191 : #define FAIL _Pragma ("GCC error \"logbsf2 cannot FAIL\"") (void)0
10192 : #define DONE return end_sequence ()
10193 : #line 25058 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10194 : {
10195 : rtx op0 = gen_reg_rtx (XFmode);
10196 : rtx op1 = gen_reg_rtx (XFmode);
10197 :
10198 : emit_insn (gen_extendsfxf2 (op1, operands[1]));
10199 : emit_insn (gen_logbxf2 (op0, op1));
10200 : emit_insn (gen_truncxfsf2 (operands[0], op1));
10201 : DONE;
10202 : }
10203 : #undef DONE
10204 : #undef FAIL
10205 : }
10206 : static const uint8_t expand_encoding[] = {
10207 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10208 : 0x01
10209 : };
10210 : return complete_seq (expand_encoding, operands);
10211 : }
10212 :
10213 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25203 */
10214 : rtx
10215 : gen_exp10sf2 (const rtx operand0, const rtx operand1)
10216 : {
10217 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10218 : start_sequence ();
10219 : {
10220 : #define FAIL _Pragma ("GCC error \"exp10sf2 cannot FAIL\"") (void)0
10221 : #define DONE return end_sequence ()
10222 : #line 25210 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10223 : {
10224 : rtx op0 = gen_reg_rtx (XFmode);
10225 : rtx op1 = gen_reg_rtx (XFmode);
10226 :
10227 : emit_insn (gen_extendsfxf2 (op1, operands[1]));
10228 : emit_insn (gen_exp10xf2 (op0, op1));
10229 : emit_insn (gen_truncxfsf2 (operands[0], op0));
10230 : DONE;
10231 : }
10232 : #undef DONE
10233 : #undef FAIL
10234 : }
10235 : static const uint8_t expand_encoding[] = {
10236 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10237 : 0x01
10238 : };
10239 : return complete_seq (expand_encoding, operands);
10240 : }
10241 :
10242 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25326 */
10243 : rtx
10244 : gen_ldexpdf3 (const rtx operand0, const rtx operand1, const rtx operand2)
10245 : {
10246 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
10247 : start_sequence ();
10248 : {
10249 : #define FAIL _Pragma ("GCC error \"ldexpdf3 cannot FAIL\"") (void)0
10250 : #define DONE return end_sequence ()
10251 : #line 25335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10252 : {
10253 : /* Prefer avx512f version. */
10254 : if (TARGET_AVX512F && TARGET_SSE_MATH)
10255 : {
10256 : rtx op2 = gen_reg_rtx (DFmode);
10257 : operands[1] = force_reg (DFmode, operands[1]);
10258 :
10259 : emit_insn (gen_floatsidf2 (op2, operands[2]));
10260 : emit_insn (gen_avx512f_scalefdf2 (operands[0], operands[1], op2));
10261 : }
10262 : else
10263 : {
10264 : rtx op0 = gen_reg_rtx (XFmode);
10265 : rtx op1 = gen_reg_rtx (XFmode);
10266 :
10267 : emit_insn (gen_extenddfxf2 (op1, operands[1]));
10268 : emit_insn (gen_ldexpxf3 (op0, op1, operands[2]));
10269 : emit_insn (gen_truncxfdf2 (operands[0], op0));
10270 : }
10271 : DONE;
10272 : }
10273 : #undef DONE
10274 : #undef FAIL
10275 : }
10276 : static const uint8_t expand_encoding[] = {
10277 : 0x03, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10278 : 0x01, 0x20, 0x00, 0x01, 0x02
10279 : };
10280 : return complete_seq (expand_encoding, operands);
10281 : }
10282 :
10283 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25512 */
10284 : rtx
10285 : gen_nearbyintdf2 (const rtx operand0, const rtx operand1)
10286 : {
10287 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10288 : start_sequence ();
10289 : {
10290 : #define FAIL _Pragma ("GCC error \"nearbyintdf2 cannot FAIL\"") (void)0
10291 : #define DONE return end_sequence ()
10292 : #line 25520 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10293 : {
10294 : if (TARGET_SSE4_1 && TARGET_SSE_MATH)
10295 : emit_insn (gen_sse4_1_rounddf2
10296 : (operands[0], operands[1], GEN_INT (ROUND_MXCSR
10297 : | ROUND_NO_EXC)));
10298 : else
10299 : {
10300 : rtx op0 = gen_reg_rtx (XFmode);
10301 : rtx op1 = gen_reg_rtx (XFmode);
10302 :
10303 : emit_insn (gen_extenddfxf2 (op1, operands[1]));
10304 : emit_insn (gen_nearbyintxf2 (op0, op1));
10305 : emit_insn (gen_truncxfdf2_i387_noop_unspec (operands[0], op0));
10306 : }
10307 : DONE;
10308 : }
10309 : #undef DONE
10310 : #undef FAIL
10311 : }
10312 : static const uint8_t expand_encoding[] = {
10313 : 0x02, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10314 : 0x01
10315 : };
10316 : return complete_seq (expand_encoding, operands);
10317 : }
10318 :
10319 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25613 */
10320 : rtx
10321 : gen_lrintdfsi2 (const rtx operand0, const rtx operand1)
10322 : {
10323 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10324 : static const uint8_t expand_encoding[] = {
10325 : 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01, 0x01,
10326 : 0x2f
10327 : };
10328 : return expand_rtx (expand_encoding, operands);
10329 : }
10330 :
10331 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25619 */
10332 : rtx
10333 : gen_lrounddfdi2 (const rtx operand0, const rtx operand1)
10334 : {
10335 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10336 : start_sequence ();
10337 : {
10338 : #define FAIL _Pragma ("GCC error \"lrounddfdi2 cannot FAIL\"") (void)0
10339 : #define DONE return end_sequence ()
10340 : #line 25630 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10341 : {
10342 : if (SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH
10343 : && DImode != HImode
10344 : && ((DImode != DImode) || TARGET_64BIT)
10345 : && !flag_trapping_math && !flag_rounding_math)
10346 : ix86_expand_lround (operands[0], operands[1]);
10347 : else
10348 : ix86_emit_i387_round (operands[0], operands[1]);
10349 : DONE;
10350 : }
10351 : #undef DONE
10352 : #undef FAIL
10353 : }
10354 : static const uint8_t expand_encoding[] = {
10355 : 0x02, 0x01, 0x00, 0x01, 0x01
10356 : };
10357 : return complete_seq (expand_encoding, operands);
10358 : }
10359 :
10360 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25723 */
10361 : rtx
10362 : gen_roundevenhf2 (const rtx operand0, const rtx operand1)
10363 : {
10364 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10365 : start_sequence ();
10366 : {
10367 : #define FAIL _Pragma ("GCC error \"roundevenhf2 cannot FAIL\"") (void)0
10368 : #define DONE return end_sequence ()
10369 : #line 25729 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10370 : {
10371 : emit_insn (gen_sse4_1_roundhf2 (operands[0], operands[1],
10372 : GEN_INT (ROUND_ROUNDEVEN | ROUND_NO_EXC)));
10373 : DONE;
10374 : }
10375 : #undef DONE
10376 : #undef FAIL
10377 : }
10378 : static const uint8_t expand_encoding[] = {
10379 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
10380 : 0x2b, 0x01, 0x01, 0x01, 0x4b, 0x05, 0x02, 0x11
10381 : };
10382 : return complete_seq (expand_encoding, operands);
10383 : }
10384 :
10385 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25735 */
10386 : rtx
10387 : gen_roundevendf2 (const rtx operand0, const rtx operand1)
10388 : {
10389 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10390 : start_sequence ();
10391 : {
10392 : #define FAIL _Pragma ("GCC error \"roundevendf2 cannot FAIL\"") (void)0
10393 : #define DONE return end_sequence ()
10394 : #line 25748 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10395 : {
10396 : if (SSE_FLOAT_MODE_P (DFmode) && TARGET_SSE_MATH
10397 : && (TARGET_SSE4_1
10398 : || (ROUND_ROUNDEVEN != ROUND_ROUNDEVEN
10399 : && (flag_fp_int_builtin_inexact || !flag_trapping_math))))
10400 : {
10401 : if (TARGET_SSE4_1)
10402 : emit_insn (gen_sse4_1_rounddf2
10403 : (operands[0], operands[1],
10404 : GEN_INT (ROUND_ROUNDEVEN | ROUND_NO_EXC)));
10405 : else if (TARGET_64BIT || (DFmode != DFmode))
10406 : {
10407 : if (ROUND_ROUNDEVEN == ROUND_FLOOR)
10408 : ix86_expand_floorceil (operands[0], operands[1], true);
10409 : else if (ROUND_ROUNDEVEN == ROUND_CEIL)
10410 : ix86_expand_floorceil (operands[0], operands[1], false);
10411 : else if (ROUND_ROUNDEVEN == ROUND_TRUNC)
10412 : ix86_expand_trunc (operands[0], operands[1]);
10413 : else
10414 : gcc_unreachable ();
10415 : }
10416 : else
10417 : {
10418 : if (ROUND_ROUNDEVEN == ROUND_FLOOR)
10419 : ix86_expand_floorceildf_32 (operands[0], operands[1], true);
10420 : else if (ROUND_ROUNDEVEN == ROUND_CEIL)
10421 : ix86_expand_floorceildf_32 (operands[0], operands[1], false);
10422 : else if (ROUND_ROUNDEVEN == ROUND_TRUNC)
10423 : ix86_expand_truncdf_32 (operands[0], operands[1]);
10424 : else
10425 : gcc_unreachable ();
10426 : }
10427 : }
10428 : else
10429 : {
10430 : rtx op0 = gen_reg_rtx (XFmode);
10431 : rtx op1 = gen_reg_rtx (XFmode);
10432 :
10433 : emit_insn (gen_extenddfxf2 (op1, operands[1]));
10434 : emit_insn (gen_frndintxf2_roundeven (op0, op1));
10435 : emit_insn (gen_truncxfdf2_i387_noop_unspec (operands[0], op0));
10436 : }
10437 : DONE;
10438 : }
10439 : #undef DONE
10440 : #undef FAIL
10441 : }
10442 : static const uint8_t expand_encoding[] = {
10443 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
10444 : 0x2e, 0x01, 0x01, 0x01, 0x4b, 0x05, 0x02, 0x11
10445 : };
10446 : return complete_seq (expand_encoding, operands);
10447 : }
10448 :
10449 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25846 */
10450 : rtx
10451 : gen_lfloorxfdi2 (const rtx operand0, const rtx operand1)
10452 : {
10453 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10454 : static const uint8_t expand_encoding[] = {
10455 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x12,
10456 : 0x01, 0x01, 0x01, 0x4f, 0x05, 0x02, 0x11
10457 : };
10458 : return expand_rtx (expand_encoding, operands);
10459 : }
10460 :
10461 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:25868 */
10462 : rtx
10463 : gen_lfloorsfdi2 (const rtx operand0, const rtx operand1)
10464 : {
10465 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
10466 : start_sequence ();
10467 : {
10468 : #define FAIL _Pragma ("GCC error \"lfloorsfdi2 cannot FAIL\"") (void)0
10469 : #define DONE return end_sequence ()
10470 : #line 25875 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10471 : {
10472 : if (TARGET_SSE4_1)
10473 : {
10474 : rtx tmp = gen_reg_rtx (SFmode);
10475 :
10476 : emit_insn (gen_sse4_1_roundsf2
10477 : (tmp, operands[1], GEN_INT (ROUND_FLOOR
10478 : | ROUND_NO_EXC)));
10479 : emit_insn (gen_fix_truncsfdi2
10480 : (operands[0], tmp));
10481 : }
10482 : else if (ROUND_FLOOR == ROUND_FLOOR)
10483 : ix86_expand_lfloorceil (operands[0], operands[1], true);
10484 : else if (ROUND_FLOOR == ROUND_CEIL)
10485 : ix86_expand_lfloorceil (operands[0], operands[1], false);
10486 : else
10487 : gcc_unreachable ();
10488 :
10489 : DONE;
10490 : }
10491 : #undef DONE
10492 : #undef FAIL
10493 : }
10494 : static const uint8_t expand_encoding[] = {
10495 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
10496 : 0x12, 0x01, 0x01, 0x01, 0x4f, 0x05, 0x02, 0x11
10497 : };
10498 : return complete_seq (expand_encoding, operands);
10499 : }
10500 :
10501 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26006 */
10502 : rtx
10503 : gen_movmemsi (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)
10504 : {
10505 : rtx operands[9] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6, operand7, operand8 };
10506 : start_sequence ();
10507 : {
10508 : #define FAIL return (end_sequence (), nullptr)
10509 : #define DONE return end_sequence ()
10510 : #line 26017 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10511 : {
10512 : if (ix86_expand_movmem (operands))
10513 : DONE;
10514 : FAIL;
10515 : }
10516 : #undef DONE
10517 : #undef FAIL
10518 : }
10519 : static const uint8_t expand_encoding[] = {
10520 : 0x09, 0x20, 0x00, 0x01, 0x00, 0x20, 0x00, 0x01,
10521 : 0x01, 0x20, 0x00, 0x01, 0x02, 0x20, 0x00, 0x01,
10522 : 0x03, 0x20, 0x00, 0x01, 0x04, 0x20, 0x00, 0x01,
10523 : 0x05, 0x20, 0x00, 0x01, 0x06, 0x20, 0x00, 0x01,
10524 : 0x07, 0x20, 0x00, 0x01, 0x08
10525 : };
10526 : return complete_seq (expand_encoding, operands);
10527 : }
10528 :
10529 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26343 */
10530 : rtx
10531 : gen_strset_singleop (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
10532 : {
10533 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
10534 : start_sequence ();
10535 : {
10536 : #define FAIL return (end_sequence (), nullptr)
10537 : #define DONE return end_sequence ()
10538 : #line 26350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10539 : {
10540 : if (TARGET_CLD)
10541 : ix86_optimize_mode_switching[X86_DIRFLAG] = 1;
10542 : }
10543 : #undef DONE
10544 : #undef FAIL
10545 : }
10546 : static const uint8_t expand_encoding[] = {
10547 : 0x01, 0x17, 0x00, 0x03, 0x1f, 0x01, 0x01, 0x01,
10548 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x03, 0x1a, 0x00,
10549 : 0x01, 0x27, 0x00, 0x25
10550 : };
10551 : return complete_seq (expand_encoding, operands);
10552 : }
10553 :
10554 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26626 */
10555 : rtx
10556 : gen_strlensi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
10557 : {
10558 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
10559 : start_sequence ();
10560 : {
10561 : #define FAIL return (end_sequence (), nullptr)
10562 : #define DONE return end_sequence ()
10563 : #line 26633 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10564 : {
10565 : if (ix86_expand_strlen (operands[0], operands[1], operands[2], operands[3]))
10566 : DONE;
10567 : else
10568 : FAIL;
10569 : }
10570 : #undef DONE
10571 : #undef FAIL
10572 : }
10573 : static const uint8_t expand_encoding[] = {
10574 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x03, 0x01,
10575 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x18
10576 : };
10577 : return complete_seq (expand_encoding, operands);
10578 : }
10579 :
10580 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26760 */
10581 : rtx
10582 : gen_x86_movsicc_0_m1 (const rtx operand0, const rtx operand1, const rtx operand2)
10583 : {
10584 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
10585 : static const uint8_t expand_encoding[] = {
10586 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x39, 0x11,
10587 : 0x03, 0x11, 0x02, 0x01, 0x01, 0x27, 0x00, 0x27,
10588 : 0x81, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
10589 : 0xff, 0x7f, 0x27, 0x00, 0x05, 0x02, 0x11
10590 : };
10591 : return expand_rtx (expand_encoding, operands);
10592 : }
10593 :
10594 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26834 */
10595 : extern rtx_insn *gen_split_943 (rtx_insn *, rtx *);
10596 : rtx_insn *
10597 : gen_split_943 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10598 : {
10599 : if (dump_file)
10600 : fprintf (dump_file, "Splitting with gen_split_943 (i386.md:26834)\n");
10601 : start_sequence ();
10602 : static const uint8_t expand_encoding[] = {
10603 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
10604 : 0x01, 0x27, 0x01, 0x1f, 0x01, 0x00, 0x3d, 0x11,
10605 : 0x66, 0x11, 0x30, 0x02, 0x11, 0x27, 0x00
10606 : };
10607 : return complete_seq (expand_encoding, operands);
10608 : }
10609 :
10610 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:26943 */
10611 : extern rtx_insn *gen_split_952 (rtx_insn *, rtx *);
10612 : rtx_insn *
10613 : gen_split_952 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10614 : {
10615 : if (dump_file)
10616 : fprintf (dump_file, "Splitting with gen_split_952 (i386.md:26943)\n");
10617 : start_sequence ();
10618 : #define FAIL return (end_sequence (), nullptr)
10619 : #define DONE return end_sequence ()
10620 : #line 26953 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10621 : {
10622 : operands[0] = gen_lowpart (SImode, operands[0]);
10623 : operands[2] = gen_lowpart (SImode, operands[2]);
10624 : operands[3] = gen_lowpart (SImode, operands[3]);
10625 : }
10626 : #undef DONE
10627 : #undef FAIL
10628 : static const uint8_t expand_encoding[] = {
10629 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x11, 0x01, 0x01,
10630 : 0x01, 0x02, 0x01, 0x03
10631 : };
10632 : return complete_seq (expand_encoding, operands);
10633 : }
10634 :
10635 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27057 */
10636 : extern rtx_insn *gen_peephole2_227 (rtx_insn *, rtx *);
10637 : rtx_insn *
10638 : gen_peephole2_227 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10639 : {
10640 : if (dump_file)
10641 : fprintf (dump_file, "Splitting with gen_peephole2_227 (i386.md:27057)\n");
10642 : start_sequence ();
10643 : #define FAIL return (end_sequence (), nullptr)
10644 : #define DONE return end_sequence ()
10645 : #line 27082 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10646 : {
10647 : operands[7] = SET_DEST (XVECEXP (PATTERN (peep2_next_insn (2)), 0, 0));
10648 : operands[8]
10649 : = ix86_replace_reg_with_reg (operands[5], operands[0], operands[1]);
10650 : operands[9]
10651 : = ix86_replace_reg_with_reg (operands[6], operands[0], operands[1]);
10652 : }
10653 : #undef DONE
10654 : #undef FAIL
10655 : static const uint8_t expand_encoding[] = {
10656 : 0x03, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x07, 0x01,
10657 : 0x08, 0x1f, 0x01, 0x01, 0x01, 0x09, 0x1f, 0x01,
10658 : 0x00, 0x01, 0x03, 0x1f, 0x01, 0x00, 0x39, 0x11,
10659 : 0x01, 0x04, 0x01, 0x01, 0x01, 0x00
10660 : };
10661 : return complete_seq (expand_encoding, operands);
10662 : }
10663 :
10664 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27323 */
10665 : extern rtx_insn *gen_split_957 (rtx_insn *, rtx *);
10666 : rtx_insn *
10667 : gen_split_957 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10668 : {
10669 : if (dump_file)
10670 : fprintf (dump_file, "Splitting with gen_split_957 (i386.md:27323)\n");
10671 : start_sequence ();
10672 : static const uint8_t expand_encoding[] = {
10673 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x2d, 0x02, 0x01,
10674 : 0x02, 0x01, 0x01, 0x40
10675 : };
10676 : return complete_seq (expand_encoding, operands);
10677 : }
10678 :
10679 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27417 */
10680 : rtx
10681 : gen_addqicc (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
10682 : {
10683 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
10684 : start_sequence ();
10685 : {
10686 : #define FAIL return (end_sequence (), nullptr)
10687 : #define DONE return end_sequence ()
10688 : #line 27423 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10689 : if (ix86_expand_int_addcc (operands)) DONE; else FAIL;
10690 : #undef DONE
10691 : #undef FAIL
10692 : }
10693 : static const uint8_t expand_encoding[] = {
10694 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
10695 : 0x03
10696 : };
10697 : return complete_seq (expand_encoding, operands);
10698 : }
10699 :
10700 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27430 */
10701 : rtx
10702 : gen_uminhi3 (const rtx operand0, const rtx operand1, const rtx operand2)
10703 : {
10704 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
10705 : static const uint8_t expand_encoding[] = {
10706 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x54, 0x10,
10707 : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
10708 : };
10709 : return expand_rtx (expand_encoding, operands);
10710 : }
10711 :
10712 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27430 */
10713 : rtx
10714 : gen_sminti3 (const rtx operand0, const rtx operand1, const rtx operand2)
10715 : {
10716 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
10717 : static const uint8_t expand_encoding[] = {
10718 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x52, 0x13,
10719 : 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
10720 : };
10721 : return expand_rtx (expand_encoding, operands);
10722 : }
10723 :
10724 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27440 */
10725 : extern rtx_insn *gen_split_968 (rtx_insn *, rtx *);
10726 : rtx_insn *
10727 : gen_split_968 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10728 : {
10729 : if (dump_file)
10730 : fprintf (dump_file, "Splitting with gen_split_968 (i386.md:27440)\n");
10731 : start_sequence ();
10732 : #define FAIL return (end_sequence (), nullptr)
10733 : #define DONE return end_sequence ()
10734 : #line 27458 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10735 : {
10736 : operands[2] = force_reg (TImode, operands[2]);
10737 :
10738 : split_double_mode (TImode, &operands[0], 3, &operands[0], &operands[3]);
10739 :
10740 : rtx cmplo[2] = { operands[1], operands[2] };
10741 : rtx cmphi[2] = { operands[4], operands[5] };
10742 :
10743 : enum rtx_code code = LEU;
10744 :
10745 : switch (code)
10746 : {
10747 : case LE: case LEU:
10748 : std::swap (cmplo[0], cmplo[1]);
10749 : std::swap (cmphi[0], cmphi[1]);
10750 : code = swap_condition (code);
10751 : /* FALLTHRU */
10752 :
10753 : case GE: case GEU:
10754 : {
10755 : bool uns = (code == GEU);
10756 : rtx (*sbb_insn) (machine_mode, rtx, rtx, rtx)
10757 : = uns ? gen_sub3_carry_ccc : gen_sub3_carry_ccgz;
10758 :
10759 : emit_insn (gen_cmp_1 (DImode, cmplo[0], cmplo[1]));
10760 :
10761 : rtx tmp = gen_rtx_SCRATCH (DImode);
10762 : emit_insn (sbb_insn (DImode, tmp, cmphi[0], cmphi[1]));
10763 :
10764 : rtx flags = gen_rtx_REG (uns ? CCCmode : CCGZmode, FLAGS_REG);
10765 : operands[6] = gen_rtx_fmt_ee (code, VOIDmode, flags, const0_rtx);
10766 :
10767 : break;
10768 : }
10769 :
10770 : default:
10771 : gcc_unreachable ();
10772 : }
10773 : }
10774 : #undef DONE
10775 : #undef FAIL
10776 : static const uint8_t expand_encoding[] = {
10777 : 0x02, 0x1f, 0x01, 0x00, 0x39, 0x12, 0x01, 0x06,
10778 : 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01, 0x03, 0x39,
10779 : 0x12, 0x01, 0x06, 0x01, 0x04, 0x01, 0x05
10780 : };
10781 : return complete_seq (expand_encoding, operands);
10782 : }
10783 :
10784 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27498 */
10785 : extern rtx_insn *gen_split_978 (rtx_insn *, rtx *);
10786 : rtx_insn *
10787 : gen_split_978 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10788 : {
10789 : if (dump_file)
10790 : fprintf (dump_file, "Splitting with gen_split_978 (i386.md:27498)\n");
10791 : start_sequence ();
10792 : #define FAIL return (end_sequence (), nullptr)
10793 : #define DONE return end_sequence ()
10794 : #line 27513 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10795 : {
10796 : machine_mode mode = SImode;
10797 : rtx cmp_op = operands[2];
10798 :
10799 : operands[2] = force_reg (mode, cmp_op);
10800 :
10801 : enum rtx_code code = LE;
10802 :
10803 : if (cmp_op == const1_rtx)
10804 : {
10805 : /* Convert smax (x, 1) into (x > 0 ? x : 1).
10806 : Convert umax (x, 1) into (x != 0 ? x : 1).
10807 : Convert ?min (x, 1) into (x <= 0 ? x : 1). */
10808 : cmp_op = const0_rtx;
10809 : if (code == GE)
10810 : code = GT;
10811 : else if (code == GEU)
10812 : code = NE;
10813 : }
10814 : /* Convert smin (x, -1) into (x < 0 ? x : -1). */
10815 : else if (cmp_op == constm1_rtx && code == LE)
10816 : {
10817 : cmp_op = const0_rtx;
10818 : code = LT;
10819 : }
10820 : /* Convert smax (x, -1) into (x >= 0 ? x : -1). */
10821 : else if (cmp_op == constm1_rtx && code == GE)
10822 : cmp_op = const0_rtx;
10823 : else if (cmp_op != const0_rtx)
10824 : cmp_op = operands[2];
10825 :
10826 : machine_mode cmpmode = SELECT_CC_MODE (code, operands[1], cmp_op);
10827 : rtx flags = gen_rtx_REG (cmpmode, FLAGS_REG);
10828 :
10829 : rtx tmp = gen_rtx_COMPARE (cmpmode, operands[1], cmp_op);
10830 : emit_insn (gen_rtx_SET (flags, tmp));
10831 :
10832 : operands[3] = gen_rtx_fmt_ee (code, VOIDmode, flags, const0_rtx);
10833 : }
10834 : #undef DONE
10835 : #undef FAIL
10836 : static const uint8_t expand_encoding[] = {
10837 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x11, 0x01, 0x03,
10838 : 0x01, 0x01, 0x01, 0x02
10839 : };
10840 : return complete_seq (expand_encoding, operands);
10841 : }
10842 :
10843 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27555 */
10844 : extern rtx_insn *gen_peephole2_236 (rtx_insn *, rtx *);
10845 : rtx_insn *
10846 : gen_peephole2_236 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10847 : {
10848 : if (dump_file)
10849 : fprintf (dump_file, "Splitting with gen_peephole2_236 (i386.md:27555)\n");
10850 : start_sequence ();
10851 : #define FAIL return (end_sequence (), nullptr)
10852 : #define DONE return end_sequence ()
10853 : #line 27561 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10854 : {
10855 : operands[2] = gen_rtx_REG (GET_MODE (operands[0]), FLAGS_REG);
10856 : ix86_expand_clear (operands[1]);
10857 : }
10858 : #undef DONE
10859 : #undef FAIL
10860 : static const uint8_t expand_encoding[] = {
10861 : 0x01, 0x1f, 0x01, 0x02, 0x01, 0x00
10862 : };
10863 : return complete_seq (expand_encoding, operands);
10864 : }
10865 :
10866 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27599 */
10867 : extern rtx_insn *gen_peephole2_242 (rtx_insn *, rtx *);
10868 : rtx_insn *
10869 : gen_peephole2_242 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
10870 : {
10871 : HARD_REG_SET _regs_allocated;
10872 : CLEAR_HARD_REG_SET (_regs_allocated);
10873 : if ((operands[0] = peep2_find_free_register (0, 0, "r", DImode, &_regs_allocated)) == NULL_RTX)
10874 : return NULL;
10875 : if (dump_file)
10876 : fprintf (dump_file, "Splitting with gen_peephole2_242 (i386.md:27599)\n");
10877 : start_sequence ();
10878 : #define FAIL return (end_sequence (), nullptr)
10879 : #define DONE return end_sequence ()
10880 : #line 27604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10881 : {
10882 : ix86_expand_clear (operands[0]);
10883 : ix86_last_zero_store_uid
10884 : = INSN_UID (emit_move_insn (operands[1], operands[0]));
10885 : DONE;
10886 : }
10887 : #undef DONE
10888 : #undef FAIL
10889 : static const uint8_t expand_encoding[] = {
10890 : 0x01, 0x27, 0x00
10891 : };
10892 : return complete_seq (expand_encoding, operands);
10893 : }
10894 :
10895 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27663 */
10896 : extern rtx_insn *gen_peephole2_252 (rtx_insn *, rtx *);
10897 : rtx_insn *
10898 : gen_peephole2_252 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10899 : {
10900 : if (dump_file)
10901 : fprintf (dump_file, "Splitting with gen_peephole2_252 (i386.md:27663)\n");
10902 : start_sequence ();
10903 : static const uint8_t expand_encoding[] = {
10904 : 0x01, 0x1f, 0x01, 0x02, 0x01, 0x01
10905 : };
10906 : return complete_seq (expand_encoding, operands);
10907 : }
10908 :
10909 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27678 */
10910 : extern rtx_insn *gen_split_991 (rtx_insn *, rtx *);
10911 : rtx_insn *
10912 : gen_split_991 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10913 : {
10914 : if (dump_file)
10915 : fprintf (dump_file, "Splitting with gen_split_991 (i386.md:27678)\n");
10916 : start_sequence ();
10917 : #define FAIL return (end_sequence (), nullptr)
10918 : #define DONE return end_sequence ()
10919 : #line 27701 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10920 : {
10921 : operands[1] = force_reg (SImode, operands[1]);
10922 : operands[3] = gen_reg_rtx (SImode);
10923 : }
10924 : #undef DONE
10925 : #undef FAIL
10926 : static const uint8_t expand_encoding[] = {
10927 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x08, 0x11,
10928 : 0x3a, 0x08, 0x3b, 0x11, 0x01, 0x01, 0x01, 0x02,
10929 : 0x01, 0x01, 0x1f, 0x01, 0x03, 0x3b, 0x11, 0x01,
10930 : 0x01, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x39, 0x11,
10931 : 0x66, 0x00, 0x30, 0x08, 0x11, 0x27, 0x00, 0x01,
10932 : 0x03, 0x01, 0x01
10933 : };
10934 : return complete_seq (expand_encoding, operands);
10935 : }
10936 :
10937 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:27711 */
10938 : extern rtx_insn *gen_split_1001 (rtx_insn *, rtx *);
10939 : rtx_insn *
10940 : gen_split_1001 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10941 : {
10942 : if (dump_file)
10943 : fprintf (dump_file, "Splitting with gen_split_1001 (i386.md:27711)\n");
10944 : start_sequence ();
10945 : #define FAIL return (end_sequence (), nullptr)
10946 : #define DONE return end_sequence ()
10947 : #line 27732 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
10948 : {
10949 : operands[1] = force_reg (DImode, operands[1]);
10950 : operands[3] = gen_reg_rtx (DImode);
10951 : }
10952 : #undef DONE
10953 : #undef FAIL
10954 : static const uint8_t expand_encoding[] = {
10955 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x02, 0x11,
10956 : 0x3a, 0x02, 0x01, 0x01, 0x01, 0x02, 0x1f, 0x01,
10957 : 0x03, 0x3c, 0x12, 0x01, 0x01, 0x01, 0x02, 0x1f,
10958 : 0x01, 0x00, 0x39, 0x12, 0x66, 0x00, 0x30, 0x02,
10959 : 0x11, 0x27, 0x00, 0x01, 0x03, 0x01, 0x01
10960 : };
10961 : return complete_seq (expand_encoding, operands);
10962 : }
10963 :
10964 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28144 */
10965 : extern rtx_insn *gen_peephole2_257 (rtx_insn *, rtx *);
10966 : rtx_insn *
10967 : gen_peephole2_257 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10968 : {
10969 : if (dump_file)
10970 : fprintf (dump_file, "Splitting with gen_peephole2_257 (i386.md:28144)\n");
10971 : start_sequence ();
10972 : static const uint8_t expand_encoding[] = {
10973 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
10974 : 0x11, 0x01, 0x01, 0x01, 0x5d, 0x1f, 0x01, 0x03,
10975 : 0x01, 0x04
10976 : };
10977 : return complete_seq (expand_encoding, operands);
10978 : }
10979 :
10980 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28144 */
10981 : extern rtx_insn *gen_peephole2_260 (rtx_insn *, rtx *);
10982 : rtx_insn *
10983 : gen_peephole2_260 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
10984 : {
10985 : if (dump_file)
10986 : fprintf (dump_file, "Splitting with gen_peephole2_260 (i386.md:28144)\n");
10987 : start_sequence ();
10988 : static const uint8_t expand_encoding[] = {
10989 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
10990 : 0x12, 0x01, 0x01, 0x01, 0x5d, 0x1f, 0x01, 0x03,
10991 : 0x01, 0x04
10992 : };
10993 : return complete_seq (expand_encoding, operands);
10994 : }
10995 :
10996 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28247 */
10997 : extern rtx_insn *gen_peephole2_269 (rtx_insn *, rtx *);
10998 : rtx_insn *
10999 : gen_peephole2_269 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11000 : {
11001 : if (dump_file)
11002 : fprintf (dump_file, "Splitting with gen_peephole2_269 (i386.md:28247)\n");
11003 : start_sequence ();
11004 : static const uint8_t expand_encoding[] = {
11005 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
11006 : 0x11, 0x01, 0x01, 0x01, 0x5d, 0x1f, 0x01, 0x03,
11007 : 0x6e, 0x12, 0x01, 0x04
11008 : };
11009 : return complete_seq (expand_encoding, operands);
11010 : }
11011 :
11012 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28394 */
11013 : extern rtx_insn *gen_split_1007 (rtx_insn *, rtx *);
11014 : rtx_insn *
11015 : gen_split_1007 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11016 : {
11017 : if (dump_file)
11018 : fprintf (dump_file, "Splitting with gen_split_1007 (i386.md:28394)\n");
11019 : start_sequence ();
11020 : #define FAIL return (end_sequence (), nullptr)
11021 : #define DONE return end_sequence ()
11022 : #line 28402 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11023 : {
11024 : operands[0] = gen_lowpart (SImode, operands[0]);
11025 : operands[1] = gen_lowpart (SImode, operands[1]);
11026 : }
11027 : #undef DONE
11028 : #undef FAIL
11029 : static const uint8_t expand_encoding[] = {
11030 : 0x01, 0x1f, 0x01, 0x00, 0x4c, 0x11, 0x01, 0x01
11031 : };
11032 : return complete_seq (expand_encoding, operands);
11033 : }
11034 :
11035 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28450 */
11036 : extern rtx_insn *gen_peephole2_279 (rtx_insn *, rtx *);
11037 : rtx_insn *
11038 : gen_peephole2_279 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11039 : {
11040 : HARD_REG_SET _regs_allocated;
11041 : CLEAR_HARD_REG_SET (_regs_allocated);
11042 : if ((operands[1] = peep2_find_free_register (0, 0, "r", HImode, &_regs_allocated)) == NULL_RTX)
11043 : return NULL;
11044 : if (dump_file)
11045 : fprintf (dump_file, "Splitting with gen_peephole2_279 (i386.md:28450)\n");
11046 : start_sequence ();
11047 : #define FAIL return (end_sequence (), nullptr)
11048 : #define DONE return end_sequence ()
11049 : #line 28464 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11050 : operands[2] = gen_lowpart (SImode, operands[1]);
11051 : #undef DONE
11052 : #undef FAIL
11053 : static const uint8_t expand_encoding[] = {
11054 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x02, 0x27,
11055 : 0x00, 0x05, 0x02, 0x11, 0x1f, 0x01, 0x00, 0x01,
11056 : 0x01
11057 : };
11058 : return complete_seq (expand_encoding, operands);
11059 : }
11060 :
11061 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28558 */
11062 : extern rtx_insn *gen_peephole2_292 (rtx_insn *, rtx *);
11063 : rtx_insn *
11064 : gen_peephole2_292 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11065 : {
11066 : if (dump_file)
11067 : fprintf (dump_file, "Splitting with gen_peephole2_292 (i386.md:28558)\n");
11068 : start_sequence ();
11069 : static const uint8_t expand_encoding[] = {
11070 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x02,
11071 : 0x01, 0x49, 0x0f, 0x32, 0x0f, 0x81, 0x06, 0x12,
11072 : 0x01, 0x02, 0x27, 0x08, 0x27, 0x08, 0x00, 0x01,
11073 : 0x03, 0x27, 0x00, 0x1f, 0x81, 0x06, 0x12, 0x01,
11074 : 0x02, 0x27, 0x08, 0x27, 0x08, 0x32, 0x12, 0x49,
11075 : 0x0f, 0x32, 0x0f, 0x81, 0x06, 0x12, 0x01, 0x02,
11076 : 0x27, 0x08, 0x27, 0x08, 0x00, 0x01, 0x03, 0x00
11077 : };
11078 : return complete_seq (expand_encoding, operands);
11079 : }
11080 :
11081 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28622 */
11082 : extern rtx_insn *gen_peephole2_303 (rtx_insn *, rtx *);
11083 : rtx_insn *
11084 : gen_peephole2_303 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11085 : {
11086 : if (dump_file)
11087 : fprintf (dump_file, "Splitting with gen_peephole2_303 (i386.md:28622)\n");
11088 : start_sequence ();
11089 : #define FAIL return (end_sequence (), nullptr)
11090 : #define DONE return end_sequence ()
11091 : #line 28637 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11092 : {
11093 : operands[4]
11094 : = ix86_replace_reg_with_reg (operands[2], operands[0], operands[1]);
11095 : }
11096 : #undef DONE
11097 : #undef FAIL
11098 : static const uint8_t expand_encoding[] = {
11099 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x04, 0x17, 0x00,
11100 : 0x02, 0x1f, 0x01, 0x00, 0x02, 0x03, 0x01, 0x00,
11101 : 0x01, 0x01, 0x05, 0x02, 0x11
11102 : };
11103 : return complete_seq (expand_encoding, operands);
11104 : }
11105 :
11106 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28711 */
11107 : extern rtx_insn *gen_peephole2_315 (rtx_insn *, rtx *);
11108 : rtx_insn *
11109 : gen_peephole2_315 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11110 : {
11111 : if (dump_file)
11112 : fprintf (dump_file, "Splitting with gen_peephole2_315 (i386.md:28711)\n");
11113 : start_sequence ();
11114 : #define FAIL return (end_sequence (), nullptr)
11115 : #define DONE return end_sequence ()
11116 : #line 28734 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11117 : {
11118 : operands[4] = SET_DEST (PATTERN (peep2_next_insn (3)));
11119 : operands[5]
11120 : = gen_rtx_fmt_ee (GET_CODE (operands[3]), GET_MODE (operands[3]),
11121 : copy_rtx (operands[1]),
11122 : operands[2]);
11123 : operands[6]
11124 : = gen_rtx_COMPARE (GET_MODE (operands[4]),
11125 : copy_rtx (operands[5]),
11126 : const0_rtx);
11127 : }
11128 : #undef DONE
11129 : #undef FAIL
11130 : static const uint8_t expand_encoding[] = {
11131 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x01,
11132 : 0x06, 0x1f, 0x01, 0x01, 0x01, 0x05
11133 : };
11134 : return complete_seq (expand_encoding, operands);
11135 : }
11136 :
11137 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28784 */
11138 : extern rtx_insn *gen_peephole2_325 (rtx_insn *, rtx *);
11139 : rtx_insn *
11140 : gen_peephole2_325 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11141 : {
11142 : if (dump_file)
11143 : fprintf (dump_file, "Splitting with gen_peephole2_325 (i386.md:28784)\n");
11144 : start_sequence ();
11145 : #define FAIL return (end_sequence (), nullptr)
11146 : #define DONE return end_sequence ()
11147 : #line 28802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11148 : {
11149 : operands[4] = SET_DEST (XVECEXP (PATTERN (peep2_next_insn (0)), 0, 0));
11150 : operands[5]
11151 : = gen_rtx_fmt_ee (GET_CODE (operands[2]), GET_MODE (operands[2]),
11152 : copy_rtx (operands[0]), operands[1]);
11153 : operands[6]
11154 : = gen_rtx_COMPARE (GET_MODE (operands[4]), copy_rtx (operands[5]),
11155 : const0_rtx);
11156 : }
11157 : #undef DONE
11158 : #undef FAIL
11159 : static const uint8_t expand_encoding[] = {
11160 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x04, 0x01,
11161 : 0x06, 0x1f, 0x01, 0x00, 0x01, 0x05
11162 : };
11163 : return complete_seq (expand_encoding, operands);
11164 : }
11165 :
11166 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28878 */
11167 : extern rtx_insn *gen_peephole2_335 (rtx_insn *, rtx *);
11168 : rtx_insn *
11169 : gen_peephole2_335 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11170 : {
11171 : if (dump_file)
11172 : fprintf (dump_file, "Splitting with gen_peephole2_335 (i386.md:28878)\n");
11173 : start_sequence ();
11174 : #define FAIL return (end_sequence (), nullptr)
11175 : #define DONE return end_sequence ()
11176 : #line 28895 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11177 : {
11178 : operands[3] = SET_DEST (XVECEXP (PATTERN (peep2_next_insn (0)), 0, 0));
11179 : operands[4]
11180 : = gen_rtx_fmt_ee (GET_CODE (operands[2]), GET_MODE (operands[2]),
11181 : copy_rtx (operands[1]), operands[0]);
11182 : operands[5]
11183 : = gen_rtx_COMPARE (GET_MODE (operands[3]), copy_rtx (operands[4]),
11184 : const0_rtx);
11185 : }
11186 : #undef DONE
11187 : #undef FAIL
11188 : static const uint8_t expand_encoding[] = {
11189 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x03, 0x01,
11190 : 0x05, 0x1f, 0x01, 0x01, 0x01, 0x04
11191 : };
11192 : return complete_seq (expand_encoding, operands);
11193 : }
11194 :
11195 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:28991 */
11196 : extern rtx_insn *gen_peephole2_345 (rtx_insn *, rtx *);
11197 : rtx_insn *
11198 : gen_peephole2_345 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11199 : {
11200 : if (dump_file)
11201 : fprintf (dump_file, "Splitting with gen_peephole2_345 (i386.md:28991)\n");
11202 : start_sequence ();
11203 : #define FAIL return (end_sequence (), nullptr)
11204 : #define DONE return end_sequence ()
11205 : #line 29017 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11206 : {
11207 : operands[5] = SET_DEST (PATTERN (peep2_next_insn (4)));
11208 : operands[6]
11209 : = gen_rtx_fmt_ee (GET_CODE (operands[3]), GET_MODE (operands[3]),
11210 : copy_rtx (operands[1]),
11211 : operands[2]);
11212 : operands[7]
11213 : = gen_rtx_COMPARE (GET_MODE (operands[5]),
11214 : copy_rtx (operands[6]),
11215 : const0_rtx);
11216 : }
11217 : #undef DONE
11218 : #undef FAIL
11219 : static const uint8_t expand_encoding[] = {
11220 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x05, 0x01,
11221 : 0x07, 0x1f, 0x01, 0x01, 0x01, 0x06
11222 : };
11223 : return complete_seq (expand_encoding, operands);
11224 : }
11225 :
11226 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29104 */
11227 : extern rtx_insn *gen_peephole2_355 (rtx_insn *, rtx *);
11228 : rtx_insn *
11229 : gen_peephole2_355 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11230 : {
11231 : if (dump_file)
11232 : fprintf (dump_file, "Splitting with gen_peephole2_355 (i386.md:29104)\n");
11233 : start_sequence ();
11234 : #define FAIL return (end_sequence (), nullptr)
11235 : #define DONE return end_sequence ()
11236 : #line 29138 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11237 : {
11238 : operands[7] = SET_DEST (PATTERN (peep2_next_insn (4)));
11239 : operands[8] = gen_rtx_XOR (QImode, copy_rtx (operands[1]),
11240 : operands[2]);
11241 : operands[9]
11242 : = gen_rtx_COMPARE (GET_MODE (operands[7]),
11243 : copy_rtx (operands[8]),
11244 : const0_rtx);
11245 : }
11246 : #undef DONE
11247 : #undef FAIL
11248 : static const uint8_t expand_encoding[] = {
11249 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x07, 0x01,
11250 : 0x09, 0x1f, 0x01, 0x01, 0x01, 0x08
11251 : };
11252 : return complete_seq (expand_encoding, operands);
11253 : }
11254 :
11255 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29271 */
11256 : extern rtx_insn *gen_peephole2_365 (rtx_insn *, rtx *);
11257 : rtx_insn *
11258 : gen_peephole2_365 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11259 : {
11260 : if (dump_file)
11261 : fprintf (dump_file, "Splitting with gen_peephole2_365 (i386.md:29271)\n");
11262 : start_sequence ();
11263 : static const uint8_t expand_encoding[] = {
11264 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x33, 0x00, 0x01,
11265 : 0x00, 0x27, 0x00, 0x05, 0x02, 0x11
11266 : };
11267 : return complete_seq (expand_encoding, operands);
11268 : }
11269 :
11270 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29306 */
11271 : extern rtx_insn *gen_peephole2_372 (rtx_insn *, rtx *);
11272 : rtx_insn *
11273 : gen_peephole2_372 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11274 : {
11275 : if (dump_file)
11276 : fprintf (dump_file, "Splitting with gen_peephole2_372 (i386.md:29306)\n");
11277 : start_sequence ();
11278 : static const uint8_t expand_encoding[] = {
11279 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3b,
11280 : 0x11, 0x01, 0x00, 0x01, 0x01, 0x05, 0x02, 0x11
11281 : };
11282 : return complete_seq (expand_encoding, operands);
11283 : }
11284 :
11285 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29383 */
11286 : extern rtx_insn *gen_peephole2_380 (rtx_insn *, rtx *);
11287 : rtx_insn *
11288 : gen_peephole2_380 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11289 : {
11290 : HARD_REG_SET _regs_allocated;
11291 : CLEAR_HARD_REG_SET (_regs_allocated);
11292 : if ((operands[1] = peep2_find_free_register (0, 0, "r", DImode, &_regs_allocated)) == NULL_RTX)
11293 : return NULL;
11294 : if (dump_file)
11295 : fprintf (dump_file, "Splitting with gen_peephole2_380 (i386.md:29383)\n");
11296 : start_sequence ();
11297 : static const uint8_t expand_encoding[] = {
11298 : 0x02, 0x21, 0x00, 0x01, 0x01, 0x17, 0x00, 0x02,
11299 : 0x1f, 0x36, 0x12, 0x56, 0x11, 0x30, 0x11, 0x07,
11300 : 0x01, 0x01, 0x21, 0x00, 0x36, 0x01, 0x31, 0x00
11301 : };
11302 : return complete_seq (expand_encoding, operands);
11303 : }
11304 :
11305 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29413 */
11306 : extern rtx_insn *gen_peephole2_390 (rtx_insn *, rtx *);
11307 : rtx_insn *
11308 : gen_peephole2_390 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11309 : {
11310 : HARD_REG_SET _regs_allocated;
11311 : CLEAR_HARD_REG_SET (_regs_allocated);
11312 : if ((operands[1] = peep2_find_free_register (0, 0, "r", DImode, &_regs_allocated)) == NULL_RTX)
11313 : return NULL;
11314 : if (dump_file)
11315 : fprintf (dump_file, "Splitting with gen_peephole2_390 (i386.md:29413)\n");
11316 : start_sequence ();
11317 : static const uint8_t expand_encoding[] = {
11318 : 0x02, 0x21, 0x00, 0x01, 0x01, 0x1f, 0x36, 0x12,
11319 : 0x56, 0x12, 0x30, 0x12, 0x07, 0x01, 0x01
11320 : };
11321 : return complete_seq (expand_encoding, operands);
11322 : }
11323 :
11324 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29453 */
11325 : extern rtx_insn *gen_peephole2_400 (rtx_insn *, rtx *);
11326 : rtx_insn *
11327 : gen_peephole2_400 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11328 : {
11329 : HARD_REG_SET _regs_allocated;
11330 : CLEAR_HARD_REG_SET (_regs_allocated);
11331 : if ((operands[1] = peep2_find_free_register (0, 0, "r", DImode, &_regs_allocated)) == NULL_RTX)
11332 : return NULL;
11333 : if ((operands[2] = peep2_find_free_register (0, 0, "r", DImode, &_regs_allocated)) == NULL_RTX)
11334 : return NULL;
11335 : if (dump_file)
11336 : fprintf (dump_file, "Splitting with gen_peephole2_400 (i386.md:29453)\n");
11337 : start_sequence ();
11338 : static const uint8_t expand_encoding[] = {
11339 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x01, 0x36,
11340 : 0x12, 0x59, 0x11, 0x30, 0x11, 0x07, 0x21, 0x00,
11341 : 0x36, 0x01, 0x31, 0x00, 0x1f, 0x01, 0x02, 0x36,
11342 : 0x12, 0x59, 0x11, 0x30, 0x11, 0x07
11343 : };
11344 : return complete_seq (expand_encoding, operands);
11345 : }
11346 :
11347 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29481 */
11348 : extern rtx_insn *gen_peephole2_410 (rtx_insn *, rtx *);
11349 : rtx_insn *
11350 : gen_peephole2_410 (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", DImode, &_regs_allocated)) == NULL_RTX)
11355 : return NULL;
11356 : if (dump_file)
11357 : fprintf (dump_file, "Splitting with gen_peephole2_410 (i386.md:29481)\n");
11358 : start_sequence ();
11359 : static const uint8_t expand_encoding[] = {
11360 : 0x01, 0x1f, 0x01, 0x01, 0x36, 0x12, 0x59, 0x12,
11361 : 0x30, 0x12, 0x07
11362 : };
11363 : return complete_seq (expand_encoding, operands);
11364 : }
11365 :
11366 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29532 */
11367 : extern rtx_insn *gen_peephole2_420 (rtx_insn *, rtx *);
11368 : rtx_insn *
11369 : gen_peephole2_420 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11370 : {
11371 : if (dump_file)
11372 : fprintf (dump_file, "Splitting with gen_peephole2_420 (i386.md:29532)\n");
11373 : start_sequence ();
11374 : #define FAIL return (end_sequence (), nullptr)
11375 : #define DONE return end_sequence ()
11376 : #line 29544 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11377 : operands[2] = GEN_INT (INTVAL (operands[2]) - 1);
11378 : #undef DONE
11379 : #undef FAIL
11380 : static const uint8_t expand_encoding[] = {
11381 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x11, 0x3e, 0x11,
11382 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x01
11383 : };
11384 : return complete_seq (expand_encoding, operands);
11385 : }
11386 :
11387 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:29622 */
11388 : extern rtx_insn *gen_peephole2_430 (rtx_insn *, rtx *);
11389 : rtx_insn *
11390 : gen_peephole2_430 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11391 : {
11392 : HARD_REG_SET _regs_allocated;
11393 : CLEAR_HARD_REG_SET (_regs_allocated);
11394 : if ((operands[5] = peep2_find_free_register (0, 0, "r", SImode, &_regs_allocated)) == NULL_RTX)
11395 : return NULL;
11396 : if (dump_file)
11397 : fprintf (dump_file, "Splitting with gen_peephole2_430 (i386.md:29622)\n");
11398 : start_sequence ();
11399 : #define FAIL return (end_sequence (), nullptr)
11400 : #define DONE return end_sequence ()
11401 : #line 29645 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11402 : {
11403 : machine_mode op1mode = GET_MODE (operands[1]);
11404 : machine_mode mode = op1mode == DImode ? DImode : SImode;
11405 : int scale = 1 << INTVAL (operands[2]);
11406 : rtx index = gen_lowpart (word_mode, operands[1]);
11407 : rtx base = gen_lowpart (word_mode, operands[5]);
11408 : rtx dest = gen_lowpart (mode, operands[3]);
11409 :
11410 : operands[1] = gen_rtx_PLUS (word_mode, base,
11411 : gen_rtx_MULT (word_mode, index, GEN_INT (scale)));
11412 : if (mode != word_mode)
11413 : operands[1] = gen_rtx_SUBREG (mode, operands[1], 0);
11414 :
11415 : operands[5] = base;
11416 : if (op1mode != word_mode)
11417 : operands[5] = gen_lowpart (op1mode, operands[5]);
11418 :
11419 : operands[0] = dest;
11420 : }
11421 : #undef DONE
11422 : #undef FAIL
11423 : static const uint8_t expand_encoding[] = {
11424 : 0x02, 0x1f, 0x01, 0x05, 0x01, 0x04, 0x1f, 0x01,
11425 : 0x00, 0x01, 0x01
11426 : };
11427 : return complete_seq (expand_encoding, operands);
11428 : }
11429 :
11430 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md:30778 */
11431 : rtx
11432 : gen_spaceshipqi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
11433 : {
11434 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
11435 : start_sequence ();
11436 : {
11437 : #define FAIL return (end_sequence (), nullptr)
11438 : #define DONE return end_sequence ()
11439 : #line 30784 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/i386.md"
11440 : {
11441 : ix86_expand_int_spaceship (operands[0], operands[1], operands[2],
11442 : operands[3]);
11443 : DONE;
11444 : }
11445 : #undef DONE
11446 : #undef FAIL
11447 : }
11448 : static const uint8_t expand_encoding[] = {
11449 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
11450 : 0x03
11451 : };
11452 : return complete_seq (expand_encoding, operands);
11453 : }
11454 :
11455 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:177 */
11456 : rtx
11457 : gen_movv4hf (const rtx operand0, const rtx operand1)
11458 : {
11459 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11460 : start_sequence ();
11461 : {
11462 : #define FAIL return (end_sequence (), nullptr)
11463 : #define DONE return end_sequence ()
11464 : #line 181 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11465 : {
11466 : ix86_expand_vector_move (V4HFmode, operands);
11467 : DONE;
11468 : }
11469 : #undef DONE
11470 : #undef FAIL
11471 : }
11472 : static const uint8_t expand_encoding[] = {
11473 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11474 : };
11475 : return complete_seq (expand_encoding, operands);
11476 : }
11477 :
11478 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:316 */
11479 : extern rtx_insn *gen_split_1016 (rtx_insn *, rtx *);
11480 : rtx_insn *
11481 : gen_split_1016 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
11482 : {
11483 : if (dump_file)
11484 : fprintf (dump_file, "Splitting with gen_split_1016 (mmx.md:316)\n");
11485 : start_sequence ();
11486 : #define FAIL return (end_sequence (), nullptr)
11487 : #define DONE return end_sequence ()
11488 : #line 321 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11489 : ix86_split_long_move (operands); DONE;
11490 : #undef DONE
11491 : #undef FAIL
11492 : static const uint8_t expand_encoding[] = {
11493 : 0x01, 0x27, 0x00
11494 : };
11495 : return complete_seq (expand_encoding, operands);
11496 : }
11497 :
11498 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:323 */
11499 : rtx
11500 : gen_movmisalignv2si (const rtx operand0, const rtx operand1)
11501 : {
11502 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11503 : start_sequence ();
11504 : {
11505 : #define FAIL return (end_sequence (), nullptr)
11506 : #define DONE return end_sequence ()
11507 : #line 327 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11508 : {
11509 : ix86_expand_vector_move (V2SImode, operands);
11510 : DONE;
11511 : }
11512 : #undef DONE
11513 : #undef FAIL
11514 : }
11515 : static const uint8_t expand_encoding[] = {
11516 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11517 : };
11518 : return complete_seq (expand_encoding, operands);
11519 : }
11520 :
11521 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:423 */
11522 : extern rtx_insn *gen_split_1023 (rtx_insn *, rtx *);
11523 : rtx_insn *
11524 : gen_split_1023 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11525 : {
11526 : if (dump_file)
11527 : fprintf (dump_file, "Splitting with gen_split_1023 (mmx.md:423)\n");
11528 : start_sequence ();
11529 : #define FAIL return (end_sequence (), nullptr)
11530 : #define DONE return end_sequence ()
11531 : #line 429 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11532 : {
11533 : operands[2] = GEN_INT (-PUSH_ROUNDING (GET_MODE_SIZE (V4QImode)));
11534 : /* Preserve memory attributes. */
11535 : operands[0] = replace_equiv_address (operands[0], stack_pointer_rtx);
11536 : }
11537 : #undef DONE
11538 : #undef FAIL
11539 : static const uint8_t expand_encoding[] = {
11540 : 0x02, 0x1f, 0x30, 0x11, 0x07, 0x3b, 0x11, 0x30,
11541 : 0x11, 0x07, 0x01, 0x02, 0x1f, 0x01, 0x00, 0x01,
11542 : 0x01
11543 : };
11544 : return complete_seq (expand_encoding, operands);
11545 : }
11546 :
11547 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:435 */
11548 : rtx
11549 : gen_movmisalignv4qi (const rtx operand0, const rtx operand1)
11550 : {
11551 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11552 : start_sequence ();
11553 : {
11554 : #define FAIL return (end_sequence (), nullptr)
11555 : #define DONE return end_sequence ()
11556 : #line 439 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11557 : {
11558 : ix86_expand_vector_move (V4QImode, operands);
11559 : DONE;
11560 : }
11561 : #undef DONE
11562 : #undef FAIL
11563 : }
11564 : static const uint8_t expand_encoding[] = {
11565 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11566 : };
11567 : return complete_seq (expand_encoding, operands);
11568 : }
11569 :
11570 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:577 */
11571 : extern rtx_insn *gen_split_1037 (rtx_insn *, rtx *);
11572 : rtx_insn *
11573 : gen_split_1037 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11574 : {
11575 : if (dump_file)
11576 : fprintf (dump_file, "Splitting with gen_split_1037 (mmx.md:577)\n");
11577 : start_sequence ();
11578 : #define FAIL return (end_sequence (), nullptr)
11579 : #define DONE return end_sequence ()
11580 : #line 584 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11581 : {
11582 : rtx op1 = avoid_constant_pool_reference (operands[1]);
11583 :
11584 : if (!CONST_VECTOR_P (op1))
11585 : FAIL;
11586 :
11587 : HOST_WIDE_INT val = ix86_convert_const_vector_to_integer (op1, V2HFmode);
11588 :
11589 : operands[0] = lowpart_subreg (SImode, operands[0], V2HFmode);
11590 : operands[1] = GEN_INT (val);
11591 : }
11592 : #undef DONE
11593 : #undef FAIL
11594 : static const uint8_t expand_encoding[] = {
11595 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11596 : };
11597 : return complete_seq (expand_encoding, operands);
11598 : }
11599 :
11600 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:598 */
11601 : extern rtx_insn *gen_split_1047 (rtx_insn *, rtx *);
11602 : rtx_insn *
11603 : gen_split_1047 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11604 : {
11605 : if (dump_file)
11606 : fprintf (dump_file, "Splitting with gen_split_1047 (mmx.md:598)\n");
11607 : start_sequence ();
11608 : #define FAIL return (end_sequence (), nullptr)
11609 : #define DONE return end_sequence ()
11610 : #line 605 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11611 : {
11612 : rtx op1 = operands[1];
11613 : HOST_WIDE_INT val = ix86_convert_const_vector_to_integer (op1, V4QImode);
11614 :
11615 : operands[0] = adjust_address (operands[0], SImode, 0);
11616 : operands[1] = GEN_INT (val);
11617 : }
11618 : #undef DONE
11619 : #undef FAIL
11620 : static const uint8_t expand_encoding[] = {
11621 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11622 : };
11623 : return complete_seq (expand_encoding, operands);
11624 : }
11625 :
11626 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:598 */
11627 : extern rtx_insn *gen_split_1057 (rtx_insn *, rtx *);
11628 : rtx_insn *
11629 : gen_split_1057 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11630 : {
11631 : if (dump_file)
11632 : fprintf (dump_file, "Splitting with gen_split_1057 (mmx.md:598)\n");
11633 : start_sequence ();
11634 : #define FAIL return (end_sequence (), nullptr)
11635 : #define DONE return end_sequence ()
11636 : #line 605 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11637 : {
11638 : rtx op1 = operands[1];
11639 : HOST_WIDE_INT val = ix86_convert_const_vector_to_integer (op1, V2SFmode);
11640 :
11641 : operands[0] = adjust_address (operands[0], DImode, 0);
11642 : operands[1] = GEN_INT (val);
11643 : }
11644 : #undef DONE
11645 : #undef FAIL
11646 : static const uint8_t expand_encoding[] = {
11647 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
11648 : };
11649 : return complete_seq (expand_encoding, operands);
11650 : }
11651 :
11652 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:695 */
11653 : rtx
11654 : gen_negv2sf2 (const rtx operand0, const rtx operand1)
11655 : {
11656 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11657 : start_sequence ();
11658 : {
11659 : #define FAIL return (end_sequence (), nullptr)
11660 : #define DONE return end_sequence ()
11661 : #line 700 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11662 : ix86_expand_fp_absneg_operator (NEG, V2SFmode, operands); DONE;
11663 : #undef DONE
11664 : #undef FAIL
11665 : }
11666 : static const uint8_t expand_encoding[] = {
11667 : 0x01, 0x1f, 0x01, 0x00, 0x3d, 0x67, 0x01, 0x01
11668 : };
11669 : return complete_seq (expand_encoding, operands);
11670 : }
11671 :
11672 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:755 */
11673 : rtx
11674 : gen_mmx_addv2sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
11675 : {
11676 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11677 : start_sequence ();
11678 : {
11679 : #define FAIL return (end_sequence (), nullptr)
11680 : #define DONE return end_sequence ()
11681 : #line 763 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11682 : ix86_fixup_binary_operands_no_copy (PLUS, V2SFmode, operands);
11683 : #undef DONE
11684 : #undef FAIL
11685 : }
11686 : static const uint8_t expand_encoding[] = {
11687 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x3b,
11688 : 0x67, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
11689 : 0x27, 0x00, 0x6f
11690 : };
11691 : return complete_seq (expand_encoding, operands);
11692 : }
11693 :
11694 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1027 */
11695 : extern rtx_insn *gen_split_1064 (rtx_insn *, rtx *);
11696 : rtx_insn *
11697 : gen_split_1064 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
11698 : {
11699 : if (dump_file)
11700 : fprintf (dump_file, "Splitting with gen_split_1064 (mmx.md:1027)\n");
11701 : start_sequence ();
11702 : #define FAIL return (end_sequence (), nullptr)
11703 : #define DONE return end_sequence ()
11704 : #line 1042 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11705 : {
11706 : rtx op1 = gen_reg_rtx (V4SFmode);
11707 : rtx op0 = gen_reg_rtx (V4SFmode);
11708 :
11709 : emit_insn (gen_movq_v2sf_to_sse (op1, operands[1]));
11710 :
11711 : emit_insn (gen_sse3_haddv4sf3 (op0, op1, op1));
11712 :
11713 : emit_move_insn (operands[0], lowpart_subreg (SFmode, op0, V4SFmode));
11714 : DONE;
11715 : }
11716 : #undef DONE
11717 : #undef FAIL
11718 : static const uint8_t expand_encoding[] = {
11719 : 0x01, 0x27, 0x00
11720 : };
11721 : return complete_seq (expand_encoding, operands);
11722 : }
11723 :
11724 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1442 */
11725 : rtx
11726 : gen_fmav2sf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
11727 : {
11728 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
11729 : start_sequence ();
11730 : {
11731 : #define FAIL _Pragma ("GCC error \"fmav2sf4 cannot FAIL\"") (void)0
11732 : #define DONE return end_sequence ()
11733 : #line 1450 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11734 : {
11735 : rtx op3 = gen_reg_rtx (V4SFmode);
11736 : rtx op2 = gen_reg_rtx (V4SFmode);
11737 : rtx op1 = gen_reg_rtx (V4SFmode);
11738 : rtx op0 = gen_reg_rtx (V4SFmode);
11739 :
11740 : emit_insn (gen_movq_v2sf_to_sse (op3, operands[3]));
11741 : emit_insn (gen_movq_v2sf_to_sse (op2, operands[2]));
11742 : emit_insn (gen_movq_v2sf_to_sse (op1, operands[1]));
11743 :
11744 : emit_insn (gen_fmav4sf4 (op0, op1, op2, op3));
11745 :
11746 : emit_move_insn (operands[0], lowpart_subreg (V2SFmode, op0, V4SFmode));
11747 : DONE;
11748 : }
11749 : #undef DONE
11750 : #undef FAIL
11751 : }
11752 : static const uint8_t expand_encoding[] = {
11753 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x19, 0x67, 0x01,
11754 : 0x01, 0x01, 0x02, 0x01, 0x03
11755 : };
11756 : return complete_seq (expand_encoding, operands);
11757 : }
11758 :
11759 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1788 */
11760 : rtx
11761 : gen_vec_setv2sf (const rtx operand0, const rtx operand1, const rtx operand2)
11762 : {
11763 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11764 : start_sequence ();
11765 : {
11766 : #define FAIL _Pragma ("GCC error \"vec_setv2sf cannot FAIL\"") (void)0
11767 : #define DONE return end_sequence ()
11768 : #line 1793 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11769 : {
11770 : if (CONST_INT_P (operands[2]))
11771 : ix86_expand_vector_set (TARGET_MMX_WITH_SSE, operands[0], operands[1],
11772 : INTVAL (operands[2]));
11773 : else
11774 : ix86_expand_vector_set_var (operands[0], operands[1], operands[2]);
11775 : DONE;
11776 : }
11777 : #undef DONE
11778 : #undef FAIL
11779 : }
11780 : static const uint8_t expand_encoding[] = {
11781 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
11782 : };
11783 : return complete_seq (expand_encoding, operands);
11784 : }
11785 :
11786 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:1984 */
11787 : rtx
11788 : gen_lfloorv2sfv2si2 (const rtx operand0, const rtx operand1)
11789 : {
11790 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11791 : start_sequence ();
11792 : {
11793 : #define FAIL _Pragma ("GCC error \"lfloorv2sfv2si2 cannot FAIL\"") (void)0
11794 : #define DONE return end_sequence ()
11795 : #line 1989 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11796 : {
11797 : rtx op1 = gen_reg_rtx (V4SFmode);
11798 : rtx op0 = gen_reg_rtx (V4SImode);
11799 :
11800 : emit_insn (gen_movq_v2sf_to_sse (op1, operands[1]));
11801 :
11802 : emit_insn (gen_lfloorv4sfv4si2 (op0, op1));
11803 :
11804 : emit_move_insn (operands[0], lowpart_subreg (V2SImode, op0, V4SImode));
11805 : DONE;
11806 : }
11807 : #undef DONE
11808 : #undef FAIL
11809 : }
11810 : static const uint8_t expand_encoding[] = {
11811 : 0x02, 0x01, 0x00, 0x01, 0x01
11812 : };
11813 : return complete_seq (expand_encoding, operands);
11814 : }
11815 :
11816 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2113 */
11817 : rtx
11818 : gen_movd_v2hi_to_sse_reg (const rtx operand0, const rtx operand1, const rtx operand2)
11819 : {
11820 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11821 : static const uint8_t expand_encoding[] = {
11822 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x81, 0x0c,
11823 : 0x50, 0x01, 0x01, 0x01, 0x02, 0x27, 0x03
11824 : };
11825 : return expand_rtx (expand_encoding, operands);
11826 : }
11827 :
11828 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2142 */
11829 : rtx
11830 : gen_addv2bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
11831 : {
11832 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11833 : start_sequence ();
11834 : {
11835 : #define FAIL return (end_sequence (), nullptr)
11836 : #define DONE return end_sequence ()
11837 : #line 2148 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11838 : {
11839 : rtx op0 = gen_reg_rtx (V8BFmode);
11840 : rtx op1 = lowpart_subreg (V8BFmode,
11841 : force_reg (V2BFmode, operands[1]), V2BFmode);
11842 : rtx op2 = lowpart_subreg (V8BFmode,
11843 : force_reg (V2BFmode, operands[2]), V2BFmode);
11844 :
11845 : emit_insn (gen_addv8bf3 (op0, op1, op2));
11846 :
11847 : emit_move_insn (operands[0], lowpart_subreg (V2BFmode, op0, V8BFmode));
11848 : DONE;
11849 : }
11850 : #undef DONE
11851 : #undef FAIL
11852 : }
11853 : static const uint8_t expand_encoding[] = {
11854 : 0x01, 0x1f, 0x01, 0x00, 0x3b, 0x64, 0x01, 0x01,
11855 : 0x01, 0x02
11856 : };
11857 : return complete_seq (expand_encoding, operands);
11858 : }
11859 :
11860 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2181 */
11861 : rtx
11862 : gen_sminv2hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
11863 : {
11864 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
11865 : start_sequence ();
11866 : {
11867 : #define FAIL return (end_sequence (), nullptr)
11868 : #define DONE return end_sequence ()
11869 : #line 2187 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11870 : {
11871 : rtx op2 = gen_reg_rtx (V8HFmode);
11872 : rtx op1 = gen_reg_rtx (V8HFmode);
11873 : rtx op0 = gen_reg_rtx (V8HFmode);
11874 :
11875 : emit_insn (gen_movd_v2hf_to_sse (op2, operands[2]));
11876 : emit_insn (gen_movd_v2hf_to_sse (op1, operands[1]));
11877 :
11878 : emit_insn (gen_sminv8hf3 (op0, op1, op2));
11879 :
11880 : emit_move_insn (operands[0], lowpart_subreg (V2HFmode, op0, V8HFmode));
11881 : DONE;
11882 : }
11883 : #undef DONE
11884 : #undef FAIL
11885 : }
11886 : static const uint8_t expand_encoding[] = {
11887 : 0x01, 0x1f, 0x01, 0x00, 0x52, 0x63, 0x01, 0x01,
11888 : 0x01, 0x02
11889 : };
11890 : return complete_seq (expand_encoding, operands);
11891 : }
11892 :
11893 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2235 */
11894 : rtx
11895 : gen_sqrtv2bf2 (const rtx operand0, const rtx operand1)
11896 : {
11897 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
11898 : start_sequence ();
11899 : {
11900 : #define FAIL _Pragma ("GCC error \"sqrtv2bf2 cannot FAIL\"") (void)0
11901 : #define DONE return end_sequence ()
11902 : #line 2239 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11903 : {
11904 : rtx op0 = gen_reg_rtx (V8BFmode);
11905 : rtx op1 = lowpart_subreg (V8BFmode,
11906 : force_reg (V2BFmode, operands[1]), V2BFmode);
11907 :
11908 : emit_insn (gen_sqrtv8bf2 (op0, op1));
11909 :
11910 : emit_move_insn (operands[0], lowpart_subreg (V2BFmode, op0, V8BFmode));
11911 : DONE;
11912 : }
11913 : #undef DONE
11914 : #undef FAIL
11915 : }
11916 : static const uint8_t expand_encoding[] = {
11917 : 0x01, 0x1f, 0x01, 0x00, 0x7c, 0x64, 0x01, 0x01
11918 : };
11919 : return complete_seq (expand_encoding, operands);
11920 : }
11921 :
11922 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2261 */
11923 : extern rtx_insn *gen_split_1073 (rtx_insn *, rtx *);
11924 : rtx_insn *
11925 : gen_split_1073 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
11926 : {
11927 : if (dump_file)
11928 : fprintf (dump_file, "Splitting with gen_split_1073 (mmx.md:2261)\n");
11929 : start_sequence ();
11930 : #define FAIL return (end_sequence (), nullptr)
11931 : #define DONE return end_sequence ()
11932 : #line 2271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11933 : {
11934 : if (!TARGET_AVX && operands_match_p (operands[0], operands[2]))
11935 : std::swap (operands[1], operands[2]);
11936 : }
11937 : #undef DONE
11938 : #undef FAIL
11939 : static const uint8_t expand_encoding[] = {
11940 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x65, 0x01, 0x01,
11941 : 0x01, 0x02
11942 : };
11943 : return complete_seq (expand_encoding, operands);
11944 : }
11945 :
11946 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2313 */
11947 : rtx
11948 : gen_vcond_mask_v4hfv4hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
11949 : {
11950 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
11951 : start_sequence ();
11952 : {
11953 : #define FAIL _Pragma ("GCC error \"vcond_mask_v4hfv4hi cannot FAIL\"") (void)0
11954 : #define DONE return end_sequence ()
11955 : #line 2320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11956 : {
11957 : ix86_expand_sse_movcc (operands[0], operands[3],
11958 : operands[1], operands[2]);
11959 : DONE;
11960 : }
11961 : #undef DONE
11962 : #undef FAIL
11963 : }
11964 : static const uint8_t expand_encoding[] = {
11965 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x66, 0x01,
11966 : 0x01, 0x01, 0x02, 0x01, 0x03
11967 : };
11968 : return complete_seq (expand_encoding, operands);
11969 : }
11970 :
11971 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2375 */
11972 : rtx
11973 : gen_vcond_mask_v2bfqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
11974 : {
11975 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
11976 : start_sequence ();
11977 : {
11978 : #define FAIL _Pragma ("GCC error \"vcond_mask_v2bfqi cannot FAIL\"") (void)0
11979 : #define DONE return end_sequence ()
11980 : #line 2382 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
11981 : {
11982 : rtx op0 = gen_reg_rtx (V8BFmode);
11983 : operands[1] = lowpart_subreg (V8BFmode, operands[1], V2BFmode);
11984 : operands[2] = lowpart_subreg (V8BFmode, operands[2], V2BFmode);
11985 : emit_insn (gen_vcond_mask_v8bfqi (op0, operands[1],
11986 : operands[2], operands[3]));
11987 : emit_move_insn (operands[0],
11988 : lowpart_subreg (V2BFmode, op0, V8BFmode));
11989 : DONE;
11990 : }
11991 : #undef DONE
11992 : #undef FAIL
11993 : }
11994 : static const uint8_t expand_encoding[] = {
11995 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x64, 0x01,
11996 : 0x01, 0x01, 0x02, 0x01, 0x03
11997 : };
11998 : return complete_seq (expand_encoding, operands);
11999 : }
12000 :
12001 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2465 */
12002 : rtx
12003 : gen_lrintv4hfv4hi2 (const rtx operand0, const rtx operand1)
12004 : {
12005 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12006 : start_sequence ();
12007 : {
12008 : #define FAIL _Pragma ("GCC error \"lrintv4hfv4hi2 cannot FAIL\"") (void)0
12009 : #define DONE return end_sequence ()
12010 : #line 2470 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12011 : {
12012 : rtx op1 = gen_reg_rtx (V8HFmode);
12013 : rtx op0 = gen_reg_rtx (V8HFmode);
12014 :
12015 : emit_insn (gen_movq_v4hf_to_sse (op1, operands[1]));
12016 : emit_insn (gen_lrintv8hfv8hi2 (op0, op1));
12017 : emit_move_insn (operands[0], lowpart_subreg (V4HFmode, op0, V8HFmode));
12018 :
12019 : DONE;
12020 : }
12021 : #undef DONE
12022 : #undef FAIL
12023 : }
12024 : static const uint8_t expand_encoding[] = {
12025 : 0x02, 0x01, 0x00, 0x01, 0x01
12026 : };
12027 : return complete_seq (expand_encoding, operands);
12028 : }
12029 :
12030 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2566 */
12031 : rtx
12032 : gen_lroundv2hfv2hi2 (const rtx operand0, const rtx operand1)
12033 : {
12034 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12035 : start_sequence ();
12036 : {
12037 : #define FAIL _Pragma ("GCC error \"lroundv2hfv2hi2 cannot FAIL\"") (void)0
12038 : #define DONE return end_sequence ()
12039 : #line 2572 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12040 : {
12041 : rtx op1 = gen_reg_rtx (V8HFmode);
12042 : rtx op0 = gen_reg_rtx (V8HFmode);
12043 :
12044 : emit_insn (gen_movd_v2hf_to_sse (op1, operands[1]));
12045 : emit_insn (gen_lroundv8hfv8hi2 (op0, op1));
12046 : emit_move_insn (operands[0], lowpart_subreg (V2HFmode, op0, V8HFmode));
12047 :
12048 : DONE;
12049 : }
12050 : #undef DONE
12051 : #undef FAIL
12052 : }
12053 : static const uint8_t expand_encoding[] = {
12054 : 0x02, 0x01, 0x00, 0x01, 0x01
12055 : };
12056 : return complete_seq (expand_encoding, operands);
12057 : }
12058 :
12059 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2650 */
12060 : rtx
12061 : gen_signbitv2bf2 (const rtx operand0, const rtx operand1)
12062 : {
12063 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
12064 : start_sequence ();
12065 : {
12066 : #define FAIL _Pragma ("GCC error \"signbitv2bf2 cannot FAIL\"") (void)0
12067 : #define DONE return end_sequence ()
12068 : #line 2657 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12069 : {
12070 : operands[1] = force_reg (V2BFmode, operands[1]);
12071 : operands[2] = GEN_INT (GET_MODE_UNIT_BITSIZE (V2BFmode)-1);
12072 : }
12073 : #undef DONE
12074 : #undef FAIL
12075 : }
12076 : static const uint8_t expand_encoding[] = {
12077 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x46, 0x32, 0x46,
12078 : 0x01, 0x01, 0x00, 0x01, 0x02
12079 : };
12080 : return complete_seq (expand_encoding, operands);
12081 : }
12082 :
12083 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2715 */
12084 : rtx
12085 : gen_fnmav2hf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12086 : {
12087 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12088 : start_sequence ();
12089 : {
12090 : #define FAIL _Pragma ("GCC error \"fnmav2hf4 cannot FAIL\"") (void)0
12091 : #define DONE return end_sequence ()
12092 : #line 2723 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12093 : {
12094 : rtx op3 = gen_reg_rtx (V8HFmode);
12095 : rtx op2 = gen_reg_rtx (V8HFmode);
12096 : rtx op1 = gen_reg_rtx (V8HFmode);
12097 : rtx op0 = gen_reg_rtx (V8HFmode);
12098 :
12099 : emit_insn (gen_movd_v2hf_to_sse (op3, operands[3]));
12100 : emit_insn (gen_movd_v2hf_to_sse (op2, operands[2]));
12101 : emit_insn (gen_movd_v2hf_to_sse (op1, operands[1]));
12102 :
12103 : emit_insn (gen_fnmav8hf4 (op0, op1, op2, op3));
12104 :
12105 : emit_move_insn (operands[0], lowpart_subreg (V2HFmode, op0, V8HFmode));
12106 : DONE;
12107 : }
12108 : #undef DONE
12109 : #undef FAIL
12110 : }
12111 : static const uint8_t expand_encoding[] = {
12112 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x19, 0x63, 0x3d,
12113 : 0x63, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
12114 : };
12115 : return complete_seq (expand_encoding, operands);
12116 : }
12117 :
12118 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2851 */
12119 : rtx
12120 : gen_fnmav2bf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12121 : {
12122 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12123 : start_sequence ();
12124 : {
12125 : #define FAIL _Pragma ("GCC error \"fnmav2bf4 cannot FAIL\"") (void)0
12126 : #define DONE return end_sequence ()
12127 : #line 2859 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12128 : {
12129 : rtx op0 = gen_reg_rtx (V8BFmode);
12130 : rtx op1 = lowpart_subreg (V8BFmode, force_reg (V2BFmode, operands[1]), V2BFmode);
12131 : rtx op2 = lowpart_subreg (V8BFmode, force_reg (V2BFmode, operands[2]), V2BFmode);
12132 : rtx op3 = lowpart_subreg (V8BFmode, force_reg (V2BFmode, operands[3]), V2BFmode);
12133 :
12134 : emit_insn (gen_fnmav8bf4 (op0, op1, op2, op3));
12135 :
12136 : emit_move_insn (operands[0], lowpart_subreg (V2BFmode, op0, V8BFmode));
12137 : DONE;
12138 : }
12139 : #undef DONE
12140 : #undef FAIL
12141 : }
12142 : static const uint8_t expand_encoding[] = {
12143 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x19, 0x64, 0x3d,
12144 : 0x64, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
12145 : };
12146 : return complete_seq (expand_encoding, operands);
12147 : }
12148 :
12149 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:2988 */
12150 : rtx
12151 : gen_fix_truncv4hfv4hi2 (const rtx operand0, const rtx operand1)
12152 : {
12153 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12154 : start_sequence ();
12155 : {
12156 : #define FAIL return (end_sequence (), nullptr)
12157 : #define DONE return end_sequence ()
12158 : #line 2993 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12159 : {
12160 : rtx op1 = gen_reg_rtx (V8HFmode);
12161 : rtx op0 = gen_reg_rtx (V8HImode);
12162 :
12163 : emit_insn (gen_movq_v4hf_to_sse (op1, operands[1]));
12164 :
12165 : emit_insn (gen_fix_truncv8hfv8hi2 (op0, op1));
12166 :
12167 : emit_move_insn (operands[0],
12168 : lowpart_subreg (V4HImode, op0, V8HImode));
12169 : DONE;
12170 : }
12171 : #undef DONE
12172 : #undef FAIL
12173 : }
12174 : static const uint8_t expand_encoding[] = {
12175 : 0x01, 0x1f, 0x01, 0x00, 0x74, 0x49, 0x01, 0x01
12176 : };
12177 : return complete_seq (expand_encoding, operands);
12178 : }
12179 :
12180 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3062 */
12181 : rtx
12182 : gen_extendv2hfv2sf2 (const rtx operand0, const rtx operand1)
12183 : {
12184 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12185 : start_sequence ();
12186 : {
12187 : #define FAIL return (end_sequence (), nullptr)
12188 : #define DONE return end_sequence ()
12189 : #line 3068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12190 : {
12191 : rtx op1 = gen_reg_rtx (V8HFmode);
12192 : rtx op0 = gen_reg_rtx (V4SFmode);
12193 :
12194 : emit_insn (gen_movd_v2hf_to_sse (op1, operands[1]));
12195 :
12196 : emit_insn (gen_avx512fp16_float_extend_phv4sf2 (op0, op1));
12197 :
12198 : emit_move_insn (operands[0], lowpart_subreg (V2SFmode, op0, V4SFmode));
12199 : DONE;
12200 : }
12201 : #undef DONE
12202 : #undef FAIL
12203 : }
12204 : static const uint8_t expand_encoding[] = {
12205 : 0x01, 0x1f, 0x01, 0x00, 0x71, 0x67, 0x01, 0x01
12206 : };
12207 : return complete_seq (expand_encoding, operands);
12208 : }
12209 :
12210 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3205 */
12211 : extern rtx_insn *gen_split_1083 (rtx_insn *, rtx *);
12212 : rtx_insn *
12213 : gen_split_1083 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12214 : {
12215 : if (dump_file)
12216 : fprintf (dump_file, "Splitting with gen_split_1083 (mmx.md:3205)\n");
12217 : start_sequence ();
12218 : #define FAIL return (end_sequence (), nullptr)
12219 : #define DONE return end_sequence ()
12220 : #line 3214 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12221 : {
12222 : operands[2] = CONST0_RTX (V16QImode);
12223 : operands[1] = lowpart_subreg (V16QImode, operands[1], V2QImode);
12224 : operands[0] = lowpart_subreg (V16QImode, operands[0], V2QImode);
12225 : }
12226 : #undef DONE
12227 : #undef FAIL
12228 : static const uint8_t expand_encoding[] = {
12229 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x1f, 0x01,
12230 : 0x00, 0x3c, 0x4f, 0x01, 0x00, 0x01, 0x01
12231 : };
12232 : return complete_seq (expand_encoding, operands);
12233 : }
12234 :
12235 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3228 */
12236 : rtx
12237 : gen_addv2si3 (const rtx operand0, const rtx operand1, const rtx operand2)
12238 : {
12239 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12240 : static const uint8_t expand_encoding[] = {
12241 : 0x1f, 0x01, 0x00, 0x3b, 0x4a, 0x01, 0x01, 0x01,
12242 : 0x02
12243 : };
12244 : return expand_rtx (expand_encoding, operands);
12245 : }
12246 :
12247 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3334 */
12248 : rtx
12249 : gen_mmx_ssaddv4hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12250 : {
12251 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12252 : start_sequence ();
12253 : {
12254 : #define FAIL return (end_sequence (), nullptr)
12255 : #define DONE return end_sequence ()
12256 : #line 3340 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12257 : ix86_fixup_binary_operands_no_copy (SS_PLUS, V4HImode, operands);
12258 : #undef DONE
12259 : #undef FAIL
12260 : }
12261 : static const uint8_t expand_encoding[] = {
12262 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0e, 0x49, 0x01,
12263 : 0x01, 0x01, 0x02
12264 : };
12265 : return complete_seq (expand_encoding, operands);
12266 : }
12267 :
12268 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3342 */
12269 : rtx
12270 : gen_ssaddv4hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12271 : {
12272 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12273 : static const uint8_t expand_encoding[] = {
12274 : 0x1f, 0x01, 0x00, 0x81, 0x0e, 0x49, 0x01, 0x01,
12275 : 0x01, 0x02
12276 : };
12277 : return expand_rtx (expand_encoding, operands);
12278 : }
12279 :
12280 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3435 */
12281 : rtx
12282 : gen_mulv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12283 : {
12284 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12285 : start_sequence ();
12286 : {
12287 : #define FAIL return (end_sequence (), nullptr)
12288 : #define DONE return end_sequence ()
12289 : #line 3440 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12290 : {
12291 : ix86_expand_vecop_qihi_partial (MULT, operands[0], operands[1], operands[2]);
12292 : DONE;
12293 : }
12294 : #undef DONE
12295 : #undef FAIL
12296 : }
12297 : static const uint8_t expand_encoding[] = {
12298 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x48, 0x01, 0x01,
12299 : 0x01, 0x02
12300 : };
12301 : return complete_seq (expand_encoding, operands);
12302 : }
12303 :
12304 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3728 */
12305 : rtx
12306 : gen_sminv4hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12307 : {
12308 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12309 : static const uint8_t expand_encoding[] = {
12310 : 0x1f, 0x01, 0x00, 0x52, 0x49, 0x01, 0x01, 0x01,
12311 : 0x02
12312 : };
12313 : return expand_rtx (expand_encoding, operands);
12314 : }
12315 :
12316 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3857 */
12317 : rtx
12318 : gen_absv8qi2 (const rtx operand0, const rtx operand1)
12319 : {
12320 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12321 : static const uint8_t expand_encoding[] = {
12322 : 0x1f, 0x01, 0x00, 0x7b, 0x48, 0x01, 0x01
12323 : };
12324 : return expand_rtx (expand_encoding, operands);
12325 : }
12326 :
12327 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:3937 */
12328 : extern rtx_insn *gen_split_1091 (rtx_insn *, rtx *);
12329 : rtx_insn *
12330 : gen_split_1091 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12331 : {
12332 : if (dump_file)
12333 : fprintf (dump_file, "Splitting with gen_split_1091 (mmx.md:3937)\n");
12334 : start_sequence ();
12335 : #define FAIL return (end_sequence (), nullptr)
12336 : #define DONE return end_sequence ()
12337 : #line 3946 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12338 : operands[4] = gen_int_mode (32 - 1, DImode);
12339 : #undef DONE
12340 : #undef FAIL
12341 : static const uint8_t expand_encoding[] = {
12342 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x4a, 0x01, 0x01,
12343 : 0x01, 0x04
12344 : };
12345 : return complete_seq (expand_encoding, operands);
12346 : }
12347 :
12348 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4033 */
12349 : extern rtx_insn *gen_split_1095 (rtx_insn *, rtx *);
12350 : rtx_insn *
12351 : gen_split_1095 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12352 : {
12353 : if (dump_file)
12354 : fprintf (dump_file, "Splitting with gen_split_1095 (mmx.md:4033)\n");
12355 : start_sequence ();
12356 : #define FAIL return (end_sequence (), nullptr)
12357 : #define DONE return end_sequence ()
12358 : #line 4057 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12359 : {
12360 : operands[4] = lowpart_subreg (HImode, operands[1], V2QImode);
12361 : operands[3] = lowpart_subreg (HImode, operands[0], V2QImode);
12362 : operands[1] = lowpart_subreg (QImode, operands[1], V2QImode);
12363 : operands[0] = lowpart_subreg (QImode, operands[0], V2QImode);
12364 : }
12365 : #undef DONE
12366 : #undef FAIL
12367 : static const uint8_t expand_encoding[] = {
12368 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x81, 0x06, 0x10,
12369 : 0x01, 0x03, 0x27, 0x08, 0x27, 0x08, 0x32, 0x10,
12370 : 0x4d, 0x0f, 0x32, 0x0f, 0x81, 0x06, 0x10, 0x01,
12371 : 0x04, 0x27, 0x08, 0x27, 0x08, 0x00, 0x01, 0x02,
12372 : 0x00, 0x05, 0x02, 0x11, 0x17, 0x00, 0x02, 0x1f,
12373 : 0x33, 0x00, 0x01, 0x00, 0x4d, 0x0f, 0x01, 0x01,
12374 : 0x01, 0x02, 0x05, 0x02, 0x11
12375 : };
12376 : return complete_seq (expand_encoding, operands);
12377 : }
12378 :
12379 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4090 */
12380 : rtx
12381 : gen_vec_shl_v4hi (const rtx operand0, const rtx operand1, const rtx operand2)
12382 : {
12383 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12384 : start_sequence ();
12385 : {
12386 : #define FAIL return (end_sequence (), nullptr)
12387 : #define DONE return end_sequence ()
12388 : #line 4096 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12389 : {
12390 : rtx op0 = gen_reg_rtx (V1DImode);
12391 : rtx op1 = force_reg (V4HImode, operands[1]);
12392 :
12393 : emit_insn (gen_mmx_ashlv1di3
12394 : (op0, gen_lowpart (V1DImode, op1), operands[2]));
12395 : emit_move_insn (operands[0], gen_lowpart (V4HImode, op0));
12396 : DONE;
12397 : }
12398 : #undef DONE
12399 : #undef FAIL
12400 : }
12401 : static const uint8_t expand_encoding[] = {
12402 : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x4b, 0x01, 0x01,
12403 : 0x01, 0x02
12404 : };
12405 : return complete_seq (expand_encoding, operands);
12406 : }
12407 :
12408 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4122 */
12409 : rtx
12410 : gen_vec_shr_v4hi (const rtx operand0, const rtx operand1, const rtx operand2)
12411 : {
12412 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12413 : start_sequence ();
12414 : {
12415 : #define FAIL return (end_sequence (), nullptr)
12416 : #define DONE return end_sequence ()
12417 : #line 4128 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12418 : {
12419 : rtx op0 = gen_reg_rtx (V1DImode);
12420 : rtx op1 = force_reg (V4HImode, operands[1]);
12421 :
12422 : emit_insn (gen_mmx_lshrv1di3
12423 : (op0, gen_lowpart (V1DImode, op1), operands[2]));
12424 : emit_move_insn (operands[0], gen_lowpart (V4HImode, op0));
12425 : DONE;
12426 : }
12427 : #undef DONE
12428 : #undef FAIL
12429 : }
12430 : static const uint8_t expand_encoding[] = {
12431 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x4b, 0x01, 0x01,
12432 : 0x01, 0x02
12433 : };
12434 : return complete_seq (expand_encoding, operands);
12435 : }
12436 :
12437 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4265 */
12438 : rtx
12439 : gen_vec_cmpv4hiv4hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12440 : {
12441 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12442 : start_sequence ();
12443 : {
12444 : #define FAIL return (end_sequence (), nullptr)
12445 : #define DONE return end_sequence ()
12446 : #line 4271 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12447 : {
12448 : bool ok = ix86_expand_int_vec_cmp (operands);
12449 : gcc_assert (ok);
12450 : DONE;
12451 : }
12452 : #undef DONE
12453 : #undef FAIL
12454 : }
12455 : static const uint8_t expand_encoding[] = {
12456 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x49, 0x01, 0x01,
12457 : 0x02, 0x01, 0x03
12458 : };
12459 : return complete_seq (expand_encoding, operands);
12460 : }
12461 :
12462 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4301 */
12463 : rtx
12464 : gen_vec_cmpuv2hiv2hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12465 : {
12466 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12467 : start_sequence ();
12468 : {
12469 : #define FAIL return (end_sequence (), nullptr)
12470 : #define DONE return end_sequence ()
12471 : #line 4307 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12472 : {
12473 : bool ok = ix86_expand_int_vec_cmp (operands);
12474 : gcc_assert (ok);
12475 : DONE;
12476 : }
12477 : #undef DONE
12478 : #undef FAIL
12479 : }
12480 : static const uint8_t expand_encoding[] = {
12481 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x46, 0x01, 0x01,
12482 : 0x02, 0x01, 0x03
12483 : };
12484 : return complete_seq (expand_encoding, operands);
12485 : }
12486 :
12487 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4387 */
12488 : extern rtx_insn *gen_split_1100 (rtx_insn *, rtx *);
12489 : rtx_insn *
12490 : gen_split_1100 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12491 : {
12492 : if (dump_file)
12493 : fprintf (dump_file, "Splitting with gen_split_1100 (mmx.md:4387)\n");
12494 : start_sequence ();
12495 : #define FAIL return (end_sequence (), nullptr)
12496 : #define DONE return end_sequence ()
12497 : #line 4410 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12498 : {
12499 : operands[6] = gen_reg_rtx (V2SImode);
12500 : operands[7] = lowpart_subreg (V8QImode, operands[6], V2SImode);
12501 : operands[8] = force_reg (V2SImode, operands[4]);
12502 : }
12503 : #undef DONE
12504 : #undef FAIL
12505 : static const uint8_t expand_encoding[] = {
12506 : 0x02, 0x1f, 0x01, 0x06, 0x5d, 0x4a, 0x01, 0x03,
12507 : 0x01, 0x08, 0x1f, 0x01, 0x00, 0x1a, 0x48, 0x03,
12508 : 0x01, 0x02, 0x01, 0x01, 0x01, 0x07, 0x34
12509 : };
12510 : return complete_seq (expand_encoding, operands);
12511 : }
12512 :
12513 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4599 */
12514 : extern rtx_insn *gen_split_1109 (rtx_insn *, rtx *);
12515 : rtx_insn *
12516 : gen_split_1109 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12517 : {
12518 : if (dump_file)
12519 : fprintf (dump_file, "Splitting with gen_split_1109 (mmx.md:4599)\n");
12520 : start_sequence ();
12521 : #define FAIL return (end_sequence (), nullptr)
12522 : #define DONE return end_sequence ()
12523 : #line 4608 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12524 : {
12525 : operands[2] = CONSTM1_RTX (V16QImode);
12526 : operands[1] = lowpart_subreg (V16QImode, operands[1], V2QImode);
12527 : operands[0] = lowpart_subreg (V16QImode, operands[0], V2QImode);
12528 : }
12529 : #undef DONE
12530 : #undef FAIL
12531 : static const uint8_t expand_encoding[] = {
12532 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x1f, 0x01,
12533 : 0x00, 0x4b, 0x4f, 0x01, 0x00, 0x01, 0x01
12534 : };
12535 : return complete_seq (expand_encoding, operands);
12536 : }
12537 :
12538 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4686 */
12539 : extern rtx_insn *gen_split_1119 (rtx_insn *, rtx *);
12540 : rtx_insn *
12541 : gen_split_1119 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12542 : {
12543 : if (dump_file)
12544 : fprintf (dump_file, "Splitting with gen_split_1119 (mmx.md:4686)\n");
12545 : start_sequence ();
12546 : #define FAIL return (end_sequence (), nullptr)
12547 : #define DONE return end_sequence ()
12548 : #line 4695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12549 : {
12550 : operands[2] = lowpart_subreg (V16QImode, operands[2], V2HImode);
12551 : operands[1] = lowpart_subreg (V16QImode, operands[1], V2HImode);
12552 : operands[0] = lowpart_subreg (V16QImode, operands[0], V2HImode);
12553 : }
12554 : #undef DONE
12555 : #undef FAIL
12556 : static const uint8_t expand_encoding[] = {
12557 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x4f, 0x4c, 0x4f,
12558 : 0x01, 0x01, 0x01, 0x02
12559 : };
12560 : return complete_seq (expand_encoding, operands);
12561 : }
12562 :
12563 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4709 */
12564 : rtx
12565 : gen_iorv8qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12566 : {
12567 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12568 : static const uint8_t expand_encoding[] = {
12569 : 0x1f, 0x01, 0x00, 0x4a, 0x48, 0x01, 0x01, 0x01,
12570 : 0x02
12571 : };
12572 : return expand_rtx (expand_encoding, operands);
12573 : }
12574 :
12575 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4709 */
12576 : rtx
12577 : gen_andv2si3 (const rtx operand0, const rtx operand1, const rtx operand2)
12578 : {
12579 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12580 : static const uint8_t expand_encoding[] = {
12581 : 0x1f, 0x01, 0x00, 0x49, 0x4a, 0x01, 0x01, 0x01,
12582 : 0x02
12583 : };
12584 : return expand_rtx (expand_encoding, operands);
12585 : }
12586 :
12587 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4733 */
12588 : rtx
12589 : gen_iorv2hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
12590 : {
12591 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12592 : start_sequence ();
12593 : {
12594 : #define FAIL return (end_sequence (), nullptr)
12595 : #define DONE return end_sequence ()
12596 : #line 4739 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12597 : ix86_expand_binary_operator (IOR, V2HImode, operands); DONE;
12598 : #undef DONE
12599 : #undef FAIL
12600 : }
12601 : static const uint8_t expand_encoding[] = {
12602 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x46, 0x01, 0x01,
12603 : 0x01, 0x02
12604 : };
12605 : return complete_seq (expand_encoding, operands);
12606 : }
12607 :
12608 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4753 */
12609 : extern rtx_insn *gen_split_1128 (rtx_insn *, rtx *);
12610 : rtx_insn *
12611 : gen_split_1128 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12612 : {
12613 : if (dump_file)
12614 : fprintf (dump_file, "Splitting with gen_split_1128 (mmx.md:4753)\n");
12615 : start_sequence ();
12616 : #define FAIL return (end_sequence (), nullptr)
12617 : #define DONE return end_sequence ()
12618 : #line 4764 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12619 : {
12620 : if (!register_operand (operands[2], V2HImode))
12621 : {
12622 : HOST_WIDE_INT val = ix86_convert_const_vector_to_integer (operands[2],
12623 : V2HImode);
12624 : operands[2] = GEN_INT (val);
12625 : }
12626 : else
12627 : operands[2] = lowpart_subreg (SImode, operands[2], V2HImode);
12628 : operands[1] = lowpart_subreg (SImode, operands[1], V2HImode);
12629 : operands[0] = lowpart_subreg (SImode, operands[0], V2HImode);
12630 : }
12631 : #undef DONE
12632 : #undef FAIL
12633 : static const uint8_t expand_encoding[] = {
12634 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4b,
12635 : 0x11, 0x01, 0x01, 0x01, 0x02, 0x05, 0x02, 0x11
12636 : };
12637 : return complete_seq (expand_encoding, operands);
12638 : }
12639 :
12640 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4820 */
12641 : extern rtx_insn *gen_split_1139 (rtx_insn *, rtx *);
12642 : rtx_insn *
12643 : gen_split_1139 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
12644 : {
12645 : if (dump_file)
12646 : fprintf (dump_file, "Splitting with gen_split_1139 (mmx.md:4820)\n");
12647 : start_sequence ();
12648 : #define FAIL return (end_sequence (), nullptr)
12649 : #define DONE return end_sequence ()
12650 : #line 4834 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12651 : ix86_split_mmx_pack (operands, US_TRUNCATE); DONE;
12652 : #undef DONE
12653 : #undef FAIL
12654 : static const uint8_t expand_encoding[] = {
12655 : 0x01, 0x27, 0x00
12656 : };
12657 : return complete_seq (expand_encoding, operands);
12658 : }
12659 :
12660 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:4937 */
12661 : extern rtx_insn *gen_split_1145 (rtx_insn *, rtx *);
12662 : rtx_insn *
12663 : gen_split_1145 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
12664 : {
12665 : if (dump_file)
12666 : fprintf (dump_file, "Splitting with gen_split_1145 (mmx.md:4937)\n");
12667 : start_sequence ();
12668 : #define FAIL return (end_sequence (), nullptr)
12669 : #define DONE return end_sequence ()
12670 : #line 4949 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12671 : ix86_split_mmx_punpck (operands, false); DONE;
12672 : #undef DONE
12673 : #undef FAIL
12674 : static const uint8_t expand_encoding[] = {
12675 : 0x01, 0x27, 0x00
12676 : };
12677 : return complete_seq (expand_encoding, operands);
12678 : }
12679 :
12680 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5120 */
12681 : rtx
12682 : gen_zero_extendv2qiv2si2 (const rtx operand0, const rtx operand1)
12683 : {
12684 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12685 : start_sequence ();
12686 : {
12687 : #define FAIL return (end_sequence (), nullptr)
12688 : #define DONE return end_sequence ()
12689 : #line 5125 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12690 : {
12691 : rtx op1 = force_reg (V2QImode, operands[1]);
12692 : op1 = lowpart_subreg (V4QImode, op1, V2QImode);
12693 : emit_insn (gen_sse4_1_zero_extendv2qiv2si2 (operands[0], op1));
12694 : DONE;
12695 : }
12696 : #undef DONE
12697 : #undef FAIL
12698 : }
12699 : static const uint8_t expand_encoding[] = {
12700 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x4a, 0x01, 0x01
12701 : };
12702 : return complete_seq (expand_encoding, operands);
12703 : }
12704 :
12705 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5218 */
12706 : rtx
12707 : gen_vec_pack_trunc_v2si (const rtx operand0, const rtx operand1, const rtx operand2)
12708 : {
12709 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12710 : start_sequence ();
12711 : {
12712 : #define FAIL return (end_sequence (), nullptr)
12713 : #define DONE return end_sequence ()
12714 : #line 5223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12715 : {
12716 : rtx op1 = gen_lowpart (V4HImode, operands[1]);
12717 : rtx op2 = gen_lowpart (V4HImode, operands[2]);
12718 : ix86_expand_vec_extract_even_odd (operands[0], op1, op2, 0);
12719 : DONE;
12720 : }
12721 : #undef DONE
12722 : #undef FAIL
12723 : }
12724 : static const uint8_t expand_encoding[] = {
12725 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
12726 : };
12727 : return complete_seq (expand_encoding, operands);
12728 : }
12729 :
12730 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5364 */
12731 : extern rtx_insn *gen_split_1150 (rtx_insn *, rtx *);
12732 : rtx_insn *
12733 : gen_split_1150 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
12734 : {
12735 : if (dump_file)
12736 : fprintf (dump_file, "Splitting with gen_split_1150 (mmx.md:5364)\n");
12737 : start_sequence ();
12738 : #define FAIL return (end_sequence (), nullptr)
12739 : #define DONE return end_sequence ()
12740 : #line 5378 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12741 : operands[3] = GEN_INT (~INTVAL (operands[3]) & 0xf);
12742 : #undef DONE
12743 : #undef FAIL
12744 : static const uint8_t expand_encoding[] = {
12745 : 0x02, 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x66, 0x01,
12746 : 0x02, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x66, 0x01,
12747 : 0x01, 0x01, 0x00, 0x01, 0x03
12748 : };
12749 : return complete_seq (expand_encoding, operands);
12750 : }
12751 :
12752 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5902 */
12753 : rtx
12754 : gen_vec_extractv2sisi (const rtx operand0, const rtx operand1, const rtx operand2)
12755 : {
12756 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12757 : start_sequence ();
12758 : {
12759 : #define FAIL _Pragma ("GCC error \"vec_extractv2sisi cannot FAIL\"") (void)0
12760 : #define DONE return end_sequence ()
12761 : #line 5907 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12762 : {
12763 : ix86_expand_vector_extract (TARGET_MMX_WITH_SSE, operands[0],
12764 : operands[1], INTVAL (operands[2]));
12765 : DONE;
12766 : }
12767 : #undef DONE
12768 : #undef FAIL
12769 : }
12770 : static const uint8_t expand_encoding[] = {
12771 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
12772 : };
12773 : return complete_seq (expand_encoding, operands);
12774 : }
12775 :
12776 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:5968 */
12777 : rtx
12778 : gen_vec_setv8qi (const rtx operand0, const rtx operand1, const rtx operand2)
12779 : {
12780 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12781 : start_sequence ();
12782 : {
12783 : #define FAIL _Pragma ("GCC error \"vec_setv8qi cannot FAIL\"") (void)0
12784 : #define DONE return end_sequence ()
12785 : #line 5973 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12786 : {
12787 : if (CONST_INT_P (operands[2]))
12788 : ix86_expand_vector_set (TARGET_MMX_WITH_SSE, operands[0], operands[1],
12789 : INTVAL (operands[2]));
12790 : else
12791 : ix86_expand_vector_set_var (operands[0], operands[1], operands[2]);
12792 : DONE;
12793 : }
12794 : #undef DONE
12795 : #undef FAIL
12796 : }
12797 : static const uint8_t expand_encoding[] = {
12798 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
12799 : };
12800 : return complete_seq (expand_encoding, operands);
12801 : }
12802 :
12803 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6210 */
12804 : rtx
12805 : gen_vec_extractv2bfbf (const rtx operand0, const rtx operand1, const rtx operand2)
12806 : {
12807 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
12808 : start_sequence ();
12809 : {
12810 : #define FAIL _Pragma ("GCC error \"vec_extractv2bfbf cannot FAIL\"") (void)0
12811 : #define DONE return end_sequence ()
12812 : #line 6215 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12813 : {
12814 : ix86_expand_vector_extract (false, operands[0],
12815 : operands[1], INTVAL (operands[2]));
12816 : DONE;
12817 : }
12818 : #undef DONE
12819 : #undef FAIL
12820 : }
12821 : static const uint8_t expand_encoding[] = {
12822 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
12823 : };
12824 : return complete_seq (expand_encoding, operands);
12825 : }
12826 :
12827 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6339 */
12828 : rtx
12829 : gen_vec_initv4qiqi (const rtx operand0, const rtx operand1)
12830 : {
12831 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12832 : start_sequence ();
12833 : {
12834 : #define FAIL return (end_sequence (), nullptr)
12835 : #define DONE return end_sequence ()
12836 : #line 6343 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12837 : {
12838 : ix86_expand_vector_init (TARGET_MMX_WITH_SSE, operands[0],
12839 : operands[1]);
12840 : DONE;
12841 : }
12842 : #undef DONE
12843 : #undef FAIL
12844 : }
12845 : static const uint8_t expand_encoding[] = {
12846 : 0x02, 0x01, 0x00, 0x01, 0x01
12847 : };
12848 : return complete_seq (expand_encoding, operands);
12849 : }
12850 :
12851 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6546 */
12852 : rtx
12853 : gen_reduc_ior_scal_v8qi (const rtx operand0, const rtx operand1)
12854 : {
12855 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12856 : start_sequence ();
12857 : {
12858 : #define FAIL _Pragma ("GCC error \"reduc_ior_scal_v8qi cannot FAIL\"") (void)0
12859 : #define DONE return end_sequence ()
12860 : #line 6551 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12861 : {
12862 : rtx tmp = gen_reg_rtx (V8QImode);
12863 : ix86_expand_reduc (gen_iorv8qi3, tmp, operands[1]);
12864 : emit_insn (gen_vec_extractv8qiqi (operands[0],
12865 : tmp, const0_rtx));
12866 : DONE;
12867 : }
12868 : #undef DONE
12869 : #undef FAIL
12870 : }
12871 : static const uint8_t expand_encoding[] = {
12872 : 0x01, 0x4a, 0x48, 0x01, 0x00, 0x01, 0x01
12873 : };
12874 : return complete_seq (expand_encoding, operands);
12875 : }
12876 :
12877 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6598 */
12878 : rtx
12879 : gen_reduc_smax_scal_v4hi (const rtx operand0, const rtx operand1)
12880 : {
12881 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12882 : start_sequence ();
12883 : {
12884 : #define FAIL return (end_sequence (), nullptr)
12885 : #define DONE return end_sequence ()
12886 : #line 6603 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12887 : {
12888 : rtx tmp = gen_reg_rtx (V4HImode);
12889 : ix86_expand_reduc (gen_smaxv4hi3, tmp, operands[1]);
12890 : emit_insn (gen_vec_extractv4hihi (operands[0], tmp, const0_rtx));
12891 : DONE;
12892 : }
12893 : #undef DONE
12894 : #undef FAIL
12895 : }
12896 : static const uint8_t expand_encoding[] = {
12897 : 0x01, 0x53, 0x49, 0x01, 0x00, 0x01, 0x01
12898 : };
12899 : return complete_seq (expand_encoding, operands);
12900 : }
12901 :
12902 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md:6682 */
12903 : rtx
12904 : gen_usdot_prodv2siv8qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
12905 : {
12906 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
12907 : start_sequence ();
12908 : {
12909 : #define FAIL return (end_sequence (), nullptr)
12910 : #define DONE return end_sequence ()
12911 : #line 6688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/mmx.md"
12912 : {
12913 : operands[1] = force_reg (V8QImode, operands[1]);
12914 : operands[2] = force_reg (V8QImode, operands[2]);
12915 : operands[3] = force_reg (V2SImode, operands[3]);
12916 :
12917 : if ((TARGET_AVX512VNNI && TARGET_AVX512VL)
12918 : || TARGET_AVXVNNI)
12919 : {
12920 : rtx op1 = lowpart_subreg (V16QImode, operands[1], V8QImode);
12921 : rtx op2 = lowpart_subreg (V16QImode, operands[2], V8QImode);
12922 : rtx op3 = lowpart_subreg (V4SImode, operands[3], V2SImode);
12923 : rtx op0 = gen_reg_rtx (V4SImode);
12924 :
12925 : emit_insn (gen_usdot_prodv4siv16qi (op0, op1, op2, op3));
12926 : emit_move_insn (operands[0], lowpart_subreg (V2SImode, op0, V4SImode));
12927 : }
12928 : else
12929 : {
12930 : rtx op1 = gen_reg_rtx (V8HImode);
12931 : rtx op2 = gen_reg_rtx (V8HImode);
12932 : rtx op3 = gen_reg_rtx (V4SImode);
12933 : rtx op0 = gen_reg_rtx (V4SImode);
12934 : rtx op0_1 = gen_reg_rtx (V4SImode);
12935 :
12936 : emit_move_insn (op3, CONST0_RTX (V4SImode));
12937 : emit_insn (gen_zero_extendv8qiv8hi2 (op1, operands[1]));
12938 : emit_insn (gen_extendv8qiv8hi2 (op2, operands[2]));
12939 : emit_insn (gen_sdot_prodv4siv8hi (op0, op1, op2, op3));
12940 :
12941 : /* vec_perm (op0, 2, 3, 0, 1); */
12942 : emit_insn (gen_sse2_pshufd (op0_1, op0, GEN_INT (78)));
12943 : emit_insn (gen_addv4si3 (op0, op0, op0_1));
12944 : emit_insn (gen_addv2si3 (operands[0], operands[3],
12945 : lowpart_subreg (V2SImode, op0, V4SImode)));
12946 : }
12947 : DONE;
12948 : }
12949 : #undef DONE
12950 : #undef FAIL
12951 : }
12952 : static const uint8_t expand_encoding[] = {
12953 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
12954 : 0x03
12955 : };
12956 : return complete_seq (expand_encoding, operands);
12957 : }
12958 :
12959 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1477 */
12960 : rtx
12961 : gen_movv4si (const rtx operand0, const rtx operand1)
12962 : {
12963 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12964 : start_sequence ();
12965 : {
12966 : #define FAIL return (end_sequence (), nullptr)
12967 : #define DONE return end_sequence ()
12968 : #line 1481 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
12969 : {
12970 : ix86_expand_vector_move (V4SImode, operands);
12971 : DONE;
12972 : }
12973 : #undef DONE
12974 : #undef FAIL
12975 : }
12976 : static const uint8_t expand_encoding[] = {
12977 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
12978 : };
12979 : return complete_seq (expand_encoding, operands);
12980 : }
12981 :
12982 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1477 */
12983 : rtx
12984 : gen_movv32bf (const rtx operand0, const rtx operand1)
12985 : {
12986 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
12987 : start_sequence ();
12988 : {
12989 : #define FAIL return (end_sequence (), nullptr)
12990 : #define DONE return end_sequence ()
12991 : #line 1481 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
12992 : {
12993 : ix86_expand_vector_move (V32BFmode, operands);
12994 : DONE;
12995 : }
12996 : #undef DONE
12997 : #undef FAIL
12998 : }
12999 : static const uint8_t expand_encoding[] = {
13000 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13001 : };
13002 : return complete_seq (expand_encoding, operands);
13003 : }
13004 :
13005 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1539 */
13006 : extern rtx_insn *gen_split_1166 (rtx_insn *, rtx *);
13007 : rtx_insn *
13008 : gen_split_1166 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13009 : {
13010 : if (dump_file)
13011 : fprintf (dump_file, "Splitting with gen_split_1166 (sse.md:1539)\n");
13012 : start_sequence ();
13013 : #define FAIL return (end_sequence (), nullptr)
13014 : #define DONE return end_sequence ()
13015 : #line 1549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13016 : operands[2] = CONST0_RTX (V32QImode);
13017 : #undef DONE
13018 : #undef FAIL
13019 : static const uint8_t expand_encoding[] = {
13020 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
13021 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x1a, 0x00,
13022 : 0x01, 0x01, 0x00, 0x27
13023 : };
13024 : return complete_seq (expand_encoding, operands);
13025 : }
13026 :
13027 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1539 */
13028 : extern rtx_insn *gen_split_1176 (rtx_insn *, rtx *);
13029 : rtx_insn *
13030 : gen_split_1176 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13031 : {
13032 : if (dump_file)
13033 : fprintf (dump_file, "Splitting with gen_split_1176 (sse.md:1539)\n");
13034 : start_sequence ();
13035 : #define FAIL return (end_sequence (), nullptr)
13036 : #define DONE return end_sequence ()
13037 : #line 1549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13038 : operands[2] = CONST0_RTX (V2DImode);
13039 : #undef DONE
13040 : #undef FAIL
13041 : static const uint8_t expand_encoding[] = {
13042 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
13043 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x1a, 0x00,
13044 : 0x01, 0x01, 0x00, 0x27
13045 : };
13046 : return complete_seq (expand_encoding, operands);
13047 : }
13048 :
13049 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1539 */
13050 : extern rtx_insn *gen_split_1186 (rtx_insn *, rtx *);
13051 : rtx_insn *
13052 : gen_split_1186 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13053 : {
13054 : if (dump_file)
13055 : fprintf (dump_file, "Splitting with gen_split_1186 (sse.md:1539)\n");
13056 : start_sequence ();
13057 : #define FAIL return (end_sequence (), nullptr)
13058 : #define DONE return end_sequence ()
13059 : #line 1549 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13060 : operands[2] = CONST0_RTX (V16SFmode);
13061 : #undef DONE
13062 : #undef FAIL
13063 : static const uint8_t expand_encoding[] = {
13064 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x02, 0x17, 0x00,
13065 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x1a, 0x00,
13066 : 0x01, 0x01, 0x00, 0x27
13067 : };
13068 : return complete_seq (expand_encoding, operands);
13069 : }
13070 :
13071 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1568 */
13072 : rtx
13073 : gen_avx512vl_loadv4di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
13074 : {
13075 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
13076 : start_sequence ();
13077 : {
13078 : #define FAIL return (end_sequence (), nullptr)
13079 : #define DONE return end_sequence ()
13080 : #line 1575 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13081 : {
13082 : if (CONST_INT_P (operands[3]))
13083 : {
13084 : emit_insn (gen_rtx_SET (operands[0], operands[1]));
13085 : DONE;
13086 : }
13087 : else if (MEM_P (operands[1]))
13088 : operands[1] = gen_rtx_UNSPEC (V4DImode,
13089 : gen_rtvec(1, operands[1]),
13090 : UNSPEC_MASKLOAD);
13091 : }
13092 : #undef DONE
13093 : #undef FAIL
13094 : }
13095 : static const uint8_t expand_encoding[] = {
13096 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x01,
13097 : 0x01, 0x01, 0x02, 0x01, 0x03
13098 : };
13099 : return complete_seq (expand_encoding, operands);
13100 : }
13101 :
13102 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1616 */
13103 : extern rtx_insn *gen_split_1194 (rtx_insn *, rtx *);
13104 : rtx_insn *
13105 : gen_split_1194 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13106 : {
13107 : if (dump_file)
13108 : fprintf (dump_file, "Splitting with gen_split_1194 (sse.md:1616)\n");
13109 : start_sequence ();
13110 : static const uint8_t expand_encoding[] = {
13111 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13112 : };
13113 : return complete_seq (expand_encoding, operands);
13114 : }
13115 :
13116 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1626 */
13117 : extern rtx_insn *gen_split_1204 (rtx_insn *, rtx *);
13118 : rtx_insn *
13119 : gen_split_1204 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13120 : {
13121 : if (dump_file)
13122 : fprintf (dump_file, "Splitting with gen_split_1204 (sse.md:1626)\n");
13123 : start_sequence ();
13124 : static const uint8_t expand_encoding[] = {
13125 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x1a,
13126 : 0x6b, 0x01, 0x01, 0x01, 0x81, 0x32, 0x01, 0x02,
13127 : 0x01, 0x03
13128 : };
13129 : return complete_seq (expand_encoding, operands);
13130 : }
13131 :
13132 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1664 */
13133 : rtx
13134 : gen_avx512vl_loadv16hi_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
13135 : {
13136 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
13137 : start_sequence ();
13138 : {
13139 : #define FAIL return (end_sequence (), nullptr)
13140 : #define DONE return end_sequence ()
13141 : #line 1671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13142 : {
13143 : if (CONST_INT_P (operands[3]))
13144 : {
13145 : emit_insn (gen_rtx_SET (operands[0], operands[1]));
13146 : DONE;
13147 : }
13148 : else if (MEM_P (operands[1]))
13149 : operands[1] = gen_rtx_UNSPEC (V16HImode,
13150 : gen_rtvec(1, operands[1]),
13151 : UNSPEC_MASKLOAD);
13152 :
13153 : }
13154 : #undef DONE
13155 : #undef FAIL
13156 : }
13157 : static const uint8_t expand_encoding[] = {
13158 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x01,
13159 : 0x01, 0x01, 0x02, 0x01, 0x03
13160 : };
13161 : return complete_seq (expand_encoding, operands);
13162 : }
13163 :
13164 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1723 */
13165 : rtx
13166 : gen_avx512f_loadhf_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
13167 : {
13168 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
13169 : start_sequence ();
13170 : {
13171 : #define FAIL return (end_sequence (), nullptr)
13172 : #define DONE return end_sequence ()
13173 : #line 1734 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13174 : operands[4] = CONST0_RTX (V8HFmode);
13175 : #undef DONE
13176 : #undef FAIL
13177 : }
13178 : static const uint8_t expand_encoding[] = {
13179 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81,
13180 : 0x09, 0x6a, 0x81, 0x0c, 0x6a, 0x01, 0x01, 0x01,
13181 : 0x02, 0x01, 0x03, 0x01, 0x04, 0x27, 0x01
13182 : };
13183 : return complete_seq (expand_encoding, operands);
13184 : }
13185 :
13186 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1965 */
13187 : rtx
13188 : gen_movmisalignv16hi (const rtx operand0, const rtx operand1)
13189 : {
13190 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13191 : start_sequence ();
13192 : {
13193 : #define FAIL return (end_sequence (), nullptr)
13194 : #define DONE return end_sequence ()
13195 : #line 1969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13196 : {
13197 : ix86_expand_vector_move_misalign (V16HImode, operands);
13198 : DONE;
13199 : }
13200 : #undef DONE
13201 : #undef FAIL
13202 : }
13203 : static const uint8_t expand_encoding[] = {
13204 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13205 : };
13206 : return complete_seq (expand_encoding, operands);
13207 : }
13208 :
13209 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1965 */
13210 : rtx
13211 : gen_movmisalignv2ti (const rtx operand0, const rtx operand1)
13212 : {
13213 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13214 : start_sequence ();
13215 : {
13216 : #define FAIL return (end_sequence (), nullptr)
13217 : #define DONE return end_sequence ()
13218 : #line 1969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13219 : {
13220 : ix86_expand_vector_move_misalign (V2TImode, operands);
13221 : DONE;
13222 : }
13223 : #undef DONE
13224 : #undef FAIL
13225 : }
13226 : static const uint8_t expand_encoding[] = {
13227 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13228 : };
13229 : return complete_seq (expand_encoding, operands);
13230 : }
13231 :
13232 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:1965 */
13233 : rtx
13234 : gen_movmisalignv4sf (const rtx operand0, const rtx operand1)
13235 : {
13236 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13237 : start_sequence ();
13238 : {
13239 : #define FAIL return (end_sequence (), nullptr)
13240 : #define DONE return end_sequence ()
13241 : #line 1969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13242 : {
13243 : ix86_expand_vector_move_misalign (V4SFmode, operands);
13244 : DONE;
13245 : }
13246 : #undef DONE
13247 : #undef FAIL
13248 : }
13249 : static const uint8_t expand_encoding[] = {
13250 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
13251 : };
13252 : return complete_seq (expand_encoding, operands);
13253 : }
13254 :
13255 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2087 */
13256 : rtx
13257 : gen_storentv8di (const rtx operand0, const rtx operand1)
13258 : {
13259 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13260 : static const uint8_t expand_encoding[] = {
13261 : 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x01, 0x01, 0x01,
13262 : 0x76
13263 : };
13264 : return expand_rtx (expand_encoding, operands);
13265 : }
13266 :
13267 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2114 */
13268 : rtx
13269 : gen_kmovw (const rtx operand0, const rtx operand1)
13270 : {
13271 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13272 : static const uint8_t expand_encoding[] = {
13273 : 0x1f, 0x01, 0x00, 0x01, 0x01
13274 : };
13275 : return expand_rtx (expand_encoding, operands);
13276 : }
13277 :
13278 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2142 */
13279 : extern rtx_insn *gen_split_1232 (rtx_insn *, rtx *);
13280 : rtx_insn *
13281 : gen_split_1232 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13282 : {
13283 : if (dump_file)
13284 : fprintf (dump_file, "Splitting with gen_split_1232 (sse.md:2142)\n");
13285 : start_sequence ();
13286 : static const uint8_t expand_encoding[] = {
13287 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a,
13288 : 0x11, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
13289 : 0x27, 0x00, 0x81, 0x2f
13290 : };
13291 : return complete_seq (expand_encoding, operands);
13292 : }
13293 :
13294 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2153 */
13295 : extern rtx_insn *gen_split_1242 (rtx_insn *, rtx *);
13296 : rtx_insn *
13297 : gen_split_1242 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13298 : {
13299 : if (dump_file)
13300 : fprintf (dump_file, "Splitting with gen_split_1242 (sse.md:2153)\n");
13301 : start_sequence ();
13302 : static const uint8_t expand_encoding[] = {
13303 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4b,
13304 : 0x10, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
13305 : 0x27, 0x00, 0x81, 0x2f
13306 : };
13307 : return complete_seq (expand_encoding, operands);
13308 : }
13309 :
13310 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2188 */
13311 : extern rtx_insn *gen_split_1252 (rtx_insn *, rtx *);
13312 : rtx_insn *
13313 : gen_split_1252 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13314 : {
13315 : if (dump_file)
13316 : fprintf (dump_file, "Splitting with gen_split_1252 (sse.md:2188)\n");
13317 : start_sequence ();
13318 : static const uint8_t expand_encoding[] = {
13319 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x49,
13320 : 0x12, 0x4c, 0x12, 0x01, 0x01, 0x01, 0x02, 0x1a,
13321 : 0x00, 0x01, 0x27, 0x00, 0x81, 0x2f
13322 : };
13323 : return complete_seq (expand_encoding, operands);
13324 : }
13325 :
13326 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2306 */
13327 : extern rtx_insn *gen_split_1264 (rtx_insn *, rtx *);
13328 : rtx_insn *
13329 : gen_split_1264 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13330 : {
13331 : if (dump_file)
13332 : fprintf (dump_file, "Splitting with gen_split_1264 (sse.md:2306)\n");
13333 : start_sequence ();
13334 : static const uint8_t expand_encoding[] = {
13335 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4d,
13336 : 0x12, 0x01, 0x01, 0x01, 0x02, 0x1a, 0x00, 0x01,
13337 : 0x27, 0x00, 0x81, 0x2f
13338 : };
13339 : return complete_seq (expand_encoding, operands);
13340 : }
13341 :
13342 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2345 */
13343 : extern rtx_insn *gen_split_1274 (rtx_insn *, rtx *);
13344 : rtx_insn *
13345 : gen_split_1274 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13346 : {
13347 : if (dump_file)
13348 : fprintf (dump_file, "Splitting with gen_split_1274 (sse.md:2345)\n");
13349 : start_sequence ();
13350 : static const uint8_t expand_encoding[] = {
13351 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x6f,
13352 : 0x12, 0x50, 0x11, 0x01, 0x01, 0x01, 0x02, 0x1a,
13353 : 0x00, 0x01, 0x27, 0x00, 0x81, 0x2f
13354 : };
13355 : return complete_seq (expand_encoding, operands);
13356 : }
13357 :
13358 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2444 */
13359 : extern rtx_insn *gen_split_1280 (rtx_insn *, rtx *);
13360 : rtx_insn *
13361 : gen_split_1280 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
13362 : {
13363 : if (dump_file)
13364 : fprintf (dump_file, "Splitting with gen_split_1280 (sse.md:2444)\n");
13365 : start_sequence ();
13366 : #define FAIL return (end_sequence (), nullptr)
13367 : #define DONE return end_sequence ()
13368 : #line 2457 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13369 : {
13370 : if (MASK_REGNO_P (REGNO (operands[1])))
13371 : {
13372 : emit_insn (gen_kortesthi_ccc (operands[1], operands[1]));
13373 : operands[4] = gen_rtx_REG (CCCmode, FLAGS_REG);
13374 : }
13375 : else
13376 : {
13377 : operands[4] = gen_rtx_REG (CCZmode, FLAGS_REG);
13378 : emit_insn (gen_rtx_SET (operands[4],
13379 : gen_rtx_COMPARE (CCZmode,
13380 : operands[1],
13381 : constm1_rtx)));
13382 : }
13383 : ix86_expand_branch (GET_CODE (operands[0]),
13384 : operands[4],
13385 : const0_rtx,
13386 : operands[2]);
13387 : DONE;
13388 : }
13389 : #undef DONE
13390 : #undef FAIL
13391 : static const uint8_t expand_encoding[] = {
13392 : 0x01, 0x27, 0x00
13393 : };
13394 : return complete_seq (expand_encoding, operands);
13395 : }
13396 :
13397 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2522 */
13398 : extern rtx_insn *gen_split_1290 (rtx_insn *, rtx *);
13399 : rtx_insn *
13400 : gen_split_1290 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13401 : {
13402 : if (dump_file)
13403 : fprintf (dump_file, "Splitting with gen_split_1290 (sse.md:2522)\n");
13404 : start_sequence ();
13405 : #define FAIL return (end_sequence (), nullptr)
13406 : #define DONE return end_sequence ()
13407 : #line 2541 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13408 : {
13409 : rtx flag_reg;
13410 : if (MASK_REGNO_P (REGNO (operands[4])))
13411 : {
13412 : emit_insn (gen_kortesthi_ccc (operands[4], operands[4]));
13413 : flag_reg = gen_rtx_REG (CCCmode, FLAGS_REG);
13414 : }
13415 : else
13416 : {
13417 : flag_reg = gen_rtx_REG (CCZmode, FLAGS_REG);
13418 : emit_insn (gen_rtx_SET (flag_reg,
13419 : gen_rtx_COMPARE (CCZmode,
13420 : operands[4],
13421 : constm1_rtx)));
13422 : }
13423 : operands[5] = gen_rtx_fmt_ee (GET_CODE (operands[1]), VOIDmode,
13424 : flag_reg,const0_rtx);
13425 : }
13426 : #undef DONE
13427 : #undef FAIL
13428 : static const uint8_t expand_encoding[] = {
13429 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x10, 0x01, 0x05,
13430 : 0x01, 0x02, 0x01, 0x03
13431 : };
13432 : return complete_seq (expand_encoding, operands);
13433 : }
13434 :
13435 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2522 */
13436 : extern rtx_insn *gen_split_1298 (rtx_insn *, rtx *);
13437 : rtx_insn *
13438 : gen_split_1298 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13439 : {
13440 : if (dump_file)
13441 : fprintf (dump_file, "Splitting with gen_split_1298 (sse.md:2522)\n");
13442 : start_sequence ();
13443 : #define FAIL return (end_sequence (), nullptr)
13444 : #define DONE return end_sequence ()
13445 : #line 2541 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13446 : {
13447 : rtx flag_reg;
13448 : if (MASK_REGNO_P (REGNO (operands[4])))
13449 : {
13450 : emit_insn (gen_kortestdi_ccc (operands[4], operands[4]));
13451 : flag_reg = gen_rtx_REG (CCCmode, FLAGS_REG);
13452 : }
13453 : else
13454 : {
13455 : flag_reg = gen_rtx_REG (CCZmode, FLAGS_REG);
13456 : emit_insn (gen_rtx_SET (flag_reg,
13457 : gen_rtx_COMPARE (CCZmode,
13458 : operands[4],
13459 : constm1_rtx)));
13460 : }
13461 : operands[5] = gen_rtx_fmt_ee (GET_CODE (operands[1]), VOIDmode,
13462 : flag_reg,const0_rtx);
13463 : }
13464 : #undef DONE
13465 : #undef FAIL
13466 : static const uint8_t expand_encoding[] = {
13467 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x12, 0x01, 0x05,
13468 : 0x01, 0x02, 0x01, 0x03
13469 : };
13470 : return complete_seq (expand_encoding, operands);
13471 : }
13472 :
13473 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2608 */
13474 : rtx
13475 : gen_negv8sf2 (const rtx operand0, const rtx operand1)
13476 : {
13477 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13478 : start_sequence ();
13479 : {
13480 : #define FAIL return (end_sequence (), nullptr)
13481 : #define DONE return end_sequence ()
13482 : #line 2613 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13483 : ix86_expand_fp_absneg_operator (NEG, V8SFmode, operands); DONE;
13484 : #undef DONE
13485 : #undef FAIL
13486 : }
13487 : static const uint8_t expand_encoding[] = {
13488 : 0x01, 0x1f, 0x01, 0x00, 0x3d, 0x6f, 0x01, 0x01
13489 : };
13490 : return complete_seq (expand_encoding, operands);
13491 : }
13492 :
13493 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2615 */
13494 : extern rtx_insn *gen_split_1300 (rtx_insn *, rtx *);
13495 : rtx_insn *
13496 : gen_split_1300 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13497 : {
13498 : if (dump_file)
13499 : fprintf (dump_file, "Splitting with gen_split_1300 (sse.md:2615)\n");
13500 : start_sequence ();
13501 : #define FAIL return (end_sequence (), nullptr)
13502 : #define DONE return end_sequence ()
13503 : #line 2625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13504 : {
13505 : if (TARGET_AVX)
13506 : {
13507 : if (MEM_P (operands[1]))
13508 : std::swap (operands[1], operands[2]);
13509 : }
13510 : else
13511 : {
13512 : if (operands_match_p (operands[0], operands[2]))
13513 : std::swap (operands[1], operands[2]);
13514 : }
13515 : }
13516 : #undef DONE
13517 : #undef FAIL
13518 : static const uint8_t expand_encoding[] = {
13519 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x72, 0x01, 0x01,
13520 : 0x01, 0x02
13521 : };
13522 : return complete_seq (expand_encoding, operands);
13523 : }
13524 :
13525 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2615 */
13526 : extern rtx_insn *gen_split_1310 (rtx_insn *, rtx *);
13527 : rtx_insn *
13528 : gen_split_1310 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13529 : {
13530 : if (dump_file)
13531 : fprintf (dump_file, "Splitting with gen_split_1310 (sse.md:2615)\n");
13532 : start_sequence ();
13533 : #define FAIL return (end_sequence (), nullptr)
13534 : #define DONE return end_sequence ()
13535 : #line 2625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13536 : {
13537 : if (TARGET_AVX)
13538 : {
13539 : if (MEM_P (operands[1]))
13540 : std::swap (operands[1], operands[2]);
13541 : }
13542 : else
13543 : {
13544 : if (operands_match_p (operands[0], operands[2]))
13545 : std::swap (operands[1], operands[2]);
13546 : }
13547 : }
13548 : #undef DONE
13549 : #undef FAIL
13550 : static const uint8_t expand_encoding[] = {
13551 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x6a, 0x01, 0x01,
13552 : 0x01, 0x02
13553 : };
13554 : return complete_seq (expand_encoding, operands);
13555 : }
13556 :
13557 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2615 */
13558 : extern rtx_insn *gen_split_1320 (rtx_insn *, rtx *);
13559 : rtx_insn *
13560 : gen_split_1320 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
13561 : {
13562 : if (dump_file)
13563 : fprintf (dump_file, "Splitting with gen_split_1320 (sse.md:2615)\n");
13564 : start_sequence ();
13565 : #define FAIL return (end_sequence (), nullptr)
13566 : #define DONE return end_sequence ()
13567 : #line 2625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13568 : {
13569 : if (TARGET_AVX)
13570 : {
13571 : if (MEM_P (operands[1]))
13572 : std::swap (operands[1], operands[2]);
13573 : }
13574 : else
13575 : {
13576 : if (operands_match_p (operands[0], operands[2]))
13577 : std::swap (operands[1], operands[2]);
13578 : }
13579 : }
13580 : #undef DONE
13581 : #undef FAIL
13582 : static const uint8_t expand_encoding[] = {
13583 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x70, 0x01, 0x01,
13584 : 0x01, 0x02
13585 : };
13586 : return complete_seq (expand_encoding, operands);
13587 : }
13588 :
13589 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2664 */
13590 : rtx
13591 : gen_cond_subv32hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13592 : {
13593 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13594 : start_sequence ();
13595 : {
13596 : #define FAIL _Pragma ("GCC error \"cond_subv32hf cannot FAIL\"") (void)0
13597 : #define DONE return end_sequence ()
13598 : #line 2673 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13599 : {
13600 : emit_insn (gen_subv32hf3_mask (operands[0],
13601 : operands[2],
13602 : operands[3],
13603 : operands[4],
13604 : operands[1]));
13605 : DONE;
13606 : }
13607 : #undef DONE
13608 : #undef FAIL
13609 : }
13610 : static const uint8_t expand_encoding[] = {
13611 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x3c,
13612 : 0x73, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13613 : 0x01
13614 : };
13615 : return complete_seq (expand_encoding, operands);
13616 : }
13617 :
13618 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2664 */
13619 : rtx
13620 : gen_cond_subv4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13621 : {
13622 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13623 : start_sequence ();
13624 : {
13625 : #define FAIL _Pragma ("GCC error \"cond_subv4sf cannot FAIL\"") (void)0
13626 : #define DONE return end_sequence ()
13627 : #line 2673 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13628 : {
13629 : emit_insn (gen_subv4sf3_mask (operands[0],
13630 : operands[2],
13631 : operands[3],
13632 : operands[4],
13633 : operands[1]));
13634 : DONE;
13635 : }
13636 : #undef DONE
13637 : #undef FAIL
13638 : }
13639 : static const uint8_t expand_encoding[] = {
13640 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x3c,
13641 : 0x6b, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13642 : 0x01
13643 : };
13644 : return complete_seq (expand_encoding, operands);
13645 : }
13646 :
13647 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13648 : rtx
13649 : gen_addv32hf3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
13650 : {
13651 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
13652 : start_sequence ();
13653 : {
13654 : #define FAIL return (end_sequence (), nullptr)
13655 : #define DONE return end_sequence ()
13656 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13657 : ix86_fixup_binary_operands_no_copy (PLUS, V32HFmode, operands);
13658 : #undef DONE
13659 : #undef FAIL
13660 : }
13661 : static const uint8_t expand_encoding[] = {
13662 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x81,
13663 : 0x09, 0x73, 0x3b, 0x73, 0x01, 0x01, 0x01, 0x02,
13664 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
13665 : };
13666 : return complete_seq (expand_encoding, operands);
13667 : }
13668 :
13669 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13670 : rtx
13671 : gen_subv8hf3 (const rtx operand0, const rtx operand1, const rtx operand2)
13672 : {
13673 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13674 : start_sequence ();
13675 : {
13676 : #define FAIL return (end_sequence (), nullptr)
13677 : #define DONE return end_sequence ()
13678 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13679 : ix86_fixup_binary_operands_no_copy (MINUS, V8HFmode, operands);
13680 : #undef DONE
13681 : #undef FAIL
13682 : }
13683 : static const uint8_t expand_encoding[] = {
13684 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x6a, 0x01, 0x01,
13685 : 0x01, 0x02
13686 : };
13687 : return complete_seq (expand_encoding, operands);
13688 : }
13689 :
13690 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13691 : rtx
13692 : gen_subv16sf3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
13693 : {
13694 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
13695 : start_sequence ();
13696 : {
13697 : #define FAIL return (end_sequence (), nullptr)
13698 : #define DONE return end_sequence ()
13699 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13700 : ix86_fixup_binary_operands_no_copy (MINUS, V16SFmode, operands);
13701 : #undef DONE
13702 : #undef FAIL
13703 : }
13704 : static const uint8_t expand_encoding[] = {
13705 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x81,
13706 : 0x09, 0x74, 0x3c, 0x74, 0x01, 0x01, 0x01, 0x02,
13707 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
13708 : };
13709 : return complete_seq (expand_encoding, operands);
13710 : }
13711 :
13712 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13713 : rtx
13714 : gen_addv8df3_mask_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
13715 : {
13716 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
13717 : start_sequence ();
13718 : {
13719 : #define FAIL return (end_sequence (), nullptr)
13720 : #define DONE return end_sequence ()
13721 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13722 : ix86_fixup_binary_operands_no_copy (PLUS, V8DFmode, operands);
13723 : #undef DONE
13724 : #undef FAIL
13725 : }
13726 : static const uint8_t expand_encoding[] = {
13727 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x81,
13728 : 0x09, 0x75, 0x3b, 0x75, 0x01, 0x01, 0x01, 0x02,
13729 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x05, 0x81, 0x33
13730 : };
13731 : return complete_seq (expand_encoding, operands);
13732 : }
13733 :
13734 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13735 : rtx
13736 : gen_subv2df3 (const rtx operand0, const rtx operand1, const rtx operand2)
13737 : {
13738 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13739 : start_sequence ();
13740 : {
13741 : #define FAIL return (end_sequence (), nullptr)
13742 : #define DONE return end_sequence ()
13743 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13744 : ix86_fixup_binary_operands_no_copy (MINUS, V2DFmode, operands);
13745 : #undef DONE
13746 : #undef FAIL
13747 : }
13748 : static const uint8_t expand_encoding[] = {
13749 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x6c, 0x01, 0x01,
13750 : 0x01, 0x02
13751 : };
13752 : return complete_seq (expand_encoding, operands);
13753 : }
13754 :
13755 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2682 */
13756 : rtx
13757 : gen_subv16bf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13758 : {
13759 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13760 : start_sequence ();
13761 : {
13762 : #define FAIL return (end_sequence (), nullptr)
13763 : #define DONE return end_sequence ()
13764 : #line 2688 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13765 : ix86_fixup_binary_operands_no_copy (MINUS, V16BFmode, operands);
13766 : #undef DONE
13767 : #undef FAIL
13768 : }
13769 : static const uint8_t expand_encoding[] = {
13770 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6d, 0x3c,
13771 : 0x6d, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
13772 : 0x04
13773 : };
13774 : return complete_seq (expand_encoding, operands);
13775 : }
13776 :
13777 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2753 */
13778 : rtx
13779 : gen_cond_mulv8df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13780 : {
13781 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13782 : start_sequence ();
13783 : {
13784 : #define FAIL _Pragma ("GCC error \"cond_mulv8df cannot FAIL\"") (void)0
13785 : #define DONE return end_sequence ()
13786 : #line 2762 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13787 : {
13788 : emit_insn (gen_mulv8df3_mask (operands[0],
13789 : operands[2],
13790 : operands[3],
13791 : operands[4],
13792 : operands[1]));
13793 : DONE;
13794 : }
13795 : #undef DONE
13796 : #undef FAIL
13797 : }
13798 : static const uint8_t expand_encoding[] = {
13799 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x3e,
13800 : 0x75, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13801 : 0x01
13802 : };
13803 : return complete_seq (expand_encoding, operands);
13804 : }
13805 :
13806 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2771 */
13807 : rtx
13808 : gen_mulv16sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
13809 : {
13810 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13811 : start_sequence ();
13812 : {
13813 : #define FAIL return (end_sequence (), nullptr)
13814 : #define DONE return end_sequence ()
13815 : #line 2777 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13816 : ix86_fixup_binary_operands_no_copy (MULT, V16SFmode, operands);
13817 : #undef DONE
13818 : #undef FAIL
13819 : }
13820 : static const uint8_t expand_encoding[] = {
13821 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x74, 0x01, 0x01,
13822 : 0x01, 0x02
13823 : };
13824 : return complete_seq (expand_encoding, operands);
13825 : }
13826 :
13827 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2771 */
13828 : rtx
13829 : gen_mulv8df3_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
13830 : {
13831 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
13832 : start_sequence ();
13833 : {
13834 : #define FAIL return (end_sequence (), nullptr)
13835 : #define DONE return end_sequence ()
13836 : #line 2777 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13837 : ix86_fixup_binary_operands_no_copy (MULT, V8DFmode, operands);
13838 : #undef DONE
13839 : #undef FAIL
13840 : }
13841 : static const uint8_t expand_encoding[] = {
13842 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x02, 0x3e,
13843 : 0x75, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
13844 : 0x33
13845 : };
13846 : return complete_seq (expand_encoding, operands);
13847 : }
13848 :
13849 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2771 */
13850 : rtx
13851 : gen_mulv16bf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13852 : {
13853 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13854 : start_sequence ();
13855 : {
13856 : #define FAIL return (end_sequence (), nullptr)
13857 : #define DONE return end_sequence ()
13858 : #line 2777 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13859 : ix86_fixup_binary_operands_no_copy (MULT, V16BFmode, operands);
13860 : #undef DONE
13861 : #undef FAIL
13862 : }
13863 : static const uint8_t expand_encoding[] = {
13864 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6d, 0x3e,
13865 : 0x6d, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
13866 : 0x04
13867 : };
13868 : return complete_seq (expand_encoding, operands);
13869 : }
13870 :
13871 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:2890 */
13872 : rtx
13873 : gen_divv16bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
13874 : {
13875 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
13876 : start_sequence ();
13877 : {
13878 : #define FAIL return (end_sequence (), nullptr)
13879 : #define DONE return end_sequence ()
13880 : #line 2896 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13881 : {
13882 : if (TARGET_RECIP_VEC_DIV
13883 : && optimize_insn_for_speed_p ()
13884 : && flag_finite_math_only
13885 : && flag_unsafe_math_optimizations)
13886 : {
13887 : rtx op = gen_reg_rtx (V16BFmode);
13888 : operands[2] = force_reg (V16BFmode, operands[2]);
13889 : emit_insn (gen_avx10_2_rcpbf16_v16bf (op, operands[2]));
13890 : emit_insn (gen_avx10_2_mulbf16_v16bf (operands[0], operands[1], op));
13891 : DONE;
13892 : }
13893 : }
13894 : #undef DONE
13895 : #undef FAIL
13896 : }
13897 : static const uint8_t expand_encoding[] = {
13898 : 0x01, 0x1f, 0x01, 0x00, 0x43, 0x6d, 0x01, 0x01,
13899 : 0x01, 0x02
13900 : };
13901 : return complete_seq (expand_encoding, operands);
13902 : }
13903 :
13904 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3081 */
13905 : rtx
13906 : gen_sqrtv32bf2 (const rtx operand0, const rtx operand1)
13907 : {
13908 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13909 : static const uint8_t expand_encoding[] = {
13910 : 0x1f, 0x01, 0x00, 0x7c, 0x72, 0x01, 0x01
13911 : };
13912 : return expand_rtx (expand_encoding, operands);
13913 : }
13914 :
13915 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3081 */
13916 : rtx
13917 : gen_sqrtv8bf2 (const rtx operand0, const rtx operand1)
13918 : {
13919 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13920 : static const uint8_t expand_encoding[] = {
13921 : 0x1f, 0x01, 0x00, 0x7c, 0x69, 0x01, 0x01
13922 : };
13923 : return expand_rtx (expand_encoding, operands);
13924 : }
13925 :
13926 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3081 */
13927 : rtx
13928 : gen_sqrtv8df2 (const rtx operand0, const rtx operand1)
13929 : {
13930 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13931 : static const uint8_t expand_encoding[] = {
13932 : 0x1f, 0x01, 0x00, 0x7c, 0x75, 0x01, 0x01
13933 : };
13934 : return expand_rtx (expand_encoding, operands);
13935 : }
13936 :
13937 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3167 */
13938 : rtx
13939 : gen_rsqrtv8hf2 (const rtx operand0, const rtx operand1)
13940 : {
13941 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
13942 : static const uint8_t expand_encoding[] = {
13943 : 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x01, 0x01, 0x01,
13944 : 0x38
13945 : };
13946 : return expand_rtx (expand_encoding, operands);
13947 : }
13948 :
13949 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3303 */
13950 : rtx
13951 : gen_cond_smaxv8hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13952 : {
13953 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13954 : start_sequence ();
13955 : {
13956 : #define FAIL return (end_sequence (), nullptr)
13957 : #define DONE return end_sequence ()
13958 : #line 3312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13959 : {
13960 : emit_insn (gen_smaxv8hf3_mask (operands[0],
13961 : operands[2],
13962 : operands[3],
13963 : operands[4],
13964 : operands[1]));
13965 : DONE;
13966 : }
13967 : #undef DONE
13968 : #undef FAIL
13969 : }
13970 : static const uint8_t expand_encoding[] = {
13971 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x53,
13972 : 0x6a, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
13973 : 0x01
13974 : };
13975 : return complete_seq (expand_encoding, operands);
13976 : }
13977 :
13978 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3303 */
13979 : rtx
13980 : gen_cond_smaxv4df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
13981 : {
13982 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
13983 : start_sequence ();
13984 : {
13985 : #define FAIL return (end_sequence (), nullptr)
13986 : #define DONE return end_sequence ()
13987 : #line 3312 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
13988 : {
13989 : emit_insn (gen_smaxv4df3_mask (operands[0],
13990 : operands[2],
13991 : operands[3],
13992 : operands[4],
13993 : operands[1]));
13994 : DONE;
13995 : }
13996 : #undef DONE
13997 : #undef FAIL
13998 : }
13999 : static const uint8_t expand_encoding[] = {
14000 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x53,
14001 : 0x70, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
14002 : 0x01
14003 : };
14004 : return complete_seq (expand_encoding, operands);
14005 : }
14006 :
14007 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3321 */
14008 : rtx
14009 : gen_sminv32hf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
14010 : {
14011 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
14012 : start_sequence ();
14013 : {
14014 : #define FAIL return (end_sequence (), nullptr)
14015 : #define DONE return end_sequence ()
14016 : #line 3328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14017 : {
14018 : if (!flag_finite_math_only || flag_signed_zeros)
14019 : {
14020 : operands[1] = force_reg (V32HFmode, operands[1]);
14021 : emit_insn (gen_ieee_minv32hf3_mask
14022 : (operands[0], operands[1], operands[2]
14023 : , operands[3], operands[4]
14024 : ));
14025 : DONE;
14026 : }
14027 : else
14028 : ix86_fixup_binary_operands_no_copy (SMIN, V32HFmode, operands);
14029 : }
14030 : #undef DONE
14031 : #undef FAIL
14032 : }
14033 : static const uint8_t expand_encoding[] = {
14034 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x73, 0x52,
14035 : 0x73, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
14036 : 0x04
14037 : };
14038 : return complete_seq (expand_encoding, operands);
14039 : }
14040 :
14041 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3321 */
14042 : rtx
14043 : gen_smaxv16sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
14044 : {
14045 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
14046 : start_sequence ();
14047 : {
14048 : #define FAIL return (end_sequence (), nullptr)
14049 : #define DONE return end_sequence ()
14050 : #line 3328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14051 : {
14052 : if (!flag_finite_math_only || flag_signed_zeros)
14053 : {
14054 : operands[1] = force_reg (V16SFmode, operands[1]);
14055 : emit_insn (gen_ieee_maxv16sf3
14056 : (operands[0], operands[1], operands[2]
14057 :
14058 : ));
14059 : DONE;
14060 : }
14061 : else
14062 : ix86_fixup_binary_operands_no_copy (SMAX, V16SFmode, operands);
14063 : }
14064 : #undef DONE
14065 : #undef FAIL
14066 : }
14067 : static const uint8_t expand_encoding[] = {
14068 : 0x01, 0x1f, 0x01, 0x00, 0x53, 0x74, 0x01, 0x01,
14069 : 0x01, 0x02
14070 : };
14071 : return complete_seq (expand_encoding, operands);
14072 : }
14073 :
14074 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3321 */
14075 : rtx
14076 : gen_smaxv8sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
14077 : {
14078 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
14079 : start_sequence ();
14080 : {
14081 : #define FAIL return (end_sequence (), nullptr)
14082 : #define DONE return end_sequence ()
14083 : #line 3328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14084 : {
14085 : if (!flag_finite_math_only || flag_signed_zeros)
14086 : {
14087 : operands[1] = force_reg (V8SFmode, operands[1]);
14088 : emit_insn (gen_ieee_maxv8sf3_mask
14089 : (operands[0], operands[1], operands[2]
14090 : , operands[3], operands[4]
14091 : ));
14092 : DONE;
14093 : }
14094 : else
14095 : ix86_fixup_binary_operands_no_copy (SMAX, V8SFmode, operands);
14096 : }
14097 : #undef DONE
14098 : #undef FAIL
14099 : }
14100 : static const uint8_t expand_encoding[] = {
14101 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x53,
14102 : 0x6f, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
14103 : 0x04
14104 : };
14105 : return complete_seq (expand_encoding, operands);
14106 : }
14107 :
14108 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3321 */
14109 : rtx
14110 : gen_sminv8df3 (const rtx operand0, const rtx operand1, const rtx operand2)
14111 : {
14112 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
14113 : start_sequence ();
14114 : {
14115 : #define FAIL return (end_sequence (), nullptr)
14116 : #define DONE return end_sequence ()
14117 : #line 3328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14118 : {
14119 : if (!flag_finite_math_only || flag_signed_zeros)
14120 : {
14121 : operands[1] = force_reg (V8DFmode, operands[1]);
14122 : emit_insn (gen_ieee_minv8df3
14123 : (operands[0], operands[1], operands[2]
14124 :
14125 : ));
14126 : DONE;
14127 : }
14128 : else
14129 : ix86_fixup_binary_operands_no_copy (SMIN, V8DFmode, operands);
14130 : }
14131 : #undef DONE
14132 : #undef FAIL
14133 : }
14134 : static const uint8_t expand_encoding[] = {
14135 : 0x01, 0x1f, 0x01, 0x00, 0x52, 0x75, 0x01, 0x01,
14136 : 0x01, 0x02
14137 : };
14138 : return complete_seq (expand_encoding, operands);
14139 : }
14140 :
14141 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3321 */
14142 : rtx
14143 : gen_smaxv2df3 (const rtx operand0, const rtx operand1, const rtx operand2)
14144 : {
14145 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
14146 : start_sequence ();
14147 : {
14148 : #define FAIL return (end_sequence (), nullptr)
14149 : #define DONE return end_sequence ()
14150 : #line 3328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14151 : {
14152 : if (!flag_finite_math_only || flag_signed_zeros)
14153 : {
14154 : operands[1] = force_reg (V2DFmode, operands[1]);
14155 : emit_insn (gen_ieee_maxv2df3
14156 : (operands[0], operands[1], operands[2]
14157 :
14158 : ));
14159 : DONE;
14160 : }
14161 : else
14162 : ix86_fixup_binary_operands_no_copy (SMAX, V2DFmode, operands);
14163 : }
14164 : #undef DONE
14165 : #undef FAIL
14166 : }
14167 : static const uint8_t expand_encoding[] = {
14168 : 0x01, 0x1f, 0x01, 0x00, 0x53, 0x6c, 0x01, 0x01,
14169 : 0x01, 0x02
14170 : };
14171 : return complete_seq (expand_encoding, operands);
14172 : }
14173 :
14174 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3366 */
14175 : extern rtx_insn *gen_split_1335 (rtx_insn *, rtx *);
14176 : rtx_insn *
14177 : gen_split_1335 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14178 : {
14179 : if (dump_file)
14180 : fprintf (dump_file, "Splitting with gen_split_1335 (sse.md:3366)\n");
14181 : start_sequence ();
14182 : #define FAIL return (end_sequence (), nullptr)
14183 : #define DONE return end_sequence ()
14184 : #line 3385 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14185 : {
14186 : int u = UNSPEC_IEEE_MIN;
14187 : rtx tmp = operands[2];
14188 : if ((INTVAL (operands[5]) == 1 && rtx_equal_p (operands[1], operands[4]))
14189 : || (INTVAL (operands[5]) == 14 && rtx_equal_p (operands[1], operands[3])))
14190 : u = UNSPEC_IEEE_MAX;
14191 :
14192 : if (MEM_P (operands[1]))
14193 : operands[1] = force_reg (V8DFmode, operands[1]);
14194 :
14195 : if (immediate_operand (operands[2], V8DFmode))
14196 : tmp = force_reg (V8DFmode, operands[2]);
14197 : rtvec v = gen_rtvec (2, operands[1], tmp);
14198 : operands[6] = gen_rtx_UNSPEC (V8DFmode, v, u);
14199 : }
14200 : #undef DONE
14201 : #undef FAIL
14202 : static const uint8_t expand_encoding[] = {
14203 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x06
14204 : };
14205 : return complete_seq (expand_encoding, operands);
14206 : }
14207 :
14208 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3430 */
14209 : extern rtx_insn *gen_split_1345 (rtx_insn *, rtx *);
14210 : rtx_insn *
14211 : gen_split_1345 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14212 : {
14213 : if (dump_file)
14214 : fprintf (dump_file, "Splitting with gen_split_1345 (sse.md:3430)\n");
14215 : start_sequence ();
14216 : #define FAIL return (end_sequence (), nullptr)
14217 : #define DONE return end_sequence ()
14218 : #line 3443 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14219 : {
14220 : int u = UNSPEC_IEEE_MIN;
14221 : if (GET_CODE (operands[1]) == LT)
14222 : u = UNSPEC_IEEE_MAX;
14223 :
14224 : rtx tmp = force_reg (V2DFmode, operands[3]);
14225 : rtvec v = gen_rtvec (2, tmp, operands[2]);
14226 : operands[5] = gen_rtx_UNSPEC (V2DFmode, v, u);
14227 : }
14228 : #undef DONE
14229 : #undef FAIL
14230 : static const uint8_t expand_encoding[] = {
14231 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x05
14232 : };
14233 : return complete_seq (expand_encoding, operands);
14234 : }
14235 :
14236 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3534 */
14237 : rtx
14238 : gen_avx512fp16_vmsminv8hf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
14239 : {
14240 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
14241 : start_sequence ();
14242 : {
14243 : #define FAIL return (end_sequence (), nullptr)
14244 : #define DONE return end_sequence ()
14245 : #line 3543 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14246 : {
14247 : if (!flag_finite_math_only || flag_signed_zeros)
14248 : {
14249 : emit_insn (gen_avx512fp16_ieee_vmminv8hf3_mask
14250 : (operands[0], operands[1], operands[2]
14251 : , operands[3], operands[4]
14252 : ));
14253 : DONE;
14254 : }
14255 : }
14256 : #undef DONE
14257 : #undef FAIL
14258 : }
14259 : static const uint8_t expand_encoding[] = {
14260 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81,
14261 : 0x09, 0x6a, 0x52, 0x6a, 0x01, 0x01, 0x01, 0x02,
14262 : 0x01, 0x03, 0x01, 0x04, 0x01, 0x01, 0x27, 0x01
14263 : };
14264 : return complete_seq (expand_encoding, operands);
14265 : }
14266 :
14267 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3534 */
14268 : rtx
14269 : gen_sse2_vmsmaxv2df3 (const rtx operand0, const rtx operand1, const rtx operand2)
14270 : {
14271 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
14272 : start_sequence ();
14273 : {
14274 : #define FAIL return (end_sequence (), nullptr)
14275 : #define DONE return end_sequence ()
14276 : #line 3543 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14277 : {
14278 : if (!flag_finite_math_only || flag_signed_zeros)
14279 : {
14280 : emit_insn (gen_sse2_ieee_vmmaxv2df3
14281 : (operands[0], operands[1], operands[2]
14282 :
14283 : ));
14284 : DONE;
14285 : }
14286 : }
14287 : #undef DONE
14288 : #undef FAIL
14289 : }
14290 : static const uint8_t expand_encoding[] = {
14291 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x53,
14292 : 0x6c, 0x01, 0x01, 0x01, 0x02, 0x01, 0x01, 0x27,
14293 : 0x01
14294 : };
14295 : return complete_seq (expand_encoding, operands);
14296 : }
14297 :
14298 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3624 */
14299 : extern rtx_insn *gen_split_1351 (rtx_insn *, rtx *);
14300 : rtx_insn *
14301 : gen_split_1351 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14302 : {
14303 : if (dump_file)
14304 : fprintf (dump_file, "Splitting with gen_split_1351 (sse.md:3624)\n");
14305 : start_sequence ();
14306 : static const uint8_t expand_encoding[] = {
14307 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6b, 0x3c,
14308 : 0x6b, 0x01, 0x01, 0x01, 0x02, 0x3b, 0x6b, 0x01,
14309 : 0x01, 0x01, 0x02, 0x01, 0x05
14310 : };
14311 : return complete_seq (expand_encoding, operands);
14312 : }
14313 :
14314 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3674 */
14315 : extern rtx_insn *gen_split_1358 (rtx_insn *, rtx *);
14316 : rtx_insn *
14317 : gen_split_1358 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14318 : {
14319 : if (dump_file)
14320 : fprintf (dump_file, "Splitting with gen_split_1358 (sse.md:3674)\n");
14321 : start_sequence ();
14322 : #define FAIL return (end_sequence (), nullptr)
14323 : #define DONE return end_sequence ()
14324 : #line 3697 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14325 : {
14326 : int i, nelt = XVECLEN (operands[5], 0);
14327 : HOST_WIDE_INT ival = 0;
14328 :
14329 : for (i = 0; i < nelt; i++)
14330 : if (INTVAL (XVECEXP (operands[5], 0, i)) < GET_MODE_NUNITS (V8SFmode))
14331 : ival |= HOST_WIDE_INT_1 << i;
14332 :
14333 : operands[5] = GEN_INT (ival);
14334 : }
14335 : #undef DONE
14336 : #undef FAIL
14337 : static const uint8_t expand_encoding[] = {
14338 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x3c,
14339 : 0x6f, 0x01, 0x01, 0x01, 0x02, 0x3b, 0x6f, 0x01,
14340 : 0x01, 0x01, 0x02, 0x01, 0x05
14341 : };
14342 : return complete_seq (expand_encoding, operands);
14343 : }
14344 :
14345 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:3964 */
14346 : rtx
14347 : gen_reduc_plus_scal_v4sf (const rtx operand0, const rtx operand1)
14348 : {
14349 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14350 : start_sequence ();
14351 : {
14352 : #define FAIL _Pragma ("GCC error \"reduc_plus_scal_v4sf cannot FAIL\"") (void)0
14353 : #define DONE return end_sequence ()
14354 : #line 3969 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14355 : {
14356 : rtx tmp = gen_reg_rtx (V4SFmode);
14357 : ix86_expand_reduc (gen_addv4sf3, tmp, operands[1]);
14358 : emit_insn (gen_vec_extractv4sfsf (operands[0], tmp,
14359 : const0_rtx));
14360 : DONE;
14361 : }
14362 : #undef DONE
14363 : #undef FAIL
14364 : }
14365 : static const uint8_t expand_encoding[] = {
14366 : 0x01, 0x3b, 0x6b, 0x01, 0x00, 0x01, 0x01
14367 : };
14368 : return complete_seq (expand_encoding, operands);
14369 : }
14370 :
14371 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4007 */
14372 : rtx
14373 : gen_reduc_plus_scal_v16sf (const rtx operand0, const rtx operand1)
14374 : {
14375 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14376 : start_sequence ();
14377 : {
14378 : #define FAIL _Pragma ("GCC error \"reduc_plus_scal_v16sf cannot FAIL\"") (void)0
14379 : #define DONE return end_sequence ()
14380 : #line 4012 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14381 : {
14382 : rtx tmp = gen_reg_rtx (V8SFmode);
14383 : rtx tmp2 = gen_reg_rtx (V8SFmode);
14384 : rtx tmp3 = gen_reg_rtx (V8SFmode);
14385 : emit_insn (gen_vec_extract_hi_v16sf (tmp, operands[1]));
14386 : emit_insn (gen_vec_extract_lo_v16sf (tmp2, operands[1]));
14387 : emit_insn (gen_addv8sf3 (tmp3, tmp, tmp2));
14388 : emit_insn (gen_reduc_plus_scal_v8sf (operands[0], tmp3));
14389 : DONE;
14390 : }
14391 : #undef DONE
14392 : #undef FAIL
14393 : }
14394 : static const uint8_t expand_encoding[] = {
14395 : 0x01, 0x3b, 0x74, 0x01, 0x00, 0x01, 0x01
14396 : };
14397 : return complete_seq (expand_encoding, operands);
14398 : }
14399 :
14400 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4030 */
14401 : rtx
14402 : gen_reduc_smax_scal_v8hf (const rtx operand0, const rtx operand1)
14403 : {
14404 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14405 : start_sequence ();
14406 : {
14407 : #define FAIL return (end_sequence (), nullptr)
14408 : #define DONE return end_sequence ()
14409 : #line 4035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14410 : {
14411 : rtx tmp = gen_reg_rtx (V8HFmode);
14412 : ix86_expand_reduc (gen_smaxv8hf3, tmp, operands[1]);
14413 : emit_insn (gen_vec_extractv8hfhf (operands[0], tmp,
14414 : const0_rtx));
14415 : DONE;
14416 : }
14417 : #undef DONE
14418 : #undef FAIL
14419 : }
14420 : static const uint8_t expand_encoding[] = {
14421 : 0x01, 0x53, 0x6a, 0x01, 0x00, 0x01, 0x01
14422 : };
14423 : return complete_seq (expand_encoding, operands);
14424 : }
14425 :
14426 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4030 */
14427 : rtx
14428 : gen_reduc_smax_scal_v4si (const rtx operand0, const rtx operand1)
14429 : {
14430 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14431 : start_sequence ();
14432 : {
14433 : #define FAIL return (end_sequence (), nullptr)
14434 : #define DONE return end_sequence ()
14435 : #line 4035 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14436 : {
14437 : rtx tmp = gen_reg_rtx (V4SImode);
14438 : ix86_expand_reduc (gen_smaxv4si3, tmp, operands[1]);
14439 : emit_insn (gen_vec_extractv4sisi (operands[0], tmp,
14440 : const0_rtx));
14441 : DONE;
14442 : }
14443 : #undef DONE
14444 : #undef FAIL
14445 : }
14446 : static const uint8_t expand_encoding[] = {
14447 : 0x01, 0x53, 0x51, 0x01, 0x00, 0x01, 0x01
14448 : };
14449 : return complete_seq (expand_encoding, operands);
14450 : }
14451 :
14452 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4054 */
14453 : rtx
14454 : gen_reduc_smax_scal_v16hi (const rtx operand0, const rtx operand1)
14455 : {
14456 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14457 : start_sequence ();
14458 : {
14459 : #define FAIL return (end_sequence (), nullptr)
14460 : #define DONE return end_sequence ()
14461 : #line 4059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14462 : {
14463 : rtx tmp = gen_reg_rtx (V8HImode);
14464 : rtx tmp2 = gen_reg_rtx (V8HImode);
14465 : rtx tmp3 = gen_reg_rtx (V8HImode);
14466 : emit_insn (gen_vec_extract_hi_v16hi (tmp, operands[1]));
14467 : emit_insn (gen_vec_extract_lo_v16hi (tmp2, operands[1]));
14468 : emit_insn (gen_smaxv8hi3 (tmp3, tmp, tmp2));
14469 : emit_insn (gen_reduc_smax_scal_v8hi (operands[0], tmp3));
14470 : DONE;
14471 : }
14472 : #undef DONE
14473 : #undef FAIL
14474 : }
14475 : static const uint8_t expand_encoding[] = {
14476 : 0x01, 0x53, 0x55, 0x01, 0x00, 0x01, 0x01
14477 : };
14478 : return complete_seq (expand_encoding, operands);
14479 : }
14480 :
14481 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4054 */
14482 : rtx
14483 : gen_reduc_smax_scal_v4df (const rtx operand0, const rtx operand1)
14484 : {
14485 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14486 : start_sequence ();
14487 : {
14488 : #define FAIL return (end_sequence (), nullptr)
14489 : #define DONE return end_sequence ()
14490 : #line 4059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14491 : {
14492 : rtx tmp = gen_reg_rtx (V2DFmode);
14493 : rtx tmp2 = gen_reg_rtx (V2DFmode);
14494 : rtx tmp3 = gen_reg_rtx (V2DFmode);
14495 : emit_insn (gen_vec_extract_hi_v4df (tmp, operands[1]));
14496 : emit_insn (gen_vec_extract_lo_v4df (tmp2, operands[1]));
14497 : emit_insn (gen_smaxv2df3 (tmp3, tmp, tmp2));
14498 : emit_insn (gen_reduc_smax_scal_v2df (operands[0], tmp3));
14499 : DONE;
14500 : }
14501 : #undef DONE
14502 : #undef FAIL
14503 : }
14504 : static const uint8_t expand_encoding[] = {
14505 : 0x01, 0x53, 0x70, 0x01, 0x00, 0x01, 0x01
14506 : };
14507 : return complete_seq (expand_encoding, operands);
14508 : }
14509 :
14510 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4054 */
14511 : rtx
14512 : gen_reduc_smax_scal_v8di (const rtx operand0, const rtx operand1)
14513 : {
14514 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14515 : start_sequence ();
14516 : {
14517 : #define FAIL return (end_sequence (), nullptr)
14518 : #define DONE return end_sequence ()
14519 : #line 4059 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14520 : {
14521 : rtx tmp = gen_reg_rtx (V4DImode);
14522 : rtx tmp2 = gen_reg_rtx (V4DImode);
14523 : rtx tmp3 = gen_reg_rtx (V4DImode);
14524 : emit_insn (gen_vec_extract_hi_v8di (tmp, operands[1]));
14525 : emit_insn (gen_vec_extract_lo_v8di (tmp2, operands[1]));
14526 : emit_insn (gen_smaxv4di3 (tmp3, tmp, tmp2));
14527 : emit_insn (gen_reduc_smax_scal_v4di (operands[0], tmp3));
14528 : DONE;
14529 : }
14530 : #undef DONE
14531 : #undef FAIL
14532 : }
14533 : static const uint8_t expand_encoding[] = {
14534 : 0x01, 0x53, 0x5c, 0x01, 0x00, 0x01, 0x01
14535 : };
14536 : return complete_seq (expand_encoding, operands);
14537 : }
14538 :
14539 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4070 */
14540 : rtx
14541 : gen_reduc_umax_scal_v32hi (const rtx operand0, const rtx operand1)
14542 : {
14543 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14544 : start_sequence ();
14545 : {
14546 : #define FAIL return (end_sequence (), nullptr)
14547 : #define DONE return end_sequence ()
14548 : #line 4075 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14549 : {
14550 : rtx tmp = gen_reg_rtx (V16HImode);
14551 : rtx tmp2 = gen_reg_rtx (V16HImode);
14552 : rtx tmp3 = gen_reg_rtx (V16HImode);
14553 : emit_insn (gen_vec_extract_hi_v32hi (tmp, operands[1]));
14554 : emit_insn (gen_vec_extract_lo_v32hi (tmp2, operands[1]));
14555 : emit_insn (gen_umaxv16hi3 (tmp3, tmp, tmp2));
14556 : emit_insn (gen_reduc_umax_scal_v16hi (operands[0], tmp3));
14557 : DONE;
14558 : }
14559 : #undef DONE
14560 : #undef FAIL
14561 : }
14562 : static const uint8_t expand_encoding[] = {
14563 : 0x01, 0x55, 0x5a, 0x01, 0x00, 0x01, 0x01
14564 : };
14565 : return complete_seq (expand_encoding, operands);
14566 : }
14567 :
14568 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4086 */
14569 : rtx
14570 : gen_reduc_umax_scal_v4di (const rtx operand0, const rtx operand1)
14571 : {
14572 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14573 : start_sequence ();
14574 : {
14575 : #define FAIL return (end_sequence (), nullptr)
14576 : #define DONE return end_sequence ()
14577 : #line 4091 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14578 : {
14579 : rtx tmp = gen_reg_rtx (V2DImode);
14580 : rtx tmp2 = gen_reg_rtx (V2DImode);
14581 : rtx tmp3 = gen_reg_rtx (V2DImode);
14582 : emit_insn (gen_vec_extract_hi_v4di (tmp, operands[1]));
14583 : emit_insn (gen_vec_extract_lo_v4di (tmp2, operands[1]));
14584 : emit_insn (gen_umaxv2di3 (tmp3, tmp, tmp2));
14585 : rtx tmp4 = gen_reg_rtx (V2DImode);
14586 : ix86_expand_reduc (gen_umaxv2di3, tmp4, tmp3);
14587 : emit_insn (gen_vec_extractv2didi
14588 : (operands[0], tmp4, const0_rtx));
14589 : DONE;
14590 : }
14591 : #undef DONE
14592 : #undef FAIL
14593 : }
14594 : static const uint8_t expand_encoding[] = {
14595 : 0x01, 0x55, 0x57, 0x01, 0x00, 0x01, 0x01
14596 : };
14597 : return complete_seq (expand_encoding, operands);
14598 : }
14599 :
14600 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4155 */
14601 : rtx
14602 : gen_reduc_sbool_xor_scal_qi (const rtx operand0, const rtx operand1, const rtx operand2)
14603 : {
14604 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
14605 : start_sequence ();
14606 : {
14607 : #define FAIL _Pragma ("GCC error \"reduc_sbool_xor_scal_qi cannot FAIL\"") (void)0
14608 : #define DONE return end_sequence ()
14609 : #line 4161 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14610 : {
14611 : rtx popcnt1, op1 = operands[1];
14612 : int n_elt = INTVAL (operands[2]);
14613 : if (n_elt < 8)
14614 : {
14615 : rtx op2 = gen_int_mode ((1u << n_elt) - 1, QImode);
14616 : op1 = gen_reg_rtx (QImode);
14617 : emit_insn (gen_andqi3 (op1, operands[1], op2));
14618 : }
14619 :
14620 : switch (1)
14621 : {
14622 : case 1:
14623 : case 2:
14624 : op1 = gen_reg_rtx (SImode);
14625 : emit_move_insn (op1, gen_rtx_ZERO_EXTEND (SImode, operands[1]));
14626 : /* FALLTHRU. */
14627 : case 4:
14628 : popcnt1 = gen_reg_rtx (SImode);
14629 : emit_insn (gen_popcountsi2 (popcnt1, op1));
14630 : emit_insn (gen_andsi3 (popcnt1, popcnt1, GEN_INT (0x1)));
14631 : break;
14632 :
14633 : case 8:
14634 : popcnt1 = gen_reg_rtx (DImode);
14635 : emit_insn (gen_popcountdi2 (popcnt1, op1));
14636 : emit_insn (gen_anddi3 (popcnt1, popcnt1, GEN_INT (0x1)));
14637 : break;
14638 :
14639 : default:
14640 : gcc_unreachable ();
14641 :
14642 : }
14643 :
14644 : emit_move_insn (operands[0], gen_lowpart (QImode, popcnt1));
14645 : DONE;
14646 : }
14647 : #undef DONE
14648 : #undef FAIL
14649 : }
14650 : static const uint8_t expand_encoding[] = {
14651 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
14652 : };
14653 : return complete_seq (expand_encoding, operands);
14654 : }
14655 :
14656 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4199 */
14657 : rtx
14658 : gen_reduc_sbool_and_scal_v4di (const rtx operand0, const rtx operand1)
14659 : {
14660 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14661 : start_sequence ();
14662 : {
14663 : #define FAIL _Pragma ("GCC error \"reduc_sbool_and_scal_v4di cannot FAIL\"") (void)0
14664 : #define DONE return end_sequence ()
14665 : #line 4203 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14666 : {
14667 : rtx flags = gen_rtx_REG (CCZmode, FLAGS_REG);
14668 : rtx op2, tmp;
14669 : if (TARGET_AVX2 || 32 != 32)
14670 : {
14671 : op2 = force_reg (V4DImode, CONST0_RTX (V4DImode));
14672 : tmp = gen_reg_rtx (V4DImode);
14673 : rtx op1 = gen_rtx_EQ (V4DImode, operands[1], op2);
14674 : emit_insn (gen_vec_cmpv4div4di (tmp, op1, operands[1], op2));
14675 : }
14676 : else
14677 : {
14678 : op2 = force_reg (V4DImode, CONSTM1_RTX (V4DImode));
14679 : tmp = gen_reg_rtx (V4DImode);
14680 : rtx ops[3] = { tmp, operands[1], op2 };
14681 : ix86_expand_vector_logical_operator (XOR, V4DImode, ops);
14682 : }
14683 :
14684 : tmp = gen_rtx_UNSPEC (CCZmode, gen_rtvec(2, tmp, tmp), UNSPEC_PTEST);
14685 : emit_insn (gen_rtx_SET (flags, tmp));
14686 : rtx ret = gen_rtx_fmt_ee (EQ, VOIDmode, flags, const0_rtx);
14687 : PUT_MODE (ret, QImode);
14688 : emit_insn (gen_rtx_SET (operands[0], ret));
14689 : DONE;
14690 :
14691 : }
14692 : #undef DONE
14693 : #undef FAIL
14694 : }
14695 : static const uint8_t expand_encoding[] = {
14696 : 0x02, 0x01, 0x00, 0x01, 0x01
14697 : };
14698 : return complete_seq (expand_encoding, operands);
14699 : }
14700 :
14701 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4311 */
14702 : rtx
14703 : gen_reduc_and_scal_v16qi (const rtx operand0, const rtx operand1)
14704 : {
14705 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14706 : start_sequence ();
14707 : {
14708 : #define FAIL _Pragma ("GCC error \"reduc_and_scal_v16qi cannot FAIL\"") (void)0
14709 : #define DONE return end_sequence ()
14710 : #line 4316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14711 : {
14712 : rtx tmp = gen_reg_rtx (V16QImode);
14713 : ix86_expand_reduc (gen_andv16qi3, tmp, operands[1]);
14714 : emit_insn (gen_vec_extractv16qiqi (operands[0],
14715 : tmp, const0_rtx));
14716 : DONE;
14717 : }
14718 : #undef DONE
14719 : #undef FAIL
14720 : }
14721 : static const uint8_t expand_encoding[] = {
14722 : 0x01, 0x49, 0x4f, 0x01, 0x00, 0x01, 0x01
14723 : };
14724 : return complete_seq (expand_encoding, operands);
14725 : }
14726 :
14727 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4311 */
14728 : rtx
14729 : gen_reduc_and_scal_v2di (const rtx operand0, const rtx operand1)
14730 : {
14731 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14732 : start_sequence ();
14733 : {
14734 : #define FAIL _Pragma ("GCC error \"reduc_and_scal_v2di cannot FAIL\"") (void)0
14735 : #define DONE return end_sequence ()
14736 : #line 4316 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14737 : {
14738 : rtx tmp = gen_reg_rtx (V2DImode);
14739 : ix86_expand_reduc (gen_andv2di3, tmp, operands[1]);
14740 : emit_insn (gen_vec_extractv2didi (operands[0],
14741 : tmp, const0_rtx));
14742 : DONE;
14743 : }
14744 : #undef DONE
14745 : #undef FAIL
14746 : }
14747 : static const uint8_t expand_encoding[] = {
14748 : 0x01, 0x49, 0x52, 0x01, 0x00, 0x01, 0x01
14749 : };
14750 : return complete_seq (expand_encoding, operands);
14751 : }
14752 :
14753 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4330 */
14754 : rtx
14755 : gen_reduc_ior_scal_v8si (const rtx operand0, const rtx operand1)
14756 : {
14757 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14758 : start_sequence ();
14759 : {
14760 : #define FAIL _Pragma ("GCC error \"reduc_ior_scal_v8si cannot FAIL\"") (void)0
14761 : #define DONE return end_sequence ()
14762 : #line 4335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14763 : {
14764 : rtx tmp = gen_reg_rtx (V4SImode);
14765 : rtx tmp2 = gen_reg_rtx (V4SImode);
14766 : rtx tmp3 = gen_reg_rtx (V4SImode);
14767 : emit_insn (gen_vec_extract_hi_v8si (tmp, operands[1]));
14768 : emit_insn (gen_vec_extract_lo_v8si (tmp2, operands[1]));
14769 : emit_insn (gen_iorv4si3 (tmp3, tmp, tmp2));
14770 : emit_insn (gen_reduc_ior_scal_v4si (operands[0], tmp3));
14771 : DONE;
14772 : }
14773 : #undef DONE
14774 : #undef FAIL
14775 : }
14776 : static const uint8_t expand_encoding[] = {
14777 : 0x01, 0x4a, 0x56, 0x01, 0x00, 0x01, 0x01
14778 : };
14779 : return complete_seq (expand_encoding, operands);
14780 : }
14781 :
14782 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4330 */
14783 : rtx
14784 : gen_reduc_xor_scal_v32hi (const rtx operand0, const rtx operand1)
14785 : {
14786 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
14787 : start_sequence ();
14788 : {
14789 : #define FAIL _Pragma ("GCC error \"reduc_xor_scal_v32hi cannot FAIL\"") (void)0
14790 : #define DONE return end_sequence ()
14791 : #line 4335 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14792 : {
14793 : rtx tmp = gen_reg_rtx (V16HImode);
14794 : rtx tmp2 = gen_reg_rtx (V16HImode);
14795 : rtx tmp3 = gen_reg_rtx (V16HImode);
14796 : emit_insn (gen_vec_extract_hi_v32hi (tmp, operands[1]));
14797 : emit_insn (gen_vec_extract_lo_v32hi (tmp2, operands[1]));
14798 : emit_insn (gen_xorv16hi3 (tmp3, tmp, tmp2));
14799 : emit_insn (gen_reduc_xor_scal_v16hi (operands[0], tmp3));
14800 : DONE;
14801 : }
14802 : #undef DONE
14803 : #undef FAIL
14804 : }
14805 : static const uint8_t expand_encoding[] = {
14806 : 0x01, 0x4b, 0x5a, 0x01, 0x00, 0x01, 0x01
14807 : };
14808 : return complete_seq (expand_encoding, operands);
14809 : }
14810 :
14811 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4370 */
14812 : extern rtx_insn *gen_split_1369 (rtx_insn *, rtx *);
14813 : rtx_insn *
14814 : gen_split_1369 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14815 : {
14816 : if (dump_file)
14817 : fprintf (dump_file, "Splitting with gen_split_1369 (sse.md:4370)\n");
14818 : start_sequence ();
14819 : #define FAIL return (end_sequence (), nullptr)
14820 : #define DONE return end_sequence ()
14821 : #line 4390 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14822 : {
14823 : operands[6] = gen_reg_rtx (V2DFmode);
14824 : operands[7]
14825 : = lowpart_subreg (GET_MODE (operands[0]), operands[6], V2DFmode);
14826 : }
14827 : #undef DONE
14828 : #undef FAIL
14829 : static const uint8_t expand_encoding[] = {
14830 : 0x02, 0x1f, 0x01, 0x06, 0x1a, 0x6c, 0x03, 0x01,
14831 : 0x03, 0x01, 0x04, 0x01, 0x05, 0x3c, 0x1f, 0x01,
14832 : 0x00, 0x01, 0x07
14833 : };
14834 : return complete_seq (expand_encoding, operands);
14835 : }
14836 :
14837 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4444 */
14838 : extern rtx_insn *gen_split_1379 (rtx_insn *, rtx *);
14839 : rtx_insn *
14840 : gen_split_1379 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14841 : {
14842 : if (dump_file)
14843 : fprintf (dump_file, "Splitting with gen_split_1379 (sse.md:4444)\n");
14844 : start_sequence ();
14845 : #define FAIL return (end_sequence (), nullptr)
14846 : #define DONE return end_sequence ()
14847 : #line 4464 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14848 : operands[5] = GEN_INT (INTVAL (operands[5]) ^ 4);
14849 : #undef DONE
14850 : #undef FAIL
14851 : static const uint8_t expand_encoding[] = {
14852 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x03, 0x01,
14853 : 0x03, 0x01, 0x04, 0x01, 0x05, 0x3c
14854 : };
14855 : return complete_seq (expand_encoding, operands);
14856 : }
14857 :
14858 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4495 */
14859 : extern rtx_insn *gen_split_1389 (rtx_insn *, rtx *);
14860 : rtx_insn *
14861 : gen_split_1389 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14862 : {
14863 : if (dump_file)
14864 : fprintf (dump_file, "Splitting with gen_split_1389 (sse.md:4495)\n");
14865 : start_sequence ();
14866 : #define FAIL return (end_sequence (), nullptr)
14867 : #define DONE return end_sequence ()
14868 : #line 4519 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14869 : {
14870 : if (INTVAL (operands[5]) == 5)
14871 : std::swap (operands[1], operands[2]);
14872 : operands[0] = gen_lowpart (V32QImode, operands[0]);
14873 : operands[1] = gen_lowpart (V32QImode, operands[1]);
14874 : operands[2] = force_reg (V32QImode,
14875 : gen_lowpart (V32QImode, operands[2]));
14876 : }
14877 : #undef DONE
14878 : #undef FAIL
14879 : static const uint8_t expand_encoding[] = {
14880 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x03, 0x01,
14881 : 0x02, 0x01, 0x01, 0x32, 0x54, 0x61, 0x57, 0x01,
14882 : 0x03, 0x01, 0x04, 0x00, 0x34
14883 : };
14884 : return complete_seq (expand_encoding, operands);
14885 : }
14886 :
14887 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4685 */
14888 : extern rtx_insn *gen_split_1399 (rtx_insn *, rtx *);
14889 : rtx_insn *
14890 : gen_split_1399 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14891 : {
14892 : if (dump_file)
14893 : fprintf (dump_file, "Splitting with gen_split_1399 (sse.md:4685)\n");
14894 : start_sequence ();
14895 : #define FAIL return (end_sequence (), nullptr)
14896 : #define DONE return end_sequence ()
14897 : #line 4714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14898 : {
14899 : operands[5] = lowpart_subreg (QImode,
14900 : operands[0], DImode);
14901 : if (SUBREG_P (operands[5]))
14902 : {
14903 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
14904 : SUBREG_PROMOTED_SET (operands[5], 1);
14905 : }
14906 : }
14907 : #undef DONE
14908 : #undef FAIL
14909 : static const uint8_t expand_encoding[] = {
14910 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x0f,
14911 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
14912 : 0x1f, 0x01, 0x04, 0x01, 0x05
14913 : };
14914 : return complete_seq (expand_encoding, operands);
14915 : }
14916 :
14917 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4685 */
14918 : extern rtx_insn *gen_split_1409 (rtx_insn *, rtx *);
14919 : rtx_insn *
14920 : gen_split_1409 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14921 : {
14922 : if (dump_file)
14923 : fprintf (dump_file, "Splitting with gen_split_1409 (sse.md:4685)\n");
14924 : start_sequence ();
14925 : #define FAIL return (end_sequence (), nullptr)
14926 : #define DONE return end_sequence ()
14927 : #line 4714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14928 : {
14929 : operands[5] = lowpart_subreg (QImode,
14930 : operands[0], HImode);
14931 : if (SUBREG_P (operands[5]))
14932 : {
14933 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
14934 : SUBREG_PROMOTED_SET (operands[5], 1);
14935 : }
14936 : }
14937 : #undef DONE
14938 : #undef FAIL
14939 : static const uint8_t expand_encoding[] = {
14940 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x10, 0x1a, 0x0f,
14941 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
14942 : 0x1f, 0x01, 0x04, 0x01, 0x05
14943 : };
14944 : return complete_seq (expand_encoding, operands);
14945 : }
14946 :
14947 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4685 */
14948 : extern rtx_insn *gen_split_1419 (rtx_insn *, rtx *);
14949 : rtx_insn *
14950 : gen_split_1419 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14951 : {
14952 : if (dump_file)
14953 : fprintf (dump_file, "Splitting with gen_split_1419 (sse.md:4685)\n");
14954 : start_sequence ();
14955 : #define FAIL return (end_sequence (), nullptr)
14956 : #define DONE return end_sequence ()
14957 : #line 4714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14958 : {
14959 : operands[5] = lowpart_subreg (QImode,
14960 : operands[0], SImode);
14961 : if (SUBREG_P (operands[5]))
14962 : {
14963 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
14964 : SUBREG_PROMOTED_SET (operands[5], 1);
14965 : }
14966 : }
14967 : #undef DONE
14968 : #undef FAIL
14969 : static const uint8_t expand_encoding[] = {
14970 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x11, 0x1a, 0x0f,
14971 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
14972 : 0x1f, 0x01, 0x04, 0x01, 0x05
14973 : };
14974 : return complete_seq (expand_encoding, operands);
14975 : }
14976 :
14977 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4685 */
14978 : extern rtx_insn *gen_split_1429 (rtx_insn *, rtx *);
14979 : rtx_insn *
14980 : gen_split_1429 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
14981 : {
14982 : if (dump_file)
14983 : fprintf (dump_file, "Splitting with gen_split_1429 (sse.md:4685)\n");
14984 : start_sequence ();
14985 : #define FAIL return (end_sequence (), nullptr)
14986 : #define DONE return end_sequence ()
14987 : #line 4714 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
14988 : {
14989 : operands[5] = lowpart_subreg (QImode,
14990 : operands[0], DImode);
14991 : if (SUBREG_P (operands[5]))
14992 : {
14993 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
14994 : SUBREG_PROMOTED_SET (operands[5], 1);
14995 : }
14996 : }
14997 : #undef DONE
14998 : #undef FAIL
14999 : static const uint8_t expand_encoding[] = {
15000 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x0f,
15001 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x3c,
15002 : 0x1f, 0x01, 0x04, 0x01, 0x05
15003 : };
15004 : return complete_seq (expand_encoding, operands);
15005 : }
15006 :
15007 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4724 */
15008 : extern rtx_insn *gen_split_1439 (rtx_insn *, rtx *);
15009 : rtx_insn *
15010 : gen_split_1439 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15011 : {
15012 : if (dump_file)
15013 : fprintf (dump_file, "Splitting with gen_split_1439 (sse.md:4724)\n");
15014 : start_sequence ();
15015 : #define FAIL return (end_sequence (), nullptr)
15016 : #define DONE return end_sequence ()
15017 : #line 4742 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15018 : operands[4] = GEN_INT (INTVAL (operands[3]) ^ 4);
15019 : #undef DONE
15020 : #undef FAIL
15021 : static const uint8_t expand_encoding[] = {
15022 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x10, 0x03, 0x01,
15023 : 0x01, 0x01, 0x02, 0x01, 0x04, 0x3c
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_1448 (rtx_insn *, rtx *);
15030 : rtx_insn *
15031 : gen_split_1448 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15032 : {
15033 : if (dump_file)
15034 : fprintf (dump_file, "Splitting with gen_split_1448 (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, 0x10, 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_1458 (rtx_insn *, rtx *);
15051 : rtx_insn *
15052 : gen_split_1458 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15053 : {
15054 : if (dump_file)
15055 : fprintf (dump_file, "Splitting with gen_split_1458 (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 (HImode,
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, 0x10,
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_1468 (rtx_insn *, rtx *);
15081 : rtx_insn *
15082 : gen_split_1468 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15083 : {
15084 : if (dump_file)
15085 : fprintf (dump_file, "Splitting with gen_split_1468 (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 (HImode,
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, 0x10,
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_1478 (rtx_insn *, rtx *);
15111 : rtx_insn *
15112 : gen_split_1478 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15113 : {
15114 : if (dump_file)
15115 : fprintf (dump_file, "Splitting with gen_split_1478 (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, 0x11, 0x03, 0x01,
15125 : 0x01, 0x01, 0x02, 0x01, 0x04, 0x3c
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_1488 (rtx_insn *, rtx *);
15132 : rtx_insn *
15133 : gen_split_1488 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15134 : {
15135 : if (dump_file)
15136 : fprintf (dump_file, "Splitting with gen_split_1488 (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 (HImode);
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 (V16QImode);
15148 : if (nelts >= 8)
15149 : res = CONSTM1_RTX (HImode);
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_1498 (rtx_insn *, rtx *);
15165 : rtx_insn *
15166 : gen_split_1498 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15167 : {
15168 : if (dump_file)
15169 : fprintf (dump_file, "Splitting with gen_split_1498 (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 (V8SImode);
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:4999 */
15197 : extern rtx_insn *gen_split_1508 (rtx_insn *, rtx *);
15198 : rtx_insn *
15199 : gen_split_1508 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15200 : {
15201 : if (dump_file)
15202 : fprintf (dump_file, "Splitting with gen_split_1508 (sse.md:4999)\n");
15203 : start_sequence ();
15204 : #define FAIL return (end_sequence (), nullptr)
15205 : #define DONE return end_sequence ()
15206 : #line 5028 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15207 : {
15208 : operands[5] = lowpart_subreg (DImode,
15209 : operands[0], HImode);
15210 : if (SUBREG_P (operands[5]))
15211 : {
15212 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15213 : SUBREG_PROMOTED_SET (operands[5], 1);
15214 : }
15215 : }
15216 : #undef DONE
15217 : #undef FAIL
15218 : static const uint8_t expand_encoding[] = {
15219 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x10, 0x1a, 0x12,
15220 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
15221 : 0x1e, 0x1f, 0x01, 0x04, 0x01, 0x05
15222 : };
15223 : return complete_seq (expand_encoding, operands);
15224 : }
15225 :
15226 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:4999 */
15227 : extern rtx_insn *gen_split_1518 (rtx_insn *, rtx *);
15228 : rtx_insn *
15229 : gen_split_1518 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15230 : {
15231 : if (dump_file)
15232 : fprintf (dump_file, "Splitting with gen_split_1518 (sse.md:4999)\n");
15233 : start_sequence ();
15234 : #define FAIL return (end_sequence (), nullptr)
15235 : #define DONE return end_sequence ()
15236 : #line 5028 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15237 : {
15238 : operands[5] = lowpart_subreg (SImode,
15239 : operands[0], SImode);
15240 : if (SUBREG_P (operands[5]))
15241 : {
15242 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15243 : SUBREG_PROMOTED_SET (operands[5], 1);
15244 : }
15245 : }
15246 : #undef DONE
15247 : #undef FAIL
15248 : static const uint8_t expand_encoding[] = {
15249 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x11, 0x1a, 0x11,
15250 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
15251 : 0x1e, 0x1f, 0x01, 0x04, 0x01, 0x05
15252 : };
15253 : return complete_seq (expand_encoding, operands);
15254 : }
15255 :
15256 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5091 */
15257 : extern rtx_insn *gen_split_1528 (rtx_insn *, rtx *);
15258 : rtx_insn *
15259 : gen_split_1528 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15260 : {
15261 : if (dump_file)
15262 : fprintf (dump_file, "Splitting with gen_split_1528 (sse.md:5091)\n");
15263 : start_sequence ();
15264 : #define FAIL return (end_sequence (), nullptr)
15265 : #define DONE return end_sequence ()
15266 : #line 5120 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15267 : {
15268 : operands[5] = lowpart_subreg (QImode,
15269 : operands[0], HImode);
15270 : if (SUBREG_P (operands[5]))
15271 : {
15272 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15273 : SUBREG_PROMOTED_SET (operands[5], 1);
15274 : }
15275 : }
15276 : #undef DONE
15277 : #undef FAIL
15278 : static const uint8_t expand_encoding[] = {
15279 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x10, 0x1a, 0x0f,
15280 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
15281 : 0x1e, 0x1f, 0x01, 0x04, 0x01, 0x05
15282 : };
15283 : return complete_seq (expand_encoding, operands);
15284 : }
15285 :
15286 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5091 */
15287 : extern rtx_insn *gen_split_1538 (rtx_insn *, rtx *);
15288 : rtx_insn *
15289 : gen_split_1538 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15290 : {
15291 : if (dump_file)
15292 : fprintf (dump_file, "Splitting with gen_split_1538 (sse.md:5091)\n");
15293 : start_sequence ();
15294 : #define FAIL return (end_sequence (), nullptr)
15295 : #define DONE return end_sequence ()
15296 : #line 5120 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15297 : {
15298 : operands[5] = lowpart_subreg (HImode,
15299 : operands[0], DImode);
15300 : if (SUBREG_P (operands[5]))
15301 : {
15302 : SUBREG_PROMOTED_VAR_P (operands[5]) = 1;
15303 : SUBREG_PROMOTED_SET (operands[5], 1);
15304 : }
15305 : }
15306 : #undef DONE
15307 : #undef FAIL
15308 : static const uint8_t expand_encoding[] = {
15309 : 0x02, 0x1f, 0x01, 0x00, 0x6f, 0x12, 0x1a, 0x10,
15310 : 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x81,
15311 : 0x1e, 0x1f, 0x01, 0x04, 0x01, 0x05
15312 : };
15313 : return complete_seq (expand_encoding, operands);
15314 : }
15315 :
15316 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5134 */
15317 : extern rtx_insn *gen_split_1548 (rtx_insn *, rtx *);
15318 : rtx_insn *
15319 : gen_split_1548 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15320 : {
15321 : if (dump_file)
15322 : fprintf (dump_file, "Splitting with gen_split_1548 (sse.md:5134)\n");
15323 : start_sequence ();
15324 : #define FAIL return (end_sequence (), nullptr)
15325 : #define DONE return end_sequence ()
15326 : #line 5152 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15327 : operands[4] = GEN_INT (INTVAL (operands[3]) ^ 4);
15328 : #undef DONE
15329 : #undef FAIL
15330 : static const uint8_t expand_encoding[] = {
15331 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01,
15332 : 0x01, 0x01, 0x02, 0x01, 0x04, 0x81, 0x1e
15333 : };
15334 : return complete_seq (expand_encoding, operands);
15335 : }
15336 :
15337 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5161 */
15338 : extern rtx_insn *gen_split_1558 (rtx_insn *, rtx *);
15339 : rtx_insn *
15340 : gen_split_1558 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
15341 : {
15342 : if (dump_file)
15343 : fprintf (dump_file, "Splitting with gen_split_1558 (sse.md:5161)\n");
15344 : start_sequence ();
15345 : #define FAIL return (end_sequence (), nullptr)
15346 : #define DONE return end_sequence ()
15347 : #line 5176 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15348 : {
15349 : /* LE: 2, NLT: 5, NLE: 6, LT: 1 */
15350 : int cmp_predicate = 2; /* LE */
15351 : if (MEM_P (operands[1]))
15352 : {
15353 : std::swap (operands[1], operands[2]);
15354 : cmp_predicate = 5; /* NLT (GE) */
15355 : }
15356 : if ((INTVAL (operands[4]) & 4) != 0)
15357 : cmp_predicate ^= 4; /* Invert the comparison to NLE (GT) or LT. */
15358 : emit_insn (gen_avx512vl_ucmpv16hi3 (operands[0], operands[1],operands[2],
15359 : GEN_INT (cmp_predicate)));
15360 : DONE;
15361 : }
15362 : #undef DONE
15363 : #undef FAIL
15364 : static const uint8_t expand_encoding[] = {
15365 : 0x01, 0x27, 0x00
15366 : };
15367 : return complete_seq (expand_encoding, operands);
15368 : }
15369 :
15370 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5275 */
15371 : rtx
15372 : gen_vec_cmpv32hfsi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15373 : {
15374 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15375 : start_sequence ();
15376 : {
15377 : #define FAIL return (end_sequence (), nullptr)
15378 : #define DONE return end_sequence ()
15379 : #line 5281 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15380 : {
15381 : bool ok = ix86_expand_mask_vec_cmp (operands[0], GET_CODE (operands[1]),
15382 : operands[2], operands[3]);
15383 : gcc_assert (ok);
15384 : DONE;
15385 : }
15386 : #undef DONE
15387 : #undef FAIL
15388 : }
15389 : static const uint8_t expand_encoding[] = {
15390 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x11, 0x01, 0x01,
15391 : 0x02, 0x01, 0x03
15392 : };
15393 : return complete_seq (expand_encoding, operands);
15394 : }
15395 :
15396 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5288 */
15397 : rtx
15398 : gen_vec_cmpv16qihi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15399 : {
15400 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15401 : start_sequence ();
15402 : {
15403 : #define FAIL return (end_sequence (), nullptr)
15404 : #define DONE return end_sequence ()
15405 : #line 5294 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15406 : {
15407 : bool ok = ix86_expand_mask_vec_cmp (operands[0], GET_CODE (operands[1]),
15408 : operands[2], operands[3]);
15409 : gcc_assert (ok);
15410 : DONE;
15411 : }
15412 : #undef DONE
15413 : #undef FAIL
15414 : }
15415 : static const uint8_t expand_encoding[] = {
15416 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x10, 0x01, 0x01,
15417 : 0x02, 0x01, 0x03
15418 : };
15419 : return complete_seq (expand_encoding, operands);
15420 : }
15421 :
15422 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5314 */
15423 : rtx
15424 : gen_vec_cmpv8siv8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15425 : {
15426 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15427 : start_sequence ();
15428 : {
15429 : #define FAIL return (end_sequence (), nullptr)
15430 : #define DONE return end_sequence ()
15431 : #line 5320 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15432 : {
15433 : bool ok = ix86_expand_int_vec_cmp (operands);
15434 : gcc_assert (ok);
15435 : DONE;
15436 : }
15437 : #undef DONE
15438 : #undef FAIL
15439 : }
15440 : static const uint8_t expand_encoding[] = {
15441 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x56, 0x01, 0x01,
15442 : 0x02, 0x01, 0x03
15443 : };
15444 : return complete_seq (expand_encoding, operands);
15445 : }
15446 :
15447 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5374 */
15448 : rtx
15449 : gen_vec_cmpuv16sihi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15450 : {
15451 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15452 : start_sequence ();
15453 : {
15454 : #define FAIL return (end_sequence (), nullptr)
15455 : #define DONE return end_sequence ()
15456 : #line 5380 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15457 : {
15458 : bool ok = ix86_expand_mask_vec_cmp (operands[0], GET_CODE (operands[1]),
15459 : operands[2], operands[3]);
15460 : gcc_assert (ok);
15461 : DONE;
15462 : }
15463 : #undef DONE
15464 : #undef FAIL
15465 : }
15466 : static const uint8_t expand_encoding[] = {
15467 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x10, 0x01, 0x01,
15468 : 0x02, 0x01, 0x03
15469 : };
15470 : return complete_seq (expand_encoding, operands);
15471 : }
15472 :
15473 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5387 */
15474 : rtx
15475 : gen_vec_cmpuv16hihi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15476 : {
15477 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15478 : start_sequence ();
15479 : {
15480 : #define FAIL return (end_sequence (), nullptr)
15481 : #define DONE return end_sequence ()
15482 : #line 5393 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15483 : {
15484 : bool ok = ix86_expand_mask_vec_cmp (operands[0], GET_CODE (operands[1]),
15485 : operands[2], operands[3]);
15486 : gcc_assert (ok);
15487 : DONE;
15488 : }
15489 : #undef DONE
15490 : #undef FAIL
15491 : }
15492 : static const uint8_t expand_encoding[] = {
15493 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x10, 0x01, 0x01,
15494 : 0x02, 0x01, 0x03
15495 : };
15496 : return complete_seq (expand_encoding, operands);
15497 : }
15498 :
15499 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5436 */
15500 : rtx
15501 : gen_vec_cmpeqv2div2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15502 : {
15503 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15504 : start_sequence ();
15505 : {
15506 : #define FAIL return (end_sequence (), nullptr)
15507 : #define DONE return end_sequence ()
15508 : #line 5442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15509 : {
15510 : bool ok;
15511 : if (!TARGET_SSE4_1)
15512 : {
15513 : rtx ops[4];
15514 : ops[0] = gen_reg_rtx (V4SImode);
15515 : ops[2] = gen_lowpart (V4SImode, force_reg (V2DImode, operands[2]));
15516 : ops[3] = gen_lowpart (V4SImode, force_reg (V2DImode, operands[3]));
15517 : ops[1] = gen_rtx_fmt_ee (GET_CODE (operands[1]), V4SImode,
15518 : ops[2], ops[3]);
15519 : ok = ix86_expand_int_vec_cmp (ops);
15520 :
15521 : rtx tmp1 = gen_reg_rtx (V4SImode);
15522 : emit_insn (gen_sse2_pshufd (tmp1, ops[0], GEN_INT (0xb1)));
15523 :
15524 : rtx tmp2 = gen_reg_rtx (V4SImode);
15525 : if (GET_CODE (operands[1]) == EQ)
15526 : emit_insn (gen_andv4si3 (tmp2, tmp1, ops[0]));
15527 : else
15528 : emit_insn (gen_iorv4si3 (tmp2, tmp1, ops[0]));
15529 :
15530 : emit_move_insn (operands[0], gen_lowpart (V2DImode, tmp2));
15531 : }
15532 : else
15533 : ok = ix86_expand_int_vec_cmp (operands);
15534 : gcc_assert (ok);
15535 : DONE;
15536 : }
15537 : #undef DONE
15538 : #undef FAIL
15539 : }
15540 : static const uint8_t expand_encoding[] = {
15541 : 0x01, 0x1f, 0x01, 0x00, 0x03, 0x52, 0x01, 0x01,
15542 : 0x02, 0x01, 0x03
15543 : };
15544 : return complete_seq (expand_encoding, operands);
15545 : }
15546 :
15547 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5520 */
15548 : rtx
15549 : gen_vcond_mask_v32qiv32qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15550 : {
15551 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15552 : start_sequence ();
15553 : {
15554 : #define FAIL _Pragma ("GCC error \"vcond_mask_v32qiv32qi cannot FAIL\"") (void)0
15555 : #define DONE return end_sequence ()
15556 : #line 5527 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15557 : {
15558 : ix86_expand_sse_movcc (operands[0], operands[3],
15559 : operands[1], operands[2]);
15560 : DONE;
15561 : }
15562 : #undef DONE
15563 : #undef FAIL
15564 : }
15565 : static const uint8_t expand_encoding[] = {
15566 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x01,
15567 : 0x01, 0x01, 0x02, 0x01, 0x03
15568 : };
15569 : return complete_seq (expand_encoding, operands);
15570 : }
15571 :
15572 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5559 */
15573 : rtx
15574 : gen_vcond_mask_v4dfv4di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15575 : {
15576 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15577 : start_sequence ();
15578 : {
15579 : #define FAIL _Pragma ("GCC error \"vcond_mask_v4dfv4di cannot FAIL\"") (void)0
15580 : #define DONE return end_sequence ()
15581 : #line 5566 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15582 : {
15583 : ix86_expand_sse_movcc (operands[0], operands[3],
15584 : operands[1], operands[2]);
15585 : DONE;
15586 : }
15587 : #undef DONE
15588 : #undef FAIL
15589 : }
15590 : static const uint8_t expand_encoding[] = {
15591 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x01,
15592 : 0x01, 0x01, 0x02, 0x01, 0x03
15593 : };
15594 : return complete_seq (expand_encoding, operands);
15595 : }
15596 :
15597 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5724 */
15598 : rtx
15599 : gen_andv8bf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15600 : {
15601 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15602 : start_sequence ();
15603 : {
15604 : #define FAIL return (end_sequence (), nullptr)
15605 : #define DONE return end_sequence ()
15606 : #line 5731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15607 : ix86_fixup_binary_operands_no_copy (AND, V8BFmode, operands);
15608 : #undef DONE
15609 : #undef FAIL
15610 : }
15611 : static const uint8_t expand_encoding[] = {
15612 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x69, 0x01, 0x01,
15613 : 0x01, 0x02
15614 : };
15615 : return complete_seq (expand_encoding, operands);
15616 : }
15617 :
15618 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5724 */
15619 : rtx
15620 : gen_andv8sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
15621 : {
15622 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
15623 : start_sequence ();
15624 : {
15625 : #define FAIL return (end_sequence (), nullptr)
15626 : #define DONE return end_sequence ()
15627 : #line 5731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15628 : ix86_fixup_binary_operands_no_copy (AND, V8SFmode, operands);
15629 : #undef DONE
15630 : #undef FAIL
15631 : }
15632 : static const uint8_t expand_encoding[] = {
15633 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x49,
15634 : 0x6f, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
15635 : 0x04
15636 : };
15637 : return complete_seq (expand_encoding, operands);
15638 : }
15639 :
15640 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5724 */
15641 : rtx
15642 : gen_andv4df3 (const rtx operand0, const rtx operand1, const rtx operand2)
15643 : {
15644 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15645 : start_sequence ();
15646 : {
15647 : #define FAIL return (end_sequence (), nullptr)
15648 : #define DONE return end_sequence ()
15649 : #line 5731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15650 : ix86_fixup_binary_operands_no_copy (AND, V4DFmode, operands);
15651 : #undef DONE
15652 : #undef FAIL
15653 : }
15654 : static const uint8_t expand_encoding[] = {
15655 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x70, 0x01, 0x01,
15656 : 0x01, 0x02
15657 : };
15658 : return complete_seq (expand_encoding, operands);
15659 : }
15660 :
15661 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5724 */
15662 : rtx
15663 : gen_iorv2df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
15664 : {
15665 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
15666 : start_sequence ();
15667 : {
15668 : #define FAIL return (end_sequence (), nullptr)
15669 : #define DONE return end_sequence ()
15670 : #line 5731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15671 : ix86_fixup_binary_operands_no_copy (IOR, V2DFmode, operands);
15672 : #undef DONE
15673 : #undef FAIL
15674 : }
15675 : static const uint8_t expand_encoding[] = {
15676 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x4a,
15677 : 0x6c, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
15678 : 0x04
15679 : };
15680 : return complete_seq (expand_encoding, operands);
15681 : }
15682 :
15683 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5733 */
15684 : rtx
15685 : gen_iorv16sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15686 : {
15687 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15688 : start_sequence ();
15689 : {
15690 : #define FAIL return (end_sequence (), nullptr)
15691 : #define DONE return end_sequence ()
15692 : #line 5739 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15693 : ix86_fixup_binary_operands_no_copy (IOR, V16SFmode, operands);
15694 : #undef DONE
15695 : #undef FAIL
15696 : }
15697 : static const uint8_t expand_encoding[] = {
15698 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x74, 0x01, 0x01,
15699 : 0x01, 0x02
15700 : };
15701 : return complete_seq (expand_encoding, operands);
15702 : }
15703 :
15704 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5733 */
15705 : rtx
15706 : gen_xorv8df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
15707 : {
15708 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
15709 : start_sequence ();
15710 : {
15711 : #define FAIL return (end_sequence (), nullptr)
15712 : #define DONE return end_sequence ()
15713 : #line 5739 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15714 : ix86_fixup_binary_operands_no_copy (XOR, V8DFmode, operands);
15715 : #undef DONE
15716 : #undef FAIL
15717 : }
15718 : static const uint8_t expand_encoding[] = {
15719 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x75, 0x4b,
15720 : 0x75, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
15721 : 0x04
15722 : };
15723 : return complete_seq (expand_encoding, operands);
15724 : }
15725 :
15726 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5852 */
15727 : extern rtx_insn *gen_split_1572 (rtx_insn *, rtx *);
15728 : rtx_insn *
15729 : gen_split_1572 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
15730 : {
15731 : if (dump_file)
15732 : fprintf (dump_file, "Splitting with gen_split_1572 (sse.md:5852)\n");
15733 : start_sequence ();
15734 : #define FAIL return (end_sequence (), nullptr)
15735 : #define DONE return end_sequence ()
15736 : #line 5860 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15737 : operands[1] = force_reg (V4DFmode, operands[1]);
15738 : #undef DONE
15739 : #undef FAIL
15740 : static const uint8_t expand_encoding[] = {
15741 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
15742 : };
15743 : return complete_seq (expand_encoding, operands);
15744 : }
15745 :
15746 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5862 */
15747 : rtx
15748 : gen_copysignv4sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15749 : {
15750 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15751 : start_sequence ();
15752 : {
15753 : #define FAIL _Pragma ("GCC error \"copysignv4sf3 cannot FAIL\"") (void)0
15754 : #define DONE return end_sequence ()
15755 : #line 5873 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15756 : {
15757 : operands[3] = ix86_build_signbit_mask (V4SFmode, 1, 0);
15758 :
15759 : operands[4] = gen_reg_rtx (V4SFmode);
15760 : operands[5] = gen_reg_rtx (V4SFmode);
15761 : }
15762 : #undef DONE
15763 : #undef FAIL
15764 : }
15765 : static const uint8_t expand_encoding[] = {
15766 : 0x03, 0x1f, 0x01, 0x04, 0x49, 0x6b, 0x4c, 0x6b,
15767 : 0x01, 0x03, 0x01, 0x01, 0x1f, 0x01, 0x05, 0x49,
15768 : 0x6b, 0x01, 0x03, 0x01, 0x02, 0x1f, 0x01, 0x00,
15769 : 0x4a, 0x6b, 0x01, 0x04, 0x01, 0x05
15770 : };
15771 : return complete_seq (expand_encoding, operands);
15772 : }
15773 :
15774 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:5880 */
15775 : rtx
15776 : gen_xorsignv16sf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15777 : {
15778 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15779 : start_sequence ();
15780 : {
15781 : #define FAIL _Pragma ("GCC error \"xorsignv16sf3 cannot FAIL\"") (void)0
15782 : #define DONE return end_sequence ()
15783 : #line 5888 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15784 : {
15785 : operands[3] = ix86_build_signbit_mask (V16SFmode, 1, 0);
15786 :
15787 : operands[4] = gen_reg_rtx (V16SFmode);
15788 : }
15789 : #undef DONE
15790 : #undef FAIL
15791 : }
15792 : static const uint8_t expand_encoding[] = {
15793 : 0x02, 0x1f, 0x01, 0x04, 0x49, 0x74, 0x01, 0x03,
15794 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x4b, 0x74, 0x01,
15795 : 0x04, 0x01, 0x01
15796 : };
15797 : return complete_seq (expand_encoding, operands);
15798 : }
15799 :
15800 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6111 */
15801 : rtx
15802 : gen_iortf3 (const rtx operand0, const rtx operand1, const rtx operand2)
15803 : {
15804 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
15805 : start_sequence ();
15806 : {
15807 : #define FAIL return (end_sequence (), nullptr)
15808 : #define DONE return end_sequence ()
15809 : #line 6117 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15810 : ix86_fixup_binary_operands_no_copy (IOR, TFmode, operands);
15811 : #undef DONE
15812 : #undef FAIL
15813 : }
15814 : static const uint8_t expand_encoding[] = {
15815 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x30, 0x01, 0x01,
15816 : 0x01, 0x02
15817 : };
15818 : return complete_seq (expand_encoding, operands);
15819 : }
15820 :
15821 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6204 */
15822 : rtx
15823 : gen_fmahf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15824 : {
15825 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15826 : static const uint8_t expand_encoding[] = {
15827 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x2b, 0x01, 0x01,
15828 : 0x01, 0x02, 0x01, 0x03
15829 : };
15830 : return expand_rtx (expand_encoding, operands);
15831 : }
15832 :
15833 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6211 */
15834 : rtx
15835 : gen_fmsv2df4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15836 : {
15837 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15838 : static const uint8_t expand_encoding[] = {
15839 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6c, 0x01, 0x01,
15840 : 0x01, 0x02, 0x3d, 0x6c, 0x01, 0x03
15841 : };
15842 : return expand_rtx (expand_encoding, operands);
15843 : }
15844 :
15845 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6211 */
15846 : rtx
15847 : gen_fmsv16bf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15848 : {
15849 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15850 : static const uint8_t expand_encoding[] = {
15851 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6d, 0x01, 0x01,
15852 : 0x01, 0x02, 0x3d, 0x6d, 0x01, 0x03
15853 : };
15854 : return expand_rtx (expand_encoding, operands);
15855 : }
15856 :
15857 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6218 */
15858 : rtx
15859 : gen_fnmahf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15860 : {
15861 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15862 : static const uint8_t expand_encoding[] = {
15863 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x2b, 0x3d, 0x2b,
15864 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
15865 : };
15866 : return expand_rtx (expand_encoding, operands);
15867 : }
15868 :
15869 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6225 */
15870 : rtx
15871 : gen_fnmsv2df4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15872 : {
15873 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15874 : static const uint8_t expand_encoding[] = {
15875 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6c, 0x3d, 0x6c,
15876 : 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6c, 0x01, 0x03
15877 : };
15878 : return expand_rtx (expand_encoding, operands);
15879 : }
15880 :
15881 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6225 */
15882 : rtx
15883 : gen_fnmsv16bf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15884 : {
15885 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15886 : static const uint8_t expand_encoding[] = {
15887 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6d, 0x3d, 0x6d,
15888 : 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6d, 0x01, 0x03
15889 : };
15890 : return expand_rtx (expand_encoding, operands);
15891 : }
15892 :
15893 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6252 */
15894 : rtx
15895 : gen_fma4i_fmsub_sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15896 : {
15897 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15898 : static const uint8_t expand_encoding[] = {
15899 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x2d, 0x01, 0x01,
15900 : 0x01, 0x02, 0x3d, 0x2d, 0x01, 0x03
15901 : };
15902 : return expand_rtx (expand_encoding, operands);
15903 : }
15904 :
15905 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6260 */
15906 : rtx
15907 : gen_fma4i_fnmadd_v4sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15908 : {
15909 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15910 : static const uint8_t expand_encoding[] = {
15911 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6b, 0x3d, 0x6b,
15912 : 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
15913 : };
15914 : return expand_rtx (expand_encoding, operands);
15915 : }
15916 :
15917 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6268 */
15918 : rtx
15919 : gen_fma4i_fnmsub_v8sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
15920 : {
15921 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
15922 : static const uint8_t expand_encoding[] = {
15923 : 0x1f, 0x01, 0x00, 0x81, 0x19, 0x6f, 0x3d, 0x6f,
15924 : 0x01, 0x01, 0x01, 0x02, 0x3d, 0x6f, 0x01, 0x03
15925 : };
15926 : return expand_rtx (expand_encoding, operands);
15927 : }
15928 :
15929 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6277 */
15930 : rtx
15931 : gen_avx512f_fmadd_v16sf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
15932 : {
15933 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
15934 : start_sequence ();
15935 : {
15936 : #define FAIL return (end_sequence (), nullptr)
15937 : #define DONE return end_sequence ()
15938 : #line 6284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15939 : {
15940 : emit_insn (gen_fma_fmadd_v16sf_maskz_1 (
15941 : operands[0], operands[1], operands[2], operands[3],
15942 : CONST0_RTX (V16SFmode), operands[4]));
15943 : DONE;
15944 : }
15945 : #undef DONE
15946 : #undef FAIL
15947 : }
15948 : static const uint8_t expand_encoding[] = {
15949 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
15950 : 0x03, 0x01, 0x04
15951 : };
15952 : return complete_seq (expand_encoding, operands);
15953 : }
15954 :
15955 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6277 */
15956 : rtx
15957 : gen_avx512vl_fmadd_v4df_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
15958 : {
15959 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
15960 : start_sequence ();
15961 : {
15962 : #define FAIL return (end_sequence (), nullptr)
15963 : #define DONE return end_sequence ()
15964 : #line 6284 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15965 : {
15966 : emit_insn (gen_fma_fmadd_v4df_maskz_1_round (
15967 : operands[0], operands[1], operands[2], operands[3],
15968 : CONST0_RTX (V4DFmode), operands[4], operands[5]));
15969 : DONE;
15970 : }
15971 : #undef DONE
15972 : #undef FAIL
15973 : }
15974 : static const uint8_t expand_encoding[] = {
15975 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
15976 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
15977 : 0x81, 0x33
15978 : };
15979 : return complete_seq (expand_encoding, operands);
15980 : }
15981 :
15982 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6332 */
15983 : rtx
15984 : gen_cond_fmav2df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
15985 : {
15986 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
15987 : start_sequence ();
15988 : {
15989 : #define FAIL _Pragma ("GCC error \"cond_fmav2df cannot FAIL\"") (void)0
15990 : #define DONE return end_sequence ()
15991 : #line 6342 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
15992 : {
15993 : rtx tmp = gen_reg_rtx (V2DFmode);
15994 : emit_insn (gen_fmav2df4 (tmp,
15995 : operands[2],
15996 : operands[3],
15997 : operands[4]));
15998 : emit_move_insn (operands[0], gen_rtx_VEC_MERGE (V2DFmode,
15999 : tmp,
16000 : operands[5],
16001 : operands[1]));
16002 : DONE;
16003 : }
16004 : #undef DONE
16005 : #undef FAIL
16006 : }
16007 : static const uint8_t expand_encoding[] = {
16008 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x81,
16009 : 0x19, 0x6c, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04,
16010 : 0x01, 0x05, 0x01, 0x01
16011 : };
16012 : return complete_seq (expand_encoding, operands);
16013 : }
16014 :
16015 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6405 */
16016 : rtx
16017 : gen_avx512vl_fmsub_v4sf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16018 : {
16019 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16020 : start_sequence ();
16021 : {
16022 : #define FAIL return (end_sequence (), nullptr)
16023 : #define DONE return end_sequence ()
16024 : #line 6412 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16025 : {
16026 : emit_insn (gen_fma_fmsub_v4sf_maskz_1 (
16027 : operands[0], operands[1], operands[2], operands[3],
16028 : CONST0_RTX (V4SFmode), operands[4]));
16029 : DONE;
16030 : }
16031 : #undef DONE
16032 : #undef FAIL
16033 : }
16034 : static const uint8_t expand_encoding[] = {
16035 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16036 : 0x03, 0x01, 0x04
16037 : };
16038 : return complete_seq (expand_encoding, operands);
16039 : }
16040 :
16041 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6435 */
16042 : rtx
16043 : gen_cond_fmsv16hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16044 : {
16045 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16046 : start_sequence ();
16047 : {
16048 : #define FAIL _Pragma ("GCC error \"cond_fmsv16hf cannot FAIL\"") (void)0
16049 : #define DONE return end_sequence ()
16050 : #line 6446 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16051 : {
16052 : rtx tmp = gen_reg_rtx (V16HFmode);
16053 : emit_insn (gen_fmsv16hf4 (tmp,
16054 : operands[2],
16055 : operands[3],
16056 : operands[4]));
16057 : emit_move_insn (operands[0], gen_rtx_VEC_MERGE (V16HFmode,
16058 : tmp,
16059 : operands[5],
16060 : operands[1]));
16061 : DONE;
16062 : }
16063 : #undef DONE
16064 : #undef FAIL
16065 : }
16066 : static const uint8_t expand_encoding[] = {
16067 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x81,
16068 : 0x19, 0x6e, 0x01, 0x02, 0x01, 0x03, 0x3d, 0x6e,
16069 : 0x01, 0x04, 0x01, 0x05, 0x01, 0x01
16070 : };
16071 : return complete_seq (expand_encoding, operands);
16072 : }
16073 :
16074 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6511 */
16075 : rtx
16076 : gen_avx512vl_fnmadd_v16hf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16077 : {
16078 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16079 : start_sequence ();
16080 : {
16081 : #define FAIL return (end_sequence (), nullptr)
16082 : #define DONE return end_sequence ()
16083 : #line 6518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16084 : {
16085 : emit_insn (gen_fma_fnmadd_v16hf_maskz_1 (
16086 : operands[0], operands[1], operands[2], operands[3],
16087 : CONST0_RTX (V16HFmode), operands[4]));
16088 : DONE;
16089 : }
16090 : #undef DONE
16091 : #undef FAIL
16092 : }
16093 : static const uint8_t expand_encoding[] = {
16094 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16095 : 0x03, 0x01, 0x04
16096 : };
16097 : return complete_seq (expand_encoding, operands);
16098 : }
16099 :
16100 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6511 */
16101 : rtx
16102 : gen_avx512vl_fnmadd_v4sf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16103 : {
16104 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16105 : start_sequence ();
16106 : {
16107 : #define FAIL return (end_sequence (), nullptr)
16108 : #define DONE return end_sequence ()
16109 : #line 6518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16110 : {
16111 : emit_insn (gen_fma_fnmadd_v4sf_maskz_1_round (
16112 : operands[0], operands[1], operands[2], operands[3],
16113 : CONST0_RTX (V4SFmode), operands[4], operands[5]));
16114 : DONE;
16115 : }
16116 : #undef DONE
16117 : #undef FAIL
16118 : }
16119 : static const uint8_t expand_encoding[] = {
16120 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16121 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16122 : 0x81, 0x33
16123 : };
16124 : return complete_seq (expand_encoding, operands);
16125 : }
16126 :
16127 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6541 */
16128 : rtx
16129 : gen_cond_fnmav8sf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16130 : {
16131 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16132 : start_sequence ();
16133 : {
16134 : #define FAIL _Pragma ("GCC error \"cond_fnmav8sf cannot FAIL\"") (void)0
16135 : #define DONE return end_sequence ()
16136 : #line 6552 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16137 : {
16138 : rtx tmp = gen_reg_rtx (V8SFmode);
16139 : emit_insn (gen_fnmav8sf4 (tmp,
16140 : operands[2],
16141 : operands[3],
16142 : operands[4]));
16143 : emit_move_insn (operands[0], gen_rtx_VEC_MERGE (V8SFmode,
16144 : tmp,
16145 : operands[5],
16146 : operands[1]));
16147 : DONE;
16148 : }
16149 : #undef DONE
16150 : #undef FAIL
16151 : }
16152 : static const uint8_t expand_encoding[] = {
16153 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6f, 0x81,
16154 : 0x19, 0x6f, 0x3d, 0x6f, 0x01, 0x02, 0x01, 0x03,
16155 : 0x01, 0x04, 0x01, 0x05, 0x01, 0x01
16156 : };
16157 : return complete_seq (expand_encoding, operands);
16158 : }
16159 :
16160 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6618 */
16161 : rtx
16162 : gen_avx512fp16_fnmsub_v8hf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16163 : {
16164 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16165 : start_sequence ();
16166 : {
16167 : #define FAIL return (end_sequence (), nullptr)
16168 : #define DONE return end_sequence ()
16169 : #line 6625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16170 : {
16171 : emit_insn (gen_fma_fnmsub_v8hf_maskz_1_round (
16172 : operands[0], operands[1], operands[2], operands[3],
16173 : CONST0_RTX (V8HFmode), operands[4], operands[5]));
16174 : DONE;
16175 : }
16176 : #undef DONE
16177 : #undef FAIL
16178 : }
16179 : static const uint8_t expand_encoding[] = {
16180 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16181 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16182 : 0x81, 0x33
16183 : };
16184 : return complete_seq (expand_encoding, operands);
16185 : }
16186 :
16187 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6618 */
16188 : rtx
16189 : gen_avx512vl_fnmsub_v2df_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16190 : {
16191 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16192 : start_sequence ();
16193 : {
16194 : #define FAIL return (end_sequence (), nullptr)
16195 : #define DONE return end_sequence ()
16196 : #line 6625 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16197 : {
16198 : emit_insn (gen_fma_fnmsub_v2df_maskz_1 (
16199 : operands[0], operands[1], operands[2], operands[3],
16200 : CONST0_RTX (V2DFmode), operands[4]));
16201 : DONE;
16202 : }
16203 : #undef DONE
16204 : #undef FAIL
16205 : }
16206 : static const uint8_t expand_encoding[] = {
16207 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16208 : 0x03, 0x01, 0x04
16209 : };
16210 : return complete_seq (expand_encoding, operands);
16211 : }
16212 :
16213 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6649 */
16214 : rtx
16215 : gen_cond_fnmsv4df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16216 : {
16217 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16218 : start_sequence ();
16219 : {
16220 : #define FAIL _Pragma ("GCC error \"cond_fnmsv4df cannot FAIL\"") (void)0
16221 : #define DONE return end_sequence ()
16222 : #line 6661 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16223 : {
16224 : rtx tmp = gen_reg_rtx (V4DFmode);
16225 : emit_insn (gen_fnmsv4df4 (tmp,
16226 : operands[2],
16227 : operands[3],
16228 : operands[4]));
16229 : emit_move_insn (operands[0], gen_rtx_VEC_MERGE (V4DFmode,
16230 : tmp,
16231 : operands[5],
16232 : operands[1]));
16233 : DONE;
16234 : }
16235 : #undef DONE
16236 : #undef FAIL
16237 : }
16238 : static const uint8_t expand_encoding[] = {
16239 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x70, 0x81,
16240 : 0x19, 0x70, 0x3d, 0x70, 0x01, 0x02, 0x01, 0x03,
16241 : 0x3d, 0x70, 0x01, 0x04, 0x01, 0x05, 0x01, 0x01
16242 : };
16243 : return complete_seq (expand_encoding, operands);
16244 : }
16245 :
16246 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6730 */
16247 : rtx
16248 : gen_vec_fmsubaddv16sf4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16249 : {
16250 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16251 : static const uint8_t expand_encoding[] = {
16252 : 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x03, 0x01, 0x01,
16253 : 0x01, 0x02, 0x3d, 0x74, 0x01, 0x03, 0x81, 0x06
16254 : };
16255 : return expand_rtx (expand_encoding, operands);
16256 : }
16257 :
16258 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6740 */
16259 : rtx
16260 : gen_fmaddsub_v4df (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16261 : {
16262 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16263 : static const uint8_t expand_encoding[] = {
16264 : 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x03, 0x01, 0x01,
16265 : 0x01, 0x02, 0x01, 0x03, 0x81, 0x06
16266 : };
16267 : return expand_rtx (expand_encoding, operands);
16268 : }
16269 :
16270 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6749 */
16271 : rtx
16272 : gen_avx512vl_fmaddsub_v8sf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16273 : {
16274 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16275 : start_sequence ();
16276 : {
16277 : #define FAIL return (end_sequence (), nullptr)
16278 : #define DONE return end_sequence ()
16279 : #line 6756 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16280 : {
16281 : emit_insn (gen_fma_fmaddsub_v8sf_maskz_1 (
16282 : operands[0], operands[1], operands[2], operands[3],
16283 : CONST0_RTX (V8SFmode), operands[4]));
16284 : DONE;
16285 : }
16286 : #undef DONE
16287 : #undef FAIL
16288 : }
16289 : static const uint8_t expand_encoding[] = {
16290 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16291 : 0x03, 0x01, 0x04
16292 : };
16293 : return complete_seq (expand_encoding, operands);
16294 : }
16295 :
16296 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6749 */
16297 : rtx
16298 : gen_avx512vl_fmaddsub_v2df_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16299 : {
16300 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16301 : start_sequence ();
16302 : {
16303 : #define FAIL return (end_sequence (), nullptr)
16304 : #define DONE return end_sequence ()
16305 : #line 6756 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16306 : {
16307 : emit_insn (gen_fma_fmaddsub_v2df_maskz_1 (
16308 : operands[0], operands[1], operands[2], operands[3],
16309 : CONST0_RTX (V2DFmode), operands[4]));
16310 : DONE;
16311 : }
16312 : #undef DONE
16313 : #undef FAIL
16314 : }
16315 : static const uint8_t expand_encoding[] = {
16316 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16317 : 0x03, 0x01, 0x04
16318 : };
16319 : return complete_seq (expand_encoding, operands);
16320 : }
16321 :
16322 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6763 */
16323 : rtx
16324 : gen_avx512f_fmsubadd_v16sf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16325 : {
16326 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16327 : start_sequence ();
16328 : {
16329 : #define FAIL return (end_sequence (), nullptr)
16330 : #define DONE return end_sequence ()
16331 : #line 6770 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16332 : {
16333 : emit_insn (gen_fma_fmsubadd_v16sf_maskz_1_round (
16334 : operands[0], operands[1], operands[2], operands[3],
16335 : CONST0_RTX (V16SFmode), operands[4], operands[5]));
16336 : DONE;
16337 : }
16338 : #undef DONE
16339 : #undef FAIL
16340 : }
16341 : static const uint8_t expand_encoding[] = {
16342 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16343 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16344 : 0x81, 0x33
16345 : };
16346 : return complete_seq (expand_encoding, operands);
16347 : }
16348 :
16349 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6920 */
16350 : rtx
16351 : gen_fmai_vmfmadd_v8hf (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16352 : {
16353 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16354 : static const uint8_t expand_encoding[] = {
16355 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81, 0x19,
16356 : 0x6a, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
16357 : 0x01, 0x27, 0x01
16358 : };
16359 : return expand_rtx (expand_encoding, operands);
16360 : }
16361 :
16362 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6920 */
16363 : rtx
16364 : gen_fmai_vmfmadd_v2df_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16365 : {
16366 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16367 : static const uint8_t expand_encoding[] = {
16368 : 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x02, 0x81, 0x09,
16369 : 0x6c, 0x81, 0x19, 0x6c, 0x01, 0x01, 0x01, 0x02,
16370 : 0x01, 0x03, 0x01, 0x01, 0x27, 0x01, 0x01, 0x04,
16371 : 0x81, 0x33
16372 : };
16373 : return expand_rtx (expand_encoding, operands);
16374 : }
16375 :
16376 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:6943 */
16377 : rtx
16378 : gen_fmai_vmfnmadd_v4sf_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16379 : {
16380 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16381 : static const uint8_t expand_encoding[] = {
16382 : 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x02, 0x81, 0x09,
16383 : 0x6b, 0x81, 0x19, 0x6b, 0x3d, 0x6b, 0x01, 0x01,
16384 : 0x01, 0x02, 0x01, 0x03, 0x01, 0x01, 0x27, 0x01,
16385 : 0x01, 0x04, 0x81, 0x33
16386 : };
16387 : return expand_rtx (expand_encoding, operands);
16388 : }
16389 :
16390 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7078 */
16391 : rtx
16392 : gen_avx512f_vmfmadd_v4sf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16393 : {
16394 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16395 : start_sequence ();
16396 : {
16397 : #define FAIL return (end_sequence (), nullptr)
16398 : #define DONE return end_sequence ()
16399 : #line 7085 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16400 : {
16401 : emit_insn (gen_avx512f_vmfmadd_v4sf_maskz_1 (
16402 : operands[0], operands[1], operands[2], operands[3],
16403 : CONST0_RTX (V4SFmode), operands[4]));
16404 : DONE;
16405 : }
16406 : #undef DONE
16407 : #undef FAIL
16408 : }
16409 : static const uint8_t expand_encoding[] = {
16410 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16411 : 0x03, 0x01, 0x04
16412 : };
16413 : return complete_seq (expand_encoding, operands);
16414 : }
16415 :
16416 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7213 */
16417 : rtx
16418 : gen_avx512f_vmfnmadd_v2df_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16419 : {
16420 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16421 : start_sequence ();
16422 : {
16423 : #define FAIL return (end_sequence (), nullptr)
16424 : #define DONE return end_sequence ()
16425 : #line 7220 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16426 : {
16427 : emit_insn (gen_avx512f_vmfnmadd_v2df_maskz_1_round (
16428 : operands[0], operands[1], operands[2], operands[3],
16429 : CONST0_RTX (V2DFmode), operands[4], operands[5]));
16430 : DONE;
16431 : }
16432 : #undef DONE
16433 : #undef FAIL
16434 : }
16435 : static const uint8_t expand_encoding[] = {
16436 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16437 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16438 : 0x81, 0x33
16439 : };
16440 : return complete_seq (expand_encoding, operands);
16441 : }
16442 :
16443 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7465 */
16444 : rtx
16445 : gen_avx512vl_fmaddc_v16hf_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
16446 : {
16447 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
16448 : start_sequence ();
16449 : {
16450 : #define FAIL return (end_sequence (), nullptr)
16451 : #define DONE return end_sequence ()
16452 : #line 7472 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16453 : {
16454 : emit_insn (gen_fma_fmaddc_v16hf_maskz_1_round (
16455 : operands[0], operands[1], operands[2], operands[3],
16456 : CONST0_RTX (V16HFmode), operands[4], operands[5]));
16457 : DONE;
16458 : }
16459 : #undef DONE
16460 : #undef FAIL
16461 : }
16462 : static const uint8_t expand_encoding[] = {
16463 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16464 : 0x03, 0x01, 0x04, 0x1a, 0x00, 0x01, 0x01, 0x05,
16465 : 0x81, 0x33
16466 : };
16467 : return complete_seq (expand_encoding, operands);
16468 : }
16469 :
16470 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7511 */
16471 : rtx
16472 : gen_avx512bw_fcmaddc_v32hf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16473 : {
16474 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16475 : start_sequence ();
16476 : {
16477 : #define FAIL return (end_sequence (), nullptr)
16478 : #define DONE return end_sequence ()
16479 : #line 7518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16480 : {
16481 : emit_insn (gen_fma_fcmaddc_v32hf_maskz_1 (
16482 : operands[0], operands[1], operands[2], operands[3],
16483 : CONST0_RTX (V32HFmode), operands[4]));
16484 : DONE;
16485 : }
16486 : #undef DONE
16487 : #undef FAIL
16488 : }
16489 : static const uint8_t expand_encoding[] = {
16490 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16491 : 0x03, 0x01, 0x04
16492 : };
16493 : return complete_seq (expand_encoding, operands);
16494 : }
16495 :
16496 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7511 */
16497 : rtx
16498 : gen_avx512fp16_fcmaddc_v8hf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16499 : {
16500 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16501 : start_sequence ();
16502 : {
16503 : #define FAIL return (end_sequence (), nullptr)
16504 : #define DONE return end_sequence ()
16505 : #line 7518 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16506 : {
16507 : emit_insn (gen_fma_fcmaddc_v8hf_maskz_1 (
16508 : operands[0], operands[1], operands[2], operands[3],
16509 : CONST0_RTX (V8HFmode), operands[4]));
16510 : DONE;
16511 : }
16512 : #undef DONE
16513 : #undef FAIL
16514 : }
16515 : static const uint8_t expand_encoding[] = {
16516 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16517 : 0x03, 0x01, 0x04
16518 : };
16519 : return complete_seq (expand_encoding, operands);
16520 : }
16521 :
16522 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7564 */
16523 : extern rtx_insn *gen_split_1578 (rtx_insn *, rtx *);
16524 : rtx_insn *
16525 : gen_split_1578 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
16526 : {
16527 : if (dump_file)
16528 : fprintf (dump_file, "Splitting with gen_split_1578 (sse.md:7564)\n");
16529 : start_sequence ();
16530 : static const uint8_t expand_encoding[] = {
16531 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x03, 0x01,
16532 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x5c
16533 : };
16534 : return complete_seq (expand_encoding, operands);
16535 : }
16536 :
16537 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7612 */
16538 : extern rtx_insn *gen_split_1588 (rtx_insn *, rtx *);
16539 : rtx_insn *
16540 : gen_split_1588 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
16541 : {
16542 : if (dump_file)
16543 : fprintf (dump_file, "Splitting with gen_split_1588 (sse.md:7612)\n");
16544 : start_sequence ();
16545 : #define FAIL return (end_sequence (), nullptr)
16546 : #define DONE return end_sequence ()
16547 : #line 7624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16548 : {
16549 : if (!MEM_P (operands[1]))
16550 : operands[1] = force_reg (V8HFmode, operands[1]);
16551 : if (!MEM_P (operands[3]))
16552 : operands[3] = force_reg (V8HFmode, operands[3]);
16553 : operands[1] = lowpart_subreg (V4SFmode, operands[1], V8HFmode);
16554 : operands[3] = lowpart_subreg (V4SFmode, operands[3], V8HFmode);
16555 : rtx dest = gen_reg_rtx (V4SFmode);
16556 : emit_insn (gen_fma_fmaddc_v4sf_pair (dest, operands[1],
16557 : operands[2], operands[3]));
16558 : emit_move_insn (operands[0],
16559 : lowpart_subreg (V8HFmode, dest, V4SFmode));
16560 : DONE;
16561 : }
16562 : #undef DONE
16563 : #undef FAIL
16564 : static const uint8_t expand_encoding[] = {
16565 : 0x01, 0x27, 0x00
16566 : };
16567 : return complete_seq (expand_encoding, operands);
16568 : }
16569 :
16570 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7768 */
16571 : rtx
16572 : gen_avx512fp16_fcmaddcsh_v8hf_mask1 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
16573 : {
16574 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
16575 : start_sequence ();
16576 : {
16577 : #define FAIL return (end_sequence (), nullptr)
16578 : #define DONE return end_sequence ()
16579 : #line 7775 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16580 : {
16581 : rtx op0, op1, dest;
16582 :
16583 : if (0)
16584 : emit_insn (gen_avx512fp16_fcmaddcsh_v8hf_mask (
16585 : operands[0], operands[1], operands[2], operands[3],
16586 : operands[4]));
16587 : else
16588 : emit_insn (gen_avx512fp16_fcmaddcsh_v8hf_mask (operands[0],
16589 : operands[1], operands[2], operands[3], operands[4]));
16590 :
16591 : op0 = lowpart_subreg (V4SFmode, force_reg (V8HFmode, operands[0]),
16592 : V8HFmode);
16593 : if (!MEM_P (operands[1]))
16594 : operands[1] = force_reg (V8HFmode, operands[1]);
16595 : op1 = lowpart_subreg (V4SFmode, operands[1], V8HFmode);
16596 : dest = gen_reg_rtx (V4SFmode);
16597 : emit_insn (gen_avx512f_movsf_mask (dest, op1, op0, op1, operands[4]));
16598 : emit_move_insn (operands[0], lowpart_subreg (V8HFmode, dest,
16599 : V4SFmode));
16600 : DONE;
16601 : }
16602 : #undef DONE
16603 : #undef FAIL
16604 : }
16605 : static const uint8_t expand_encoding[] = {
16606 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
16607 : 0x03, 0x01, 0x04
16608 : };
16609 : return complete_seq (expand_encoding, operands);
16610 : }
16611 :
16612 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:7958 */
16613 : rtx
16614 : gen_vec_unpacks_hi_v32hf (const rtx operand0, const rtx operand1)
16615 : {
16616 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16617 : start_sequence ();
16618 : {
16619 : #define FAIL return (end_sequence (), nullptr)
16620 : #define DONE return end_sequence ()
16621 : #line 7962 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16622 : {
16623 : rtx tem = operands[1];
16624 : rtx (*gen) (rtx, rtx);
16625 : if (V32HFmode != V8HFmode)
16626 : {
16627 : tem = gen_reg_rtx (V16HFmode);
16628 : emit_insn (gen_vec_extract_hi_v32hf (tem,
16629 : operands[1]));
16630 : gen = gen_extendv16hfv16sf2;
16631 : }
16632 : else
16633 : {
16634 : tem = gen_reg_rtx (V8HFmode);
16635 : rtvec tmp = rtvec_alloc (8);
16636 : for (int i = 0; i != 8; i++)
16637 : RTVEC_ELT (tmp, i) = GEN_INT ((i + 4) % 8);
16638 :
16639 : rtx selector = gen_rtx_PARALLEL (VOIDmode, tmp);
16640 : emit_move_insn (tem,
16641 : gen_rtx_VEC_SELECT (V8HFmode, operands[1], selector));
16642 : gen = gen_avx512fp16_float_extend_phv4sf2;
16643 : }
16644 :
16645 : emit_insn (gen (operands[0], tem));
16646 : DONE;
16647 : }
16648 : #undef DONE
16649 : #undef FAIL
16650 : }
16651 : static const uint8_t expand_encoding[] = {
16652 : 0x02, 0x01, 0x00, 0x01, 0x01
16653 : };
16654 : return complete_seq (expand_encoding, operands);
16655 : }
16656 :
16657 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8046 */
16658 : rtx
16659 : gen_avx512fp16_floatv4siv4hf2 (const rtx operand0, const rtx operand1)
16660 : {
16661 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
16662 : start_sequence ();
16663 : {
16664 : #define FAIL return (end_sequence (), nullptr)
16665 : #define DONE return end_sequence ()
16666 : #line 8052 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16667 : operands[2] = CONST0_RTX (V4HFmode);
16668 : #undef DONE
16669 : #undef FAIL
16670 : }
16671 : static const uint8_t expand_encoding[] = {
16672 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6a, 0x73,
16673 : 0x66, 0x01, 0x01, 0x01, 0x02
16674 : };
16675 : return complete_seq (expand_encoding, operands);
16676 : }
16677 :
16678 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8065 */
16679 : rtx
16680 : gen_avx512fp16_vcvtuqq2ph_v4di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
16681 : {
16682 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
16683 : start_sequence ();
16684 : {
16685 : #define FAIL return (end_sequence (), nullptr)
16686 : #define DONE return end_sequence ()
16687 : #line 8076 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16688 : operands[4] = CONST0_RTX (V4HFmode);
16689 : #undef DONE
16690 : #undef FAIL
16691 : }
16692 : static const uint8_t expand_encoding[] = {
16693 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6a, 0x81,
16694 : 0x09, 0x66, 0x75, 0x66, 0x01, 0x01, 0x81, 0x0a,
16695 : 0x66, 0x01, 0x02, 0x17, 0x00, 0x04, 0x27, 0x00,
16696 : 0x27, 0x01, 0x27, 0x02, 0x27, 0x03, 0x01, 0x03,
16697 : 0x01, 0x04
16698 : };
16699 : return complete_seq (expand_encoding, operands);
16700 : }
16701 :
16702 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8225 */
16703 : rtx
16704 : gen_fixuns_truncv16hfv16si2 (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, 0x76, 0x5b, 0x01, 0x01
16709 : };
16710 : return expand_rtx (expand_encoding, operands);
16711 : }
16712 :
16713 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8389 */
16714 : rtx
16715 : gen_extendv16hfv16sf2 (const rtx operand0, const rtx operand1)
16716 : {
16717 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16718 : static const uint8_t expand_encoding[] = {
16719 : 0x1f, 0x01, 0x00, 0x71, 0x74, 0x01, 0x01
16720 : };
16721 : return expand_rtx (expand_encoding, operands);
16722 : }
16723 :
16724 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8444 */
16725 : rtx
16726 : gen_extendv2hfv2df2 (const rtx operand0, const rtx operand1)
16727 : {
16728 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16729 : start_sequence ();
16730 : {
16731 : #define FAIL return (end_sequence (), nullptr)
16732 : #define DONE return end_sequence ()
16733 : #line 8449 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16734 : {
16735 : if (!MEM_P (operands[1]))
16736 : {
16737 : operands[1] = lowpart_subreg (V8HFmode,
16738 : force_reg (V2HFmode, operands[1]),
16739 : V2HFmode);
16740 : emit_insn (gen_avx512fp16_float_extend_phv2df2
16741 : (operands[0], operands[1]));
16742 : DONE;
16743 : }
16744 : }
16745 : #undef DONE
16746 : #undef FAIL
16747 : }
16748 : static const uint8_t expand_encoding[] = {
16749 : 0x01, 0x1f, 0x01, 0x00, 0x71, 0x6c, 0x01, 0x01
16750 : };
16751 : return complete_seq (expand_encoding, operands);
16752 : }
16753 :
16754 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:8722 */
16755 : extern rtx_insn *gen_split_1592 (rtx_insn *, rtx *);
16756 : rtx_insn *
16757 : gen_split_1592 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
16758 : {
16759 : if (dump_file)
16760 : fprintf (dump_file, "Splitting with gen_split_1592 (sse.md:8722)\n");
16761 : start_sequence ();
16762 : #define FAIL return (end_sequence (), nullptr)
16763 : #define DONE return end_sequence ()
16764 : #line 8738 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16765 : {
16766 : rtx op2 = lowpart_subreg (V4SImode, operands[2],
16767 : GET_MODE (operands[2]));
16768 : /* Generate SSE2 cvtdq2ps. */
16769 : emit_insn (gen_floatv4siv4sf2 (operands[3], op2));
16770 :
16771 : /* Merge operands[3] with operands[0]. */
16772 : rtx mask, op1;
16773 : if (TARGET_AVX)
16774 : {
16775 : mask = gen_rtx_PARALLEL (VOIDmode,
16776 : gen_rtvec (4, GEN_INT (0), GEN_INT (1),
16777 : GEN_INT (6), GEN_INT (7)));
16778 : op1 = gen_rtx_VEC_CONCAT (V8SFmode, operands[3], operands[1]);
16779 : op2 = gen_rtx_VEC_SELECT (V4SFmode, op1, mask);
16780 : emit_insn (gen_rtx_SET (operands[0], op2));
16781 : }
16782 : else
16783 : {
16784 : /* NB: SSE can only concatenate OP0 and OP3 to OP0. */
16785 : mask = gen_rtx_PARALLEL (VOIDmode,
16786 : gen_rtvec (4, GEN_INT (2), GEN_INT (3),
16787 : GEN_INT (4), GEN_INT (5)));
16788 : op1 = gen_rtx_VEC_CONCAT (V8SFmode, operands[0], operands[3]);
16789 : op2 = gen_rtx_VEC_SELECT (V4SFmode, op1, mask);
16790 : emit_insn (gen_rtx_SET (operands[0], op2));
16791 :
16792 : /* Swap bits 0:63 with bits 64:127. */
16793 : mask = gen_rtx_PARALLEL (VOIDmode,
16794 : gen_rtvec (4, GEN_INT (2), GEN_INT (3),
16795 : GEN_INT (0), GEN_INT (1)));
16796 : rtx dest = lowpart_subreg (V4SImode, operands[0],
16797 : GET_MODE (operands[0]));
16798 : op1 = gen_rtx_VEC_SELECT (V4SImode, dest, mask);
16799 : emit_insn (gen_rtx_SET (dest, op1));
16800 : }
16801 : DONE;
16802 : }
16803 : #undef DONE
16804 : #undef FAIL
16805 : static const uint8_t expand_encoding[] = {
16806 : 0x01, 0x27, 0x00
16807 : };
16808 : return complete_seq (expand_encoding, operands);
16809 : }
16810 :
16811 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:9631 */
16812 : rtx
16813 : gen_vec_packu_float_v16si (const rtx operand0, const rtx operand1, const rtx operand2)
16814 : {
16815 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
16816 : start_sequence ();
16817 : {
16818 : #define FAIL return (end_sequence (), nullptr)
16819 : #define DONE return end_sequence ()
16820 : #line 9637 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16821 : {
16822 : rtx r1 = gen_reg_rtx (V16HFmode);
16823 : rtx r2 = gen_reg_rtx (V16HFmode);
16824 : rtx (*gen) (rtx, rtx);
16825 :
16826 : if (V16SImode == V4SImode)
16827 : gen = gen_avx512fp16_floatunsv4siv4hf2;
16828 : else
16829 : gen = gen_floatunsv16siv16hf2;
16830 : emit_insn (gen (r1, operands[1]));
16831 : emit_insn (gen (r2, operands[2]));
16832 : if (V16SImode == V4SImode)
16833 : emit_insn (gen_sse_movlhps_v8hf (operands[0], r1, r2));
16834 : else
16835 : emit_insn (gen_avx_vec_concatv32hf (operands[0],
16836 : r1, r2));
16837 : DONE;
16838 : }
16839 : #undef DONE
16840 : #undef FAIL
16841 : }
16842 : static const uint8_t expand_encoding[] = {
16843 : 0x03, 0x01, 0x00, 0x75, 0x73, 0x01, 0x01, 0x01,
16844 : 0x02
16845 : };
16846 : return complete_seq (expand_encoding, operands);
16847 : }
16848 :
16849 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10160 */
16850 : rtx
16851 : gen_vec_unpack_sfix_trunc_lo_v16sf (const rtx operand0, const rtx operand1)
16852 : {
16853 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16854 : start_sequence ();
16855 : {
16856 : #define FAIL return (end_sequence (), nullptr)
16857 : #define DONE return end_sequence ()
16858 : #line 10165 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16859 : {
16860 : rtx tem = operands[1];
16861 : rtx (*gen) (rtx, rtx);
16862 :
16863 : if (V16SFmode != V4SFmode)
16864 : {
16865 : tem = gen_reg_rtx (V8SFmode);
16866 : emit_insn (gen_vec_extract_lo_v16sf (tem,
16867 : operands[1]));
16868 : gen = gen_fix_truncv8sfv8di2;
16869 : }
16870 : else
16871 : gen = gen_avx512dq_fix_truncv2sfv2di2;
16872 :
16873 : emit_insn (gen (operands[0], tem));
16874 : DONE;
16875 : }
16876 : #undef DONE
16877 : #undef FAIL
16878 : }
16879 : static const uint8_t expand_encoding[] = {
16880 : 0x02, 0x01, 0x00, 0x74, 0x5c, 0x01, 0x01
16881 : };
16882 : return complete_seq (expand_encoding, operands);
16883 : }
16884 :
16885 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10183 */
16886 : rtx
16887 : gen_vec_unpack_sfix_trunc_hi_v4sf (const rtx operand0, const rtx operand1)
16888 : {
16889 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16890 : start_sequence ();
16891 : {
16892 : #define FAIL return (end_sequence (), nullptr)
16893 : #define DONE return end_sequence ()
16894 : #line 10188 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16895 : {
16896 : rtx tem;
16897 : rtx (*gen) (rtx, rtx);
16898 :
16899 : if (V4SFmode != V4SFmode)
16900 : {
16901 : tem = gen_reg_rtx (V2SFmode);
16902 : emit_insn (gen_vec_extract_hi_v8sf (tem,
16903 : operands[1]));
16904 : gen = gen_fix_truncv2sfv2di2;
16905 : }
16906 : else
16907 : {
16908 : tem = gen_reg_rtx (V4SFmode);
16909 : emit_insn (gen_avx_vpermilv4sf (tem, operands[1], GEN_INT (0x4e)));
16910 : gen = gen_avx512dq_fix_truncv2sfv2di2;
16911 : }
16912 :
16913 : emit_insn (gen (operands[0], tem));
16914 : DONE;
16915 : }
16916 : #undef DONE
16917 : #undef FAIL
16918 : }
16919 : static const uint8_t expand_encoding[] = {
16920 : 0x02, 0x01, 0x00, 0x74, 0x52, 0x01, 0x01
16921 : };
16922 : return complete_seq (expand_encoding, operands);
16923 : }
16924 :
16925 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10232 */
16926 : rtx
16927 : gen_vec_unpack_sfix_trunc_hi_v16hf (const rtx operand0, const rtx operand1)
16928 : {
16929 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
16930 : start_sequence ();
16931 : {
16932 : #define FAIL return (end_sequence (), nullptr)
16933 : #define DONE return end_sequence ()
16934 : #line 10237 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16935 : {
16936 : rtx tem = operands[1];
16937 : rtx (*gen) (rtx, rtx);
16938 : if (V16HFmode != V8HFmode)
16939 : {
16940 : tem = gen_reg_rtx (V8HFmode);
16941 : emit_insn (gen_vec_extract_hi_v16hf (tem,
16942 : operands[1]));
16943 : gen = gen_fix_truncv8hfv8si2;
16944 : }
16945 : else
16946 : {
16947 : tem = gen_reg_rtx (V8HFmode);
16948 : rtvec tmp = rtvec_alloc (8);
16949 : for (int i = 0; i != 8; i++)
16950 : RTVEC_ELT (tmp, i) = GEN_INT ((i + 4) % 8);
16951 :
16952 : rtx selector = gen_rtx_PARALLEL (VOIDmode, tmp);
16953 : emit_move_insn (tem,
16954 : gen_rtx_VEC_SELECT (V8HFmode, operands[1], selector));
16955 : gen = gen_avx512fp16_fix_truncv8si2;
16956 : }
16957 :
16958 : emit_insn (gen (operands[0], tem));
16959 : DONE;
16960 : }
16961 : #undef DONE
16962 : #undef FAIL
16963 : }
16964 : static const uint8_t expand_encoding[] = {
16965 : 0x02, 0x01, 0x00, 0x74, 0x56, 0x01, 0x01
16966 : };
16967 : return complete_seq (expand_encoding, operands);
16968 : }
16969 :
16970 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10640 */
16971 : rtx
16972 : gen_avx512vl_cvtmask2wv16hi (const rtx operand0, const rtx operand1)
16973 : {
16974 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1 };
16975 : start_sequence ();
16976 : {
16977 : #define FAIL return (end_sequence (), nullptr)
16978 : #define DONE return end_sequence ()
16979 : #line 10647 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
16980 : {
16981 : operands[2] = CONSTM1_RTX (V16HImode);
16982 : operands[3] = CONST0_RTX (V16HImode);
16983 : }
16984 : #undef DONE
16985 : #undef FAIL
16986 : }
16987 : static const uint8_t expand_encoding[] = {
16988 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x01,
16989 : 0x02, 0x01, 0x03, 0x01, 0x01
16990 : };
16991 : return complete_seq (expand_encoding, operands);
16992 : }
16993 :
16994 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10675 */
16995 : extern rtx_insn *gen_split_1598 (rtx_insn *, rtx *);
16996 : rtx_insn *
16997 : gen_split_1598 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
16998 : {
16999 : if (dump_file)
17000 : fprintf (dump_file, "Splitting with gen_split_1598 (sse.md:10675)\n");
17001 : start_sequence ();
17002 : #define FAIL return (end_sequence (), nullptr)
17003 : #define DONE return end_sequence ()
17004 : #line 10695 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17005 : operands[4] = CONST0_RTX (V4SImode);
17006 : #undef DONE
17007 : #undef FAIL
17008 : static const uint8_t expand_encoding[] = {
17009 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x04, 0x17, 0x00,
17010 : 0x02, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x01,
17011 : 0x02, 0x01, 0x03, 0x01, 0x01, 0x1a, 0x00, 0x01,
17012 : 0x01, 0x00, 0x27
17013 : };
17014 : return complete_seq (expand_encoding, operands);
17015 : }
17016 :
17017 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10701 */
17018 : extern rtx_insn *gen_split_1609 (rtx_insn *, rtx *);
17019 : rtx_insn *
17020 : gen_split_1609 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17021 : {
17022 : if (dump_file)
17023 : fprintf (dump_file, "Splitting with gen_split_1609 (sse.md:10701)\n");
17024 : start_sequence ();
17025 : #define FAIL return (end_sequence (), nullptr)
17026 : #define DONE return end_sequence ()
17027 : #line 10717 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17028 : operands[4] = gen_reg_rtx (QImode);
17029 : #undef DONE
17030 : #undef FAIL
17031 : static const uint8_t expand_encoding[] = {
17032 : 0x02, 0x1f, 0x01, 0x04, 0x4c, 0x0f, 0x01, 0x01,
17033 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x01, 0x03,
17034 : 0x01, 0x02, 0x01, 0x04
17035 : };
17036 : return complete_seq (expand_encoding, operands);
17037 : }
17038 :
17039 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10839 */
17040 : rtx
17041 : gen_vec_unpacks_lo_v8sf (const rtx operand0, const rtx operand1)
17042 : {
17043 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
17044 : static const uint8_t expand_encoding[] = {
17045 : 0x1f, 0x01, 0x00, 0x71, 0x70, 0x81, 0x0a, 0x6b,
17046 : 0x01, 0x01, 0x17, 0x00, 0x04, 0x27, 0x00, 0x27,
17047 : 0x01, 0x27, 0x02, 0x27, 0x03
17048 : };
17049 : return expand_rtx (expand_encoding, operands);
17050 : }
17051 :
17052 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10865 */
17053 : rtx
17054 : gen_vec_unpacks_float_lo_v8hi (const rtx operand0, const rtx operand1)
17055 : {
17056 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
17057 : start_sequence ();
17058 : {
17059 : #define FAIL return (end_sequence (), nullptr)
17060 : #define DONE return end_sequence ()
17061 : #line 10869 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17062 : {
17063 : rtx tmp = gen_reg_rtx (V4SImode);
17064 :
17065 : emit_insn (gen_vec_unpacks_lo_v8hi (tmp, operands[1]));
17066 : emit_insn (gen_rtx_SET (operands[0],
17067 : gen_rtx_FLOAT (V4SFmode, tmp)));
17068 : DONE;
17069 : }
17070 : #undef DONE
17071 : #undef FAIL
17072 : }
17073 : static const uint8_t expand_encoding[] = {
17074 : 0x02, 0x01, 0x00, 0x01, 0x01
17075 : };
17076 : return complete_seq (expand_encoding, operands);
17077 : }
17078 :
17079 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:10938 */
17080 : rtx
17081 : gen_vec_unpacks_float_lo_v8si (const rtx operand0, const rtx operand1)
17082 : {
17083 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
17084 : static const uint8_t expand_encoding[] = {
17085 : 0x1f, 0x01, 0x00, 0x73, 0x70, 0x81, 0x0a, 0x51,
17086 : 0x01, 0x01, 0x17, 0x00, 0x04, 0x27, 0x00, 0x27,
17087 : 0x01, 0x27, 0x02, 0x27, 0x03
17088 : };
17089 : return expand_rtx (expand_encoding, operands);
17090 : }
17091 :
17092 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11135 */
17093 : rtx
17094 : gen_vec_pack_trunc_v8df (const rtx operand0, const rtx operand1, const rtx operand2)
17095 : {
17096 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17097 : start_sequence ();
17098 : {
17099 : #define FAIL return (end_sequence (), nullptr)
17100 : #define DONE return end_sequence ()
17101 : #line 11147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17102 : {
17103 : operands[3] = gen_reg_rtx (V8SFmode);
17104 : operands[4] = gen_reg_rtx (V8SFmode);
17105 : }
17106 : #undef DONE
17107 : #undef FAIL
17108 : }
17109 : static const uint8_t expand_encoding[] = {
17110 : 0x03, 0x1f, 0x01, 0x03, 0x72, 0x6f, 0x01, 0x01,
17111 : 0x1f, 0x01, 0x04, 0x72, 0x6f, 0x01, 0x02, 0x1f,
17112 : 0x01, 0x00, 0x81, 0x0b, 0x74, 0x01, 0x03, 0x01,
17113 : 0x04
17114 : };
17115 : return complete_seq (expand_encoding, operands);
17116 : }
17117 :
17118 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11152 */
17119 : rtx
17120 : gen_vec_pack_trunc_v4sf (const rtx operand0, const rtx operand1, const rtx operand2)
17121 : {
17122 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17123 : start_sequence ();
17124 : {
17125 : #define FAIL return (end_sequence (), nullptr)
17126 : #define DONE return end_sequence ()
17127 : #line 11157 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17128 : {
17129 : rtx r1 = gen_reg_rtx (V8HFmode);
17130 : rtx r2 = gen_reg_rtx (V8HFmode);
17131 : rtx (*gen) (rtx, rtx);
17132 :
17133 : if (V4SFmode == V4SFmode)
17134 : gen = gen_avx512fp16_truncv4sfv4hf2;
17135 : else
17136 : gen = gen_truncv4sfv4hf2;
17137 : emit_insn (gen (r1, operands[1]));
17138 : emit_insn (gen (r2, operands[2]));
17139 : if (V4SFmode == V4SFmode)
17140 : emit_insn (gen_sse_movlhps_v8hf (operands[0], r1, r2));
17141 : else
17142 : emit_insn (gen_avx_vec_concatv16hf (operands[0],
17143 : r1, r2));
17144 : DONE;
17145 :
17146 : }
17147 : #undef DONE
17148 : #undef FAIL
17149 : }
17150 : static const uint8_t expand_encoding[] = {
17151 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17152 : };
17153 : return complete_seq (expand_encoding, operands);
17154 : }
17155 :
17156 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:11354 */
17157 : rtx
17158 : gen_vec_pack_sfix_v2df (const rtx operand0, const rtx operand1, const rtx operand2)
17159 : {
17160 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17161 : start_sequence ();
17162 : {
17163 : #define FAIL return (end_sequence (), nullptr)
17164 : #define DONE return end_sequence ()
17165 : #line 11359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17166 : {
17167 : rtx tmp0, tmp1, tmp2;
17168 :
17169 : if (TARGET_AVX && !TARGET_PREFER_AVX128 && optimize_insn_for_speed_p ())
17170 : {
17171 : tmp0 = gen_reg_rtx (V4DFmode);
17172 : tmp1 = force_reg (V2DFmode, operands[1]);
17173 :
17174 : emit_insn (gen_avx_vec_concatv4df (tmp0, tmp1, operands[2]));
17175 : emit_insn (gen_avx_cvtpd2dq256 (operands[0], tmp0));
17176 : }
17177 : else
17178 : {
17179 : tmp0 = gen_reg_rtx (V4SImode);
17180 : tmp1 = gen_reg_rtx (V4SImode);
17181 : tmp2 = gen_reg_rtx (V2DImode);
17182 :
17183 : emit_insn (gen_sse2_cvtpd2dq (tmp0, operands[1]));
17184 : emit_insn (gen_sse2_cvtpd2dq (tmp1, operands[2]));
17185 : emit_insn (gen_vec_interleave_lowv2di (tmp2,
17186 : gen_lowpart (V2DImode, tmp0),
17187 : gen_lowpart (V2DImode, tmp1)));
17188 : emit_move_insn (operands[0], gen_lowpart (V4SImode, tmp2));
17189 : }
17190 : DONE;
17191 : }
17192 : #undef DONE
17193 : #undef FAIL
17194 : }
17195 : static const uint8_t expand_encoding[] = {
17196 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17197 : };
17198 : return complete_seq (expand_encoding, operands);
17199 : }
17200 :
17201 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12404 */
17202 : extern rtx_insn *gen_split_1615 (rtx_insn *, rtx *);
17203 : rtx_insn *
17204 : gen_split_1615 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17205 : {
17206 : if (dump_file)
17207 : fprintf (dump_file, "Splitting with gen_split_1615 (sse.md:12404)\n");
17208 : start_sequence ();
17209 : #define FAIL return (end_sequence (), nullptr)
17210 : #define DONE return end_sequence ()
17211 : #line 12421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17212 : {
17213 : if (register_operand (operands[2], V8HFmode))
17214 : operands[2] = force_reg (V8HFmode, operands[2]);
17215 : operands[2] = gen_lowpart (HFmode, operands[2]);
17216 : }
17217 : #undef DONE
17218 : #undef FAIL
17219 : static const uint8_t expand_encoding[] = {
17220 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x81,
17221 : 0x0c, 0x6a, 0x01, 0x02, 0x01, 0x01, 0x27, 0x01
17222 : };
17223 : return complete_seq (expand_encoding, operands);
17224 : }
17225 :
17226 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12559 */
17227 : extern rtx_insn *gen_split_1625 (rtx_insn *, rtx *);
17228 : rtx_insn *
17229 : gen_split_1625 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
17230 : {
17231 : if (dump_file)
17232 : fprintf (dump_file, "Splitting with gen_split_1625 (sse.md:12559)\n");
17233 : start_sequence ();
17234 : #define FAIL return (end_sequence (), nullptr)
17235 : #define DONE return end_sequence ()
17236 : #line 12571 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17237 : {
17238 : rtx dest = gen_reg_rtx (V8SImode);
17239 : emit_insn (gen_vec_setv8si_0 (dest,
17240 : CONST0_RTX (V8SImode),
17241 : operands[1]));
17242 : emit_move_insn (operands[0],
17243 : lowpart_subreg (V4DImode, dest, V8SImode));
17244 : DONE;
17245 : }
17246 : #undef DONE
17247 : #undef FAIL
17248 : static const uint8_t expand_encoding[] = {
17249 : 0x01, 0x27, 0x00
17250 : };
17251 : return complete_seq (expand_encoding, operands);
17252 : }
17253 :
17254 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12666 */
17255 : rtx
17256 : gen_vec_setv2di (const rtx operand0, const rtx operand1, const rtx operand2)
17257 : {
17258 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17259 : start_sequence ();
17260 : {
17261 : #define FAIL _Pragma ("GCC error \"vec_setv2di cannot FAIL\"") (void)0
17262 : #define DONE return end_sequence ()
17263 : #line 12671 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17264 : {
17265 : if (CONST_INT_P (operands[2]))
17266 : ix86_expand_vector_set (false, operands[0], operands[1],
17267 : INTVAL (operands[2]));
17268 : else
17269 : ix86_expand_vector_set_var (operands[0], operands[1], operands[2]);
17270 : DONE;
17271 : }
17272 : #undef DONE
17273 : #undef FAIL
17274 : }
17275 : static const uint8_t expand_encoding[] = {
17276 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17277 : };
17278 : return complete_seq (expand_encoding, operands);
17279 : }
17280 :
17281 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12680 */
17282 : rtx
17283 : gen_vec_setv4df (const rtx operand0, const rtx operand1, const rtx operand2)
17284 : {
17285 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17286 : start_sequence ();
17287 : {
17288 : #define FAIL _Pragma ("GCC error \"vec_setv4df cannot FAIL\"") (void)0
17289 : #define DONE return end_sequence ()
17290 : #line 12685 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17291 : {
17292 : if (CONST_INT_P (operands[2]))
17293 : ix86_expand_vector_set (false, operands[0], operands[1],
17294 : INTVAL (operands[2]));
17295 : else
17296 : ix86_expand_vector_set_var (operands[0], operands[1], operands[2]);
17297 : DONE;
17298 : }
17299 : #undef DONE
17300 : #undef FAIL
17301 : }
17302 : static const uint8_t expand_encoding[] = {
17303 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17304 : };
17305 : return complete_seq (expand_encoding, operands);
17306 : }
17307 :
17308 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12705 */
17309 : extern rtx_insn *gen_split_1631 (rtx_insn *, rtx *);
17310 : rtx_insn *
17311 : gen_split_1631 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
17312 : {
17313 : if (dump_file)
17314 : fprintf (dump_file, "Splitting with gen_split_1631 (sse.md:12705)\n");
17315 : start_sequence ();
17316 : #define FAIL return (end_sequence (), nullptr)
17317 : #define DONE return end_sequence ()
17318 : #line 12719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17319 : {
17320 : rtx dest = lowpart_subreg (V4SFmode, operands[0], SFmode);
17321 : switch (INTVAL (operands[2]))
17322 : {
17323 : case 1:
17324 : case 3:
17325 : emit_insn (gen_sse_shufps_v4sf (dest, operands[1], operands[1],
17326 : operands[2], operands[2],
17327 : GEN_INT (INTVAL (operands[2]) + 4),
17328 : GEN_INT (INTVAL (operands[2]) + 4)));
17329 : break;
17330 : case 2:
17331 : emit_insn (gen_vec_interleave_highv4sf (dest, operands[1], operands[1]));
17332 : break;
17333 : default:
17334 : /* 0 should be handled by the *vec_extractv4sf_0 pattern above. */
17335 : gcc_unreachable ();
17336 : }
17337 : DONE;
17338 : }
17339 : #undef DONE
17340 : #undef FAIL
17341 : static const uint8_t expand_encoding[] = {
17342 : 0x01, 0x27, 0x00
17343 : };
17344 : return complete_seq (expand_encoding, operands);
17345 : }
17346 :
17347 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:12941 */
17348 : rtx
17349 : gen_avx512dq_vextracti32x8_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
17350 : {
17351 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
17352 : start_sequence ();
17353 : {
17354 : #define FAIL return (end_sequence (), nullptr)
17355 : #define DONE return end_sequence ()
17356 : #line 12948 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17357 : {
17358 : rtx (*insn)(rtx, rtx, rtx, rtx);
17359 : rtx dest = operands[0];
17360 :
17361 : if (MEM_P (dest) && !rtx_equal_p (dest, operands[3]))
17362 : dest = gen_reg_rtx (V8SImode);
17363 :
17364 : switch (INTVAL (operands[2]))
17365 : {
17366 : case 0:
17367 : insn = gen_vec_extract_lo_v16si_mask;
17368 : break;
17369 : case 1:
17370 : insn = gen_vec_extract_hi_v16si_mask;
17371 : break;
17372 : default:
17373 : gcc_unreachable ();
17374 : }
17375 :
17376 : emit_insn (insn (dest, operands[1], operands[3], operands[4]));
17377 : if (dest != operands[0])
17378 : emit_move_insn (operands[0], dest);
17379 : DONE;
17380 : }
17381 : #undef DONE
17382 : #undef FAIL
17383 : }
17384 : static const uint8_t expand_encoding[] = {
17385 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
17386 : 0x03, 0x01, 0x04
17387 : };
17388 : return complete_seq (expand_encoding, operands);
17389 : }
17390 :
17391 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13133 */
17392 : rtx
17393 : gen_avx_vextractf128v4di (const rtx operand0, const rtx operand1, const rtx operand2)
17394 : {
17395 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17396 : start_sequence ();
17397 : {
17398 : #define FAIL return (end_sequence (), nullptr)
17399 : #define DONE return end_sequence ()
17400 : #line 13138 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17401 : {
17402 : rtx (*insn)(rtx, rtx);
17403 :
17404 : switch (INTVAL (operands[2]))
17405 : {
17406 : case 0:
17407 : insn = gen_vec_extract_lo_v4di;
17408 : break;
17409 : case 1:
17410 : insn = gen_vec_extract_hi_v4di;
17411 : break;
17412 : default:
17413 : gcc_unreachable ();
17414 : }
17415 :
17416 : emit_insn (insn (operands[0], operands[1]));
17417 : DONE;
17418 : }
17419 : #undef DONE
17420 : #undef FAIL
17421 : }
17422 : static const uint8_t expand_encoding[] = {
17423 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17424 : };
17425 : return complete_seq (expand_encoding, operands);
17426 : }
17427 :
17428 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13309 */
17429 : extern rtx_insn *gen_split_1643 (rtx_insn *, rtx *);
17430 : rtx_insn *
17431 : gen_split_1643 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17432 : {
17433 : if (dump_file)
17434 : fprintf (dump_file, "Splitting with gen_split_1643 (sse.md:13309)\n");
17435 : start_sequence ();
17436 : #define FAIL return (end_sequence (), nullptr)
17437 : #define DONE return end_sequence ()
17438 : #line 13318 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17439 : operands[1] = gen_lowpart (V4SImode, operands[1]);
17440 : #undef DONE
17441 : #undef FAIL
17442 : static const uint8_t expand_encoding[] = {
17443 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
17444 : };
17445 : return complete_seq (expand_encoding, operands);
17446 : }
17447 :
17448 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13600 */
17449 : extern rtx_insn *gen_split_1653 (rtx_insn *, rtx *);
17450 : rtx_insn *
17451 : gen_split_1653 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17452 : {
17453 : if (dump_file)
17454 : fprintf (dump_file, "Splitting with gen_split_1653 (sse.md:13600)\n");
17455 : start_sequence ();
17456 : #define FAIL return (end_sequence (), nullptr)
17457 : #define DONE return end_sequence ()
17458 : #line 13609 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17459 : operands[1] = gen_lowpart (HFmode, operands[1]);
17460 : #undef DONE
17461 : #undef FAIL
17462 : static const uint8_t expand_encoding[] = {
17463 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
17464 : };
17465 : return complete_seq (expand_encoding, operands);
17466 : }
17467 :
17468 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13658 */
17469 : rtx
17470 : gen_vec_extractv32hihi (const rtx operand0, const rtx operand1, const rtx operand2)
17471 : {
17472 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17473 : start_sequence ();
17474 : {
17475 : #define FAIL _Pragma ("GCC error \"vec_extractv32hihi cannot FAIL\"") (void)0
17476 : #define DONE return end_sequence ()
17477 : #line 13663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17478 : {
17479 : ix86_expand_vector_extract (false, operands[0], operands[1],
17480 : INTVAL (operands[2]));
17481 : DONE;
17482 : }
17483 : #undef DONE
17484 : #undef FAIL
17485 : }
17486 : static const uint8_t expand_encoding[] = {
17487 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17488 : };
17489 : return complete_seq (expand_encoding, operands);
17490 : }
17491 :
17492 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13658 */
17493 : rtx
17494 : gen_vec_extractv16hfhf (const rtx operand0, const rtx operand1, const rtx operand2)
17495 : {
17496 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17497 : start_sequence ();
17498 : {
17499 : #define FAIL _Pragma ("GCC error \"vec_extractv16hfhf cannot FAIL\"") (void)0
17500 : #define DONE return end_sequence ()
17501 : #line 13663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17502 : {
17503 : ix86_expand_vector_extract (false, operands[0], operands[1],
17504 : INTVAL (operands[2]));
17505 : DONE;
17506 : }
17507 : #undef DONE
17508 : #undef FAIL
17509 : }
17510 : static const uint8_t expand_encoding[] = {
17511 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17512 : };
17513 : return complete_seq (expand_encoding, operands);
17514 : }
17515 :
17516 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13658 */
17517 : rtx
17518 : gen_vec_extractv2dfdf (const rtx operand0, const rtx operand1, const rtx operand2)
17519 : {
17520 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17521 : start_sequence ();
17522 : {
17523 : #define FAIL _Pragma ("GCC error \"vec_extractv2dfdf cannot FAIL\"") (void)0
17524 : #define DONE return end_sequence ()
17525 : #line 13663 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17526 : {
17527 : ix86_expand_vector_extract (false, operands[0], operands[1],
17528 : INTVAL (operands[2]));
17529 : DONE;
17530 : }
17531 : #undef DONE
17532 : #undef FAIL
17533 : }
17534 : static const uint8_t expand_encoding[] = {
17535 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17536 : };
17537 : return complete_seq (expand_encoding, operands);
17538 : }
17539 :
17540 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13669 */
17541 : rtx
17542 : gen_vec_extractv4dfv2df (const rtx operand0, const rtx operand1, const rtx operand2)
17543 : {
17544 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17545 : start_sequence ();
17546 : {
17547 : #define FAIL _Pragma ("GCC error \"vec_extractv4dfv2df cannot FAIL\"") (void)0
17548 : #define DONE return end_sequence ()
17549 : #line 13674 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17550 : {
17551 : if (INTVAL (operands[2]))
17552 : emit_insn (gen_vec_extract_hi_v4df (operands[0], operands[1]));
17553 : else
17554 : emit_insn (gen_vec_extract_lo_v4df (operands[0], operands[1]));
17555 : DONE;
17556 : }
17557 : #undef DONE
17558 : #undef FAIL
17559 : }
17560 : static const uint8_t expand_encoding[] = {
17561 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
17562 : };
17563 : return complete_seq (expand_encoding, operands);
17564 : }
17565 :
17566 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:13764 */
17567 : rtx
17568 : gen_vec_interleave_highv2df (const rtx operand0, const rtx operand1, const rtx operand2)
17569 : {
17570 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
17571 : start_sequence ();
17572 : {
17573 : #define FAIL return (end_sequence (), nullptr)
17574 : #define DONE return end_sequence ()
17575 : #line 13773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17576 : {
17577 : if (!ix86_vec_interleave_v2df_operator_ok (operands, 1))
17578 : operands[2] = force_reg (V2DFmode, operands[2]);
17579 : }
17580 : #undef DONE
17581 : #undef FAIL
17582 : }
17583 : static const uint8_t expand_encoding[] = {
17584 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x6c, 0x81,
17585 : 0x0b, 0x70, 0x01, 0x01, 0x01, 0x02, 0x17, 0x00,
17586 : 0x02, 0x27, 0x01, 0x27, 0x03
17587 : };
17588 : return complete_seq (expand_encoding, operands);
17589 : }
17590 :
17591 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14002 */
17592 : rtx
17593 : gen_avx512vl_vternlogv4di_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
17594 : {
17595 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
17596 : start_sequence ();
17597 : {
17598 : #define FAIL return (end_sequence (), nullptr)
17599 : #define DONE return end_sequence ()
17600 : #line 14010 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17601 : {
17602 : emit_insn (gen_avx512vl_vternlogv4di_maskz_1 (
17603 : operands[0], operands[1], operands[2], operands[3],
17604 : operands[4], CONST0_RTX (V4DImode), operands[5]));
17605 : DONE;
17606 : }
17607 : #undef DONE
17608 : #undef FAIL
17609 : }
17610 : static const uint8_t expand_encoding[] = {
17611 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
17612 : 0x03, 0x01, 0x04, 0x01, 0x05
17613 : };
17614 : return complete_seq (expand_encoding, operands);
17615 : }
17616 :
17617 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14065 */
17618 : extern rtx_insn *gen_split_1670 (rtx_insn *, rtx *);
17619 : rtx_insn *
17620 : gen_split_1670 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17621 : {
17622 : if (dump_file)
17623 : fprintf (dump_file, "Splitting with gen_split_1670 (sse.md:14065)\n");
17624 : start_sequence ();
17625 : static const uint8_t expand_encoding[] = {
17626 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x03, 0x1f, 0x01,
17627 : 0x00, 0x1a, 0x5c, 0x04, 0x01, 0x00, 0x01, 0x00,
17628 : 0x01, 0x00, 0x01, 0x04, 0x81, 0x25
17629 : };
17630 : return complete_seq (expand_encoding, operands);
17631 : }
17632 :
17633 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14065 */
17634 : extern rtx_insn *gen_split_1680 (rtx_insn *, rtx *);
17635 : rtx_insn *
17636 : gen_split_1680 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17637 : {
17638 : if (dump_file)
17639 : fprintf (dump_file, "Splitting with gen_split_1680 (sse.md:14065)\n");
17640 : start_sequence ();
17641 : static const uint8_t expand_encoding[] = {
17642 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x03, 0x1f, 0x01,
17643 : 0x00, 0x1a, 0x6f, 0x04, 0x01, 0x00, 0x01, 0x00,
17644 : 0x01, 0x00, 0x01, 0x04, 0x81, 0x25
17645 : };
17646 : return complete_seq (expand_encoding, operands);
17647 : }
17648 :
17649 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14086 */
17650 : extern rtx_insn *gen_split_1690 (rtx_insn *, rtx *);
17651 : rtx_insn *
17652 : gen_split_1690 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17653 : {
17654 : if (dump_file)
17655 : fprintf (dump_file, "Splitting with gen_split_1690 (sse.md:14086)\n");
17656 : start_sequence ();
17657 : #define FAIL return (end_sequence (), nullptr)
17658 : #define DONE return end_sequence ()
17659 : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17660 : substitute_vpternlog_operands (operands);
17661 : #undef DONE
17662 : #undef FAIL
17663 : static const uint8_t expand_encoding[] = {
17664 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
17665 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81,
17666 : 0x25
17667 : };
17668 : return complete_seq (expand_encoding, operands);
17669 : }
17670 :
17671 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14086 */
17672 : extern rtx_insn *gen_split_1700 (rtx_insn *, rtx *);
17673 : rtx_insn *
17674 : gen_split_1700 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17675 : {
17676 : if (dump_file)
17677 : fprintf (dump_file, "Splitting with gen_split_1700 (sse.md:14086)\n");
17678 : start_sequence ();
17679 : #define FAIL return (end_sequence (), nullptr)
17680 : #define DONE return end_sequence ()
17681 : #line 14102 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17682 : substitute_vpternlog_operands (operands);
17683 : #undef DONE
17684 : #undef FAIL
17685 : static const uint8_t expand_encoding[] = {
17686 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
17687 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x81,
17688 : 0x25
17689 : };
17690 : return complete_seq (expand_encoding, operands);
17691 : }
17692 :
17693 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14118 */
17694 : extern rtx_insn *gen_split_1710 (rtx_insn *, rtx *);
17695 : rtx_insn *
17696 : gen_split_1710 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
17697 : {
17698 : if (dump_file)
17699 : fprintf (dump_file, "Splitting with gen_split_1710 (sse.md:14118)\n");
17700 : start_sequence ();
17701 : #define FAIL return (end_sequence (), nullptr)
17702 : #define DONE return end_sequence ()
17703 : #line 14127 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17704 : {
17705 : rtx args[3];
17706 : args[0] = NULL_RTX;
17707 : args[1] = NULL_RTX;
17708 : args[2] = NULL_RTX;
17709 : int idx = ix86_ternlog_idx (operands[1], args);
17710 : ix86_expand_ternlog (V32QImode, args[0], args[1], args[2], idx,
17711 : operands[0]);
17712 : DONE;
17713 : }
17714 : #undef DONE
17715 : #undef FAIL
17716 : static const uint8_t expand_encoding[] = {
17717 : 0x01, 0x27, 0x00
17718 : };
17719 : return complete_seq (expand_encoding, operands);
17720 : }
17721 :
17722 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14118 */
17723 : extern rtx_insn *gen_split_1720 (rtx_insn *, rtx *);
17724 : rtx_insn *
17725 : gen_split_1720 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
17726 : {
17727 : if (dump_file)
17728 : fprintf (dump_file, "Splitting with gen_split_1720 (sse.md:14118)\n");
17729 : start_sequence ();
17730 : #define FAIL return (end_sequence (), nullptr)
17731 : #define DONE return end_sequence ()
17732 : #line 14127 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17733 : {
17734 : rtx args[3];
17735 : args[0] = NULL_RTX;
17736 : args[1] = NULL_RTX;
17737 : args[2] = NULL_RTX;
17738 : int idx = ix86_ternlog_idx (operands[1], args);
17739 : ix86_expand_ternlog (V2DImode, args[0], args[1], args[2], idx,
17740 : operands[0]);
17741 : DONE;
17742 : }
17743 : #undef DONE
17744 : #undef FAIL
17745 : static const uint8_t expand_encoding[] = {
17746 : 0x01, 0x27, 0x00
17747 : };
17748 : return complete_seq (expand_encoding, operands);
17749 : }
17750 :
17751 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14118 */
17752 : extern rtx_insn *gen_split_1730 (rtx_insn *, rtx *);
17753 : rtx_insn *
17754 : gen_split_1730 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
17755 : {
17756 : if (dump_file)
17757 : fprintf (dump_file, "Splitting with gen_split_1730 (sse.md:14118)\n");
17758 : start_sequence ();
17759 : #define FAIL return (end_sequence (), nullptr)
17760 : #define DONE return end_sequence ()
17761 : #line 14127 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17762 : {
17763 : rtx args[3];
17764 : args[0] = NULL_RTX;
17765 : args[1] = NULL_RTX;
17766 : args[2] = NULL_RTX;
17767 : int idx = ix86_ternlog_idx (operands[1], args);
17768 : ix86_expand_ternlog (V8DFmode, args[0], args[1], args[2], idx,
17769 : operands[0]);
17770 : DONE;
17771 : }
17772 : #undef DONE
17773 : #undef FAIL
17774 : static const uint8_t expand_encoding[] = {
17775 : 0x01, 0x27, 0x00
17776 : };
17777 : return complete_seq (expand_encoding, operands);
17778 : }
17779 :
17780 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
17781 : extern rtx_insn *gen_split_1740 (rtx_insn *, rtx *);
17782 : rtx_insn *
17783 : gen_split_1740 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17784 : {
17785 : if (dump_file)
17786 : fprintf (dump_file, "Splitting with gen_split_1740 (sse.md:14142)\n");
17787 : start_sequence ();
17788 : #define FAIL return (end_sequence (), nullptr)
17789 : #define DONE return end_sequence ()
17790 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17791 : {
17792 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
17793 : int reg6 = 0xF0;
17794 : int reg2 = 0xCC;
17795 : int reg1 = 0xAA;
17796 : int reg3 = 0;
17797 : int reg4 = 0;
17798 : int reg_mask, tmp1, tmp2;
17799 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
17800 : STRIP_UNARY (operands[4])))
17801 : {
17802 : reg4 = reg1;
17803 : reg3 = reg6;
17804 : operands[6] = operands[3];
17805 : }
17806 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
17807 : STRIP_UNARY (operands[4])))
17808 : {
17809 : reg4 = reg2;
17810 : reg3 = reg6;
17811 : operands[6] = operands[3];
17812 : }
17813 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
17814 : STRIP_UNARY (operands[3])))
17815 : {
17816 : reg4 = reg6;
17817 : reg3 = reg1;
17818 : operands[6] = operands[4];
17819 : }
17820 : else
17821 : {
17822 : reg4 = reg6;
17823 : reg3 = reg2;
17824 : operands[6] = operands[4];
17825 : }
17826 :
17827 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
17828 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
17829 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
17830 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
17831 :
17832 : tmp1 = reg1 & reg2;
17833 : tmp2 = reg3 ^ reg4;
17834 : reg_mask = tmp1 | tmp2;
17835 : reg_mask &= 0xFF;
17836 :
17837 : operands[1] = STRIP_UNARY (operands[1]);
17838 : operands[2] = STRIP_UNARY (operands[2]);
17839 : operands[6] = STRIP_UNARY (operands[6]);
17840 : if (!register_operand (operands[2], V64QImode))
17841 : operands[2] = force_reg (V64QImode, operands[2]);
17842 : if (!register_operand (operands[6], V64QImode))
17843 : operands[6] = force_reg (V64QImode, operands[6]);
17844 : operands[5] = GEN_INT (reg_mask);
17845 : }
17846 : #undef DONE
17847 : #undef FAIL
17848 : static const uint8_t expand_encoding[] = {
17849 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
17850 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
17851 : 0x25
17852 : };
17853 : return complete_seq (expand_encoding, operands);
17854 : }
17855 :
17856 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
17857 : extern rtx_insn *gen_split_1750 (rtx_insn *, rtx *);
17858 : rtx_insn *
17859 : gen_split_1750 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17860 : {
17861 : if (dump_file)
17862 : fprintf (dump_file, "Splitting with gen_split_1750 (sse.md:14142)\n");
17863 : start_sequence ();
17864 : #define FAIL return (end_sequence (), nullptr)
17865 : #define DONE return end_sequence ()
17866 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17867 : {
17868 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
17869 : int reg6 = 0xF0;
17870 : int reg2 = 0xCC;
17871 : int reg1 = 0xAA;
17872 : int reg3 = 0;
17873 : int reg4 = 0;
17874 : int reg_mask, tmp1, tmp2;
17875 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
17876 : STRIP_UNARY (operands[4])))
17877 : {
17878 : reg4 = reg1;
17879 : reg3 = reg6;
17880 : operands[6] = operands[3];
17881 : }
17882 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
17883 : STRIP_UNARY (operands[4])))
17884 : {
17885 : reg4 = reg2;
17886 : reg3 = reg6;
17887 : operands[6] = operands[3];
17888 : }
17889 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
17890 : STRIP_UNARY (operands[3])))
17891 : {
17892 : reg4 = reg6;
17893 : reg3 = reg1;
17894 : operands[6] = operands[4];
17895 : }
17896 : else
17897 : {
17898 : reg4 = reg6;
17899 : reg3 = reg2;
17900 : operands[6] = operands[4];
17901 : }
17902 :
17903 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
17904 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
17905 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
17906 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
17907 :
17908 : tmp1 = reg1 | reg2;
17909 : tmp2 = reg3 ^ reg4;
17910 : reg_mask = tmp1 ^ tmp2;
17911 : reg_mask &= 0xFF;
17912 :
17913 : operands[1] = STRIP_UNARY (operands[1]);
17914 : operands[2] = STRIP_UNARY (operands[2]);
17915 : operands[6] = STRIP_UNARY (operands[6]);
17916 : if (!register_operand (operands[2], V64QImode))
17917 : operands[2] = force_reg (V64QImode, operands[2]);
17918 : if (!register_operand (operands[6], V64QImode))
17919 : operands[6] = force_reg (V64QImode, operands[6]);
17920 : operands[5] = GEN_INT (reg_mask);
17921 : }
17922 : #undef DONE
17923 : #undef FAIL
17924 : static const uint8_t expand_encoding[] = {
17925 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
17926 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
17927 : 0x25
17928 : };
17929 : return complete_seq (expand_encoding, operands);
17930 : }
17931 :
17932 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
17933 : extern rtx_insn *gen_split_1760 (rtx_insn *, rtx *);
17934 : rtx_insn *
17935 : gen_split_1760 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
17936 : {
17937 : if (dump_file)
17938 : fprintf (dump_file, "Splitting with gen_split_1760 (sse.md:14142)\n");
17939 : start_sequence ();
17940 : #define FAIL return (end_sequence (), nullptr)
17941 : #define DONE return end_sequence ()
17942 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
17943 : {
17944 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
17945 : int reg6 = 0xF0;
17946 : int reg2 = 0xCC;
17947 : int reg1 = 0xAA;
17948 : int reg3 = 0;
17949 : int reg4 = 0;
17950 : int reg_mask, tmp1, tmp2;
17951 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
17952 : STRIP_UNARY (operands[4])))
17953 : {
17954 : reg4 = reg1;
17955 : reg3 = reg6;
17956 : operands[6] = operands[3];
17957 : }
17958 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
17959 : STRIP_UNARY (operands[4])))
17960 : {
17961 : reg4 = reg2;
17962 : reg3 = reg6;
17963 : operands[6] = operands[3];
17964 : }
17965 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
17966 : STRIP_UNARY (operands[3])))
17967 : {
17968 : reg4 = reg6;
17969 : reg3 = reg1;
17970 : operands[6] = operands[4];
17971 : }
17972 : else
17973 : {
17974 : reg4 = reg6;
17975 : reg3 = reg2;
17976 : operands[6] = operands[4];
17977 : }
17978 :
17979 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
17980 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
17981 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
17982 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
17983 :
17984 : tmp1 = reg1 & reg2;
17985 : tmp2 = reg3 & reg4;
17986 : reg_mask = tmp1 & tmp2;
17987 : reg_mask &= 0xFF;
17988 :
17989 : operands[1] = STRIP_UNARY (operands[1]);
17990 : operands[2] = STRIP_UNARY (operands[2]);
17991 : operands[6] = STRIP_UNARY (operands[6]);
17992 : if (!register_operand (operands[2], V32QImode))
17993 : operands[2] = force_reg (V32QImode, operands[2]);
17994 : if (!register_operand (operands[6], V32QImode))
17995 : operands[6] = force_reg (V32QImode, operands[6]);
17996 : operands[5] = GEN_INT (reg_mask);
17997 : }
17998 : #undef DONE
17999 : #undef FAIL
18000 : static const uint8_t expand_encoding[] = {
18001 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
18002 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18003 : 0x25
18004 : };
18005 : return complete_seq (expand_encoding, operands);
18006 : }
18007 :
18008 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18009 : extern rtx_insn *gen_split_1770 (rtx_insn *, rtx *);
18010 : rtx_insn *
18011 : gen_split_1770 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18012 : {
18013 : if (dump_file)
18014 : fprintf (dump_file, "Splitting with gen_split_1770 (sse.md:14142)\n");
18015 : start_sequence ();
18016 : #define FAIL return (end_sequence (), nullptr)
18017 : #define DONE return end_sequence ()
18018 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18019 : {
18020 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18021 : int reg6 = 0xF0;
18022 : int reg2 = 0xCC;
18023 : int reg1 = 0xAA;
18024 : int reg3 = 0;
18025 : int reg4 = 0;
18026 : int reg_mask, tmp1, tmp2;
18027 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18028 : STRIP_UNARY (operands[4])))
18029 : {
18030 : reg4 = reg1;
18031 : reg3 = reg6;
18032 : operands[6] = operands[3];
18033 : }
18034 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18035 : STRIP_UNARY (operands[4])))
18036 : {
18037 : reg4 = reg2;
18038 : reg3 = reg6;
18039 : operands[6] = operands[3];
18040 : }
18041 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18042 : STRIP_UNARY (operands[3])))
18043 : {
18044 : reg4 = reg6;
18045 : reg3 = reg1;
18046 : operands[6] = operands[4];
18047 : }
18048 : else
18049 : {
18050 : reg4 = reg6;
18051 : reg3 = reg2;
18052 : operands[6] = operands[4];
18053 : }
18054 :
18055 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18056 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18057 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18058 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18059 :
18060 : tmp1 = reg1 | reg2;
18061 : tmp2 = reg3 & reg4;
18062 : reg_mask = tmp1 | tmp2;
18063 : reg_mask &= 0xFF;
18064 :
18065 : operands[1] = STRIP_UNARY (operands[1]);
18066 : operands[2] = STRIP_UNARY (operands[2]);
18067 : operands[6] = STRIP_UNARY (operands[6]);
18068 : if (!register_operand (operands[2], V32QImode))
18069 : operands[2] = force_reg (V32QImode, operands[2]);
18070 : if (!register_operand (operands[6], V32QImode))
18071 : operands[6] = force_reg (V32QImode, operands[6]);
18072 : operands[5] = GEN_INT (reg_mask);
18073 : }
18074 : #undef DONE
18075 : #undef FAIL
18076 : static const uint8_t expand_encoding[] = {
18077 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
18078 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18079 : 0x25
18080 : };
18081 : return complete_seq (expand_encoding, operands);
18082 : }
18083 :
18084 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18085 : extern rtx_insn *gen_split_1780 (rtx_insn *, rtx *);
18086 : rtx_insn *
18087 : gen_split_1780 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18088 : {
18089 : if (dump_file)
18090 : fprintf (dump_file, "Splitting with gen_split_1780 (sse.md:14142)\n");
18091 : start_sequence ();
18092 : #define FAIL return (end_sequence (), nullptr)
18093 : #define DONE return end_sequence ()
18094 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18095 : {
18096 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18097 : int reg6 = 0xF0;
18098 : int reg2 = 0xCC;
18099 : int reg1 = 0xAA;
18100 : int reg3 = 0;
18101 : int reg4 = 0;
18102 : int reg_mask, tmp1, tmp2;
18103 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18104 : STRIP_UNARY (operands[4])))
18105 : {
18106 : reg4 = reg1;
18107 : reg3 = reg6;
18108 : operands[6] = operands[3];
18109 : }
18110 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18111 : STRIP_UNARY (operands[4])))
18112 : {
18113 : reg4 = reg2;
18114 : reg3 = reg6;
18115 : operands[6] = operands[3];
18116 : }
18117 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18118 : STRIP_UNARY (operands[3])))
18119 : {
18120 : reg4 = reg6;
18121 : reg3 = reg1;
18122 : operands[6] = operands[4];
18123 : }
18124 : else
18125 : {
18126 : reg4 = reg6;
18127 : reg3 = reg2;
18128 : operands[6] = operands[4];
18129 : }
18130 :
18131 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18132 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18133 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18134 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18135 :
18136 : tmp1 = reg1 ^ reg2;
18137 : tmp2 = reg3 & reg4;
18138 : reg_mask = tmp1 ^ tmp2;
18139 : reg_mask &= 0xFF;
18140 :
18141 : operands[1] = STRIP_UNARY (operands[1]);
18142 : operands[2] = STRIP_UNARY (operands[2]);
18143 : operands[6] = STRIP_UNARY (operands[6]);
18144 : if (!register_operand (operands[2], V32QImode))
18145 : operands[2] = force_reg (V32QImode, operands[2]);
18146 : if (!register_operand (operands[6], V32QImode))
18147 : operands[6] = force_reg (V32QImode, operands[6]);
18148 : operands[5] = GEN_INT (reg_mask);
18149 : }
18150 : #undef DONE
18151 : #undef FAIL
18152 : static const uint8_t expand_encoding[] = {
18153 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
18154 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18155 : 0x25
18156 : };
18157 : return complete_seq (expand_encoding, operands);
18158 : }
18159 :
18160 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18161 : extern rtx_insn *gen_split_1790 (rtx_insn *, rtx *);
18162 : rtx_insn *
18163 : gen_split_1790 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18164 : {
18165 : if (dump_file)
18166 : fprintf (dump_file, "Splitting with gen_split_1790 (sse.md:14142)\n");
18167 : start_sequence ();
18168 : #define FAIL return (end_sequence (), nullptr)
18169 : #define DONE return end_sequence ()
18170 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18171 : {
18172 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18173 : int reg6 = 0xF0;
18174 : int reg2 = 0xCC;
18175 : int reg1 = 0xAA;
18176 : int reg3 = 0;
18177 : int reg4 = 0;
18178 : int reg_mask, tmp1, tmp2;
18179 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18180 : STRIP_UNARY (operands[4])))
18181 : {
18182 : reg4 = reg1;
18183 : reg3 = reg6;
18184 : operands[6] = operands[3];
18185 : }
18186 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18187 : STRIP_UNARY (operands[4])))
18188 : {
18189 : reg4 = reg2;
18190 : reg3 = reg6;
18191 : operands[6] = operands[3];
18192 : }
18193 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18194 : STRIP_UNARY (operands[3])))
18195 : {
18196 : reg4 = reg6;
18197 : reg3 = reg1;
18198 : operands[6] = operands[4];
18199 : }
18200 : else
18201 : {
18202 : reg4 = reg6;
18203 : reg3 = reg2;
18204 : operands[6] = operands[4];
18205 : }
18206 :
18207 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18208 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18209 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18210 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18211 :
18212 : tmp1 = reg1 & reg2;
18213 : tmp2 = reg3 | reg4;
18214 : reg_mask = tmp1 & tmp2;
18215 : reg_mask &= 0xFF;
18216 :
18217 : operands[1] = STRIP_UNARY (operands[1]);
18218 : operands[2] = STRIP_UNARY (operands[2]);
18219 : operands[6] = STRIP_UNARY (operands[6]);
18220 : if (!register_operand (operands[2], V16QImode))
18221 : operands[2] = force_reg (V16QImode, operands[2]);
18222 : if (!register_operand (operands[6], V16QImode))
18223 : operands[6] = force_reg (V16QImode, operands[6]);
18224 : operands[5] = GEN_INT (reg_mask);
18225 : }
18226 : #undef DONE
18227 : #undef FAIL
18228 : static const uint8_t expand_encoding[] = {
18229 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
18230 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18231 : 0x25
18232 : };
18233 : return complete_seq (expand_encoding, operands);
18234 : }
18235 :
18236 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18237 : extern rtx_insn *gen_split_1800 (rtx_insn *, rtx *);
18238 : rtx_insn *
18239 : gen_split_1800 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18240 : {
18241 : if (dump_file)
18242 : fprintf (dump_file, "Splitting with gen_split_1800 (sse.md:14142)\n");
18243 : start_sequence ();
18244 : #define FAIL return (end_sequence (), nullptr)
18245 : #define DONE return end_sequence ()
18246 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18247 : {
18248 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18249 : int reg6 = 0xF0;
18250 : int reg2 = 0xCC;
18251 : int reg1 = 0xAA;
18252 : int reg3 = 0;
18253 : int reg4 = 0;
18254 : int reg_mask, tmp1, tmp2;
18255 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18256 : STRIP_UNARY (operands[4])))
18257 : {
18258 : reg4 = reg1;
18259 : reg3 = reg6;
18260 : operands[6] = operands[3];
18261 : }
18262 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18263 : STRIP_UNARY (operands[4])))
18264 : {
18265 : reg4 = reg2;
18266 : reg3 = reg6;
18267 : operands[6] = operands[3];
18268 : }
18269 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18270 : STRIP_UNARY (operands[3])))
18271 : {
18272 : reg4 = reg6;
18273 : reg3 = reg1;
18274 : operands[6] = operands[4];
18275 : }
18276 : else
18277 : {
18278 : reg4 = reg6;
18279 : reg3 = reg2;
18280 : operands[6] = operands[4];
18281 : }
18282 :
18283 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18284 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18285 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18286 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18287 :
18288 : tmp1 = reg1 | reg2;
18289 : tmp2 = reg3 | reg4;
18290 : reg_mask = tmp1 | tmp2;
18291 : reg_mask &= 0xFF;
18292 :
18293 : operands[1] = STRIP_UNARY (operands[1]);
18294 : operands[2] = STRIP_UNARY (operands[2]);
18295 : operands[6] = STRIP_UNARY (operands[6]);
18296 : if (!register_operand (operands[2], V16QImode))
18297 : operands[2] = force_reg (V16QImode, operands[2]);
18298 : if (!register_operand (operands[6], V16QImode))
18299 : operands[6] = force_reg (V16QImode, operands[6]);
18300 : operands[5] = GEN_INT (reg_mask);
18301 : }
18302 : #undef DONE
18303 : #undef FAIL
18304 : static const uint8_t expand_encoding[] = {
18305 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
18306 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18307 : 0x25
18308 : };
18309 : return complete_seq (expand_encoding, operands);
18310 : }
18311 :
18312 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18313 : extern rtx_insn *gen_split_1810 (rtx_insn *, rtx *);
18314 : rtx_insn *
18315 : gen_split_1810 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18316 : {
18317 : if (dump_file)
18318 : fprintf (dump_file, "Splitting with gen_split_1810 (sse.md:14142)\n");
18319 : start_sequence ();
18320 : #define FAIL return (end_sequence (), nullptr)
18321 : #define DONE return end_sequence ()
18322 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18323 : {
18324 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18325 : int reg6 = 0xF0;
18326 : int reg2 = 0xCC;
18327 : int reg1 = 0xAA;
18328 : int reg3 = 0;
18329 : int reg4 = 0;
18330 : int reg_mask, tmp1, tmp2;
18331 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18332 : STRIP_UNARY (operands[4])))
18333 : {
18334 : reg4 = reg1;
18335 : reg3 = reg6;
18336 : operands[6] = operands[3];
18337 : }
18338 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18339 : STRIP_UNARY (operands[4])))
18340 : {
18341 : reg4 = reg2;
18342 : reg3 = reg6;
18343 : operands[6] = operands[3];
18344 : }
18345 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18346 : STRIP_UNARY (operands[3])))
18347 : {
18348 : reg4 = reg6;
18349 : reg3 = reg1;
18350 : operands[6] = operands[4];
18351 : }
18352 : else
18353 : {
18354 : reg4 = reg6;
18355 : reg3 = reg2;
18356 : operands[6] = operands[4];
18357 : }
18358 :
18359 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18360 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18361 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18362 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18363 :
18364 : tmp1 = reg1 ^ reg2;
18365 : tmp2 = reg3 | reg4;
18366 : reg_mask = tmp1 ^ tmp2;
18367 : reg_mask &= 0xFF;
18368 :
18369 : operands[1] = STRIP_UNARY (operands[1]);
18370 : operands[2] = STRIP_UNARY (operands[2]);
18371 : operands[6] = STRIP_UNARY (operands[6]);
18372 : if (!register_operand (operands[2], V16QImode))
18373 : operands[2] = force_reg (V16QImode, operands[2]);
18374 : if (!register_operand (operands[6], V16QImode))
18375 : operands[6] = force_reg (V16QImode, operands[6]);
18376 : operands[5] = GEN_INT (reg_mask);
18377 : }
18378 : #undef DONE
18379 : #undef FAIL
18380 : static const uint8_t expand_encoding[] = {
18381 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
18382 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18383 : 0x25
18384 : };
18385 : return complete_seq (expand_encoding, operands);
18386 : }
18387 :
18388 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18389 : extern rtx_insn *gen_split_1820 (rtx_insn *, rtx *);
18390 : rtx_insn *
18391 : gen_split_1820 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18392 : {
18393 : if (dump_file)
18394 : fprintf (dump_file, "Splitting with gen_split_1820 (sse.md:14142)\n");
18395 : start_sequence ();
18396 : #define FAIL return (end_sequence (), nullptr)
18397 : #define DONE return end_sequence ()
18398 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18399 : {
18400 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18401 : int reg6 = 0xF0;
18402 : int reg2 = 0xCC;
18403 : int reg1 = 0xAA;
18404 : int reg3 = 0;
18405 : int reg4 = 0;
18406 : int reg_mask, tmp1, tmp2;
18407 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18408 : STRIP_UNARY (operands[4])))
18409 : {
18410 : reg4 = reg1;
18411 : reg3 = reg6;
18412 : operands[6] = operands[3];
18413 : }
18414 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18415 : STRIP_UNARY (operands[4])))
18416 : {
18417 : reg4 = reg2;
18418 : reg3 = reg6;
18419 : operands[6] = operands[3];
18420 : }
18421 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18422 : STRIP_UNARY (operands[3])))
18423 : {
18424 : reg4 = reg6;
18425 : reg3 = reg1;
18426 : operands[6] = operands[4];
18427 : }
18428 : else
18429 : {
18430 : reg4 = reg6;
18431 : reg3 = reg2;
18432 : operands[6] = operands[4];
18433 : }
18434 :
18435 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18436 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18437 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18438 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18439 :
18440 : tmp1 = reg1 & reg2;
18441 : tmp2 = reg3 ^ reg4;
18442 : reg_mask = tmp1 & tmp2;
18443 : reg_mask &= 0xFF;
18444 :
18445 : operands[1] = STRIP_UNARY (operands[1]);
18446 : operands[2] = STRIP_UNARY (operands[2]);
18447 : operands[6] = STRIP_UNARY (operands[6]);
18448 : if (!register_operand (operands[2], V32HImode))
18449 : operands[2] = force_reg (V32HImode, operands[2]);
18450 : if (!register_operand (operands[6], V32HImode))
18451 : operands[6] = force_reg (V32HImode, operands[6]);
18452 : operands[5] = GEN_INT (reg_mask);
18453 : }
18454 : #undef DONE
18455 : #undef FAIL
18456 : static const uint8_t expand_encoding[] = {
18457 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
18458 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18459 : 0x25
18460 : };
18461 : return complete_seq (expand_encoding, operands);
18462 : }
18463 :
18464 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18465 : extern rtx_insn *gen_split_1830 (rtx_insn *, rtx *);
18466 : rtx_insn *
18467 : gen_split_1830 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18468 : {
18469 : if (dump_file)
18470 : fprintf (dump_file, "Splitting with gen_split_1830 (sse.md:14142)\n");
18471 : start_sequence ();
18472 : #define FAIL return (end_sequence (), nullptr)
18473 : #define DONE return end_sequence ()
18474 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18475 : {
18476 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18477 : int reg6 = 0xF0;
18478 : int reg2 = 0xCC;
18479 : int reg1 = 0xAA;
18480 : int reg3 = 0;
18481 : int reg4 = 0;
18482 : int reg_mask, tmp1, tmp2;
18483 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18484 : STRIP_UNARY (operands[4])))
18485 : {
18486 : reg4 = reg1;
18487 : reg3 = reg6;
18488 : operands[6] = operands[3];
18489 : }
18490 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18491 : STRIP_UNARY (operands[4])))
18492 : {
18493 : reg4 = reg2;
18494 : reg3 = reg6;
18495 : operands[6] = operands[3];
18496 : }
18497 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18498 : STRIP_UNARY (operands[3])))
18499 : {
18500 : reg4 = reg6;
18501 : reg3 = reg1;
18502 : operands[6] = operands[4];
18503 : }
18504 : else
18505 : {
18506 : reg4 = reg6;
18507 : reg3 = reg2;
18508 : operands[6] = operands[4];
18509 : }
18510 :
18511 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18512 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18513 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18514 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18515 :
18516 : tmp1 = reg1 | reg2;
18517 : tmp2 = reg3 ^ reg4;
18518 : reg_mask = tmp1 | tmp2;
18519 : reg_mask &= 0xFF;
18520 :
18521 : operands[1] = STRIP_UNARY (operands[1]);
18522 : operands[2] = STRIP_UNARY (operands[2]);
18523 : operands[6] = STRIP_UNARY (operands[6]);
18524 : if (!register_operand (operands[2], V32HImode))
18525 : operands[2] = force_reg (V32HImode, operands[2]);
18526 : if (!register_operand (operands[6], V32HImode))
18527 : operands[6] = force_reg (V32HImode, operands[6]);
18528 : operands[5] = GEN_INT (reg_mask);
18529 : }
18530 : #undef DONE
18531 : #undef FAIL
18532 : static const uint8_t expand_encoding[] = {
18533 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
18534 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18535 : 0x25
18536 : };
18537 : return complete_seq (expand_encoding, operands);
18538 : }
18539 :
18540 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18541 : extern rtx_insn *gen_split_1840 (rtx_insn *, rtx *);
18542 : rtx_insn *
18543 : gen_split_1840 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18544 : {
18545 : if (dump_file)
18546 : fprintf (dump_file, "Splitting with gen_split_1840 (sse.md:14142)\n");
18547 : start_sequence ();
18548 : #define FAIL return (end_sequence (), nullptr)
18549 : #define DONE return end_sequence ()
18550 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18551 : {
18552 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18553 : int reg6 = 0xF0;
18554 : int reg2 = 0xCC;
18555 : int reg1 = 0xAA;
18556 : int reg3 = 0;
18557 : int reg4 = 0;
18558 : int reg_mask, tmp1, tmp2;
18559 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18560 : STRIP_UNARY (operands[4])))
18561 : {
18562 : reg4 = reg1;
18563 : reg3 = reg6;
18564 : operands[6] = operands[3];
18565 : }
18566 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18567 : STRIP_UNARY (operands[4])))
18568 : {
18569 : reg4 = reg2;
18570 : reg3 = reg6;
18571 : operands[6] = operands[3];
18572 : }
18573 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18574 : STRIP_UNARY (operands[3])))
18575 : {
18576 : reg4 = reg6;
18577 : reg3 = reg1;
18578 : operands[6] = operands[4];
18579 : }
18580 : else
18581 : {
18582 : reg4 = reg6;
18583 : reg3 = reg2;
18584 : operands[6] = operands[4];
18585 : }
18586 :
18587 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18588 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18589 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18590 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18591 :
18592 : tmp1 = reg1 ^ reg2;
18593 : tmp2 = reg3 ^ reg4;
18594 : reg_mask = tmp1 ^ tmp2;
18595 : reg_mask &= 0xFF;
18596 :
18597 : operands[1] = STRIP_UNARY (operands[1]);
18598 : operands[2] = STRIP_UNARY (operands[2]);
18599 : operands[6] = STRIP_UNARY (operands[6]);
18600 : if (!register_operand (operands[2], V32HImode))
18601 : operands[2] = force_reg (V32HImode, operands[2]);
18602 : if (!register_operand (operands[6], V32HImode))
18603 : operands[6] = force_reg (V32HImode, operands[6]);
18604 : operands[5] = GEN_INT (reg_mask);
18605 : }
18606 : #undef DONE
18607 : #undef FAIL
18608 : static const uint8_t expand_encoding[] = {
18609 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
18610 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18611 : 0x25
18612 : };
18613 : return complete_seq (expand_encoding, operands);
18614 : }
18615 :
18616 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18617 : extern rtx_insn *gen_split_1850 (rtx_insn *, rtx *);
18618 : rtx_insn *
18619 : gen_split_1850 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18620 : {
18621 : if (dump_file)
18622 : fprintf (dump_file, "Splitting with gen_split_1850 (sse.md:14142)\n");
18623 : start_sequence ();
18624 : #define FAIL return (end_sequence (), nullptr)
18625 : #define DONE return end_sequence ()
18626 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18627 : {
18628 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18629 : int reg6 = 0xF0;
18630 : int reg2 = 0xCC;
18631 : int reg1 = 0xAA;
18632 : int reg3 = 0;
18633 : int reg4 = 0;
18634 : int reg_mask, tmp1, tmp2;
18635 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18636 : STRIP_UNARY (operands[4])))
18637 : {
18638 : reg4 = reg1;
18639 : reg3 = reg6;
18640 : operands[6] = operands[3];
18641 : }
18642 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18643 : STRIP_UNARY (operands[4])))
18644 : {
18645 : reg4 = reg2;
18646 : reg3 = reg6;
18647 : operands[6] = operands[3];
18648 : }
18649 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18650 : STRIP_UNARY (operands[3])))
18651 : {
18652 : reg4 = reg6;
18653 : reg3 = reg1;
18654 : operands[6] = operands[4];
18655 : }
18656 : else
18657 : {
18658 : reg4 = reg6;
18659 : reg3 = reg2;
18660 : operands[6] = operands[4];
18661 : }
18662 :
18663 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18664 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18665 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18666 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18667 :
18668 : tmp1 = reg1 | reg2;
18669 : tmp2 = reg3 & reg4;
18670 : reg_mask = tmp1 & tmp2;
18671 : reg_mask &= 0xFF;
18672 :
18673 : operands[1] = STRIP_UNARY (operands[1]);
18674 : operands[2] = STRIP_UNARY (operands[2]);
18675 : operands[6] = STRIP_UNARY (operands[6]);
18676 : if (!register_operand (operands[2], V16HImode))
18677 : operands[2] = force_reg (V16HImode, operands[2]);
18678 : if (!register_operand (operands[6], V16HImode))
18679 : operands[6] = force_reg (V16HImode, operands[6]);
18680 : operands[5] = GEN_INT (reg_mask);
18681 : }
18682 : #undef DONE
18683 : #undef FAIL
18684 : static const uint8_t expand_encoding[] = {
18685 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
18686 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18687 : 0x25
18688 : };
18689 : return complete_seq (expand_encoding, operands);
18690 : }
18691 :
18692 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18693 : extern rtx_insn *gen_split_1860 (rtx_insn *, rtx *);
18694 : rtx_insn *
18695 : gen_split_1860 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18696 : {
18697 : if (dump_file)
18698 : fprintf (dump_file, "Splitting with gen_split_1860 (sse.md:14142)\n");
18699 : start_sequence ();
18700 : #define FAIL return (end_sequence (), nullptr)
18701 : #define DONE return end_sequence ()
18702 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18703 : {
18704 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18705 : int reg6 = 0xF0;
18706 : int reg2 = 0xCC;
18707 : int reg1 = 0xAA;
18708 : int reg3 = 0;
18709 : int reg4 = 0;
18710 : int reg_mask, tmp1, tmp2;
18711 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18712 : STRIP_UNARY (operands[4])))
18713 : {
18714 : reg4 = reg1;
18715 : reg3 = reg6;
18716 : operands[6] = operands[3];
18717 : }
18718 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18719 : STRIP_UNARY (operands[4])))
18720 : {
18721 : reg4 = reg2;
18722 : reg3 = reg6;
18723 : operands[6] = operands[3];
18724 : }
18725 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18726 : STRIP_UNARY (operands[3])))
18727 : {
18728 : reg4 = reg6;
18729 : reg3 = reg1;
18730 : operands[6] = operands[4];
18731 : }
18732 : else
18733 : {
18734 : reg4 = reg6;
18735 : reg3 = reg2;
18736 : operands[6] = operands[4];
18737 : }
18738 :
18739 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18740 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18741 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18742 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18743 :
18744 : tmp1 = reg1 ^ reg2;
18745 : tmp2 = reg3 & reg4;
18746 : reg_mask = tmp1 | tmp2;
18747 : reg_mask &= 0xFF;
18748 :
18749 : operands[1] = STRIP_UNARY (operands[1]);
18750 : operands[2] = STRIP_UNARY (operands[2]);
18751 : operands[6] = STRIP_UNARY (operands[6]);
18752 : if (!register_operand (operands[2], V16HImode))
18753 : operands[2] = force_reg (V16HImode, operands[2]);
18754 : if (!register_operand (operands[6], V16HImode))
18755 : operands[6] = force_reg (V16HImode, operands[6]);
18756 : operands[5] = GEN_INT (reg_mask);
18757 : }
18758 : #undef DONE
18759 : #undef FAIL
18760 : static const uint8_t expand_encoding[] = {
18761 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
18762 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18763 : 0x25
18764 : };
18765 : return complete_seq (expand_encoding, operands);
18766 : }
18767 :
18768 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18769 : extern rtx_insn *gen_split_1870 (rtx_insn *, rtx *);
18770 : rtx_insn *
18771 : gen_split_1870 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18772 : {
18773 : if (dump_file)
18774 : fprintf (dump_file, "Splitting with gen_split_1870 (sse.md:14142)\n");
18775 : start_sequence ();
18776 : #define FAIL return (end_sequence (), nullptr)
18777 : #define DONE return end_sequence ()
18778 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18779 : {
18780 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18781 : int reg6 = 0xF0;
18782 : int reg2 = 0xCC;
18783 : int reg1 = 0xAA;
18784 : int reg3 = 0;
18785 : int reg4 = 0;
18786 : int reg_mask, tmp1, tmp2;
18787 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18788 : STRIP_UNARY (operands[4])))
18789 : {
18790 : reg4 = reg1;
18791 : reg3 = reg6;
18792 : operands[6] = operands[3];
18793 : }
18794 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18795 : STRIP_UNARY (operands[4])))
18796 : {
18797 : reg4 = reg2;
18798 : reg3 = reg6;
18799 : operands[6] = operands[3];
18800 : }
18801 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18802 : STRIP_UNARY (operands[3])))
18803 : {
18804 : reg4 = reg6;
18805 : reg3 = reg1;
18806 : operands[6] = operands[4];
18807 : }
18808 : else
18809 : {
18810 : reg4 = reg6;
18811 : reg3 = reg2;
18812 : operands[6] = operands[4];
18813 : }
18814 :
18815 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18816 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18817 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18818 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18819 :
18820 : tmp1 = reg1 & reg2;
18821 : tmp2 = reg3 & reg4;
18822 : reg_mask = tmp1 ^ tmp2;
18823 : reg_mask &= 0xFF;
18824 :
18825 : operands[1] = STRIP_UNARY (operands[1]);
18826 : operands[2] = STRIP_UNARY (operands[2]);
18827 : operands[6] = STRIP_UNARY (operands[6]);
18828 : if (!register_operand (operands[2], V8HImode))
18829 : operands[2] = force_reg (V8HImode, operands[2]);
18830 : if (!register_operand (operands[6], V8HImode))
18831 : operands[6] = force_reg (V8HImode, operands[6]);
18832 : operands[5] = GEN_INT (reg_mask);
18833 : }
18834 : #undef DONE
18835 : #undef FAIL
18836 : static const uint8_t expand_encoding[] = {
18837 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
18838 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18839 : 0x25
18840 : };
18841 : return complete_seq (expand_encoding, operands);
18842 : }
18843 :
18844 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18845 : extern rtx_insn *gen_split_1880 (rtx_insn *, rtx *);
18846 : rtx_insn *
18847 : gen_split_1880 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18848 : {
18849 : if (dump_file)
18850 : fprintf (dump_file, "Splitting with gen_split_1880 (sse.md:14142)\n");
18851 : start_sequence ();
18852 : #define FAIL return (end_sequence (), nullptr)
18853 : #define DONE return end_sequence ()
18854 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18855 : {
18856 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18857 : int reg6 = 0xF0;
18858 : int reg2 = 0xCC;
18859 : int reg1 = 0xAA;
18860 : int reg3 = 0;
18861 : int reg4 = 0;
18862 : int reg_mask, tmp1, tmp2;
18863 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18864 : STRIP_UNARY (operands[4])))
18865 : {
18866 : reg4 = reg1;
18867 : reg3 = reg6;
18868 : operands[6] = operands[3];
18869 : }
18870 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18871 : STRIP_UNARY (operands[4])))
18872 : {
18873 : reg4 = reg2;
18874 : reg3 = reg6;
18875 : operands[6] = operands[3];
18876 : }
18877 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18878 : STRIP_UNARY (operands[3])))
18879 : {
18880 : reg4 = reg6;
18881 : reg3 = reg1;
18882 : operands[6] = operands[4];
18883 : }
18884 : else
18885 : {
18886 : reg4 = reg6;
18887 : reg3 = reg2;
18888 : operands[6] = operands[4];
18889 : }
18890 :
18891 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18892 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18893 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18894 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18895 :
18896 : tmp1 = reg1 | reg2;
18897 : tmp2 = reg3 | reg4;
18898 : reg_mask = tmp1 & tmp2;
18899 : reg_mask &= 0xFF;
18900 :
18901 : operands[1] = STRIP_UNARY (operands[1]);
18902 : operands[2] = STRIP_UNARY (operands[2]);
18903 : operands[6] = STRIP_UNARY (operands[6]);
18904 : if (!register_operand (operands[2], V8HImode))
18905 : operands[2] = force_reg (V8HImode, operands[2]);
18906 : if (!register_operand (operands[6], V8HImode))
18907 : operands[6] = force_reg (V8HImode, operands[6]);
18908 : operands[5] = GEN_INT (reg_mask);
18909 : }
18910 : #undef DONE
18911 : #undef FAIL
18912 : static const uint8_t expand_encoding[] = {
18913 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
18914 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18915 : 0x25
18916 : };
18917 : return complete_seq (expand_encoding, operands);
18918 : }
18919 :
18920 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18921 : extern rtx_insn *gen_split_1890 (rtx_insn *, rtx *);
18922 : rtx_insn *
18923 : gen_split_1890 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
18924 : {
18925 : if (dump_file)
18926 : fprintf (dump_file, "Splitting with gen_split_1890 (sse.md:14142)\n");
18927 : start_sequence ();
18928 : #define FAIL return (end_sequence (), nullptr)
18929 : #define DONE return end_sequence ()
18930 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
18931 : {
18932 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
18933 : int reg6 = 0xF0;
18934 : int reg2 = 0xCC;
18935 : int reg1 = 0xAA;
18936 : int reg3 = 0;
18937 : int reg4 = 0;
18938 : int reg_mask, tmp1, tmp2;
18939 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
18940 : STRIP_UNARY (operands[4])))
18941 : {
18942 : reg4 = reg1;
18943 : reg3 = reg6;
18944 : operands[6] = operands[3];
18945 : }
18946 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
18947 : STRIP_UNARY (operands[4])))
18948 : {
18949 : reg4 = reg2;
18950 : reg3 = reg6;
18951 : operands[6] = operands[3];
18952 : }
18953 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
18954 : STRIP_UNARY (operands[3])))
18955 : {
18956 : reg4 = reg6;
18957 : reg3 = reg1;
18958 : operands[6] = operands[4];
18959 : }
18960 : else
18961 : {
18962 : reg4 = reg6;
18963 : reg3 = reg2;
18964 : operands[6] = operands[4];
18965 : }
18966 :
18967 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
18968 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
18969 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
18970 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
18971 :
18972 : tmp1 = reg1 ^ reg2;
18973 : tmp2 = reg3 | reg4;
18974 : reg_mask = tmp1 | tmp2;
18975 : reg_mask &= 0xFF;
18976 :
18977 : operands[1] = STRIP_UNARY (operands[1]);
18978 : operands[2] = STRIP_UNARY (operands[2]);
18979 : operands[6] = STRIP_UNARY (operands[6]);
18980 : if (!register_operand (operands[2], V8HImode))
18981 : operands[2] = force_reg (V8HImode, operands[2]);
18982 : if (!register_operand (operands[6], V8HImode))
18983 : operands[6] = force_reg (V8HImode, operands[6]);
18984 : operands[5] = GEN_INT (reg_mask);
18985 : }
18986 : #undef DONE
18987 : #undef FAIL
18988 : static const uint8_t expand_encoding[] = {
18989 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
18990 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
18991 : 0x25
18992 : };
18993 : return complete_seq (expand_encoding, operands);
18994 : }
18995 :
18996 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
18997 : extern rtx_insn *gen_split_1900 (rtx_insn *, rtx *);
18998 : rtx_insn *
18999 : gen_split_1900 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19000 : {
19001 : if (dump_file)
19002 : fprintf (dump_file, "Splitting with gen_split_1900 (sse.md:14142)\n");
19003 : start_sequence ();
19004 : #define FAIL return (end_sequence (), nullptr)
19005 : #define DONE return end_sequence ()
19006 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19007 : {
19008 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19009 : int reg6 = 0xF0;
19010 : int reg2 = 0xCC;
19011 : int reg1 = 0xAA;
19012 : int reg3 = 0;
19013 : int reg4 = 0;
19014 : int reg_mask, tmp1, tmp2;
19015 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19016 : STRIP_UNARY (operands[4])))
19017 : {
19018 : reg4 = reg1;
19019 : reg3 = reg6;
19020 : operands[6] = operands[3];
19021 : }
19022 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19023 : STRIP_UNARY (operands[4])))
19024 : {
19025 : reg4 = reg2;
19026 : reg3 = reg6;
19027 : operands[6] = operands[3];
19028 : }
19029 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19030 : STRIP_UNARY (operands[3])))
19031 : {
19032 : reg4 = reg6;
19033 : reg3 = reg1;
19034 : operands[6] = operands[4];
19035 : }
19036 : else
19037 : {
19038 : reg4 = reg6;
19039 : reg3 = reg2;
19040 : operands[6] = operands[4];
19041 : }
19042 :
19043 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19044 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19045 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19046 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19047 :
19048 : tmp1 = reg1 & reg2;
19049 : tmp2 = reg3 | reg4;
19050 : reg_mask = tmp1 ^ tmp2;
19051 : reg_mask &= 0xFF;
19052 :
19053 : operands[1] = STRIP_UNARY (operands[1]);
19054 : operands[2] = STRIP_UNARY (operands[2]);
19055 : operands[6] = STRIP_UNARY (operands[6]);
19056 : if (!register_operand (operands[2], V16SImode))
19057 : operands[2] = force_reg (V16SImode, operands[2]);
19058 : if (!register_operand (operands[6], V16SImode))
19059 : operands[6] = force_reg (V16SImode, operands[6]);
19060 : operands[5] = GEN_INT (reg_mask);
19061 : }
19062 : #undef DONE
19063 : #undef FAIL
19064 : static const uint8_t expand_encoding[] = {
19065 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
19066 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19067 : 0x25
19068 : };
19069 : return complete_seq (expand_encoding, operands);
19070 : }
19071 :
19072 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19073 : extern rtx_insn *gen_split_1910 (rtx_insn *, rtx *);
19074 : rtx_insn *
19075 : gen_split_1910 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19076 : {
19077 : if (dump_file)
19078 : fprintf (dump_file, "Splitting with gen_split_1910 (sse.md:14142)\n");
19079 : start_sequence ();
19080 : #define FAIL return (end_sequence (), nullptr)
19081 : #define DONE return end_sequence ()
19082 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19083 : {
19084 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19085 : int reg6 = 0xF0;
19086 : int reg2 = 0xCC;
19087 : int reg1 = 0xAA;
19088 : int reg3 = 0;
19089 : int reg4 = 0;
19090 : int reg_mask, tmp1, tmp2;
19091 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19092 : STRIP_UNARY (operands[4])))
19093 : {
19094 : reg4 = reg1;
19095 : reg3 = reg6;
19096 : operands[6] = operands[3];
19097 : }
19098 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19099 : STRIP_UNARY (operands[4])))
19100 : {
19101 : reg4 = reg2;
19102 : reg3 = reg6;
19103 : operands[6] = operands[3];
19104 : }
19105 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19106 : STRIP_UNARY (operands[3])))
19107 : {
19108 : reg4 = reg6;
19109 : reg3 = reg1;
19110 : operands[6] = operands[4];
19111 : }
19112 : else
19113 : {
19114 : reg4 = reg6;
19115 : reg3 = reg2;
19116 : operands[6] = operands[4];
19117 : }
19118 :
19119 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19120 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19121 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19122 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19123 :
19124 : tmp1 = reg1 | reg2;
19125 : tmp2 = reg3 ^ reg4;
19126 : reg_mask = tmp1 & tmp2;
19127 : reg_mask &= 0xFF;
19128 :
19129 : operands[1] = STRIP_UNARY (operands[1]);
19130 : operands[2] = STRIP_UNARY (operands[2]);
19131 : operands[6] = STRIP_UNARY (operands[6]);
19132 : if (!register_operand (operands[2], V16SImode))
19133 : operands[2] = force_reg (V16SImode, operands[2]);
19134 : if (!register_operand (operands[6], V16SImode))
19135 : operands[6] = force_reg (V16SImode, operands[6]);
19136 : operands[5] = GEN_INT (reg_mask);
19137 : }
19138 : #undef DONE
19139 : #undef FAIL
19140 : static const uint8_t expand_encoding[] = {
19141 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
19142 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19143 : 0x25
19144 : };
19145 : return complete_seq (expand_encoding, operands);
19146 : }
19147 :
19148 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19149 : extern rtx_insn *gen_split_1920 (rtx_insn *, rtx *);
19150 : rtx_insn *
19151 : gen_split_1920 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19152 : {
19153 : if (dump_file)
19154 : fprintf (dump_file, "Splitting with gen_split_1920 (sse.md:14142)\n");
19155 : start_sequence ();
19156 : #define FAIL return (end_sequence (), nullptr)
19157 : #define DONE return end_sequence ()
19158 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19159 : {
19160 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19161 : int reg6 = 0xF0;
19162 : int reg2 = 0xCC;
19163 : int reg1 = 0xAA;
19164 : int reg3 = 0;
19165 : int reg4 = 0;
19166 : int reg_mask, tmp1, tmp2;
19167 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19168 : STRIP_UNARY (operands[4])))
19169 : {
19170 : reg4 = reg1;
19171 : reg3 = reg6;
19172 : operands[6] = operands[3];
19173 : }
19174 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19175 : STRIP_UNARY (operands[4])))
19176 : {
19177 : reg4 = reg2;
19178 : reg3 = reg6;
19179 : operands[6] = operands[3];
19180 : }
19181 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19182 : STRIP_UNARY (operands[3])))
19183 : {
19184 : reg4 = reg6;
19185 : reg3 = reg1;
19186 : operands[6] = operands[4];
19187 : }
19188 : else
19189 : {
19190 : reg4 = reg6;
19191 : reg3 = reg2;
19192 : operands[6] = operands[4];
19193 : }
19194 :
19195 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19196 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19197 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19198 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19199 :
19200 : tmp1 = reg1 ^ reg2;
19201 : tmp2 = reg3 ^ reg4;
19202 : reg_mask = tmp1 | tmp2;
19203 : reg_mask &= 0xFF;
19204 :
19205 : operands[1] = STRIP_UNARY (operands[1]);
19206 : operands[2] = STRIP_UNARY (operands[2]);
19207 : operands[6] = STRIP_UNARY (operands[6]);
19208 : if (!register_operand (operands[2], V16SImode))
19209 : operands[2] = force_reg (V16SImode, operands[2]);
19210 : if (!register_operand (operands[6], V16SImode))
19211 : operands[6] = force_reg (V16SImode, operands[6]);
19212 : operands[5] = GEN_INT (reg_mask);
19213 : }
19214 : #undef DONE
19215 : #undef FAIL
19216 : static const uint8_t expand_encoding[] = {
19217 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
19218 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19219 : 0x25
19220 : };
19221 : return complete_seq (expand_encoding, operands);
19222 : }
19223 :
19224 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19225 : extern rtx_insn *gen_split_1930 (rtx_insn *, rtx *);
19226 : rtx_insn *
19227 : gen_split_1930 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19228 : {
19229 : if (dump_file)
19230 : fprintf (dump_file, "Splitting with gen_split_1930 (sse.md:14142)\n");
19231 : start_sequence ();
19232 : #define FAIL return (end_sequence (), nullptr)
19233 : #define DONE return end_sequence ()
19234 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19235 : {
19236 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19237 : int reg6 = 0xF0;
19238 : int reg2 = 0xCC;
19239 : int reg1 = 0xAA;
19240 : int reg3 = 0;
19241 : int reg4 = 0;
19242 : int reg_mask, tmp1, tmp2;
19243 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19244 : STRIP_UNARY (operands[4])))
19245 : {
19246 : reg4 = reg1;
19247 : reg3 = reg6;
19248 : operands[6] = operands[3];
19249 : }
19250 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19251 : STRIP_UNARY (operands[4])))
19252 : {
19253 : reg4 = reg2;
19254 : reg3 = reg6;
19255 : operands[6] = operands[3];
19256 : }
19257 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19258 : STRIP_UNARY (operands[3])))
19259 : {
19260 : reg4 = reg6;
19261 : reg3 = reg1;
19262 : operands[6] = operands[4];
19263 : }
19264 : else
19265 : {
19266 : reg4 = reg6;
19267 : reg3 = reg2;
19268 : operands[6] = operands[4];
19269 : }
19270 :
19271 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19272 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19273 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19274 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19275 :
19276 : tmp1 = reg1 & reg2;
19277 : tmp2 = reg3 ^ reg4;
19278 : reg_mask = tmp1 ^ tmp2;
19279 : reg_mask &= 0xFF;
19280 :
19281 : operands[1] = STRIP_UNARY (operands[1]);
19282 : operands[2] = STRIP_UNARY (operands[2]);
19283 : operands[6] = STRIP_UNARY (operands[6]);
19284 : if (!register_operand (operands[2], V8SImode))
19285 : operands[2] = force_reg (V8SImode, operands[2]);
19286 : if (!register_operand (operands[6], V8SImode))
19287 : operands[6] = force_reg (V8SImode, operands[6]);
19288 : operands[5] = GEN_INT (reg_mask);
19289 : }
19290 : #undef DONE
19291 : #undef FAIL
19292 : static const uint8_t expand_encoding[] = {
19293 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
19294 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19295 : 0x25
19296 : };
19297 : return complete_seq (expand_encoding, operands);
19298 : }
19299 :
19300 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19301 : extern rtx_insn *gen_split_1940 (rtx_insn *, rtx *);
19302 : rtx_insn *
19303 : gen_split_1940 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19304 : {
19305 : if (dump_file)
19306 : fprintf (dump_file, "Splitting with gen_split_1940 (sse.md:14142)\n");
19307 : start_sequence ();
19308 : #define FAIL return (end_sequence (), nullptr)
19309 : #define DONE return end_sequence ()
19310 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19311 : {
19312 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19313 : int reg6 = 0xF0;
19314 : int reg2 = 0xCC;
19315 : int reg1 = 0xAA;
19316 : int reg3 = 0;
19317 : int reg4 = 0;
19318 : int reg_mask, tmp1, tmp2;
19319 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19320 : STRIP_UNARY (operands[4])))
19321 : {
19322 : reg4 = reg1;
19323 : reg3 = reg6;
19324 : operands[6] = operands[3];
19325 : }
19326 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19327 : STRIP_UNARY (operands[4])))
19328 : {
19329 : reg4 = reg2;
19330 : reg3 = reg6;
19331 : operands[6] = operands[3];
19332 : }
19333 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19334 : STRIP_UNARY (operands[3])))
19335 : {
19336 : reg4 = reg6;
19337 : reg3 = reg1;
19338 : operands[6] = operands[4];
19339 : }
19340 : else
19341 : {
19342 : reg4 = reg6;
19343 : reg3 = reg2;
19344 : operands[6] = operands[4];
19345 : }
19346 :
19347 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19348 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19349 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19350 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19351 :
19352 : tmp1 = reg1 ^ reg2;
19353 : tmp2 = reg3 & reg4;
19354 : reg_mask = tmp1 & tmp2;
19355 : reg_mask &= 0xFF;
19356 :
19357 : operands[1] = STRIP_UNARY (operands[1]);
19358 : operands[2] = STRIP_UNARY (operands[2]);
19359 : operands[6] = STRIP_UNARY (operands[6]);
19360 : if (!register_operand (operands[2], V8SImode))
19361 : operands[2] = force_reg (V8SImode, operands[2]);
19362 : if (!register_operand (operands[6], V8SImode))
19363 : operands[6] = force_reg (V8SImode, operands[6]);
19364 : operands[5] = GEN_INT (reg_mask);
19365 : }
19366 : #undef DONE
19367 : #undef FAIL
19368 : static const uint8_t expand_encoding[] = {
19369 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
19370 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19371 : 0x25
19372 : };
19373 : return complete_seq (expand_encoding, operands);
19374 : }
19375 :
19376 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19377 : extern rtx_insn *gen_split_1950 (rtx_insn *, rtx *);
19378 : rtx_insn *
19379 : gen_split_1950 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19380 : {
19381 : if (dump_file)
19382 : fprintf (dump_file, "Splitting with gen_split_1950 (sse.md:14142)\n");
19383 : start_sequence ();
19384 : #define FAIL return (end_sequence (), nullptr)
19385 : #define DONE return end_sequence ()
19386 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19387 : {
19388 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19389 : int reg6 = 0xF0;
19390 : int reg2 = 0xCC;
19391 : int reg1 = 0xAA;
19392 : int reg3 = 0;
19393 : int reg4 = 0;
19394 : int reg_mask, tmp1, tmp2;
19395 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19396 : STRIP_UNARY (operands[4])))
19397 : {
19398 : reg4 = reg1;
19399 : reg3 = reg6;
19400 : operands[6] = operands[3];
19401 : }
19402 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19403 : STRIP_UNARY (operands[4])))
19404 : {
19405 : reg4 = reg2;
19406 : reg3 = reg6;
19407 : operands[6] = operands[3];
19408 : }
19409 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19410 : STRIP_UNARY (operands[3])))
19411 : {
19412 : reg4 = reg6;
19413 : reg3 = reg1;
19414 : operands[6] = operands[4];
19415 : }
19416 : else
19417 : {
19418 : reg4 = reg6;
19419 : reg3 = reg2;
19420 : operands[6] = operands[4];
19421 : }
19422 :
19423 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19424 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19425 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19426 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19427 :
19428 : tmp1 = reg1 & reg2;
19429 : tmp2 = reg3 & reg4;
19430 : reg_mask = tmp1 | tmp2;
19431 : reg_mask &= 0xFF;
19432 :
19433 : operands[1] = STRIP_UNARY (operands[1]);
19434 : operands[2] = STRIP_UNARY (operands[2]);
19435 : operands[6] = STRIP_UNARY (operands[6]);
19436 : if (!register_operand (operands[2], V4SImode))
19437 : operands[2] = force_reg (V4SImode, operands[2]);
19438 : if (!register_operand (operands[6], V4SImode))
19439 : operands[6] = force_reg (V4SImode, operands[6]);
19440 : operands[5] = GEN_INT (reg_mask);
19441 : }
19442 : #undef DONE
19443 : #undef FAIL
19444 : static const uint8_t expand_encoding[] = {
19445 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
19446 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19447 : 0x25
19448 : };
19449 : return complete_seq (expand_encoding, operands);
19450 : }
19451 :
19452 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19453 : extern rtx_insn *gen_split_1960 (rtx_insn *, rtx *);
19454 : rtx_insn *
19455 : gen_split_1960 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19456 : {
19457 : if (dump_file)
19458 : fprintf (dump_file, "Splitting with gen_split_1960 (sse.md:14142)\n");
19459 : start_sequence ();
19460 : #define FAIL return (end_sequence (), nullptr)
19461 : #define DONE return end_sequence ()
19462 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19463 : {
19464 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19465 : int reg6 = 0xF0;
19466 : int reg2 = 0xCC;
19467 : int reg1 = 0xAA;
19468 : int reg3 = 0;
19469 : int reg4 = 0;
19470 : int reg_mask, tmp1, tmp2;
19471 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19472 : STRIP_UNARY (operands[4])))
19473 : {
19474 : reg4 = reg1;
19475 : reg3 = reg6;
19476 : operands[6] = operands[3];
19477 : }
19478 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19479 : STRIP_UNARY (operands[4])))
19480 : {
19481 : reg4 = reg2;
19482 : reg3 = reg6;
19483 : operands[6] = operands[3];
19484 : }
19485 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19486 : STRIP_UNARY (operands[3])))
19487 : {
19488 : reg4 = reg6;
19489 : reg3 = reg1;
19490 : operands[6] = operands[4];
19491 : }
19492 : else
19493 : {
19494 : reg4 = reg6;
19495 : reg3 = reg2;
19496 : operands[6] = operands[4];
19497 : }
19498 :
19499 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19500 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19501 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19502 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19503 :
19504 : tmp1 = reg1 | reg2;
19505 : tmp2 = reg3 & reg4;
19506 : reg_mask = tmp1 ^ tmp2;
19507 : reg_mask &= 0xFF;
19508 :
19509 : operands[1] = STRIP_UNARY (operands[1]);
19510 : operands[2] = STRIP_UNARY (operands[2]);
19511 : operands[6] = STRIP_UNARY (operands[6]);
19512 : if (!register_operand (operands[2], V4SImode))
19513 : operands[2] = force_reg (V4SImode, operands[2]);
19514 : if (!register_operand (operands[6], V4SImode))
19515 : operands[6] = force_reg (V4SImode, operands[6]);
19516 : operands[5] = GEN_INT (reg_mask);
19517 : }
19518 : #undef DONE
19519 : #undef FAIL
19520 : static const uint8_t expand_encoding[] = {
19521 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
19522 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19523 : 0x25
19524 : };
19525 : return complete_seq (expand_encoding, operands);
19526 : }
19527 :
19528 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19529 : extern rtx_insn *gen_split_1970 (rtx_insn *, rtx *);
19530 : rtx_insn *
19531 : gen_split_1970 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19532 : {
19533 : if (dump_file)
19534 : fprintf (dump_file, "Splitting with gen_split_1970 (sse.md:14142)\n");
19535 : start_sequence ();
19536 : #define FAIL return (end_sequence (), nullptr)
19537 : #define DONE return end_sequence ()
19538 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19539 : {
19540 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19541 : int reg6 = 0xF0;
19542 : int reg2 = 0xCC;
19543 : int reg1 = 0xAA;
19544 : int reg3 = 0;
19545 : int reg4 = 0;
19546 : int reg_mask, tmp1, tmp2;
19547 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19548 : STRIP_UNARY (operands[4])))
19549 : {
19550 : reg4 = reg1;
19551 : reg3 = reg6;
19552 : operands[6] = operands[3];
19553 : }
19554 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19555 : STRIP_UNARY (operands[4])))
19556 : {
19557 : reg4 = reg2;
19558 : reg3 = reg6;
19559 : operands[6] = operands[3];
19560 : }
19561 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19562 : STRIP_UNARY (operands[3])))
19563 : {
19564 : reg4 = reg6;
19565 : reg3 = reg1;
19566 : operands[6] = operands[4];
19567 : }
19568 : else
19569 : {
19570 : reg4 = reg6;
19571 : reg3 = reg2;
19572 : operands[6] = operands[4];
19573 : }
19574 :
19575 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19576 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19577 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19578 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19579 :
19580 : tmp1 = reg1 ^ reg2;
19581 : tmp2 = reg3 | reg4;
19582 : reg_mask = tmp1 & tmp2;
19583 : reg_mask &= 0xFF;
19584 :
19585 : operands[1] = STRIP_UNARY (operands[1]);
19586 : operands[2] = STRIP_UNARY (operands[2]);
19587 : operands[6] = STRIP_UNARY (operands[6]);
19588 : if (!register_operand (operands[2], V4SImode))
19589 : operands[2] = force_reg (V4SImode, operands[2]);
19590 : if (!register_operand (operands[6], V4SImode))
19591 : operands[6] = force_reg (V4SImode, operands[6]);
19592 : operands[5] = GEN_INT (reg_mask);
19593 : }
19594 : #undef DONE
19595 : #undef FAIL
19596 : static const uint8_t expand_encoding[] = {
19597 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
19598 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19599 : 0x25
19600 : };
19601 : return complete_seq (expand_encoding, operands);
19602 : }
19603 :
19604 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19605 : extern rtx_insn *gen_split_1980 (rtx_insn *, rtx *);
19606 : rtx_insn *
19607 : gen_split_1980 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19608 : {
19609 : if (dump_file)
19610 : fprintf (dump_file, "Splitting with gen_split_1980 (sse.md:14142)\n");
19611 : start_sequence ();
19612 : #define FAIL return (end_sequence (), nullptr)
19613 : #define DONE return end_sequence ()
19614 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19615 : {
19616 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19617 : int reg6 = 0xF0;
19618 : int reg2 = 0xCC;
19619 : int reg1 = 0xAA;
19620 : int reg3 = 0;
19621 : int reg4 = 0;
19622 : int reg_mask, tmp1, tmp2;
19623 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19624 : STRIP_UNARY (operands[4])))
19625 : {
19626 : reg4 = reg1;
19627 : reg3 = reg6;
19628 : operands[6] = operands[3];
19629 : }
19630 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19631 : STRIP_UNARY (operands[4])))
19632 : {
19633 : reg4 = reg2;
19634 : reg3 = reg6;
19635 : operands[6] = operands[3];
19636 : }
19637 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19638 : STRIP_UNARY (operands[3])))
19639 : {
19640 : reg4 = reg6;
19641 : reg3 = reg1;
19642 : operands[6] = operands[4];
19643 : }
19644 : else
19645 : {
19646 : reg4 = reg6;
19647 : reg3 = reg2;
19648 : operands[6] = operands[4];
19649 : }
19650 :
19651 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19652 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19653 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19654 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19655 :
19656 : tmp1 = reg1 & reg2;
19657 : tmp2 = reg3 | reg4;
19658 : reg_mask = tmp1 | tmp2;
19659 : reg_mask &= 0xFF;
19660 :
19661 : operands[1] = STRIP_UNARY (operands[1]);
19662 : operands[2] = STRIP_UNARY (operands[2]);
19663 : operands[6] = STRIP_UNARY (operands[6]);
19664 : if (!register_operand (operands[2], V8DImode))
19665 : operands[2] = force_reg (V8DImode, operands[2]);
19666 : if (!register_operand (operands[6], V8DImode))
19667 : operands[6] = force_reg (V8DImode, operands[6]);
19668 : operands[5] = GEN_INT (reg_mask);
19669 : }
19670 : #undef DONE
19671 : #undef FAIL
19672 : static const uint8_t expand_encoding[] = {
19673 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
19674 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19675 : 0x25
19676 : };
19677 : return complete_seq (expand_encoding, operands);
19678 : }
19679 :
19680 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19681 : extern rtx_insn *gen_split_1990 (rtx_insn *, rtx *);
19682 : rtx_insn *
19683 : gen_split_1990 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19684 : {
19685 : if (dump_file)
19686 : fprintf (dump_file, "Splitting with gen_split_1990 (sse.md:14142)\n");
19687 : start_sequence ();
19688 : #define FAIL return (end_sequence (), nullptr)
19689 : #define DONE return end_sequence ()
19690 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19691 : {
19692 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19693 : int reg6 = 0xF0;
19694 : int reg2 = 0xCC;
19695 : int reg1 = 0xAA;
19696 : int reg3 = 0;
19697 : int reg4 = 0;
19698 : int reg_mask, tmp1, tmp2;
19699 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19700 : STRIP_UNARY (operands[4])))
19701 : {
19702 : reg4 = reg1;
19703 : reg3 = reg6;
19704 : operands[6] = operands[3];
19705 : }
19706 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19707 : STRIP_UNARY (operands[4])))
19708 : {
19709 : reg4 = reg2;
19710 : reg3 = reg6;
19711 : operands[6] = operands[3];
19712 : }
19713 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19714 : STRIP_UNARY (operands[3])))
19715 : {
19716 : reg4 = reg6;
19717 : reg3 = reg1;
19718 : operands[6] = operands[4];
19719 : }
19720 : else
19721 : {
19722 : reg4 = reg6;
19723 : reg3 = reg2;
19724 : operands[6] = operands[4];
19725 : }
19726 :
19727 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19728 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19729 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19730 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19731 :
19732 : tmp1 = reg1 | reg2;
19733 : tmp2 = reg3 | reg4;
19734 : reg_mask = tmp1 ^ tmp2;
19735 : reg_mask &= 0xFF;
19736 :
19737 : operands[1] = STRIP_UNARY (operands[1]);
19738 : operands[2] = STRIP_UNARY (operands[2]);
19739 : operands[6] = STRIP_UNARY (operands[6]);
19740 : if (!register_operand (operands[2], V8DImode))
19741 : operands[2] = force_reg (V8DImode, operands[2]);
19742 : if (!register_operand (operands[6], V8DImode))
19743 : operands[6] = force_reg (V8DImode, operands[6]);
19744 : operands[5] = GEN_INT (reg_mask);
19745 : }
19746 : #undef DONE
19747 : #undef FAIL
19748 : static const uint8_t expand_encoding[] = {
19749 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
19750 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19751 : 0x25
19752 : };
19753 : return complete_seq (expand_encoding, operands);
19754 : }
19755 :
19756 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19757 : extern rtx_insn *gen_split_2000 (rtx_insn *, rtx *);
19758 : rtx_insn *
19759 : gen_split_2000 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19760 : {
19761 : if (dump_file)
19762 : fprintf (dump_file, "Splitting with gen_split_2000 (sse.md:14142)\n");
19763 : start_sequence ();
19764 : #define FAIL return (end_sequence (), nullptr)
19765 : #define DONE return end_sequence ()
19766 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19767 : {
19768 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19769 : int reg6 = 0xF0;
19770 : int reg2 = 0xCC;
19771 : int reg1 = 0xAA;
19772 : int reg3 = 0;
19773 : int reg4 = 0;
19774 : int reg_mask, tmp1, tmp2;
19775 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19776 : STRIP_UNARY (operands[4])))
19777 : {
19778 : reg4 = reg1;
19779 : reg3 = reg6;
19780 : operands[6] = operands[3];
19781 : }
19782 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19783 : STRIP_UNARY (operands[4])))
19784 : {
19785 : reg4 = reg2;
19786 : reg3 = reg6;
19787 : operands[6] = operands[3];
19788 : }
19789 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19790 : STRIP_UNARY (operands[3])))
19791 : {
19792 : reg4 = reg6;
19793 : reg3 = reg1;
19794 : operands[6] = operands[4];
19795 : }
19796 : else
19797 : {
19798 : reg4 = reg6;
19799 : reg3 = reg2;
19800 : operands[6] = operands[4];
19801 : }
19802 :
19803 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19804 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19805 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19806 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19807 :
19808 : tmp1 = reg1 ^ reg2;
19809 : tmp2 = reg3 ^ reg4;
19810 : reg_mask = tmp1 & tmp2;
19811 : reg_mask &= 0xFF;
19812 :
19813 : operands[1] = STRIP_UNARY (operands[1]);
19814 : operands[2] = STRIP_UNARY (operands[2]);
19815 : operands[6] = STRIP_UNARY (operands[6]);
19816 : if (!register_operand (operands[2], V8DImode))
19817 : operands[2] = force_reg (V8DImode, operands[2]);
19818 : if (!register_operand (operands[6], V8DImode))
19819 : operands[6] = force_reg (V8DImode, operands[6]);
19820 : operands[5] = GEN_INT (reg_mask);
19821 : }
19822 : #undef DONE
19823 : #undef FAIL
19824 : static const uint8_t expand_encoding[] = {
19825 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
19826 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19827 : 0x25
19828 : };
19829 : return complete_seq (expand_encoding, operands);
19830 : }
19831 :
19832 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19833 : extern rtx_insn *gen_split_2010 (rtx_insn *, rtx *);
19834 : rtx_insn *
19835 : gen_split_2010 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19836 : {
19837 : if (dump_file)
19838 : fprintf (dump_file, "Splitting with gen_split_2010 (sse.md:14142)\n");
19839 : start_sequence ();
19840 : #define FAIL return (end_sequence (), nullptr)
19841 : #define DONE return end_sequence ()
19842 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19843 : {
19844 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19845 : int reg6 = 0xF0;
19846 : int reg2 = 0xCC;
19847 : int reg1 = 0xAA;
19848 : int reg3 = 0;
19849 : int reg4 = 0;
19850 : int reg_mask, tmp1, tmp2;
19851 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19852 : STRIP_UNARY (operands[4])))
19853 : {
19854 : reg4 = reg1;
19855 : reg3 = reg6;
19856 : operands[6] = operands[3];
19857 : }
19858 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19859 : STRIP_UNARY (operands[4])))
19860 : {
19861 : reg4 = reg2;
19862 : reg3 = reg6;
19863 : operands[6] = operands[3];
19864 : }
19865 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19866 : STRIP_UNARY (operands[3])))
19867 : {
19868 : reg4 = reg6;
19869 : reg3 = reg1;
19870 : operands[6] = operands[4];
19871 : }
19872 : else
19873 : {
19874 : reg4 = reg6;
19875 : reg3 = reg2;
19876 : operands[6] = operands[4];
19877 : }
19878 :
19879 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19880 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19881 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19882 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19883 :
19884 : tmp1 = reg1 & reg2;
19885 : tmp2 = reg3 ^ reg4;
19886 : reg_mask = tmp1 | tmp2;
19887 : reg_mask &= 0xFF;
19888 :
19889 : operands[1] = STRIP_UNARY (operands[1]);
19890 : operands[2] = STRIP_UNARY (operands[2]);
19891 : operands[6] = STRIP_UNARY (operands[6]);
19892 : if (!register_operand (operands[2], V4DImode))
19893 : operands[2] = force_reg (V4DImode, operands[2]);
19894 : if (!register_operand (operands[6], V4DImode))
19895 : operands[6] = force_reg (V4DImode, operands[6]);
19896 : operands[5] = GEN_INT (reg_mask);
19897 : }
19898 : #undef DONE
19899 : #undef FAIL
19900 : static const uint8_t expand_encoding[] = {
19901 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
19902 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19903 : 0x25
19904 : };
19905 : return complete_seq (expand_encoding, operands);
19906 : }
19907 :
19908 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19909 : extern rtx_insn *gen_split_2020 (rtx_insn *, rtx *);
19910 : rtx_insn *
19911 : gen_split_2020 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19912 : {
19913 : if (dump_file)
19914 : fprintf (dump_file, "Splitting with gen_split_2020 (sse.md:14142)\n");
19915 : start_sequence ();
19916 : #define FAIL return (end_sequence (), nullptr)
19917 : #define DONE return end_sequence ()
19918 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19919 : {
19920 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19921 : int reg6 = 0xF0;
19922 : int reg2 = 0xCC;
19923 : int reg1 = 0xAA;
19924 : int reg3 = 0;
19925 : int reg4 = 0;
19926 : int reg_mask, tmp1, tmp2;
19927 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
19928 : STRIP_UNARY (operands[4])))
19929 : {
19930 : reg4 = reg1;
19931 : reg3 = reg6;
19932 : operands[6] = operands[3];
19933 : }
19934 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
19935 : STRIP_UNARY (operands[4])))
19936 : {
19937 : reg4 = reg2;
19938 : reg3 = reg6;
19939 : operands[6] = operands[3];
19940 : }
19941 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
19942 : STRIP_UNARY (operands[3])))
19943 : {
19944 : reg4 = reg6;
19945 : reg3 = reg1;
19946 : operands[6] = operands[4];
19947 : }
19948 : else
19949 : {
19950 : reg4 = reg6;
19951 : reg3 = reg2;
19952 : operands[6] = operands[4];
19953 : }
19954 :
19955 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
19956 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
19957 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
19958 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
19959 :
19960 : tmp1 = reg1 | reg2;
19961 : tmp2 = reg3 ^ reg4;
19962 : reg_mask = tmp1 ^ tmp2;
19963 : reg_mask &= 0xFF;
19964 :
19965 : operands[1] = STRIP_UNARY (operands[1]);
19966 : operands[2] = STRIP_UNARY (operands[2]);
19967 : operands[6] = STRIP_UNARY (operands[6]);
19968 : if (!register_operand (operands[2], V4DImode))
19969 : operands[2] = force_reg (V4DImode, operands[2]);
19970 : if (!register_operand (operands[6], V4DImode))
19971 : operands[6] = force_reg (V4DImode, operands[6]);
19972 : operands[5] = GEN_INT (reg_mask);
19973 : }
19974 : #undef DONE
19975 : #undef FAIL
19976 : static const uint8_t expand_encoding[] = {
19977 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
19978 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
19979 : 0x25
19980 : };
19981 : return complete_seq (expand_encoding, operands);
19982 : }
19983 :
19984 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
19985 : extern rtx_insn *gen_split_2030 (rtx_insn *, rtx *);
19986 : rtx_insn *
19987 : gen_split_2030 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
19988 : {
19989 : if (dump_file)
19990 : fprintf (dump_file, "Splitting with gen_split_2030 (sse.md:14142)\n");
19991 : start_sequence ();
19992 : #define FAIL return (end_sequence (), nullptr)
19993 : #define DONE return end_sequence ()
19994 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
19995 : {
19996 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
19997 : int reg6 = 0xF0;
19998 : int reg2 = 0xCC;
19999 : int reg1 = 0xAA;
20000 : int reg3 = 0;
20001 : int reg4 = 0;
20002 : int reg_mask, tmp1, tmp2;
20003 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20004 : STRIP_UNARY (operands[4])))
20005 : {
20006 : reg4 = reg1;
20007 : reg3 = reg6;
20008 : operands[6] = operands[3];
20009 : }
20010 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20011 : STRIP_UNARY (operands[4])))
20012 : {
20013 : reg4 = reg2;
20014 : reg3 = reg6;
20015 : operands[6] = operands[3];
20016 : }
20017 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20018 : STRIP_UNARY (operands[3])))
20019 : {
20020 : reg4 = reg6;
20021 : reg3 = reg1;
20022 : operands[6] = operands[4];
20023 : }
20024 : else
20025 : {
20026 : reg4 = reg6;
20027 : reg3 = reg2;
20028 : operands[6] = operands[4];
20029 : }
20030 :
20031 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20032 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20033 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20034 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20035 :
20036 : tmp1 = reg1 & reg2;
20037 : tmp2 = reg3 & reg4;
20038 : reg_mask = tmp1 & tmp2;
20039 : reg_mask &= 0xFF;
20040 :
20041 : operands[1] = STRIP_UNARY (operands[1]);
20042 : operands[2] = STRIP_UNARY (operands[2]);
20043 : operands[6] = STRIP_UNARY (operands[6]);
20044 : if (!register_operand (operands[2], V2DImode))
20045 : operands[2] = force_reg (V2DImode, operands[2]);
20046 : if (!register_operand (operands[6], V2DImode))
20047 : operands[6] = force_reg (V2DImode, operands[6]);
20048 : operands[5] = GEN_INT (reg_mask);
20049 : }
20050 : #undef DONE
20051 : #undef FAIL
20052 : static const uint8_t expand_encoding[] = {
20053 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
20054 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20055 : 0x25
20056 : };
20057 : return complete_seq (expand_encoding, operands);
20058 : }
20059 :
20060 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20061 : extern rtx_insn *gen_split_2040 (rtx_insn *, rtx *);
20062 : rtx_insn *
20063 : gen_split_2040 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20064 : {
20065 : if (dump_file)
20066 : fprintf (dump_file, "Splitting with gen_split_2040 (sse.md:14142)\n");
20067 : start_sequence ();
20068 : #define FAIL return (end_sequence (), nullptr)
20069 : #define DONE return end_sequence ()
20070 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20071 : {
20072 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20073 : int reg6 = 0xF0;
20074 : int reg2 = 0xCC;
20075 : int reg1 = 0xAA;
20076 : int reg3 = 0;
20077 : int reg4 = 0;
20078 : int reg_mask, tmp1, tmp2;
20079 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20080 : STRIP_UNARY (operands[4])))
20081 : {
20082 : reg4 = reg1;
20083 : reg3 = reg6;
20084 : operands[6] = operands[3];
20085 : }
20086 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20087 : STRIP_UNARY (operands[4])))
20088 : {
20089 : reg4 = reg2;
20090 : reg3 = reg6;
20091 : operands[6] = operands[3];
20092 : }
20093 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20094 : STRIP_UNARY (operands[3])))
20095 : {
20096 : reg4 = reg6;
20097 : reg3 = reg1;
20098 : operands[6] = operands[4];
20099 : }
20100 : else
20101 : {
20102 : reg4 = reg6;
20103 : reg3 = reg2;
20104 : operands[6] = operands[4];
20105 : }
20106 :
20107 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20108 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20109 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20110 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20111 :
20112 : tmp1 = reg1 | reg2;
20113 : tmp2 = reg3 & reg4;
20114 : reg_mask = tmp1 | tmp2;
20115 : reg_mask &= 0xFF;
20116 :
20117 : operands[1] = STRIP_UNARY (operands[1]);
20118 : operands[2] = STRIP_UNARY (operands[2]);
20119 : operands[6] = STRIP_UNARY (operands[6]);
20120 : if (!register_operand (operands[2], V2DImode))
20121 : operands[2] = force_reg (V2DImode, operands[2]);
20122 : if (!register_operand (operands[6], V2DImode))
20123 : operands[6] = force_reg (V2DImode, operands[6]);
20124 : operands[5] = GEN_INT (reg_mask);
20125 : }
20126 : #undef DONE
20127 : #undef FAIL
20128 : static const uint8_t expand_encoding[] = {
20129 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
20130 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20131 : 0x25
20132 : };
20133 : return complete_seq (expand_encoding, operands);
20134 : }
20135 :
20136 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20137 : extern rtx_insn *gen_split_2050 (rtx_insn *, rtx *);
20138 : rtx_insn *
20139 : gen_split_2050 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20140 : {
20141 : if (dump_file)
20142 : fprintf (dump_file, "Splitting with gen_split_2050 (sse.md:14142)\n");
20143 : start_sequence ();
20144 : #define FAIL return (end_sequence (), nullptr)
20145 : #define DONE return end_sequence ()
20146 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20147 : {
20148 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20149 : int reg6 = 0xF0;
20150 : int reg2 = 0xCC;
20151 : int reg1 = 0xAA;
20152 : int reg3 = 0;
20153 : int reg4 = 0;
20154 : int reg_mask, tmp1, tmp2;
20155 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20156 : STRIP_UNARY (operands[4])))
20157 : {
20158 : reg4 = reg1;
20159 : reg3 = reg6;
20160 : operands[6] = operands[3];
20161 : }
20162 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20163 : STRIP_UNARY (operands[4])))
20164 : {
20165 : reg4 = reg2;
20166 : reg3 = reg6;
20167 : operands[6] = operands[3];
20168 : }
20169 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20170 : STRIP_UNARY (operands[3])))
20171 : {
20172 : reg4 = reg6;
20173 : reg3 = reg1;
20174 : operands[6] = operands[4];
20175 : }
20176 : else
20177 : {
20178 : reg4 = reg6;
20179 : reg3 = reg2;
20180 : operands[6] = operands[4];
20181 : }
20182 :
20183 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20184 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20185 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20186 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20187 :
20188 : tmp1 = reg1 ^ reg2;
20189 : tmp2 = reg3 & reg4;
20190 : reg_mask = tmp1 ^ tmp2;
20191 : reg_mask &= 0xFF;
20192 :
20193 : operands[1] = STRIP_UNARY (operands[1]);
20194 : operands[2] = STRIP_UNARY (operands[2]);
20195 : operands[6] = STRIP_UNARY (operands[6]);
20196 : if (!register_operand (operands[2], V2DImode))
20197 : operands[2] = force_reg (V2DImode, operands[2]);
20198 : if (!register_operand (operands[6], V2DImode))
20199 : operands[6] = force_reg (V2DImode, operands[6]);
20200 : operands[5] = GEN_INT (reg_mask);
20201 : }
20202 : #undef DONE
20203 : #undef FAIL
20204 : static const uint8_t expand_encoding[] = {
20205 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
20206 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20207 : 0x25
20208 : };
20209 : return complete_seq (expand_encoding, operands);
20210 : }
20211 :
20212 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20213 : extern rtx_insn *gen_split_2060 (rtx_insn *, rtx *);
20214 : rtx_insn *
20215 : gen_split_2060 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20216 : {
20217 : if (dump_file)
20218 : fprintf (dump_file, "Splitting with gen_split_2060 (sse.md:14142)\n");
20219 : start_sequence ();
20220 : #define FAIL return (end_sequence (), nullptr)
20221 : #define DONE return end_sequence ()
20222 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20223 : {
20224 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20225 : int reg6 = 0xF0;
20226 : int reg2 = 0xCC;
20227 : int reg1 = 0xAA;
20228 : int reg3 = 0;
20229 : int reg4 = 0;
20230 : int reg_mask, tmp1, tmp2;
20231 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20232 : STRIP_UNARY (operands[4])))
20233 : {
20234 : reg4 = reg1;
20235 : reg3 = reg6;
20236 : operands[6] = operands[3];
20237 : }
20238 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20239 : STRIP_UNARY (operands[4])))
20240 : {
20241 : reg4 = reg2;
20242 : reg3 = reg6;
20243 : operands[6] = operands[3];
20244 : }
20245 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20246 : STRIP_UNARY (operands[3])))
20247 : {
20248 : reg4 = reg6;
20249 : reg3 = reg1;
20250 : operands[6] = operands[4];
20251 : }
20252 : else
20253 : {
20254 : reg4 = reg6;
20255 : reg3 = reg2;
20256 : operands[6] = operands[4];
20257 : }
20258 :
20259 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20260 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20261 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20262 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20263 :
20264 : tmp1 = reg1 & reg2;
20265 : tmp2 = reg3 | reg4;
20266 : reg_mask = tmp1 & tmp2;
20267 : reg_mask &= 0xFF;
20268 :
20269 : operands[1] = STRIP_UNARY (operands[1]);
20270 : operands[2] = STRIP_UNARY (operands[2]);
20271 : operands[6] = STRIP_UNARY (operands[6]);
20272 : if (!register_operand (operands[2], V32HFmode))
20273 : operands[2] = force_reg (V32HFmode, operands[2]);
20274 : if (!register_operand (operands[6], V32HFmode))
20275 : operands[6] = force_reg (V32HFmode, operands[6]);
20276 : operands[5] = GEN_INT (reg_mask);
20277 : }
20278 : #undef DONE
20279 : #undef FAIL
20280 : static const uint8_t expand_encoding[] = {
20281 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
20282 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20283 : 0x25
20284 : };
20285 : return complete_seq (expand_encoding, operands);
20286 : }
20287 :
20288 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20289 : extern rtx_insn *gen_split_2070 (rtx_insn *, rtx *);
20290 : rtx_insn *
20291 : gen_split_2070 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20292 : {
20293 : if (dump_file)
20294 : fprintf (dump_file, "Splitting with gen_split_2070 (sse.md:14142)\n");
20295 : start_sequence ();
20296 : #define FAIL return (end_sequence (), nullptr)
20297 : #define DONE return end_sequence ()
20298 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20299 : {
20300 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20301 : int reg6 = 0xF0;
20302 : int reg2 = 0xCC;
20303 : int reg1 = 0xAA;
20304 : int reg3 = 0;
20305 : int reg4 = 0;
20306 : int reg_mask, tmp1, tmp2;
20307 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20308 : STRIP_UNARY (operands[4])))
20309 : {
20310 : reg4 = reg1;
20311 : reg3 = reg6;
20312 : operands[6] = operands[3];
20313 : }
20314 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20315 : STRIP_UNARY (operands[4])))
20316 : {
20317 : reg4 = reg2;
20318 : reg3 = reg6;
20319 : operands[6] = operands[3];
20320 : }
20321 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20322 : STRIP_UNARY (operands[3])))
20323 : {
20324 : reg4 = reg6;
20325 : reg3 = reg1;
20326 : operands[6] = operands[4];
20327 : }
20328 : else
20329 : {
20330 : reg4 = reg6;
20331 : reg3 = reg2;
20332 : operands[6] = operands[4];
20333 : }
20334 :
20335 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20336 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20337 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20338 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20339 :
20340 : tmp1 = reg1 | reg2;
20341 : tmp2 = reg3 | reg4;
20342 : reg_mask = tmp1 | tmp2;
20343 : reg_mask &= 0xFF;
20344 :
20345 : operands[1] = STRIP_UNARY (operands[1]);
20346 : operands[2] = STRIP_UNARY (operands[2]);
20347 : operands[6] = STRIP_UNARY (operands[6]);
20348 : if (!register_operand (operands[2], V32HFmode))
20349 : operands[2] = force_reg (V32HFmode, operands[2]);
20350 : if (!register_operand (operands[6], V32HFmode))
20351 : operands[6] = force_reg (V32HFmode, operands[6]);
20352 : operands[5] = GEN_INT (reg_mask);
20353 : }
20354 : #undef DONE
20355 : #undef FAIL
20356 : static const uint8_t expand_encoding[] = {
20357 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
20358 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20359 : 0x25
20360 : };
20361 : return complete_seq (expand_encoding, operands);
20362 : }
20363 :
20364 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20365 : extern rtx_insn *gen_split_2080 (rtx_insn *, rtx *);
20366 : rtx_insn *
20367 : gen_split_2080 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20368 : {
20369 : if (dump_file)
20370 : fprintf (dump_file, "Splitting with gen_split_2080 (sse.md:14142)\n");
20371 : start_sequence ();
20372 : #define FAIL return (end_sequence (), nullptr)
20373 : #define DONE return end_sequence ()
20374 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20375 : {
20376 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20377 : int reg6 = 0xF0;
20378 : int reg2 = 0xCC;
20379 : int reg1 = 0xAA;
20380 : int reg3 = 0;
20381 : int reg4 = 0;
20382 : int reg_mask, tmp1, tmp2;
20383 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20384 : STRIP_UNARY (operands[4])))
20385 : {
20386 : reg4 = reg1;
20387 : reg3 = reg6;
20388 : operands[6] = operands[3];
20389 : }
20390 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20391 : STRIP_UNARY (operands[4])))
20392 : {
20393 : reg4 = reg2;
20394 : reg3 = reg6;
20395 : operands[6] = operands[3];
20396 : }
20397 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20398 : STRIP_UNARY (operands[3])))
20399 : {
20400 : reg4 = reg6;
20401 : reg3 = reg1;
20402 : operands[6] = operands[4];
20403 : }
20404 : else
20405 : {
20406 : reg4 = reg6;
20407 : reg3 = reg2;
20408 : operands[6] = operands[4];
20409 : }
20410 :
20411 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20412 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20413 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20414 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20415 :
20416 : tmp1 = reg1 ^ reg2;
20417 : tmp2 = reg3 | reg4;
20418 : reg_mask = tmp1 ^ tmp2;
20419 : reg_mask &= 0xFF;
20420 :
20421 : operands[1] = STRIP_UNARY (operands[1]);
20422 : operands[2] = STRIP_UNARY (operands[2]);
20423 : operands[6] = STRIP_UNARY (operands[6]);
20424 : if (!register_operand (operands[2], V32HFmode))
20425 : operands[2] = force_reg (V32HFmode, operands[2]);
20426 : if (!register_operand (operands[6], V32HFmode))
20427 : operands[6] = force_reg (V32HFmode, operands[6]);
20428 : operands[5] = GEN_INT (reg_mask);
20429 : }
20430 : #undef DONE
20431 : #undef FAIL
20432 : static const uint8_t expand_encoding[] = {
20433 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
20434 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20435 : 0x25
20436 : };
20437 : return complete_seq (expand_encoding, operands);
20438 : }
20439 :
20440 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20441 : extern rtx_insn *gen_split_2090 (rtx_insn *, rtx *);
20442 : rtx_insn *
20443 : gen_split_2090 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20444 : {
20445 : if (dump_file)
20446 : fprintf (dump_file, "Splitting with gen_split_2090 (sse.md:14142)\n");
20447 : start_sequence ();
20448 : #define FAIL return (end_sequence (), nullptr)
20449 : #define DONE return end_sequence ()
20450 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20451 : {
20452 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20453 : int reg6 = 0xF0;
20454 : int reg2 = 0xCC;
20455 : int reg1 = 0xAA;
20456 : int reg3 = 0;
20457 : int reg4 = 0;
20458 : int reg_mask, tmp1, tmp2;
20459 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20460 : STRIP_UNARY (operands[4])))
20461 : {
20462 : reg4 = reg1;
20463 : reg3 = reg6;
20464 : operands[6] = operands[3];
20465 : }
20466 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20467 : STRIP_UNARY (operands[4])))
20468 : {
20469 : reg4 = reg2;
20470 : reg3 = reg6;
20471 : operands[6] = operands[3];
20472 : }
20473 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20474 : STRIP_UNARY (operands[3])))
20475 : {
20476 : reg4 = reg6;
20477 : reg3 = reg1;
20478 : operands[6] = operands[4];
20479 : }
20480 : else
20481 : {
20482 : reg4 = reg6;
20483 : reg3 = reg2;
20484 : operands[6] = operands[4];
20485 : }
20486 :
20487 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20488 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20489 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20490 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20491 :
20492 : tmp1 = reg1 & reg2;
20493 : tmp2 = reg3 ^ reg4;
20494 : reg_mask = tmp1 & tmp2;
20495 : reg_mask &= 0xFF;
20496 :
20497 : operands[1] = STRIP_UNARY (operands[1]);
20498 : operands[2] = STRIP_UNARY (operands[2]);
20499 : operands[6] = STRIP_UNARY (operands[6]);
20500 : if (!register_operand (operands[2], V16HFmode))
20501 : operands[2] = force_reg (V16HFmode, operands[2]);
20502 : if (!register_operand (operands[6], V16HFmode))
20503 : operands[6] = force_reg (V16HFmode, operands[6]);
20504 : operands[5] = GEN_INT (reg_mask);
20505 : }
20506 : #undef DONE
20507 : #undef FAIL
20508 : static const uint8_t expand_encoding[] = {
20509 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
20510 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20511 : 0x25
20512 : };
20513 : return complete_seq (expand_encoding, operands);
20514 : }
20515 :
20516 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20517 : extern rtx_insn *gen_split_2100 (rtx_insn *, rtx *);
20518 : rtx_insn *
20519 : gen_split_2100 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20520 : {
20521 : if (dump_file)
20522 : fprintf (dump_file, "Splitting with gen_split_2100 (sse.md:14142)\n");
20523 : start_sequence ();
20524 : #define FAIL return (end_sequence (), nullptr)
20525 : #define DONE return end_sequence ()
20526 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20527 : {
20528 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20529 : int reg6 = 0xF0;
20530 : int reg2 = 0xCC;
20531 : int reg1 = 0xAA;
20532 : int reg3 = 0;
20533 : int reg4 = 0;
20534 : int reg_mask, tmp1, tmp2;
20535 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20536 : STRIP_UNARY (operands[4])))
20537 : {
20538 : reg4 = reg1;
20539 : reg3 = reg6;
20540 : operands[6] = operands[3];
20541 : }
20542 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20543 : STRIP_UNARY (operands[4])))
20544 : {
20545 : reg4 = reg2;
20546 : reg3 = reg6;
20547 : operands[6] = operands[3];
20548 : }
20549 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20550 : STRIP_UNARY (operands[3])))
20551 : {
20552 : reg4 = reg6;
20553 : reg3 = reg1;
20554 : operands[6] = operands[4];
20555 : }
20556 : else
20557 : {
20558 : reg4 = reg6;
20559 : reg3 = reg2;
20560 : operands[6] = operands[4];
20561 : }
20562 :
20563 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20564 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20565 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20566 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20567 :
20568 : tmp1 = reg1 | reg2;
20569 : tmp2 = reg3 ^ reg4;
20570 : reg_mask = tmp1 | tmp2;
20571 : reg_mask &= 0xFF;
20572 :
20573 : operands[1] = STRIP_UNARY (operands[1]);
20574 : operands[2] = STRIP_UNARY (operands[2]);
20575 : operands[6] = STRIP_UNARY (operands[6]);
20576 : if (!register_operand (operands[2], V16HFmode))
20577 : operands[2] = force_reg (V16HFmode, operands[2]);
20578 : if (!register_operand (operands[6], V16HFmode))
20579 : operands[6] = force_reg (V16HFmode, operands[6]);
20580 : operands[5] = GEN_INT (reg_mask);
20581 : }
20582 : #undef DONE
20583 : #undef FAIL
20584 : static const uint8_t expand_encoding[] = {
20585 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
20586 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20587 : 0x25
20588 : };
20589 : return complete_seq (expand_encoding, operands);
20590 : }
20591 :
20592 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20593 : extern rtx_insn *gen_split_2110 (rtx_insn *, rtx *);
20594 : rtx_insn *
20595 : gen_split_2110 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20596 : {
20597 : if (dump_file)
20598 : fprintf (dump_file, "Splitting with gen_split_2110 (sse.md:14142)\n");
20599 : start_sequence ();
20600 : #define FAIL return (end_sequence (), nullptr)
20601 : #define DONE return end_sequence ()
20602 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20603 : {
20604 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20605 : int reg6 = 0xF0;
20606 : int reg2 = 0xCC;
20607 : int reg1 = 0xAA;
20608 : int reg3 = 0;
20609 : int reg4 = 0;
20610 : int reg_mask, tmp1, tmp2;
20611 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20612 : STRIP_UNARY (operands[4])))
20613 : {
20614 : reg4 = reg1;
20615 : reg3 = reg6;
20616 : operands[6] = operands[3];
20617 : }
20618 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20619 : STRIP_UNARY (operands[4])))
20620 : {
20621 : reg4 = reg2;
20622 : reg3 = reg6;
20623 : operands[6] = operands[3];
20624 : }
20625 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20626 : STRIP_UNARY (operands[3])))
20627 : {
20628 : reg4 = reg6;
20629 : reg3 = reg1;
20630 : operands[6] = operands[4];
20631 : }
20632 : else
20633 : {
20634 : reg4 = reg6;
20635 : reg3 = reg2;
20636 : operands[6] = operands[4];
20637 : }
20638 :
20639 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20640 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20641 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20642 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20643 :
20644 : tmp1 = reg1 ^ reg2;
20645 : tmp2 = reg3 ^ reg4;
20646 : reg_mask = tmp1 ^ tmp2;
20647 : reg_mask &= 0xFF;
20648 :
20649 : operands[1] = STRIP_UNARY (operands[1]);
20650 : operands[2] = STRIP_UNARY (operands[2]);
20651 : operands[6] = STRIP_UNARY (operands[6]);
20652 : if (!register_operand (operands[2], V16HFmode))
20653 : operands[2] = force_reg (V16HFmode, operands[2]);
20654 : if (!register_operand (operands[6], V16HFmode))
20655 : operands[6] = force_reg (V16HFmode, operands[6]);
20656 : operands[5] = GEN_INT (reg_mask);
20657 : }
20658 : #undef DONE
20659 : #undef FAIL
20660 : static const uint8_t expand_encoding[] = {
20661 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
20662 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20663 : 0x25
20664 : };
20665 : return complete_seq (expand_encoding, operands);
20666 : }
20667 :
20668 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20669 : extern rtx_insn *gen_split_2120 (rtx_insn *, rtx *);
20670 : rtx_insn *
20671 : gen_split_2120 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20672 : {
20673 : if (dump_file)
20674 : fprintf (dump_file, "Splitting with gen_split_2120 (sse.md:14142)\n");
20675 : start_sequence ();
20676 : #define FAIL return (end_sequence (), nullptr)
20677 : #define DONE return end_sequence ()
20678 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20679 : {
20680 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20681 : int reg6 = 0xF0;
20682 : int reg2 = 0xCC;
20683 : int reg1 = 0xAA;
20684 : int reg3 = 0;
20685 : int reg4 = 0;
20686 : int reg_mask, tmp1, tmp2;
20687 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20688 : STRIP_UNARY (operands[4])))
20689 : {
20690 : reg4 = reg1;
20691 : reg3 = reg6;
20692 : operands[6] = operands[3];
20693 : }
20694 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20695 : STRIP_UNARY (operands[4])))
20696 : {
20697 : reg4 = reg2;
20698 : reg3 = reg6;
20699 : operands[6] = operands[3];
20700 : }
20701 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20702 : STRIP_UNARY (operands[3])))
20703 : {
20704 : reg4 = reg6;
20705 : reg3 = reg1;
20706 : operands[6] = operands[4];
20707 : }
20708 : else
20709 : {
20710 : reg4 = reg6;
20711 : reg3 = reg2;
20712 : operands[6] = operands[4];
20713 : }
20714 :
20715 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20716 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20717 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20718 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20719 :
20720 : tmp1 = reg1 | reg2;
20721 : tmp2 = reg3 & reg4;
20722 : reg_mask = tmp1 & tmp2;
20723 : reg_mask &= 0xFF;
20724 :
20725 : operands[1] = STRIP_UNARY (operands[1]);
20726 : operands[2] = STRIP_UNARY (operands[2]);
20727 : operands[6] = STRIP_UNARY (operands[6]);
20728 : if (!register_operand (operands[2], V8HFmode))
20729 : operands[2] = force_reg (V8HFmode, operands[2]);
20730 : if (!register_operand (operands[6], V8HFmode))
20731 : operands[6] = force_reg (V8HFmode, operands[6]);
20732 : operands[5] = GEN_INT (reg_mask);
20733 : }
20734 : #undef DONE
20735 : #undef FAIL
20736 : static const uint8_t expand_encoding[] = {
20737 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
20738 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20739 : 0x25
20740 : };
20741 : return complete_seq (expand_encoding, operands);
20742 : }
20743 :
20744 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20745 : extern rtx_insn *gen_split_2130 (rtx_insn *, rtx *);
20746 : rtx_insn *
20747 : gen_split_2130 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20748 : {
20749 : if (dump_file)
20750 : fprintf (dump_file, "Splitting with gen_split_2130 (sse.md:14142)\n");
20751 : start_sequence ();
20752 : #define FAIL return (end_sequence (), nullptr)
20753 : #define DONE return end_sequence ()
20754 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20755 : {
20756 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20757 : int reg6 = 0xF0;
20758 : int reg2 = 0xCC;
20759 : int reg1 = 0xAA;
20760 : int reg3 = 0;
20761 : int reg4 = 0;
20762 : int reg_mask, tmp1, tmp2;
20763 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20764 : STRIP_UNARY (operands[4])))
20765 : {
20766 : reg4 = reg1;
20767 : reg3 = reg6;
20768 : operands[6] = operands[3];
20769 : }
20770 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20771 : STRIP_UNARY (operands[4])))
20772 : {
20773 : reg4 = reg2;
20774 : reg3 = reg6;
20775 : operands[6] = operands[3];
20776 : }
20777 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20778 : STRIP_UNARY (operands[3])))
20779 : {
20780 : reg4 = reg6;
20781 : reg3 = reg1;
20782 : operands[6] = operands[4];
20783 : }
20784 : else
20785 : {
20786 : reg4 = reg6;
20787 : reg3 = reg2;
20788 : operands[6] = operands[4];
20789 : }
20790 :
20791 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20792 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20793 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20794 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20795 :
20796 : tmp1 = reg1 ^ reg2;
20797 : tmp2 = reg3 & reg4;
20798 : reg_mask = tmp1 | tmp2;
20799 : reg_mask &= 0xFF;
20800 :
20801 : operands[1] = STRIP_UNARY (operands[1]);
20802 : operands[2] = STRIP_UNARY (operands[2]);
20803 : operands[6] = STRIP_UNARY (operands[6]);
20804 : if (!register_operand (operands[2], V8HFmode))
20805 : operands[2] = force_reg (V8HFmode, operands[2]);
20806 : if (!register_operand (operands[6], V8HFmode))
20807 : operands[6] = force_reg (V8HFmode, operands[6]);
20808 : operands[5] = GEN_INT (reg_mask);
20809 : }
20810 : #undef DONE
20811 : #undef FAIL
20812 : static const uint8_t expand_encoding[] = {
20813 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
20814 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20815 : 0x25
20816 : };
20817 : return complete_seq (expand_encoding, operands);
20818 : }
20819 :
20820 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20821 : extern rtx_insn *gen_split_2140 (rtx_insn *, rtx *);
20822 : rtx_insn *
20823 : gen_split_2140 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20824 : {
20825 : if (dump_file)
20826 : fprintf (dump_file, "Splitting with gen_split_2140 (sse.md:14142)\n");
20827 : start_sequence ();
20828 : #define FAIL return (end_sequence (), nullptr)
20829 : #define DONE return end_sequence ()
20830 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20831 : {
20832 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20833 : int reg6 = 0xF0;
20834 : int reg2 = 0xCC;
20835 : int reg1 = 0xAA;
20836 : int reg3 = 0;
20837 : int reg4 = 0;
20838 : int reg_mask, tmp1, tmp2;
20839 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20840 : STRIP_UNARY (operands[4])))
20841 : {
20842 : reg4 = reg1;
20843 : reg3 = reg6;
20844 : operands[6] = operands[3];
20845 : }
20846 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20847 : STRIP_UNARY (operands[4])))
20848 : {
20849 : reg4 = reg2;
20850 : reg3 = reg6;
20851 : operands[6] = operands[3];
20852 : }
20853 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20854 : STRIP_UNARY (operands[3])))
20855 : {
20856 : reg4 = reg6;
20857 : reg3 = reg1;
20858 : operands[6] = operands[4];
20859 : }
20860 : else
20861 : {
20862 : reg4 = reg6;
20863 : reg3 = reg2;
20864 : operands[6] = operands[4];
20865 : }
20866 :
20867 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20868 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20869 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20870 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20871 :
20872 : tmp1 = reg1 & reg2;
20873 : tmp2 = reg3 & reg4;
20874 : reg_mask = tmp1 ^ tmp2;
20875 : reg_mask &= 0xFF;
20876 :
20877 : operands[1] = STRIP_UNARY (operands[1]);
20878 : operands[2] = STRIP_UNARY (operands[2]);
20879 : operands[6] = STRIP_UNARY (operands[6]);
20880 : if (!register_operand (operands[2], V32BFmode))
20881 : operands[2] = force_reg (V32BFmode, operands[2]);
20882 : if (!register_operand (operands[6], V32BFmode))
20883 : operands[6] = force_reg (V32BFmode, operands[6]);
20884 : operands[5] = GEN_INT (reg_mask);
20885 : }
20886 : #undef DONE
20887 : #undef FAIL
20888 : static const uint8_t expand_encoding[] = {
20889 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
20890 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20891 : 0x25
20892 : };
20893 : return complete_seq (expand_encoding, operands);
20894 : }
20895 :
20896 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20897 : extern rtx_insn *gen_split_2150 (rtx_insn *, rtx *);
20898 : rtx_insn *
20899 : gen_split_2150 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20900 : {
20901 : if (dump_file)
20902 : fprintf (dump_file, "Splitting with gen_split_2150 (sse.md:14142)\n");
20903 : start_sequence ();
20904 : #define FAIL return (end_sequence (), nullptr)
20905 : #define DONE return end_sequence ()
20906 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20907 : {
20908 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20909 : int reg6 = 0xF0;
20910 : int reg2 = 0xCC;
20911 : int reg1 = 0xAA;
20912 : int reg3 = 0;
20913 : int reg4 = 0;
20914 : int reg_mask, tmp1, tmp2;
20915 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20916 : STRIP_UNARY (operands[4])))
20917 : {
20918 : reg4 = reg1;
20919 : reg3 = reg6;
20920 : operands[6] = operands[3];
20921 : }
20922 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20923 : STRIP_UNARY (operands[4])))
20924 : {
20925 : reg4 = reg2;
20926 : reg3 = reg6;
20927 : operands[6] = operands[3];
20928 : }
20929 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
20930 : STRIP_UNARY (operands[3])))
20931 : {
20932 : reg4 = reg6;
20933 : reg3 = reg1;
20934 : operands[6] = operands[4];
20935 : }
20936 : else
20937 : {
20938 : reg4 = reg6;
20939 : reg3 = reg2;
20940 : operands[6] = operands[4];
20941 : }
20942 :
20943 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
20944 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
20945 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
20946 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
20947 :
20948 : tmp1 = reg1 | reg2;
20949 : tmp2 = reg3 | reg4;
20950 : reg_mask = tmp1 & tmp2;
20951 : reg_mask &= 0xFF;
20952 :
20953 : operands[1] = STRIP_UNARY (operands[1]);
20954 : operands[2] = STRIP_UNARY (operands[2]);
20955 : operands[6] = STRIP_UNARY (operands[6]);
20956 : if (!register_operand (operands[2], V32BFmode))
20957 : operands[2] = force_reg (V32BFmode, operands[2]);
20958 : if (!register_operand (operands[6], V32BFmode))
20959 : operands[6] = force_reg (V32BFmode, operands[6]);
20960 : operands[5] = GEN_INT (reg_mask);
20961 : }
20962 : #undef DONE
20963 : #undef FAIL
20964 : static const uint8_t expand_encoding[] = {
20965 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
20966 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
20967 : 0x25
20968 : };
20969 : return complete_seq (expand_encoding, operands);
20970 : }
20971 :
20972 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
20973 : extern rtx_insn *gen_split_2160 (rtx_insn *, rtx *);
20974 : rtx_insn *
20975 : gen_split_2160 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
20976 : {
20977 : if (dump_file)
20978 : fprintf (dump_file, "Splitting with gen_split_2160 (sse.md:14142)\n");
20979 : start_sequence ();
20980 : #define FAIL return (end_sequence (), nullptr)
20981 : #define DONE return end_sequence ()
20982 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
20983 : {
20984 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
20985 : int reg6 = 0xF0;
20986 : int reg2 = 0xCC;
20987 : int reg1 = 0xAA;
20988 : int reg3 = 0;
20989 : int reg4 = 0;
20990 : int reg_mask, tmp1, tmp2;
20991 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
20992 : STRIP_UNARY (operands[4])))
20993 : {
20994 : reg4 = reg1;
20995 : reg3 = reg6;
20996 : operands[6] = operands[3];
20997 : }
20998 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
20999 : STRIP_UNARY (operands[4])))
21000 : {
21001 : reg4 = reg2;
21002 : reg3 = reg6;
21003 : operands[6] = operands[3];
21004 : }
21005 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21006 : STRIP_UNARY (operands[3])))
21007 : {
21008 : reg4 = reg6;
21009 : reg3 = reg1;
21010 : operands[6] = operands[4];
21011 : }
21012 : else
21013 : {
21014 : reg4 = reg6;
21015 : reg3 = reg2;
21016 : operands[6] = operands[4];
21017 : }
21018 :
21019 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21020 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21021 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21022 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21023 :
21024 : tmp1 = reg1 ^ reg2;
21025 : tmp2 = reg3 | reg4;
21026 : reg_mask = tmp1 | tmp2;
21027 : reg_mask &= 0xFF;
21028 :
21029 : operands[1] = STRIP_UNARY (operands[1]);
21030 : operands[2] = STRIP_UNARY (operands[2]);
21031 : operands[6] = STRIP_UNARY (operands[6]);
21032 : if (!register_operand (operands[2], V32BFmode))
21033 : operands[2] = force_reg (V32BFmode, operands[2]);
21034 : if (!register_operand (operands[6], V32BFmode))
21035 : operands[6] = force_reg (V32BFmode, operands[6]);
21036 : operands[5] = GEN_INT (reg_mask);
21037 : }
21038 : #undef DONE
21039 : #undef FAIL
21040 : static const uint8_t expand_encoding[] = {
21041 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
21042 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21043 : 0x25
21044 : };
21045 : return complete_seq (expand_encoding, operands);
21046 : }
21047 :
21048 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21049 : extern rtx_insn *gen_split_2170 (rtx_insn *, rtx *);
21050 : rtx_insn *
21051 : gen_split_2170 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21052 : {
21053 : if (dump_file)
21054 : fprintf (dump_file, "Splitting with gen_split_2170 (sse.md:14142)\n");
21055 : start_sequence ();
21056 : #define FAIL return (end_sequence (), nullptr)
21057 : #define DONE return end_sequence ()
21058 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21059 : {
21060 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21061 : int reg6 = 0xF0;
21062 : int reg2 = 0xCC;
21063 : int reg1 = 0xAA;
21064 : int reg3 = 0;
21065 : int reg4 = 0;
21066 : int reg_mask, tmp1, tmp2;
21067 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21068 : STRIP_UNARY (operands[4])))
21069 : {
21070 : reg4 = reg1;
21071 : reg3 = reg6;
21072 : operands[6] = operands[3];
21073 : }
21074 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21075 : STRIP_UNARY (operands[4])))
21076 : {
21077 : reg4 = reg2;
21078 : reg3 = reg6;
21079 : operands[6] = operands[3];
21080 : }
21081 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21082 : STRIP_UNARY (operands[3])))
21083 : {
21084 : reg4 = reg6;
21085 : reg3 = reg1;
21086 : operands[6] = operands[4];
21087 : }
21088 : else
21089 : {
21090 : reg4 = reg6;
21091 : reg3 = reg2;
21092 : operands[6] = operands[4];
21093 : }
21094 :
21095 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21096 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21097 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21098 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21099 :
21100 : tmp1 = reg1 & reg2;
21101 : tmp2 = reg3 | reg4;
21102 : reg_mask = tmp1 ^ tmp2;
21103 : reg_mask &= 0xFF;
21104 :
21105 : operands[1] = STRIP_UNARY (operands[1]);
21106 : operands[2] = STRIP_UNARY (operands[2]);
21107 : operands[6] = STRIP_UNARY (operands[6]);
21108 : if (!register_operand (operands[2], V16BFmode))
21109 : operands[2] = force_reg (V16BFmode, operands[2]);
21110 : if (!register_operand (operands[6], V16BFmode))
21111 : operands[6] = force_reg (V16BFmode, operands[6]);
21112 : operands[5] = GEN_INT (reg_mask);
21113 : }
21114 : #undef DONE
21115 : #undef FAIL
21116 : static const uint8_t expand_encoding[] = {
21117 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
21118 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21119 : 0x25
21120 : };
21121 : return complete_seq (expand_encoding, operands);
21122 : }
21123 :
21124 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21125 : extern rtx_insn *gen_split_2180 (rtx_insn *, rtx *);
21126 : rtx_insn *
21127 : gen_split_2180 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21128 : {
21129 : if (dump_file)
21130 : fprintf (dump_file, "Splitting with gen_split_2180 (sse.md:14142)\n");
21131 : start_sequence ();
21132 : #define FAIL return (end_sequence (), nullptr)
21133 : #define DONE return end_sequence ()
21134 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21135 : {
21136 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21137 : int reg6 = 0xF0;
21138 : int reg2 = 0xCC;
21139 : int reg1 = 0xAA;
21140 : int reg3 = 0;
21141 : int reg4 = 0;
21142 : int reg_mask, tmp1, tmp2;
21143 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21144 : STRIP_UNARY (operands[4])))
21145 : {
21146 : reg4 = reg1;
21147 : reg3 = reg6;
21148 : operands[6] = operands[3];
21149 : }
21150 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21151 : STRIP_UNARY (operands[4])))
21152 : {
21153 : reg4 = reg2;
21154 : reg3 = reg6;
21155 : operands[6] = operands[3];
21156 : }
21157 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21158 : STRIP_UNARY (operands[3])))
21159 : {
21160 : reg4 = reg6;
21161 : reg3 = reg1;
21162 : operands[6] = operands[4];
21163 : }
21164 : else
21165 : {
21166 : reg4 = reg6;
21167 : reg3 = reg2;
21168 : operands[6] = operands[4];
21169 : }
21170 :
21171 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21172 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21173 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21174 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21175 :
21176 : tmp1 = reg1 | reg2;
21177 : tmp2 = reg3 ^ reg4;
21178 : reg_mask = tmp1 & tmp2;
21179 : reg_mask &= 0xFF;
21180 :
21181 : operands[1] = STRIP_UNARY (operands[1]);
21182 : operands[2] = STRIP_UNARY (operands[2]);
21183 : operands[6] = STRIP_UNARY (operands[6]);
21184 : if (!register_operand (operands[2], V16BFmode))
21185 : operands[2] = force_reg (V16BFmode, operands[2]);
21186 : if (!register_operand (operands[6], V16BFmode))
21187 : operands[6] = force_reg (V16BFmode, operands[6]);
21188 : operands[5] = GEN_INT (reg_mask);
21189 : }
21190 : #undef DONE
21191 : #undef FAIL
21192 : static const uint8_t expand_encoding[] = {
21193 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
21194 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21195 : 0x25
21196 : };
21197 : return complete_seq (expand_encoding, operands);
21198 : }
21199 :
21200 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21201 : extern rtx_insn *gen_split_2190 (rtx_insn *, rtx *);
21202 : rtx_insn *
21203 : gen_split_2190 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21204 : {
21205 : if (dump_file)
21206 : fprintf (dump_file, "Splitting with gen_split_2190 (sse.md:14142)\n");
21207 : start_sequence ();
21208 : #define FAIL return (end_sequence (), nullptr)
21209 : #define DONE return end_sequence ()
21210 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21211 : {
21212 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21213 : int reg6 = 0xF0;
21214 : int reg2 = 0xCC;
21215 : int reg1 = 0xAA;
21216 : int reg3 = 0;
21217 : int reg4 = 0;
21218 : int reg_mask, tmp1, tmp2;
21219 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21220 : STRIP_UNARY (operands[4])))
21221 : {
21222 : reg4 = reg1;
21223 : reg3 = reg6;
21224 : operands[6] = operands[3];
21225 : }
21226 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21227 : STRIP_UNARY (operands[4])))
21228 : {
21229 : reg4 = reg2;
21230 : reg3 = reg6;
21231 : operands[6] = operands[3];
21232 : }
21233 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21234 : STRIP_UNARY (operands[3])))
21235 : {
21236 : reg4 = reg6;
21237 : reg3 = reg1;
21238 : operands[6] = operands[4];
21239 : }
21240 : else
21241 : {
21242 : reg4 = reg6;
21243 : reg3 = reg2;
21244 : operands[6] = operands[4];
21245 : }
21246 :
21247 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21248 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21249 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21250 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21251 :
21252 : tmp1 = reg1 ^ reg2;
21253 : tmp2 = reg3 ^ reg4;
21254 : reg_mask = tmp1 | tmp2;
21255 : reg_mask &= 0xFF;
21256 :
21257 : operands[1] = STRIP_UNARY (operands[1]);
21258 : operands[2] = STRIP_UNARY (operands[2]);
21259 : operands[6] = STRIP_UNARY (operands[6]);
21260 : if (!register_operand (operands[2], V16BFmode))
21261 : operands[2] = force_reg (V16BFmode, operands[2]);
21262 : if (!register_operand (operands[6], V16BFmode))
21263 : operands[6] = force_reg (V16BFmode, operands[6]);
21264 : operands[5] = GEN_INT (reg_mask);
21265 : }
21266 : #undef DONE
21267 : #undef FAIL
21268 : static const uint8_t expand_encoding[] = {
21269 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
21270 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21271 : 0x25
21272 : };
21273 : return complete_seq (expand_encoding, operands);
21274 : }
21275 :
21276 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21277 : extern rtx_insn *gen_split_2200 (rtx_insn *, rtx *);
21278 : rtx_insn *
21279 : gen_split_2200 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21280 : {
21281 : if (dump_file)
21282 : fprintf (dump_file, "Splitting with gen_split_2200 (sse.md:14142)\n");
21283 : start_sequence ();
21284 : #define FAIL return (end_sequence (), nullptr)
21285 : #define DONE return end_sequence ()
21286 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21287 : {
21288 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21289 : int reg6 = 0xF0;
21290 : int reg2 = 0xCC;
21291 : int reg1 = 0xAA;
21292 : int reg3 = 0;
21293 : int reg4 = 0;
21294 : int reg_mask, tmp1, tmp2;
21295 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21296 : STRIP_UNARY (operands[4])))
21297 : {
21298 : reg4 = reg1;
21299 : reg3 = reg6;
21300 : operands[6] = operands[3];
21301 : }
21302 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21303 : STRIP_UNARY (operands[4])))
21304 : {
21305 : reg4 = reg2;
21306 : reg3 = reg6;
21307 : operands[6] = operands[3];
21308 : }
21309 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21310 : STRIP_UNARY (operands[3])))
21311 : {
21312 : reg4 = reg6;
21313 : reg3 = reg1;
21314 : operands[6] = operands[4];
21315 : }
21316 : else
21317 : {
21318 : reg4 = reg6;
21319 : reg3 = reg2;
21320 : operands[6] = operands[4];
21321 : }
21322 :
21323 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21324 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21325 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21326 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21327 :
21328 : tmp1 = reg1 & reg2;
21329 : tmp2 = reg3 ^ reg4;
21330 : reg_mask = tmp1 ^ tmp2;
21331 : reg_mask &= 0xFF;
21332 :
21333 : operands[1] = STRIP_UNARY (operands[1]);
21334 : operands[2] = STRIP_UNARY (operands[2]);
21335 : operands[6] = STRIP_UNARY (operands[6]);
21336 : if (!register_operand (operands[2], V8BFmode))
21337 : operands[2] = force_reg (V8BFmode, operands[2]);
21338 : if (!register_operand (operands[6], V8BFmode))
21339 : operands[6] = force_reg (V8BFmode, operands[6]);
21340 : operands[5] = GEN_INT (reg_mask);
21341 : }
21342 : #undef DONE
21343 : #undef FAIL
21344 : static const uint8_t expand_encoding[] = {
21345 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
21346 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21347 : 0x25
21348 : };
21349 : return complete_seq (expand_encoding, operands);
21350 : }
21351 :
21352 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21353 : extern rtx_insn *gen_split_2210 (rtx_insn *, rtx *);
21354 : rtx_insn *
21355 : gen_split_2210 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21356 : {
21357 : if (dump_file)
21358 : fprintf (dump_file, "Splitting with gen_split_2210 (sse.md:14142)\n");
21359 : start_sequence ();
21360 : #define FAIL return (end_sequence (), nullptr)
21361 : #define DONE return end_sequence ()
21362 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21363 : {
21364 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21365 : int reg6 = 0xF0;
21366 : int reg2 = 0xCC;
21367 : int reg1 = 0xAA;
21368 : int reg3 = 0;
21369 : int reg4 = 0;
21370 : int reg_mask, tmp1, tmp2;
21371 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21372 : STRIP_UNARY (operands[4])))
21373 : {
21374 : reg4 = reg1;
21375 : reg3 = reg6;
21376 : operands[6] = operands[3];
21377 : }
21378 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21379 : STRIP_UNARY (operands[4])))
21380 : {
21381 : reg4 = reg2;
21382 : reg3 = reg6;
21383 : operands[6] = operands[3];
21384 : }
21385 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21386 : STRIP_UNARY (operands[3])))
21387 : {
21388 : reg4 = reg6;
21389 : reg3 = reg1;
21390 : operands[6] = operands[4];
21391 : }
21392 : else
21393 : {
21394 : reg4 = reg6;
21395 : reg3 = reg2;
21396 : operands[6] = operands[4];
21397 : }
21398 :
21399 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21400 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21401 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21402 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21403 :
21404 : tmp1 = reg1 ^ reg2;
21405 : tmp2 = reg3 & reg4;
21406 : reg_mask = tmp1 & tmp2;
21407 : reg_mask &= 0xFF;
21408 :
21409 : operands[1] = STRIP_UNARY (operands[1]);
21410 : operands[2] = STRIP_UNARY (operands[2]);
21411 : operands[6] = STRIP_UNARY (operands[6]);
21412 : if (!register_operand (operands[2], V8BFmode))
21413 : operands[2] = force_reg (V8BFmode, operands[2]);
21414 : if (!register_operand (operands[6], V8BFmode))
21415 : operands[6] = force_reg (V8BFmode, operands[6]);
21416 : operands[5] = GEN_INT (reg_mask);
21417 : }
21418 : #undef DONE
21419 : #undef FAIL
21420 : static const uint8_t expand_encoding[] = {
21421 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
21422 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21423 : 0x25
21424 : };
21425 : return complete_seq (expand_encoding, operands);
21426 : }
21427 :
21428 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21429 : extern rtx_insn *gen_split_2220 (rtx_insn *, rtx *);
21430 : rtx_insn *
21431 : gen_split_2220 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21432 : {
21433 : if (dump_file)
21434 : fprintf (dump_file, "Splitting with gen_split_2220 (sse.md:14142)\n");
21435 : start_sequence ();
21436 : #define FAIL return (end_sequence (), nullptr)
21437 : #define DONE return end_sequence ()
21438 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21439 : {
21440 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21441 : int reg6 = 0xF0;
21442 : int reg2 = 0xCC;
21443 : int reg1 = 0xAA;
21444 : int reg3 = 0;
21445 : int reg4 = 0;
21446 : int reg_mask, tmp1, tmp2;
21447 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21448 : STRIP_UNARY (operands[4])))
21449 : {
21450 : reg4 = reg1;
21451 : reg3 = reg6;
21452 : operands[6] = operands[3];
21453 : }
21454 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21455 : STRIP_UNARY (operands[4])))
21456 : {
21457 : reg4 = reg2;
21458 : reg3 = reg6;
21459 : operands[6] = operands[3];
21460 : }
21461 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21462 : STRIP_UNARY (operands[3])))
21463 : {
21464 : reg4 = reg6;
21465 : reg3 = reg1;
21466 : operands[6] = operands[4];
21467 : }
21468 : else
21469 : {
21470 : reg4 = reg6;
21471 : reg3 = reg2;
21472 : operands[6] = operands[4];
21473 : }
21474 :
21475 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21476 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21477 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21478 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21479 :
21480 : tmp1 = reg1 & reg2;
21481 : tmp2 = reg3 & reg4;
21482 : reg_mask = tmp1 | tmp2;
21483 : reg_mask &= 0xFF;
21484 :
21485 : operands[1] = STRIP_UNARY (operands[1]);
21486 : operands[2] = STRIP_UNARY (operands[2]);
21487 : operands[6] = STRIP_UNARY (operands[6]);
21488 : if (!register_operand (operands[2], V16SFmode))
21489 : operands[2] = force_reg (V16SFmode, operands[2]);
21490 : if (!register_operand (operands[6], V16SFmode))
21491 : operands[6] = force_reg (V16SFmode, operands[6]);
21492 : operands[5] = GEN_INT (reg_mask);
21493 : }
21494 : #undef DONE
21495 : #undef FAIL
21496 : static const uint8_t expand_encoding[] = {
21497 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
21498 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21499 : 0x25
21500 : };
21501 : return complete_seq (expand_encoding, operands);
21502 : }
21503 :
21504 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21505 : extern rtx_insn *gen_split_2230 (rtx_insn *, rtx *);
21506 : rtx_insn *
21507 : gen_split_2230 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21508 : {
21509 : if (dump_file)
21510 : fprintf (dump_file, "Splitting with gen_split_2230 (sse.md:14142)\n");
21511 : start_sequence ();
21512 : #define FAIL return (end_sequence (), nullptr)
21513 : #define DONE return end_sequence ()
21514 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21515 : {
21516 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21517 : int reg6 = 0xF0;
21518 : int reg2 = 0xCC;
21519 : int reg1 = 0xAA;
21520 : int reg3 = 0;
21521 : int reg4 = 0;
21522 : int reg_mask, tmp1, tmp2;
21523 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21524 : STRIP_UNARY (operands[4])))
21525 : {
21526 : reg4 = reg1;
21527 : reg3 = reg6;
21528 : operands[6] = operands[3];
21529 : }
21530 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21531 : STRIP_UNARY (operands[4])))
21532 : {
21533 : reg4 = reg2;
21534 : reg3 = reg6;
21535 : operands[6] = operands[3];
21536 : }
21537 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21538 : STRIP_UNARY (operands[3])))
21539 : {
21540 : reg4 = reg6;
21541 : reg3 = reg1;
21542 : operands[6] = operands[4];
21543 : }
21544 : else
21545 : {
21546 : reg4 = reg6;
21547 : reg3 = reg2;
21548 : operands[6] = operands[4];
21549 : }
21550 :
21551 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21552 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21553 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21554 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21555 :
21556 : tmp1 = reg1 | reg2;
21557 : tmp2 = reg3 & reg4;
21558 : reg_mask = tmp1 ^ tmp2;
21559 : reg_mask &= 0xFF;
21560 :
21561 : operands[1] = STRIP_UNARY (operands[1]);
21562 : operands[2] = STRIP_UNARY (operands[2]);
21563 : operands[6] = STRIP_UNARY (operands[6]);
21564 : if (!register_operand (operands[2], V16SFmode))
21565 : operands[2] = force_reg (V16SFmode, operands[2]);
21566 : if (!register_operand (operands[6], V16SFmode))
21567 : operands[6] = force_reg (V16SFmode, operands[6]);
21568 : operands[5] = GEN_INT (reg_mask);
21569 : }
21570 : #undef DONE
21571 : #undef FAIL
21572 : static const uint8_t expand_encoding[] = {
21573 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
21574 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21575 : 0x25
21576 : };
21577 : return complete_seq (expand_encoding, operands);
21578 : }
21579 :
21580 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21581 : extern rtx_insn *gen_split_2240 (rtx_insn *, rtx *);
21582 : rtx_insn *
21583 : gen_split_2240 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21584 : {
21585 : if (dump_file)
21586 : fprintf (dump_file, "Splitting with gen_split_2240 (sse.md:14142)\n");
21587 : start_sequence ();
21588 : #define FAIL return (end_sequence (), nullptr)
21589 : #define DONE return end_sequence ()
21590 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21591 : {
21592 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21593 : int reg6 = 0xF0;
21594 : int reg2 = 0xCC;
21595 : int reg1 = 0xAA;
21596 : int reg3 = 0;
21597 : int reg4 = 0;
21598 : int reg_mask, tmp1, tmp2;
21599 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21600 : STRIP_UNARY (operands[4])))
21601 : {
21602 : reg4 = reg1;
21603 : reg3 = reg6;
21604 : operands[6] = operands[3];
21605 : }
21606 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21607 : STRIP_UNARY (operands[4])))
21608 : {
21609 : reg4 = reg2;
21610 : reg3 = reg6;
21611 : operands[6] = operands[3];
21612 : }
21613 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21614 : STRIP_UNARY (operands[3])))
21615 : {
21616 : reg4 = reg6;
21617 : reg3 = reg1;
21618 : operands[6] = operands[4];
21619 : }
21620 : else
21621 : {
21622 : reg4 = reg6;
21623 : reg3 = reg2;
21624 : operands[6] = operands[4];
21625 : }
21626 :
21627 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21628 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21629 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21630 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21631 :
21632 : tmp1 = reg1 ^ reg2;
21633 : tmp2 = reg3 | reg4;
21634 : reg_mask = tmp1 & tmp2;
21635 : reg_mask &= 0xFF;
21636 :
21637 : operands[1] = STRIP_UNARY (operands[1]);
21638 : operands[2] = STRIP_UNARY (operands[2]);
21639 : operands[6] = STRIP_UNARY (operands[6]);
21640 : if (!register_operand (operands[2], V16SFmode))
21641 : operands[2] = force_reg (V16SFmode, operands[2]);
21642 : if (!register_operand (operands[6], V16SFmode))
21643 : operands[6] = force_reg (V16SFmode, operands[6]);
21644 : operands[5] = GEN_INT (reg_mask);
21645 : }
21646 : #undef DONE
21647 : #undef FAIL
21648 : static const uint8_t expand_encoding[] = {
21649 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
21650 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21651 : 0x25
21652 : };
21653 : return complete_seq (expand_encoding, operands);
21654 : }
21655 :
21656 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21657 : extern rtx_insn *gen_split_2250 (rtx_insn *, rtx *);
21658 : rtx_insn *
21659 : gen_split_2250 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21660 : {
21661 : if (dump_file)
21662 : fprintf (dump_file, "Splitting with gen_split_2250 (sse.md:14142)\n");
21663 : start_sequence ();
21664 : #define FAIL return (end_sequence (), nullptr)
21665 : #define DONE return end_sequence ()
21666 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21667 : {
21668 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21669 : int reg6 = 0xF0;
21670 : int reg2 = 0xCC;
21671 : int reg1 = 0xAA;
21672 : int reg3 = 0;
21673 : int reg4 = 0;
21674 : int reg_mask, tmp1, tmp2;
21675 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21676 : STRIP_UNARY (operands[4])))
21677 : {
21678 : reg4 = reg1;
21679 : reg3 = reg6;
21680 : operands[6] = operands[3];
21681 : }
21682 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21683 : STRIP_UNARY (operands[4])))
21684 : {
21685 : reg4 = reg2;
21686 : reg3 = reg6;
21687 : operands[6] = operands[3];
21688 : }
21689 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21690 : STRIP_UNARY (operands[3])))
21691 : {
21692 : reg4 = reg6;
21693 : reg3 = reg1;
21694 : operands[6] = operands[4];
21695 : }
21696 : else
21697 : {
21698 : reg4 = reg6;
21699 : reg3 = reg2;
21700 : operands[6] = operands[4];
21701 : }
21702 :
21703 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21704 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21705 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21706 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21707 :
21708 : tmp1 = reg1 & reg2;
21709 : tmp2 = reg3 | reg4;
21710 : reg_mask = tmp1 | tmp2;
21711 : reg_mask &= 0xFF;
21712 :
21713 : operands[1] = STRIP_UNARY (operands[1]);
21714 : operands[2] = STRIP_UNARY (operands[2]);
21715 : operands[6] = STRIP_UNARY (operands[6]);
21716 : if (!register_operand (operands[2], V8SFmode))
21717 : operands[2] = force_reg (V8SFmode, operands[2]);
21718 : if (!register_operand (operands[6], V8SFmode))
21719 : operands[6] = force_reg (V8SFmode, operands[6]);
21720 : operands[5] = GEN_INT (reg_mask);
21721 : }
21722 : #undef DONE
21723 : #undef FAIL
21724 : static const uint8_t expand_encoding[] = {
21725 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
21726 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21727 : 0x25
21728 : };
21729 : return complete_seq (expand_encoding, operands);
21730 : }
21731 :
21732 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21733 : extern rtx_insn *gen_split_2260 (rtx_insn *, rtx *);
21734 : rtx_insn *
21735 : gen_split_2260 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21736 : {
21737 : if (dump_file)
21738 : fprintf (dump_file, "Splitting with gen_split_2260 (sse.md:14142)\n");
21739 : start_sequence ();
21740 : #define FAIL return (end_sequence (), nullptr)
21741 : #define DONE return end_sequence ()
21742 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21743 : {
21744 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21745 : int reg6 = 0xF0;
21746 : int reg2 = 0xCC;
21747 : int reg1 = 0xAA;
21748 : int reg3 = 0;
21749 : int reg4 = 0;
21750 : int reg_mask, tmp1, tmp2;
21751 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21752 : STRIP_UNARY (operands[4])))
21753 : {
21754 : reg4 = reg1;
21755 : reg3 = reg6;
21756 : operands[6] = operands[3];
21757 : }
21758 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21759 : STRIP_UNARY (operands[4])))
21760 : {
21761 : reg4 = reg2;
21762 : reg3 = reg6;
21763 : operands[6] = operands[3];
21764 : }
21765 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21766 : STRIP_UNARY (operands[3])))
21767 : {
21768 : reg4 = reg6;
21769 : reg3 = reg1;
21770 : operands[6] = operands[4];
21771 : }
21772 : else
21773 : {
21774 : reg4 = reg6;
21775 : reg3 = reg2;
21776 : operands[6] = operands[4];
21777 : }
21778 :
21779 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21780 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21781 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21782 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21783 :
21784 : tmp1 = reg1 | reg2;
21785 : tmp2 = reg3 | reg4;
21786 : reg_mask = tmp1 ^ tmp2;
21787 : reg_mask &= 0xFF;
21788 :
21789 : operands[1] = STRIP_UNARY (operands[1]);
21790 : operands[2] = STRIP_UNARY (operands[2]);
21791 : operands[6] = STRIP_UNARY (operands[6]);
21792 : if (!register_operand (operands[2], V8SFmode))
21793 : operands[2] = force_reg (V8SFmode, operands[2]);
21794 : if (!register_operand (operands[6], V8SFmode))
21795 : operands[6] = force_reg (V8SFmode, operands[6]);
21796 : operands[5] = GEN_INT (reg_mask);
21797 : }
21798 : #undef DONE
21799 : #undef FAIL
21800 : static const uint8_t expand_encoding[] = {
21801 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
21802 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21803 : 0x25
21804 : };
21805 : return complete_seq (expand_encoding, operands);
21806 : }
21807 :
21808 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21809 : extern rtx_insn *gen_split_2270 (rtx_insn *, rtx *);
21810 : rtx_insn *
21811 : gen_split_2270 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21812 : {
21813 : if (dump_file)
21814 : fprintf (dump_file, "Splitting with gen_split_2270 (sse.md:14142)\n");
21815 : start_sequence ();
21816 : #define FAIL return (end_sequence (), nullptr)
21817 : #define DONE return end_sequence ()
21818 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21819 : {
21820 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21821 : int reg6 = 0xF0;
21822 : int reg2 = 0xCC;
21823 : int reg1 = 0xAA;
21824 : int reg3 = 0;
21825 : int reg4 = 0;
21826 : int reg_mask, tmp1, tmp2;
21827 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21828 : STRIP_UNARY (operands[4])))
21829 : {
21830 : reg4 = reg1;
21831 : reg3 = reg6;
21832 : operands[6] = operands[3];
21833 : }
21834 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21835 : STRIP_UNARY (operands[4])))
21836 : {
21837 : reg4 = reg2;
21838 : reg3 = reg6;
21839 : operands[6] = operands[3];
21840 : }
21841 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21842 : STRIP_UNARY (operands[3])))
21843 : {
21844 : reg4 = reg6;
21845 : reg3 = reg1;
21846 : operands[6] = operands[4];
21847 : }
21848 : else
21849 : {
21850 : reg4 = reg6;
21851 : reg3 = reg2;
21852 : operands[6] = operands[4];
21853 : }
21854 :
21855 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21856 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21857 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21858 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21859 :
21860 : tmp1 = reg1 ^ reg2;
21861 : tmp2 = reg3 ^ reg4;
21862 : reg_mask = tmp1 & tmp2;
21863 : reg_mask &= 0xFF;
21864 :
21865 : operands[1] = STRIP_UNARY (operands[1]);
21866 : operands[2] = STRIP_UNARY (operands[2]);
21867 : operands[6] = STRIP_UNARY (operands[6]);
21868 : if (!register_operand (operands[2], V8SFmode))
21869 : operands[2] = force_reg (V8SFmode, operands[2]);
21870 : if (!register_operand (operands[6], V8SFmode))
21871 : operands[6] = force_reg (V8SFmode, operands[6]);
21872 : operands[5] = GEN_INT (reg_mask);
21873 : }
21874 : #undef DONE
21875 : #undef FAIL
21876 : static const uint8_t expand_encoding[] = {
21877 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
21878 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21879 : 0x25
21880 : };
21881 : return complete_seq (expand_encoding, operands);
21882 : }
21883 :
21884 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21885 : extern rtx_insn *gen_split_2280 (rtx_insn *, rtx *);
21886 : rtx_insn *
21887 : gen_split_2280 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21888 : {
21889 : if (dump_file)
21890 : fprintf (dump_file, "Splitting with gen_split_2280 (sse.md:14142)\n");
21891 : start_sequence ();
21892 : #define FAIL return (end_sequence (), nullptr)
21893 : #define DONE return end_sequence ()
21894 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21895 : {
21896 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21897 : int reg6 = 0xF0;
21898 : int reg2 = 0xCC;
21899 : int reg1 = 0xAA;
21900 : int reg3 = 0;
21901 : int reg4 = 0;
21902 : int reg_mask, tmp1, tmp2;
21903 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21904 : STRIP_UNARY (operands[4])))
21905 : {
21906 : reg4 = reg1;
21907 : reg3 = reg6;
21908 : operands[6] = operands[3];
21909 : }
21910 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21911 : STRIP_UNARY (operands[4])))
21912 : {
21913 : reg4 = reg2;
21914 : reg3 = reg6;
21915 : operands[6] = operands[3];
21916 : }
21917 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21918 : STRIP_UNARY (operands[3])))
21919 : {
21920 : reg4 = reg6;
21921 : reg3 = reg1;
21922 : operands[6] = operands[4];
21923 : }
21924 : else
21925 : {
21926 : reg4 = reg6;
21927 : reg3 = reg2;
21928 : operands[6] = operands[4];
21929 : }
21930 :
21931 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
21932 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
21933 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
21934 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
21935 :
21936 : tmp1 = reg1 & reg2;
21937 : tmp2 = reg3 ^ reg4;
21938 : reg_mask = tmp1 | tmp2;
21939 : reg_mask &= 0xFF;
21940 :
21941 : operands[1] = STRIP_UNARY (operands[1]);
21942 : operands[2] = STRIP_UNARY (operands[2]);
21943 : operands[6] = STRIP_UNARY (operands[6]);
21944 : if (!register_operand (operands[2], V4SFmode))
21945 : operands[2] = force_reg (V4SFmode, operands[2]);
21946 : if (!register_operand (operands[6], V4SFmode))
21947 : operands[6] = force_reg (V4SFmode, operands[6]);
21948 : operands[5] = GEN_INT (reg_mask);
21949 : }
21950 : #undef DONE
21951 : #undef FAIL
21952 : static const uint8_t expand_encoding[] = {
21953 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
21954 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
21955 : 0x25
21956 : };
21957 : return complete_seq (expand_encoding, operands);
21958 : }
21959 :
21960 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
21961 : extern rtx_insn *gen_split_2290 (rtx_insn *, rtx *);
21962 : rtx_insn *
21963 : gen_split_2290 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
21964 : {
21965 : if (dump_file)
21966 : fprintf (dump_file, "Splitting with gen_split_2290 (sse.md:14142)\n");
21967 : start_sequence ();
21968 : #define FAIL return (end_sequence (), nullptr)
21969 : #define DONE return end_sequence ()
21970 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
21971 : {
21972 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
21973 : int reg6 = 0xF0;
21974 : int reg2 = 0xCC;
21975 : int reg1 = 0xAA;
21976 : int reg3 = 0;
21977 : int reg4 = 0;
21978 : int reg_mask, tmp1, tmp2;
21979 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
21980 : STRIP_UNARY (operands[4])))
21981 : {
21982 : reg4 = reg1;
21983 : reg3 = reg6;
21984 : operands[6] = operands[3];
21985 : }
21986 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
21987 : STRIP_UNARY (operands[4])))
21988 : {
21989 : reg4 = reg2;
21990 : reg3 = reg6;
21991 : operands[6] = operands[3];
21992 : }
21993 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
21994 : STRIP_UNARY (operands[3])))
21995 : {
21996 : reg4 = reg6;
21997 : reg3 = reg1;
21998 : operands[6] = operands[4];
21999 : }
22000 : else
22001 : {
22002 : reg4 = reg6;
22003 : reg3 = reg2;
22004 : operands[6] = operands[4];
22005 : }
22006 :
22007 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22008 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22009 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22010 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22011 :
22012 : tmp1 = reg1 | reg2;
22013 : tmp2 = reg3 ^ reg4;
22014 : reg_mask = tmp1 ^ tmp2;
22015 : reg_mask &= 0xFF;
22016 :
22017 : operands[1] = STRIP_UNARY (operands[1]);
22018 : operands[2] = STRIP_UNARY (operands[2]);
22019 : operands[6] = STRIP_UNARY (operands[6]);
22020 : if (!register_operand (operands[2], V4SFmode))
22021 : operands[2] = force_reg (V4SFmode, operands[2]);
22022 : if (!register_operand (operands[6], V4SFmode))
22023 : operands[6] = force_reg (V4SFmode, operands[6]);
22024 : operands[5] = GEN_INT (reg_mask);
22025 : }
22026 : #undef DONE
22027 : #undef FAIL
22028 : static const uint8_t expand_encoding[] = {
22029 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
22030 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22031 : 0x25
22032 : };
22033 : return complete_seq (expand_encoding, operands);
22034 : }
22035 :
22036 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22037 : extern rtx_insn *gen_split_2300 (rtx_insn *, rtx *);
22038 : rtx_insn *
22039 : gen_split_2300 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22040 : {
22041 : if (dump_file)
22042 : fprintf (dump_file, "Splitting with gen_split_2300 (sse.md:14142)\n");
22043 : start_sequence ();
22044 : #define FAIL return (end_sequence (), nullptr)
22045 : #define DONE return end_sequence ()
22046 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22047 : {
22048 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22049 : int reg6 = 0xF0;
22050 : int reg2 = 0xCC;
22051 : int reg1 = 0xAA;
22052 : int reg3 = 0;
22053 : int reg4 = 0;
22054 : int reg_mask, tmp1, tmp2;
22055 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22056 : STRIP_UNARY (operands[4])))
22057 : {
22058 : reg4 = reg1;
22059 : reg3 = reg6;
22060 : operands[6] = operands[3];
22061 : }
22062 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22063 : STRIP_UNARY (operands[4])))
22064 : {
22065 : reg4 = reg2;
22066 : reg3 = reg6;
22067 : operands[6] = operands[3];
22068 : }
22069 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22070 : STRIP_UNARY (operands[3])))
22071 : {
22072 : reg4 = reg6;
22073 : reg3 = reg1;
22074 : operands[6] = operands[4];
22075 : }
22076 : else
22077 : {
22078 : reg4 = reg6;
22079 : reg3 = reg2;
22080 : operands[6] = operands[4];
22081 : }
22082 :
22083 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22084 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22085 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22086 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22087 :
22088 : tmp1 = reg1 & reg2;
22089 : tmp2 = reg3 & reg4;
22090 : reg_mask = tmp1 & tmp2;
22091 : reg_mask &= 0xFF;
22092 :
22093 : operands[1] = STRIP_UNARY (operands[1]);
22094 : operands[2] = STRIP_UNARY (operands[2]);
22095 : operands[6] = STRIP_UNARY (operands[6]);
22096 : if (!register_operand (operands[2], V8DFmode))
22097 : operands[2] = force_reg (V8DFmode, operands[2]);
22098 : if (!register_operand (operands[6], V8DFmode))
22099 : operands[6] = force_reg (V8DFmode, operands[6]);
22100 : operands[5] = GEN_INT (reg_mask);
22101 : }
22102 : #undef DONE
22103 : #undef FAIL
22104 : static const uint8_t expand_encoding[] = {
22105 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
22106 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22107 : 0x25
22108 : };
22109 : return complete_seq (expand_encoding, operands);
22110 : }
22111 :
22112 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22113 : extern rtx_insn *gen_split_2310 (rtx_insn *, rtx *);
22114 : rtx_insn *
22115 : gen_split_2310 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22116 : {
22117 : if (dump_file)
22118 : fprintf (dump_file, "Splitting with gen_split_2310 (sse.md:14142)\n");
22119 : start_sequence ();
22120 : #define FAIL return (end_sequence (), nullptr)
22121 : #define DONE return end_sequence ()
22122 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22123 : {
22124 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22125 : int reg6 = 0xF0;
22126 : int reg2 = 0xCC;
22127 : int reg1 = 0xAA;
22128 : int reg3 = 0;
22129 : int reg4 = 0;
22130 : int reg_mask, tmp1, tmp2;
22131 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22132 : STRIP_UNARY (operands[4])))
22133 : {
22134 : reg4 = reg1;
22135 : reg3 = reg6;
22136 : operands[6] = operands[3];
22137 : }
22138 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22139 : STRIP_UNARY (operands[4])))
22140 : {
22141 : reg4 = reg2;
22142 : reg3 = reg6;
22143 : operands[6] = operands[3];
22144 : }
22145 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22146 : STRIP_UNARY (operands[3])))
22147 : {
22148 : reg4 = reg6;
22149 : reg3 = reg1;
22150 : operands[6] = operands[4];
22151 : }
22152 : else
22153 : {
22154 : reg4 = reg6;
22155 : reg3 = reg2;
22156 : operands[6] = operands[4];
22157 : }
22158 :
22159 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22160 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22161 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22162 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22163 :
22164 : tmp1 = reg1 | reg2;
22165 : tmp2 = reg3 & reg4;
22166 : reg_mask = tmp1 | tmp2;
22167 : reg_mask &= 0xFF;
22168 :
22169 : operands[1] = STRIP_UNARY (operands[1]);
22170 : operands[2] = STRIP_UNARY (operands[2]);
22171 : operands[6] = STRIP_UNARY (operands[6]);
22172 : if (!register_operand (operands[2], V8DFmode))
22173 : operands[2] = force_reg (V8DFmode, operands[2]);
22174 : if (!register_operand (operands[6], V8DFmode))
22175 : operands[6] = force_reg (V8DFmode, operands[6]);
22176 : operands[5] = GEN_INT (reg_mask);
22177 : }
22178 : #undef DONE
22179 : #undef FAIL
22180 : static const uint8_t expand_encoding[] = {
22181 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
22182 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22183 : 0x25
22184 : };
22185 : return complete_seq (expand_encoding, operands);
22186 : }
22187 :
22188 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22189 : extern rtx_insn *gen_split_2320 (rtx_insn *, rtx *);
22190 : rtx_insn *
22191 : gen_split_2320 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22192 : {
22193 : if (dump_file)
22194 : fprintf (dump_file, "Splitting with gen_split_2320 (sse.md:14142)\n");
22195 : start_sequence ();
22196 : #define FAIL return (end_sequence (), nullptr)
22197 : #define DONE return end_sequence ()
22198 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22199 : {
22200 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22201 : int reg6 = 0xF0;
22202 : int reg2 = 0xCC;
22203 : int reg1 = 0xAA;
22204 : int reg3 = 0;
22205 : int reg4 = 0;
22206 : int reg_mask, tmp1, tmp2;
22207 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22208 : STRIP_UNARY (operands[4])))
22209 : {
22210 : reg4 = reg1;
22211 : reg3 = reg6;
22212 : operands[6] = operands[3];
22213 : }
22214 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22215 : STRIP_UNARY (operands[4])))
22216 : {
22217 : reg4 = reg2;
22218 : reg3 = reg6;
22219 : operands[6] = operands[3];
22220 : }
22221 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22222 : STRIP_UNARY (operands[3])))
22223 : {
22224 : reg4 = reg6;
22225 : reg3 = reg1;
22226 : operands[6] = operands[4];
22227 : }
22228 : else
22229 : {
22230 : reg4 = reg6;
22231 : reg3 = reg2;
22232 : operands[6] = operands[4];
22233 : }
22234 :
22235 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22236 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22237 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22238 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22239 :
22240 : tmp1 = reg1 ^ reg2;
22241 : tmp2 = reg3 & reg4;
22242 : reg_mask = tmp1 ^ tmp2;
22243 : reg_mask &= 0xFF;
22244 :
22245 : operands[1] = STRIP_UNARY (operands[1]);
22246 : operands[2] = STRIP_UNARY (operands[2]);
22247 : operands[6] = STRIP_UNARY (operands[6]);
22248 : if (!register_operand (operands[2], V8DFmode))
22249 : operands[2] = force_reg (V8DFmode, operands[2]);
22250 : if (!register_operand (operands[6], V8DFmode))
22251 : operands[6] = force_reg (V8DFmode, operands[6]);
22252 : operands[5] = GEN_INT (reg_mask);
22253 : }
22254 : #undef DONE
22255 : #undef FAIL
22256 : static const uint8_t expand_encoding[] = {
22257 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
22258 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22259 : 0x25
22260 : };
22261 : return complete_seq (expand_encoding, operands);
22262 : }
22263 :
22264 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22265 : extern rtx_insn *gen_split_2330 (rtx_insn *, rtx *);
22266 : rtx_insn *
22267 : gen_split_2330 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22268 : {
22269 : if (dump_file)
22270 : fprintf (dump_file, "Splitting with gen_split_2330 (sse.md:14142)\n");
22271 : start_sequence ();
22272 : #define FAIL return (end_sequence (), nullptr)
22273 : #define DONE return end_sequence ()
22274 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22275 : {
22276 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22277 : int reg6 = 0xF0;
22278 : int reg2 = 0xCC;
22279 : int reg1 = 0xAA;
22280 : int reg3 = 0;
22281 : int reg4 = 0;
22282 : int reg_mask, tmp1, tmp2;
22283 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22284 : STRIP_UNARY (operands[4])))
22285 : {
22286 : reg4 = reg1;
22287 : reg3 = reg6;
22288 : operands[6] = operands[3];
22289 : }
22290 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22291 : STRIP_UNARY (operands[4])))
22292 : {
22293 : reg4 = reg2;
22294 : reg3 = reg6;
22295 : operands[6] = operands[3];
22296 : }
22297 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22298 : STRIP_UNARY (operands[3])))
22299 : {
22300 : reg4 = reg6;
22301 : reg3 = reg1;
22302 : operands[6] = operands[4];
22303 : }
22304 : else
22305 : {
22306 : reg4 = reg6;
22307 : reg3 = reg2;
22308 : operands[6] = operands[4];
22309 : }
22310 :
22311 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22312 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22313 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22314 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22315 :
22316 : tmp1 = reg1 & reg2;
22317 : tmp2 = reg3 | reg4;
22318 : reg_mask = tmp1 & tmp2;
22319 : reg_mask &= 0xFF;
22320 :
22321 : operands[1] = STRIP_UNARY (operands[1]);
22322 : operands[2] = STRIP_UNARY (operands[2]);
22323 : operands[6] = STRIP_UNARY (operands[6]);
22324 : if (!register_operand (operands[2], V4DFmode))
22325 : operands[2] = force_reg (V4DFmode, operands[2]);
22326 : if (!register_operand (operands[6], V4DFmode))
22327 : operands[6] = force_reg (V4DFmode, operands[6]);
22328 : operands[5] = GEN_INT (reg_mask);
22329 : }
22330 : #undef DONE
22331 : #undef FAIL
22332 : static const uint8_t expand_encoding[] = {
22333 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
22334 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22335 : 0x25
22336 : };
22337 : return complete_seq (expand_encoding, operands);
22338 : }
22339 :
22340 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22341 : extern rtx_insn *gen_split_2340 (rtx_insn *, rtx *);
22342 : rtx_insn *
22343 : gen_split_2340 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22344 : {
22345 : if (dump_file)
22346 : fprintf (dump_file, "Splitting with gen_split_2340 (sse.md:14142)\n");
22347 : start_sequence ();
22348 : #define FAIL return (end_sequence (), nullptr)
22349 : #define DONE return end_sequence ()
22350 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22351 : {
22352 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22353 : int reg6 = 0xF0;
22354 : int reg2 = 0xCC;
22355 : int reg1 = 0xAA;
22356 : int reg3 = 0;
22357 : int reg4 = 0;
22358 : int reg_mask, tmp1, tmp2;
22359 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22360 : STRIP_UNARY (operands[4])))
22361 : {
22362 : reg4 = reg1;
22363 : reg3 = reg6;
22364 : operands[6] = operands[3];
22365 : }
22366 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22367 : STRIP_UNARY (operands[4])))
22368 : {
22369 : reg4 = reg2;
22370 : reg3 = reg6;
22371 : operands[6] = operands[3];
22372 : }
22373 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22374 : STRIP_UNARY (operands[3])))
22375 : {
22376 : reg4 = reg6;
22377 : reg3 = reg1;
22378 : operands[6] = operands[4];
22379 : }
22380 : else
22381 : {
22382 : reg4 = reg6;
22383 : reg3 = reg2;
22384 : operands[6] = operands[4];
22385 : }
22386 :
22387 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22388 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22389 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22390 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22391 :
22392 : tmp1 = reg1 | reg2;
22393 : tmp2 = reg3 | reg4;
22394 : reg_mask = tmp1 | tmp2;
22395 : reg_mask &= 0xFF;
22396 :
22397 : operands[1] = STRIP_UNARY (operands[1]);
22398 : operands[2] = STRIP_UNARY (operands[2]);
22399 : operands[6] = STRIP_UNARY (operands[6]);
22400 : if (!register_operand (operands[2], V4DFmode))
22401 : operands[2] = force_reg (V4DFmode, operands[2]);
22402 : if (!register_operand (operands[6], V4DFmode))
22403 : operands[6] = force_reg (V4DFmode, operands[6]);
22404 : operands[5] = GEN_INT (reg_mask);
22405 : }
22406 : #undef DONE
22407 : #undef FAIL
22408 : static const uint8_t expand_encoding[] = {
22409 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
22410 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22411 : 0x25
22412 : };
22413 : return complete_seq (expand_encoding, operands);
22414 : }
22415 :
22416 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22417 : extern rtx_insn *gen_split_2350 (rtx_insn *, rtx *);
22418 : rtx_insn *
22419 : gen_split_2350 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22420 : {
22421 : if (dump_file)
22422 : fprintf (dump_file, "Splitting with gen_split_2350 (sse.md:14142)\n");
22423 : start_sequence ();
22424 : #define FAIL return (end_sequence (), nullptr)
22425 : #define DONE return end_sequence ()
22426 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22427 : {
22428 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22429 : int reg6 = 0xF0;
22430 : int reg2 = 0xCC;
22431 : int reg1 = 0xAA;
22432 : int reg3 = 0;
22433 : int reg4 = 0;
22434 : int reg_mask, tmp1, tmp2;
22435 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22436 : STRIP_UNARY (operands[4])))
22437 : {
22438 : reg4 = reg1;
22439 : reg3 = reg6;
22440 : operands[6] = operands[3];
22441 : }
22442 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22443 : STRIP_UNARY (operands[4])))
22444 : {
22445 : reg4 = reg2;
22446 : reg3 = reg6;
22447 : operands[6] = operands[3];
22448 : }
22449 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22450 : STRIP_UNARY (operands[3])))
22451 : {
22452 : reg4 = reg6;
22453 : reg3 = reg1;
22454 : operands[6] = operands[4];
22455 : }
22456 : else
22457 : {
22458 : reg4 = reg6;
22459 : reg3 = reg2;
22460 : operands[6] = operands[4];
22461 : }
22462 :
22463 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22464 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22465 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22466 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22467 :
22468 : tmp1 = reg1 ^ reg2;
22469 : tmp2 = reg3 | reg4;
22470 : reg_mask = tmp1 ^ tmp2;
22471 : reg_mask &= 0xFF;
22472 :
22473 : operands[1] = STRIP_UNARY (operands[1]);
22474 : operands[2] = STRIP_UNARY (operands[2]);
22475 : operands[6] = STRIP_UNARY (operands[6]);
22476 : if (!register_operand (operands[2], V4DFmode))
22477 : operands[2] = force_reg (V4DFmode, operands[2]);
22478 : if (!register_operand (operands[6], V4DFmode))
22479 : operands[6] = force_reg (V4DFmode, operands[6]);
22480 : operands[5] = GEN_INT (reg_mask);
22481 : }
22482 : #undef DONE
22483 : #undef FAIL
22484 : static const uint8_t expand_encoding[] = {
22485 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
22486 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22487 : 0x25
22488 : };
22489 : return complete_seq (expand_encoding, operands);
22490 : }
22491 :
22492 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22493 : extern rtx_insn *gen_split_2360 (rtx_insn *, rtx *);
22494 : rtx_insn *
22495 : gen_split_2360 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22496 : {
22497 : if (dump_file)
22498 : fprintf (dump_file, "Splitting with gen_split_2360 (sse.md:14142)\n");
22499 : start_sequence ();
22500 : #define FAIL return (end_sequence (), nullptr)
22501 : #define DONE return end_sequence ()
22502 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22503 : {
22504 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22505 : int reg6 = 0xF0;
22506 : int reg2 = 0xCC;
22507 : int reg1 = 0xAA;
22508 : int reg3 = 0;
22509 : int reg4 = 0;
22510 : int reg_mask, tmp1, tmp2;
22511 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22512 : STRIP_UNARY (operands[4])))
22513 : {
22514 : reg4 = reg1;
22515 : reg3 = reg6;
22516 : operands[6] = operands[3];
22517 : }
22518 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22519 : STRIP_UNARY (operands[4])))
22520 : {
22521 : reg4 = reg2;
22522 : reg3 = reg6;
22523 : operands[6] = operands[3];
22524 : }
22525 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22526 : STRIP_UNARY (operands[3])))
22527 : {
22528 : reg4 = reg6;
22529 : reg3 = reg1;
22530 : operands[6] = operands[4];
22531 : }
22532 : else
22533 : {
22534 : reg4 = reg6;
22535 : reg3 = reg2;
22536 : operands[6] = operands[4];
22537 : }
22538 :
22539 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22540 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22541 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22542 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22543 :
22544 : tmp1 = reg1 & reg2;
22545 : tmp2 = reg3 ^ reg4;
22546 : reg_mask = tmp1 & tmp2;
22547 : reg_mask &= 0xFF;
22548 :
22549 : operands[1] = STRIP_UNARY (operands[1]);
22550 : operands[2] = STRIP_UNARY (operands[2]);
22551 : operands[6] = STRIP_UNARY (operands[6]);
22552 : if (!register_operand (operands[2], V2DFmode))
22553 : operands[2] = force_reg (V2DFmode, operands[2]);
22554 : if (!register_operand (operands[6], V2DFmode))
22555 : operands[6] = force_reg (V2DFmode, operands[6]);
22556 : operands[5] = GEN_INT (reg_mask);
22557 : }
22558 : #undef DONE
22559 : #undef FAIL
22560 : static const uint8_t expand_encoding[] = {
22561 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
22562 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22563 : 0x25
22564 : };
22565 : return complete_seq (expand_encoding, operands);
22566 : }
22567 :
22568 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22569 : extern rtx_insn *gen_split_2370 (rtx_insn *, rtx *);
22570 : rtx_insn *
22571 : gen_split_2370 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22572 : {
22573 : if (dump_file)
22574 : fprintf (dump_file, "Splitting with gen_split_2370 (sse.md:14142)\n");
22575 : start_sequence ();
22576 : #define FAIL return (end_sequence (), nullptr)
22577 : #define DONE return end_sequence ()
22578 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22579 : {
22580 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22581 : int reg6 = 0xF0;
22582 : int reg2 = 0xCC;
22583 : int reg1 = 0xAA;
22584 : int reg3 = 0;
22585 : int reg4 = 0;
22586 : int reg_mask, tmp1, tmp2;
22587 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22588 : STRIP_UNARY (operands[4])))
22589 : {
22590 : reg4 = reg1;
22591 : reg3 = reg6;
22592 : operands[6] = operands[3];
22593 : }
22594 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22595 : STRIP_UNARY (operands[4])))
22596 : {
22597 : reg4 = reg2;
22598 : reg3 = reg6;
22599 : operands[6] = operands[3];
22600 : }
22601 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22602 : STRIP_UNARY (operands[3])))
22603 : {
22604 : reg4 = reg6;
22605 : reg3 = reg1;
22606 : operands[6] = operands[4];
22607 : }
22608 : else
22609 : {
22610 : reg4 = reg6;
22611 : reg3 = reg2;
22612 : operands[6] = operands[4];
22613 : }
22614 :
22615 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22616 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22617 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22618 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22619 :
22620 : tmp1 = reg1 | reg2;
22621 : tmp2 = reg3 ^ reg4;
22622 : reg_mask = tmp1 | tmp2;
22623 : reg_mask &= 0xFF;
22624 :
22625 : operands[1] = STRIP_UNARY (operands[1]);
22626 : operands[2] = STRIP_UNARY (operands[2]);
22627 : operands[6] = STRIP_UNARY (operands[6]);
22628 : if (!register_operand (operands[2], V2DFmode))
22629 : operands[2] = force_reg (V2DFmode, operands[2]);
22630 : if (!register_operand (operands[6], V2DFmode))
22631 : operands[6] = force_reg (V2DFmode, operands[6]);
22632 : operands[5] = GEN_INT (reg_mask);
22633 : }
22634 : #undef DONE
22635 : #undef FAIL
22636 : static const uint8_t expand_encoding[] = {
22637 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
22638 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22639 : 0x25
22640 : };
22641 : return complete_seq (expand_encoding, operands);
22642 : }
22643 :
22644 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14142 */
22645 : extern rtx_insn *gen_split_2380 (rtx_insn *, rtx *);
22646 : rtx_insn *
22647 : gen_split_2380 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22648 : {
22649 : if (dump_file)
22650 : fprintf (dump_file, "Splitting with gen_split_2380 (sse.md:14142)\n");
22651 : start_sequence ();
22652 : #define FAIL return (end_sequence (), nullptr)
22653 : #define DONE return end_sequence ()
22654 : #line 14171 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22655 : {
22656 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22657 : int reg6 = 0xF0;
22658 : int reg2 = 0xCC;
22659 : int reg1 = 0xAA;
22660 : int reg3 = 0;
22661 : int reg4 = 0;
22662 : int reg_mask, tmp1, tmp2;
22663 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22664 : STRIP_UNARY (operands[4])))
22665 : {
22666 : reg4 = reg1;
22667 : reg3 = reg6;
22668 : operands[6] = operands[3];
22669 : }
22670 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22671 : STRIP_UNARY (operands[4])))
22672 : {
22673 : reg4 = reg2;
22674 : reg3 = reg6;
22675 : operands[6] = operands[3];
22676 : }
22677 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22678 : STRIP_UNARY (operands[3])))
22679 : {
22680 : reg4 = reg6;
22681 : reg3 = reg1;
22682 : operands[6] = operands[4];
22683 : }
22684 : else
22685 : {
22686 : reg4 = reg6;
22687 : reg3 = reg2;
22688 : operands[6] = operands[4];
22689 : }
22690 :
22691 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22692 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22693 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22694 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22695 :
22696 : tmp1 = reg1 ^ reg2;
22697 : tmp2 = reg3 ^ reg4;
22698 : reg_mask = tmp1 ^ tmp2;
22699 : reg_mask &= 0xFF;
22700 :
22701 : operands[1] = STRIP_UNARY (operands[1]);
22702 : operands[2] = STRIP_UNARY (operands[2]);
22703 : operands[6] = STRIP_UNARY (operands[6]);
22704 : if (!register_operand (operands[2], V2DFmode))
22705 : operands[2] = force_reg (V2DFmode, operands[2]);
22706 : if (!register_operand (operands[6], V2DFmode))
22707 : operands[6] = force_reg (V2DFmode, operands[6]);
22708 : operands[5] = GEN_INT (reg_mask);
22709 : }
22710 : #undef DONE
22711 : #undef FAIL
22712 : static const uint8_t expand_encoding[] = {
22713 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
22714 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22715 : 0x25
22716 : };
22717 : return complete_seq (expand_encoding, operands);
22718 : }
22719 :
22720 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
22721 : extern rtx_insn *gen_split_2390 (rtx_insn *, rtx *);
22722 : rtx_insn *
22723 : gen_split_2390 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22724 : {
22725 : if (dump_file)
22726 : fprintf (dump_file, "Splitting with gen_split_2390 (sse.md:14227)\n");
22727 : start_sequence ();
22728 : #define FAIL return (end_sequence (), nullptr)
22729 : #define DONE return end_sequence ()
22730 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22731 : {
22732 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22733 : int reg6 = 0xF0;
22734 : int reg2 = 0xCC;
22735 : int reg1 = 0xAA;
22736 : int reg3 = 0;
22737 : int reg4 = 0;
22738 : int reg_mask, tmp1, tmp2;
22739 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22740 : STRIP_UNARY (operands[4])))
22741 : {
22742 : reg4 = reg1;
22743 : reg3 = reg6;
22744 : operands[6] = operands[3];
22745 : }
22746 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22747 : STRIP_UNARY (operands[4])))
22748 : {
22749 : reg4 = reg2;
22750 : reg3 = reg6;
22751 : operands[6] = operands[3];
22752 : }
22753 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22754 : STRIP_UNARY (operands[3])))
22755 : {
22756 : reg4 = reg6;
22757 : reg3 = reg1;
22758 : operands[6] = operands[4];
22759 : }
22760 : else
22761 : {
22762 : reg4 = reg6;
22763 : reg3 = reg2;
22764 : operands[6] = operands[4];
22765 : }
22766 :
22767 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22768 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22769 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22770 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22771 :
22772 : tmp1 = reg1 & reg2;
22773 : tmp2 = tmp1 | reg3;
22774 : reg_mask = tmp2 & reg4;
22775 : reg_mask &= 0xFF;
22776 :
22777 : operands[1] = STRIP_UNARY (operands[1]);
22778 : operands[2] = STRIP_UNARY (operands[2]);
22779 : operands[6] = STRIP_UNARY (operands[6]);
22780 : operands[5] = GEN_INT (reg_mask);
22781 : if (!register_operand (operands[2], V64QImode))
22782 : operands[2] = force_reg (V64QImode, operands[2]);
22783 : if (!register_operand (operands[6], V64QImode))
22784 : operands[6] = force_reg (V64QImode, operands[6]);
22785 :
22786 : }
22787 : #undef DONE
22788 : #undef FAIL
22789 : static const uint8_t expand_encoding[] = {
22790 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
22791 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22792 : 0x25
22793 : };
22794 : return complete_seq (expand_encoding, operands);
22795 : }
22796 :
22797 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
22798 : extern rtx_insn *gen_split_2400 (rtx_insn *, rtx *);
22799 : rtx_insn *
22800 : gen_split_2400 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22801 : {
22802 : if (dump_file)
22803 : fprintf (dump_file, "Splitting with gen_split_2400 (sse.md:14227)\n");
22804 : start_sequence ();
22805 : #define FAIL return (end_sequence (), nullptr)
22806 : #define DONE return end_sequence ()
22807 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22808 : {
22809 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22810 : int reg6 = 0xF0;
22811 : int reg2 = 0xCC;
22812 : int reg1 = 0xAA;
22813 : int reg3 = 0;
22814 : int reg4 = 0;
22815 : int reg_mask, tmp1, tmp2;
22816 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22817 : STRIP_UNARY (operands[4])))
22818 : {
22819 : reg4 = reg1;
22820 : reg3 = reg6;
22821 : operands[6] = operands[3];
22822 : }
22823 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22824 : STRIP_UNARY (operands[4])))
22825 : {
22826 : reg4 = reg2;
22827 : reg3 = reg6;
22828 : operands[6] = operands[3];
22829 : }
22830 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22831 : STRIP_UNARY (operands[3])))
22832 : {
22833 : reg4 = reg6;
22834 : reg3 = reg1;
22835 : operands[6] = operands[4];
22836 : }
22837 : else
22838 : {
22839 : reg4 = reg6;
22840 : reg3 = reg2;
22841 : operands[6] = operands[4];
22842 : }
22843 :
22844 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22845 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22846 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22847 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22848 :
22849 : tmp1 = reg1 & reg2;
22850 : tmp2 = tmp1 ^ reg3;
22851 : reg_mask = tmp2 | reg4;
22852 : reg_mask &= 0xFF;
22853 :
22854 : operands[1] = STRIP_UNARY (operands[1]);
22855 : operands[2] = STRIP_UNARY (operands[2]);
22856 : operands[6] = STRIP_UNARY (operands[6]);
22857 : operands[5] = GEN_INT (reg_mask);
22858 : if (!register_operand (operands[2], V64QImode))
22859 : operands[2] = force_reg (V64QImode, operands[2]);
22860 : if (!register_operand (operands[6], V64QImode))
22861 : operands[6] = force_reg (V64QImode, operands[6]);
22862 :
22863 : }
22864 : #undef DONE
22865 : #undef FAIL
22866 : static const uint8_t expand_encoding[] = {
22867 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
22868 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22869 : 0x25
22870 : };
22871 : return complete_seq (expand_encoding, operands);
22872 : }
22873 :
22874 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
22875 : extern rtx_insn *gen_split_2410 (rtx_insn *, rtx *);
22876 : rtx_insn *
22877 : gen_split_2410 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22878 : {
22879 : if (dump_file)
22880 : fprintf (dump_file, "Splitting with gen_split_2410 (sse.md:14227)\n");
22881 : start_sequence ();
22882 : #define FAIL return (end_sequence (), nullptr)
22883 : #define DONE return end_sequence ()
22884 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22885 : {
22886 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22887 : int reg6 = 0xF0;
22888 : int reg2 = 0xCC;
22889 : int reg1 = 0xAA;
22890 : int reg3 = 0;
22891 : int reg4 = 0;
22892 : int reg_mask, tmp1, tmp2;
22893 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22894 : STRIP_UNARY (operands[4])))
22895 : {
22896 : reg4 = reg1;
22897 : reg3 = reg6;
22898 : operands[6] = operands[3];
22899 : }
22900 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22901 : STRIP_UNARY (operands[4])))
22902 : {
22903 : reg4 = reg2;
22904 : reg3 = reg6;
22905 : operands[6] = operands[3];
22906 : }
22907 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22908 : STRIP_UNARY (operands[3])))
22909 : {
22910 : reg4 = reg6;
22911 : reg3 = reg1;
22912 : operands[6] = operands[4];
22913 : }
22914 : else
22915 : {
22916 : reg4 = reg6;
22917 : reg3 = reg2;
22918 : operands[6] = operands[4];
22919 : }
22920 :
22921 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22922 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
22923 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
22924 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
22925 :
22926 : tmp1 = reg1 & reg2;
22927 : tmp2 = tmp1 & reg3;
22928 : reg_mask = tmp2 ^ reg4;
22929 : reg_mask &= 0xFF;
22930 :
22931 : operands[1] = STRIP_UNARY (operands[1]);
22932 : operands[2] = STRIP_UNARY (operands[2]);
22933 : operands[6] = STRIP_UNARY (operands[6]);
22934 : operands[5] = GEN_INT (reg_mask);
22935 : if (!register_operand (operands[2], V32QImode))
22936 : operands[2] = force_reg (V32QImode, operands[2]);
22937 : if (!register_operand (operands[6], V32QImode))
22938 : operands[6] = force_reg (V32QImode, operands[6]);
22939 :
22940 : }
22941 : #undef DONE
22942 : #undef FAIL
22943 : static const uint8_t expand_encoding[] = {
22944 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
22945 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
22946 : 0x25
22947 : };
22948 : return complete_seq (expand_encoding, operands);
22949 : }
22950 :
22951 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
22952 : extern rtx_insn *gen_split_2420 (rtx_insn *, rtx *);
22953 : rtx_insn *
22954 : gen_split_2420 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
22955 : {
22956 : if (dump_file)
22957 : fprintf (dump_file, "Splitting with gen_split_2420 (sse.md:14227)\n");
22958 : start_sequence ();
22959 : #define FAIL return (end_sequence (), nullptr)
22960 : #define DONE return end_sequence ()
22961 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
22962 : {
22963 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
22964 : int reg6 = 0xF0;
22965 : int reg2 = 0xCC;
22966 : int reg1 = 0xAA;
22967 : int reg3 = 0;
22968 : int reg4 = 0;
22969 : int reg_mask, tmp1, tmp2;
22970 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
22971 : STRIP_UNARY (operands[4])))
22972 : {
22973 : reg4 = reg1;
22974 : reg3 = reg6;
22975 : operands[6] = operands[3];
22976 : }
22977 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
22978 : STRIP_UNARY (operands[4])))
22979 : {
22980 : reg4 = reg2;
22981 : reg3 = reg6;
22982 : operands[6] = operands[3];
22983 : }
22984 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
22985 : STRIP_UNARY (operands[3])))
22986 : {
22987 : reg4 = reg6;
22988 : reg3 = reg1;
22989 : operands[6] = operands[4];
22990 : }
22991 : else
22992 : {
22993 : reg4 = reg6;
22994 : reg3 = reg2;
22995 : operands[6] = operands[4];
22996 : }
22997 :
22998 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
22999 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23000 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23001 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23002 :
23003 : tmp1 = reg1 | reg2;
23004 : tmp2 = tmp1 | reg3;
23005 : reg_mask = tmp2 & reg4;
23006 : reg_mask &= 0xFF;
23007 :
23008 : operands[1] = STRIP_UNARY (operands[1]);
23009 : operands[2] = STRIP_UNARY (operands[2]);
23010 : operands[6] = STRIP_UNARY (operands[6]);
23011 : operands[5] = GEN_INT (reg_mask);
23012 : if (!register_operand (operands[2], V32QImode))
23013 : operands[2] = force_reg (V32QImode, operands[2]);
23014 : if (!register_operand (operands[6], V32QImode))
23015 : operands[6] = force_reg (V32QImode, operands[6]);
23016 :
23017 : }
23018 : #undef DONE
23019 : #undef FAIL
23020 : static const uint8_t expand_encoding[] = {
23021 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
23022 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23023 : 0x25
23024 : };
23025 : return complete_seq (expand_encoding, operands);
23026 : }
23027 :
23028 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23029 : extern rtx_insn *gen_split_2430 (rtx_insn *, rtx *);
23030 : rtx_insn *
23031 : gen_split_2430 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23032 : {
23033 : if (dump_file)
23034 : fprintf (dump_file, "Splitting with gen_split_2430 (sse.md:14227)\n");
23035 : start_sequence ();
23036 : #define FAIL return (end_sequence (), nullptr)
23037 : #define DONE return end_sequence ()
23038 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23039 : {
23040 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23041 : int reg6 = 0xF0;
23042 : int reg2 = 0xCC;
23043 : int reg1 = 0xAA;
23044 : int reg3 = 0;
23045 : int reg4 = 0;
23046 : int reg_mask, tmp1, tmp2;
23047 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23048 : STRIP_UNARY (operands[4])))
23049 : {
23050 : reg4 = reg1;
23051 : reg3 = reg6;
23052 : operands[6] = operands[3];
23053 : }
23054 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23055 : STRIP_UNARY (operands[4])))
23056 : {
23057 : reg4 = reg2;
23058 : reg3 = reg6;
23059 : operands[6] = operands[3];
23060 : }
23061 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23062 : STRIP_UNARY (operands[3])))
23063 : {
23064 : reg4 = reg6;
23065 : reg3 = reg1;
23066 : operands[6] = operands[4];
23067 : }
23068 : else
23069 : {
23070 : reg4 = reg6;
23071 : reg3 = reg2;
23072 : operands[6] = operands[4];
23073 : }
23074 :
23075 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23076 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23077 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23078 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23079 :
23080 : tmp1 = reg1 | reg2;
23081 : tmp2 = tmp1 ^ reg3;
23082 : reg_mask = tmp2 | reg4;
23083 : reg_mask &= 0xFF;
23084 :
23085 : operands[1] = STRIP_UNARY (operands[1]);
23086 : operands[2] = STRIP_UNARY (operands[2]);
23087 : operands[6] = STRIP_UNARY (operands[6]);
23088 : operands[5] = GEN_INT (reg_mask);
23089 : if (!register_operand (operands[2], V32QImode))
23090 : operands[2] = force_reg (V32QImode, operands[2]);
23091 : if (!register_operand (operands[6], V32QImode))
23092 : operands[6] = force_reg (V32QImode, operands[6]);
23093 :
23094 : }
23095 : #undef DONE
23096 : #undef FAIL
23097 : static const uint8_t expand_encoding[] = {
23098 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
23099 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23100 : 0x25
23101 : };
23102 : return complete_seq (expand_encoding, operands);
23103 : }
23104 :
23105 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23106 : extern rtx_insn *gen_split_2440 (rtx_insn *, rtx *);
23107 : rtx_insn *
23108 : gen_split_2440 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23109 : {
23110 : if (dump_file)
23111 : fprintf (dump_file, "Splitting with gen_split_2440 (sse.md:14227)\n");
23112 : start_sequence ();
23113 : #define FAIL return (end_sequence (), nullptr)
23114 : #define DONE return end_sequence ()
23115 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23116 : {
23117 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23118 : int reg6 = 0xF0;
23119 : int reg2 = 0xCC;
23120 : int reg1 = 0xAA;
23121 : int reg3 = 0;
23122 : int reg4 = 0;
23123 : int reg_mask, tmp1, tmp2;
23124 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23125 : STRIP_UNARY (operands[4])))
23126 : {
23127 : reg4 = reg1;
23128 : reg3 = reg6;
23129 : operands[6] = operands[3];
23130 : }
23131 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23132 : STRIP_UNARY (operands[4])))
23133 : {
23134 : reg4 = reg2;
23135 : reg3 = reg6;
23136 : operands[6] = operands[3];
23137 : }
23138 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23139 : STRIP_UNARY (operands[3])))
23140 : {
23141 : reg4 = reg6;
23142 : reg3 = reg1;
23143 : operands[6] = operands[4];
23144 : }
23145 : else
23146 : {
23147 : reg4 = reg6;
23148 : reg3 = reg2;
23149 : operands[6] = operands[4];
23150 : }
23151 :
23152 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23153 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23154 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23155 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23156 :
23157 : tmp1 = reg1 | reg2;
23158 : tmp2 = tmp1 & reg3;
23159 : reg_mask = tmp2 ^ reg4;
23160 : reg_mask &= 0xFF;
23161 :
23162 : operands[1] = STRIP_UNARY (operands[1]);
23163 : operands[2] = STRIP_UNARY (operands[2]);
23164 : operands[6] = STRIP_UNARY (operands[6]);
23165 : operands[5] = GEN_INT (reg_mask);
23166 : if (!register_operand (operands[2], V16QImode))
23167 : operands[2] = force_reg (V16QImode, operands[2]);
23168 : if (!register_operand (operands[6], V16QImode))
23169 : operands[6] = force_reg (V16QImode, operands[6]);
23170 :
23171 : }
23172 : #undef DONE
23173 : #undef FAIL
23174 : static const uint8_t expand_encoding[] = {
23175 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
23176 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23177 : 0x25
23178 : };
23179 : return complete_seq (expand_encoding, operands);
23180 : }
23181 :
23182 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23183 : extern rtx_insn *gen_split_2450 (rtx_insn *, rtx *);
23184 : rtx_insn *
23185 : gen_split_2450 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23186 : {
23187 : if (dump_file)
23188 : fprintf (dump_file, "Splitting with gen_split_2450 (sse.md:14227)\n");
23189 : start_sequence ();
23190 : #define FAIL return (end_sequence (), nullptr)
23191 : #define DONE return end_sequence ()
23192 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23193 : {
23194 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23195 : int reg6 = 0xF0;
23196 : int reg2 = 0xCC;
23197 : int reg1 = 0xAA;
23198 : int reg3 = 0;
23199 : int reg4 = 0;
23200 : int reg_mask, tmp1, tmp2;
23201 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23202 : STRIP_UNARY (operands[4])))
23203 : {
23204 : reg4 = reg1;
23205 : reg3 = reg6;
23206 : operands[6] = operands[3];
23207 : }
23208 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23209 : STRIP_UNARY (operands[4])))
23210 : {
23211 : reg4 = reg2;
23212 : reg3 = reg6;
23213 : operands[6] = operands[3];
23214 : }
23215 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23216 : STRIP_UNARY (operands[3])))
23217 : {
23218 : reg4 = reg6;
23219 : reg3 = reg1;
23220 : operands[6] = operands[4];
23221 : }
23222 : else
23223 : {
23224 : reg4 = reg6;
23225 : reg3 = reg2;
23226 : operands[6] = operands[4];
23227 : }
23228 :
23229 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23230 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23231 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23232 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23233 :
23234 : tmp1 = reg1 ^ reg2;
23235 : tmp2 = tmp1 | reg3;
23236 : reg_mask = tmp2 & reg4;
23237 : reg_mask &= 0xFF;
23238 :
23239 : operands[1] = STRIP_UNARY (operands[1]);
23240 : operands[2] = STRIP_UNARY (operands[2]);
23241 : operands[6] = STRIP_UNARY (operands[6]);
23242 : operands[5] = GEN_INT (reg_mask);
23243 : if (!register_operand (operands[2], V16QImode))
23244 : operands[2] = force_reg (V16QImode, operands[2]);
23245 : if (!register_operand (operands[6], V16QImode))
23246 : operands[6] = force_reg (V16QImode, operands[6]);
23247 :
23248 : }
23249 : #undef DONE
23250 : #undef FAIL
23251 : static const uint8_t expand_encoding[] = {
23252 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
23253 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23254 : 0x25
23255 : };
23256 : return complete_seq (expand_encoding, operands);
23257 : }
23258 :
23259 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23260 : extern rtx_insn *gen_split_2460 (rtx_insn *, rtx *);
23261 : rtx_insn *
23262 : gen_split_2460 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23263 : {
23264 : if (dump_file)
23265 : fprintf (dump_file, "Splitting with gen_split_2460 (sse.md:14227)\n");
23266 : start_sequence ();
23267 : #define FAIL return (end_sequence (), nullptr)
23268 : #define DONE return end_sequence ()
23269 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23270 : {
23271 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23272 : int reg6 = 0xF0;
23273 : int reg2 = 0xCC;
23274 : int reg1 = 0xAA;
23275 : int reg3 = 0;
23276 : int reg4 = 0;
23277 : int reg_mask, tmp1, tmp2;
23278 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23279 : STRIP_UNARY (operands[4])))
23280 : {
23281 : reg4 = reg1;
23282 : reg3 = reg6;
23283 : operands[6] = operands[3];
23284 : }
23285 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23286 : STRIP_UNARY (operands[4])))
23287 : {
23288 : reg4 = reg2;
23289 : reg3 = reg6;
23290 : operands[6] = operands[3];
23291 : }
23292 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23293 : STRIP_UNARY (operands[3])))
23294 : {
23295 : reg4 = reg6;
23296 : reg3 = reg1;
23297 : operands[6] = operands[4];
23298 : }
23299 : else
23300 : {
23301 : reg4 = reg6;
23302 : reg3 = reg2;
23303 : operands[6] = operands[4];
23304 : }
23305 :
23306 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23307 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23308 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23309 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23310 :
23311 : tmp1 = reg1 ^ reg2;
23312 : tmp2 = tmp1 ^ reg3;
23313 : reg_mask = tmp2 | reg4;
23314 : reg_mask &= 0xFF;
23315 :
23316 : operands[1] = STRIP_UNARY (operands[1]);
23317 : operands[2] = STRIP_UNARY (operands[2]);
23318 : operands[6] = STRIP_UNARY (operands[6]);
23319 : operands[5] = GEN_INT (reg_mask);
23320 : if (!register_operand (operands[2], V16QImode))
23321 : operands[2] = force_reg (V16QImode, operands[2]);
23322 : if (!register_operand (operands[6], V16QImode))
23323 : operands[6] = force_reg (V16QImode, operands[6]);
23324 :
23325 : }
23326 : #undef DONE
23327 : #undef FAIL
23328 : static const uint8_t expand_encoding[] = {
23329 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x4f, 0x04, 0x01,
23330 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23331 : 0x25
23332 : };
23333 : return complete_seq (expand_encoding, operands);
23334 : }
23335 :
23336 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23337 : extern rtx_insn *gen_split_2470 (rtx_insn *, rtx *);
23338 : rtx_insn *
23339 : gen_split_2470 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23340 : {
23341 : if (dump_file)
23342 : fprintf (dump_file, "Splitting with gen_split_2470 (sse.md:14227)\n");
23343 : start_sequence ();
23344 : #define FAIL return (end_sequence (), nullptr)
23345 : #define DONE return end_sequence ()
23346 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23347 : {
23348 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23349 : int reg6 = 0xF0;
23350 : int reg2 = 0xCC;
23351 : int reg1 = 0xAA;
23352 : int reg3 = 0;
23353 : int reg4 = 0;
23354 : int reg_mask, tmp1, tmp2;
23355 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23356 : STRIP_UNARY (operands[4])))
23357 : {
23358 : reg4 = reg1;
23359 : reg3 = reg6;
23360 : operands[6] = operands[3];
23361 : }
23362 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23363 : STRIP_UNARY (operands[4])))
23364 : {
23365 : reg4 = reg2;
23366 : reg3 = reg6;
23367 : operands[6] = operands[3];
23368 : }
23369 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23370 : STRIP_UNARY (operands[3])))
23371 : {
23372 : reg4 = reg6;
23373 : reg3 = reg1;
23374 : operands[6] = operands[4];
23375 : }
23376 : else
23377 : {
23378 : reg4 = reg6;
23379 : reg3 = reg2;
23380 : operands[6] = operands[4];
23381 : }
23382 :
23383 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23384 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23385 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23386 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23387 :
23388 : tmp1 = reg1 ^ reg2;
23389 : tmp2 = tmp1 & reg3;
23390 : reg_mask = tmp2 ^ reg4;
23391 : reg_mask &= 0xFF;
23392 :
23393 : operands[1] = STRIP_UNARY (operands[1]);
23394 : operands[2] = STRIP_UNARY (operands[2]);
23395 : operands[6] = STRIP_UNARY (operands[6]);
23396 : operands[5] = GEN_INT (reg_mask);
23397 : if (!register_operand (operands[2], V32HImode))
23398 : operands[2] = force_reg (V32HImode, operands[2]);
23399 : if (!register_operand (operands[6], V32HImode))
23400 : operands[6] = force_reg (V32HImode, operands[6]);
23401 :
23402 : }
23403 : #undef DONE
23404 : #undef FAIL
23405 : static const uint8_t expand_encoding[] = {
23406 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
23407 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23408 : 0x25
23409 : };
23410 : return complete_seq (expand_encoding, operands);
23411 : }
23412 :
23413 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23414 : extern rtx_insn *gen_split_2480 (rtx_insn *, rtx *);
23415 : rtx_insn *
23416 : gen_split_2480 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23417 : {
23418 : if (dump_file)
23419 : fprintf (dump_file, "Splitting with gen_split_2480 (sse.md:14227)\n");
23420 : start_sequence ();
23421 : #define FAIL return (end_sequence (), nullptr)
23422 : #define DONE return end_sequence ()
23423 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23424 : {
23425 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23426 : int reg6 = 0xF0;
23427 : int reg2 = 0xCC;
23428 : int reg1 = 0xAA;
23429 : int reg3 = 0;
23430 : int reg4 = 0;
23431 : int reg_mask, tmp1, tmp2;
23432 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23433 : STRIP_UNARY (operands[4])))
23434 : {
23435 : reg4 = reg1;
23436 : reg3 = reg6;
23437 : operands[6] = operands[3];
23438 : }
23439 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23440 : STRIP_UNARY (operands[4])))
23441 : {
23442 : reg4 = reg2;
23443 : reg3 = reg6;
23444 : operands[6] = operands[3];
23445 : }
23446 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23447 : STRIP_UNARY (operands[3])))
23448 : {
23449 : reg4 = reg6;
23450 : reg3 = reg1;
23451 : operands[6] = operands[4];
23452 : }
23453 : else
23454 : {
23455 : reg4 = reg6;
23456 : reg3 = reg2;
23457 : operands[6] = operands[4];
23458 : }
23459 :
23460 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23461 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23462 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23463 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23464 :
23465 : tmp1 = reg1 & reg2;
23466 : tmp2 = tmp1 ^ reg3;
23467 : reg_mask = tmp2 & reg4;
23468 : reg_mask &= 0xFF;
23469 :
23470 : operands[1] = STRIP_UNARY (operands[1]);
23471 : operands[2] = STRIP_UNARY (operands[2]);
23472 : operands[6] = STRIP_UNARY (operands[6]);
23473 : operands[5] = GEN_INT (reg_mask);
23474 : if (!register_operand (operands[2], V32HImode))
23475 : operands[2] = force_reg (V32HImode, operands[2]);
23476 : if (!register_operand (operands[6], V32HImode))
23477 : operands[6] = force_reg (V32HImode, operands[6]);
23478 :
23479 : }
23480 : #undef DONE
23481 : #undef FAIL
23482 : static const uint8_t expand_encoding[] = {
23483 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
23484 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23485 : 0x25
23486 : };
23487 : return complete_seq (expand_encoding, operands);
23488 : }
23489 :
23490 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23491 : extern rtx_insn *gen_split_2490 (rtx_insn *, rtx *);
23492 : rtx_insn *
23493 : gen_split_2490 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23494 : {
23495 : if (dump_file)
23496 : fprintf (dump_file, "Splitting with gen_split_2490 (sse.md:14227)\n");
23497 : start_sequence ();
23498 : #define FAIL return (end_sequence (), nullptr)
23499 : #define DONE return end_sequence ()
23500 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23501 : {
23502 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23503 : int reg6 = 0xF0;
23504 : int reg2 = 0xCC;
23505 : int reg1 = 0xAA;
23506 : int reg3 = 0;
23507 : int reg4 = 0;
23508 : int reg_mask, tmp1, tmp2;
23509 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23510 : STRIP_UNARY (operands[4])))
23511 : {
23512 : reg4 = reg1;
23513 : reg3 = reg6;
23514 : operands[6] = operands[3];
23515 : }
23516 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23517 : STRIP_UNARY (operands[4])))
23518 : {
23519 : reg4 = reg2;
23520 : reg3 = reg6;
23521 : operands[6] = operands[3];
23522 : }
23523 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23524 : STRIP_UNARY (operands[3])))
23525 : {
23526 : reg4 = reg6;
23527 : reg3 = reg1;
23528 : operands[6] = operands[4];
23529 : }
23530 : else
23531 : {
23532 : reg4 = reg6;
23533 : reg3 = reg2;
23534 : operands[6] = operands[4];
23535 : }
23536 :
23537 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23538 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23539 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23540 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23541 :
23542 : tmp1 = reg1 & reg2;
23543 : tmp2 = tmp1 & reg3;
23544 : reg_mask = tmp2 | reg4;
23545 : reg_mask &= 0xFF;
23546 :
23547 : operands[1] = STRIP_UNARY (operands[1]);
23548 : operands[2] = STRIP_UNARY (operands[2]);
23549 : operands[6] = STRIP_UNARY (operands[6]);
23550 : operands[5] = GEN_INT (reg_mask);
23551 : if (!register_operand (operands[2], V16HImode))
23552 : operands[2] = force_reg (V16HImode, operands[2]);
23553 : if (!register_operand (operands[6], V16HImode))
23554 : operands[6] = force_reg (V16HImode, operands[6]);
23555 :
23556 : }
23557 : #undef DONE
23558 : #undef FAIL
23559 : static const uint8_t expand_encoding[] = {
23560 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
23561 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23562 : 0x25
23563 : };
23564 : return complete_seq (expand_encoding, operands);
23565 : }
23566 :
23567 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23568 : extern rtx_insn *gen_split_2500 (rtx_insn *, rtx *);
23569 : rtx_insn *
23570 : gen_split_2500 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23571 : {
23572 : if (dump_file)
23573 : fprintf (dump_file, "Splitting with gen_split_2500 (sse.md:14227)\n");
23574 : start_sequence ();
23575 : #define FAIL return (end_sequence (), nullptr)
23576 : #define DONE return end_sequence ()
23577 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23578 : {
23579 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23580 : int reg6 = 0xF0;
23581 : int reg2 = 0xCC;
23582 : int reg1 = 0xAA;
23583 : int reg3 = 0;
23584 : int reg4 = 0;
23585 : int reg_mask, tmp1, tmp2;
23586 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23587 : STRIP_UNARY (operands[4])))
23588 : {
23589 : reg4 = reg1;
23590 : reg3 = reg6;
23591 : operands[6] = operands[3];
23592 : }
23593 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23594 : STRIP_UNARY (operands[4])))
23595 : {
23596 : reg4 = reg2;
23597 : reg3 = reg6;
23598 : operands[6] = operands[3];
23599 : }
23600 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23601 : STRIP_UNARY (operands[3])))
23602 : {
23603 : reg4 = reg6;
23604 : reg3 = reg1;
23605 : operands[6] = operands[4];
23606 : }
23607 : else
23608 : {
23609 : reg4 = reg6;
23610 : reg3 = reg2;
23611 : operands[6] = operands[4];
23612 : }
23613 :
23614 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23615 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23616 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23617 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23618 :
23619 : tmp1 = reg1 & reg2;
23620 : tmp2 = tmp1 | reg3;
23621 : reg_mask = tmp2 ^ reg4;
23622 : reg_mask &= 0xFF;
23623 :
23624 : operands[1] = STRIP_UNARY (operands[1]);
23625 : operands[2] = STRIP_UNARY (operands[2]);
23626 : operands[6] = STRIP_UNARY (operands[6]);
23627 : operands[5] = GEN_INT (reg_mask);
23628 : if (!register_operand (operands[2], V16HImode))
23629 : operands[2] = force_reg (V16HImode, operands[2]);
23630 : if (!register_operand (operands[6], V16HImode))
23631 : operands[6] = force_reg (V16HImode, operands[6]);
23632 :
23633 : }
23634 : #undef DONE
23635 : #undef FAIL
23636 : static const uint8_t expand_encoding[] = {
23637 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
23638 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23639 : 0x25
23640 : };
23641 : return complete_seq (expand_encoding, operands);
23642 : }
23643 :
23644 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23645 : extern rtx_insn *gen_split_2510 (rtx_insn *, rtx *);
23646 : rtx_insn *
23647 : gen_split_2510 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23648 : {
23649 : if (dump_file)
23650 : fprintf (dump_file, "Splitting with gen_split_2510 (sse.md:14227)\n");
23651 : start_sequence ();
23652 : #define FAIL return (end_sequence (), nullptr)
23653 : #define DONE return end_sequence ()
23654 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23655 : {
23656 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23657 : int reg6 = 0xF0;
23658 : int reg2 = 0xCC;
23659 : int reg1 = 0xAA;
23660 : int reg3 = 0;
23661 : int reg4 = 0;
23662 : int reg_mask, tmp1, tmp2;
23663 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23664 : STRIP_UNARY (operands[4])))
23665 : {
23666 : reg4 = reg1;
23667 : reg3 = reg6;
23668 : operands[6] = operands[3];
23669 : }
23670 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23671 : STRIP_UNARY (operands[4])))
23672 : {
23673 : reg4 = reg2;
23674 : reg3 = reg6;
23675 : operands[6] = operands[3];
23676 : }
23677 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23678 : STRIP_UNARY (operands[3])))
23679 : {
23680 : reg4 = reg6;
23681 : reg3 = reg1;
23682 : operands[6] = operands[4];
23683 : }
23684 : else
23685 : {
23686 : reg4 = reg6;
23687 : reg3 = reg2;
23688 : operands[6] = operands[4];
23689 : }
23690 :
23691 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23692 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23693 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23694 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23695 :
23696 : tmp1 = reg1 | reg2;
23697 : tmp2 = tmp1 ^ reg3;
23698 : reg_mask = tmp2 & reg4;
23699 : reg_mask &= 0xFF;
23700 :
23701 : operands[1] = STRIP_UNARY (operands[1]);
23702 : operands[2] = STRIP_UNARY (operands[2]);
23703 : operands[6] = STRIP_UNARY (operands[6]);
23704 : operands[5] = GEN_INT (reg_mask);
23705 : if (!register_operand (operands[2], V16HImode))
23706 : operands[2] = force_reg (V16HImode, operands[2]);
23707 : if (!register_operand (operands[6], V16HImode))
23708 : operands[6] = force_reg (V16HImode, operands[6]);
23709 :
23710 : }
23711 : #undef DONE
23712 : #undef FAIL
23713 : static const uint8_t expand_encoding[] = {
23714 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
23715 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23716 : 0x25
23717 : };
23718 : return complete_seq (expand_encoding, operands);
23719 : }
23720 :
23721 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23722 : extern rtx_insn *gen_split_2520 (rtx_insn *, rtx *);
23723 : rtx_insn *
23724 : gen_split_2520 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23725 : {
23726 : if (dump_file)
23727 : fprintf (dump_file, "Splitting with gen_split_2520 (sse.md:14227)\n");
23728 : start_sequence ();
23729 : #define FAIL return (end_sequence (), nullptr)
23730 : #define DONE return end_sequence ()
23731 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23732 : {
23733 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23734 : int reg6 = 0xF0;
23735 : int reg2 = 0xCC;
23736 : int reg1 = 0xAA;
23737 : int reg3 = 0;
23738 : int reg4 = 0;
23739 : int reg_mask, tmp1, tmp2;
23740 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23741 : STRIP_UNARY (operands[4])))
23742 : {
23743 : reg4 = reg1;
23744 : reg3 = reg6;
23745 : operands[6] = operands[3];
23746 : }
23747 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23748 : STRIP_UNARY (operands[4])))
23749 : {
23750 : reg4 = reg2;
23751 : reg3 = reg6;
23752 : operands[6] = operands[3];
23753 : }
23754 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23755 : STRIP_UNARY (operands[3])))
23756 : {
23757 : reg4 = reg6;
23758 : reg3 = reg1;
23759 : operands[6] = operands[4];
23760 : }
23761 : else
23762 : {
23763 : reg4 = reg6;
23764 : reg3 = reg2;
23765 : operands[6] = operands[4];
23766 : }
23767 :
23768 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23769 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23770 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23771 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23772 :
23773 : tmp1 = reg1 | reg2;
23774 : tmp2 = tmp1 & reg3;
23775 : reg_mask = tmp2 | reg4;
23776 : reg_mask &= 0xFF;
23777 :
23778 : operands[1] = STRIP_UNARY (operands[1]);
23779 : operands[2] = STRIP_UNARY (operands[2]);
23780 : operands[6] = STRIP_UNARY (operands[6]);
23781 : operands[5] = GEN_INT (reg_mask);
23782 : if (!register_operand (operands[2], V8HImode))
23783 : operands[2] = force_reg (V8HImode, operands[2]);
23784 : if (!register_operand (operands[6], V8HImode))
23785 : operands[6] = force_reg (V8HImode, operands[6]);
23786 :
23787 : }
23788 : #undef DONE
23789 : #undef FAIL
23790 : static const uint8_t expand_encoding[] = {
23791 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
23792 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23793 : 0x25
23794 : };
23795 : return complete_seq (expand_encoding, operands);
23796 : }
23797 :
23798 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23799 : extern rtx_insn *gen_split_2530 (rtx_insn *, rtx *);
23800 : rtx_insn *
23801 : gen_split_2530 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23802 : {
23803 : if (dump_file)
23804 : fprintf (dump_file, "Splitting with gen_split_2530 (sse.md:14227)\n");
23805 : start_sequence ();
23806 : #define FAIL return (end_sequence (), nullptr)
23807 : #define DONE return end_sequence ()
23808 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23809 : {
23810 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23811 : int reg6 = 0xF0;
23812 : int reg2 = 0xCC;
23813 : int reg1 = 0xAA;
23814 : int reg3 = 0;
23815 : int reg4 = 0;
23816 : int reg_mask, tmp1, tmp2;
23817 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23818 : STRIP_UNARY (operands[4])))
23819 : {
23820 : reg4 = reg1;
23821 : reg3 = reg6;
23822 : operands[6] = operands[3];
23823 : }
23824 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23825 : STRIP_UNARY (operands[4])))
23826 : {
23827 : reg4 = reg2;
23828 : reg3 = reg6;
23829 : operands[6] = operands[3];
23830 : }
23831 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23832 : STRIP_UNARY (operands[3])))
23833 : {
23834 : reg4 = reg6;
23835 : reg3 = reg1;
23836 : operands[6] = operands[4];
23837 : }
23838 : else
23839 : {
23840 : reg4 = reg6;
23841 : reg3 = reg2;
23842 : operands[6] = operands[4];
23843 : }
23844 :
23845 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23846 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23847 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23848 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23849 :
23850 : tmp1 = reg1 | reg2;
23851 : tmp2 = tmp1 | reg3;
23852 : reg_mask = tmp2 ^ reg4;
23853 : reg_mask &= 0xFF;
23854 :
23855 : operands[1] = STRIP_UNARY (operands[1]);
23856 : operands[2] = STRIP_UNARY (operands[2]);
23857 : operands[6] = STRIP_UNARY (operands[6]);
23858 : operands[5] = GEN_INT (reg_mask);
23859 : if (!register_operand (operands[2], V8HImode))
23860 : operands[2] = force_reg (V8HImode, operands[2]);
23861 : if (!register_operand (operands[6], V8HImode))
23862 : operands[6] = force_reg (V8HImode, operands[6]);
23863 :
23864 : }
23865 : #undef DONE
23866 : #undef FAIL
23867 : static const uint8_t expand_encoding[] = {
23868 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
23869 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23870 : 0x25
23871 : };
23872 : return complete_seq (expand_encoding, operands);
23873 : }
23874 :
23875 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23876 : extern rtx_insn *gen_split_2540 (rtx_insn *, rtx *);
23877 : rtx_insn *
23878 : gen_split_2540 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23879 : {
23880 : if (dump_file)
23881 : fprintf (dump_file, "Splitting with gen_split_2540 (sse.md:14227)\n");
23882 : start_sequence ();
23883 : #define FAIL return (end_sequence (), nullptr)
23884 : #define DONE return end_sequence ()
23885 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23886 : {
23887 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23888 : int reg6 = 0xF0;
23889 : int reg2 = 0xCC;
23890 : int reg1 = 0xAA;
23891 : int reg3 = 0;
23892 : int reg4 = 0;
23893 : int reg_mask, tmp1, tmp2;
23894 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23895 : STRIP_UNARY (operands[4])))
23896 : {
23897 : reg4 = reg1;
23898 : reg3 = reg6;
23899 : operands[6] = operands[3];
23900 : }
23901 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23902 : STRIP_UNARY (operands[4])))
23903 : {
23904 : reg4 = reg2;
23905 : reg3 = reg6;
23906 : operands[6] = operands[3];
23907 : }
23908 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23909 : STRIP_UNARY (operands[3])))
23910 : {
23911 : reg4 = reg6;
23912 : reg3 = reg1;
23913 : operands[6] = operands[4];
23914 : }
23915 : else
23916 : {
23917 : reg4 = reg6;
23918 : reg3 = reg2;
23919 : operands[6] = operands[4];
23920 : }
23921 :
23922 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
23923 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
23924 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
23925 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
23926 :
23927 : tmp1 = reg1 ^ reg2;
23928 : tmp2 = tmp1 ^ reg3;
23929 : reg_mask = tmp2 & reg4;
23930 : reg_mask &= 0xFF;
23931 :
23932 : operands[1] = STRIP_UNARY (operands[1]);
23933 : operands[2] = STRIP_UNARY (operands[2]);
23934 : operands[6] = STRIP_UNARY (operands[6]);
23935 : operands[5] = GEN_INT (reg_mask);
23936 : if (!register_operand (operands[2], V8HImode))
23937 : operands[2] = force_reg (V8HImode, operands[2]);
23938 : if (!register_operand (operands[6], V8HImode))
23939 : operands[6] = force_reg (V8HImode, operands[6]);
23940 :
23941 : }
23942 : #undef DONE
23943 : #undef FAIL
23944 : static const uint8_t expand_encoding[] = {
23945 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
23946 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
23947 : 0x25
23948 : };
23949 : return complete_seq (expand_encoding, operands);
23950 : }
23951 :
23952 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
23953 : extern rtx_insn *gen_split_2550 (rtx_insn *, rtx *);
23954 : rtx_insn *
23955 : gen_split_2550 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
23956 : {
23957 : if (dump_file)
23958 : fprintf (dump_file, "Splitting with gen_split_2550 (sse.md:14227)\n");
23959 : start_sequence ();
23960 : #define FAIL return (end_sequence (), nullptr)
23961 : #define DONE return end_sequence ()
23962 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
23963 : {
23964 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
23965 : int reg6 = 0xF0;
23966 : int reg2 = 0xCC;
23967 : int reg1 = 0xAA;
23968 : int reg3 = 0;
23969 : int reg4 = 0;
23970 : int reg_mask, tmp1, tmp2;
23971 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
23972 : STRIP_UNARY (operands[4])))
23973 : {
23974 : reg4 = reg1;
23975 : reg3 = reg6;
23976 : operands[6] = operands[3];
23977 : }
23978 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
23979 : STRIP_UNARY (operands[4])))
23980 : {
23981 : reg4 = reg2;
23982 : reg3 = reg6;
23983 : operands[6] = operands[3];
23984 : }
23985 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
23986 : STRIP_UNARY (operands[3])))
23987 : {
23988 : reg4 = reg6;
23989 : reg3 = reg1;
23990 : operands[6] = operands[4];
23991 : }
23992 : else
23993 : {
23994 : reg4 = reg6;
23995 : reg3 = reg2;
23996 : operands[6] = operands[4];
23997 : }
23998 :
23999 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24000 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24001 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24002 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24003 :
24004 : tmp1 = reg1 ^ reg2;
24005 : tmp2 = tmp1 & reg3;
24006 : reg_mask = tmp2 | reg4;
24007 : reg_mask &= 0xFF;
24008 :
24009 : operands[1] = STRIP_UNARY (operands[1]);
24010 : operands[2] = STRIP_UNARY (operands[2]);
24011 : operands[6] = STRIP_UNARY (operands[6]);
24012 : operands[5] = GEN_INT (reg_mask);
24013 : if (!register_operand (operands[2], V16SImode))
24014 : operands[2] = force_reg (V16SImode, operands[2]);
24015 : if (!register_operand (operands[6], V16SImode))
24016 : operands[6] = force_reg (V16SImode, operands[6]);
24017 :
24018 : }
24019 : #undef DONE
24020 : #undef FAIL
24021 : static const uint8_t expand_encoding[] = {
24022 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
24023 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24024 : 0x25
24025 : };
24026 : return complete_seq (expand_encoding, operands);
24027 : }
24028 :
24029 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24030 : extern rtx_insn *gen_split_2560 (rtx_insn *, rtx *);
24031 : rtx_insn *
24032 : gen_split_2560 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24033 : {
24034 : if (dump_file)
24035 : fprintf (dump_file, "Splitting with gen_split_2560 (sse.md:14227)\n");
24036 : start_sequence ();
24037 : #define FAIL return (end_sequence (), nullptr)
24038 : #define DONE return end_sequence ()
24039 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24040 : {
24041 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24042 : int reg6 = 0xF0;
24043 : int reg2 = 0xCC;
24044 : int reg1 = 0xAA;
24045 : int reg3 = 0;
24046 : int reg4 = 0;
24047 : int reg_mask, tmp1, tmp2;
24048 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24049 : STRIP_UNARY (operands[4])))
24050 : {
24051 : reg4 = reg1;
24052 : reg3 = reg6;
24053 : operands[6] = operands[3];
24054 : }
24055 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24056 : STRIP_UNARY (operands[4])))
24057 : {
24058 : reg4 = reg2;
24059 : reg3 = reg6;
24060 : operands[6] = operands[3];
24061 : }
24062 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24063 : STRIP_UNARY (operands[3])))
24064 : {
24065 : reg4 = reg6;
24066 : reg3 = reg1;
24067 : operands[6] = operands[4];
24068 : }
24069 : else
24070 : {
24071 : reg4 = reg6;
24072 : reg3 = reg2;
24073 : operands[6] = operands[4];
24074 : }
24075 :
24076 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24077 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24078 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24079 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24080 :
24081 : tmp1 = reg1 ^ reg2;
24082 : tmp2 = tmp1 | reg3;
24083 : reg_mask = tmp2 ^ reg4;
24084 : reg_mask &= 0xFF;
24085 :
24086 : operands[1] = STRIP_UNARY (operands[1]);
24087 : operands[2] = STRIP_UNARY (operands[2]);
24088 : operands[6] = STRIP_UNARY (operands[6]);
24089 : operands[5] = GEN_INT (reg_mask);
24090 : if (!register_operand (operands[2], V16SImode))
24091 : operands[2] = force_reg (V16SImode, operands[2]);
24092 : if (!register_operand (operands[6], V16SImode))
24093 : operands[6] = force_reg (V16SImode, operands[6]);
24094 :
24095 : }
24096 : #undef DONE
24097 : #undef FAIL
24098 : static const uint8_t expand_encoding[] = {
24099 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
24100 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24101 : 0x25
24102 : };
24103 : return complete_seq (expand_encoding, operands);
24104 : }
24105 :
24106 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24107 : extern rtx_insn *gen_split_2570 (rtx_insn *, rtx *);
24108 : rtx_insn *
24109 : gen_split_2570 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24110 : {
24111 : if (dump_file)
24112 : fprintf (dump_file, "Splitting with gen_split_2570 (sse.md:14227)\n");
24113 : start_sequence ();
24114 : #define FAIL return (end_sequence (), nullptr)
24115 : #define DONE return end_sequence ()
24116 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24117 : {
24118 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24119 : int reg6 = 0xF0;
24120 : int reg2 = 0xCC;
24121 : int reg1 = 0xAA;
24122 : int reg3 = 0;
24123 : int reg4 = 0;
24124 : int reg_mask, tmp1, tmp2;
24125 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24126 : STRIP_UNARY (operands[4])))
24127 : {
24128 : reg4 = reg1;
24129 : reg3 = reg6;
24130 : operands[6] = operands[3];
24131 : }
24132 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24133 : STRIP_UNARY (operands[4])))
24134 : {
24135 : reg4 = reg2;
24136 : reg3 = reg6;
24137 : operands[6] = operands[3];
24138 : }
24139 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24140 : STRIP_UNARY (operands[3])))
24141 : {
24142 : reg4 = reg6;
24143 : reg3 = reg1;
24144 : operands[6] = operands[4];
24145 : }
24146 : else
24147 : {
24148 : reg4 = reg6;
24149 : reg3 = reg2;
24150 : operands[6] = operands[4];
24151 : }
24152 :
24153 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24154 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24155 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24156 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24157 :
24158 : tmp1 = reg1 & reg2;
24159 : tmp2 = tmp1 & reg3;
24160 : reg_mask = tmp2 & reg4;
24161 : reg_mask &= 0xFF;
24162 :
24163 : operands[1] = STRIP_UNARY (operands[1]);
24164 : operands[2] = STRIP_UNARY (operands[2]);
24165 : operands[6] = STRIP_UNARY (operands[6]);
24166 : operands[5] = GEN_INT (reg_mask);
24167 : if (!register_operand (operands[2], V8SImode))
24168 : operands[2] = force_reg (V8SImode, operands[2]);
24169 : if (!register_operand (operands[6], V8SImode))
24170 : operands[6] = force_reg (V8SImode, operands[6]);
24171 :
24172 : }
24173 : #undef DONE
24174 : #undef FAIL
24175 : static const uint8_t expand_encoding[] = {
24176 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
24177 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24178 : 0x25
24179 : };
24180 : return complete_seq (expand_encoding, operands);
24181 : }
24182 :
24183 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24184 : extern rtx_insn *gen_split_2580 (rtx_insn *, rtx *);
24185 : rtx_insn *
24186 : gen_split_2580 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24187 : {
24188 : if (dump_file)
24189 : fprintf (dump_file, "Splitting with gen_split_2580 (sse.md:14227)\n");
24190 : start_sequence ();
24191 : #define FAIL return (end_sequence (), nullptr)
24192 : #define DONE return end_sequence ()
24193 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24194 : {
24195 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24196 : int reg6 = 0xF0;
24197 : int reg2 = 0xCC;
24198 : int reg1 = 0xAA;
24199 : int reg3 = 0;
24200 : int reg4 = 0;
24201 : int reg_mask, tmp1, tmp2;
24202 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24203 : STRIP_UNARY (operands[4])))
24204 : {
24205 : reg4 = reg1;
24206 : reg3 = reg6;
24207 : operands[6] = operands[3];
24208 : }
24209 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24210 : STRIP_UNARY (operands[4])))
24211 : {
24212 : reg4 = reg2;
24213 : reg3 = reg6;
24214 : operands[6] = operands[3];
24215 : }
24216 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24217 : STRIP_UNARY (operands[3])))
24218 : {
24219 : reg4 = reg6;
24220 : reg3 = reg1;
24221 : operands[6] = operands[4];
24222 : }
24223 : else
24224 : {
24225 : reg4 = reg6;
24226 : reg3 = reg2;
24227 : operands[6] = operands[4];
24228 : }
24229 :
24230 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24231 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24232 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24233 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24234 :
24235 : tmp1 = reg1 & reg2;
24236 : tmp2 = tmp1 | reg3;
24237 : reg_mask = tmp2 | reg4;
24238 : reg_mask &= 0xFF;
24239 :
24240 : operands[1] = STRIP_UNARY (operands[1]);
24241 : operands[2] = STRIP_UNARY (operands[2]);
24242 : operands[6] = STRIP_UNARY (operands[6]);
24243 : operands[5] = GEN_INT (reg_mask);
24244 : if (!register_operand (operands[2], V8SImode))
24245 : operands[2] = force_reg (V8SImode, operands[2]);
24246 : if (!register_operand (operands[6], V8SImode))
24247 : operands[6] = force_reg (V8SImode, operands[6]);
24248 :
24249 : }
24250 : #undef DONE
24251 : #undef FAIL
24252 : static const uint8_t expand_encoding[] = {
24253 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
24254 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24255 : 0x25
24256 : };
24257 : return complete_seq (expand_encoding, operands);
24258 : }
24259 :
24260 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24261 : extern rtx_insn *gen_split_2590 (rtx_insn *, rtx *);
24262 : rtx_insn *
24263 : gen_split_2590 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24264 : {
24265 : if (dump_file)
24266 : fprintf (dump_file, "Splitting with gen_split_2590 (sse.md:14227)\n");
24267 : start_sequence ();
24268 : #define FAIL return (end_sequence (), nullptr)
24269 : #define DONE return end_sequence ()
24270 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24271 : {
24272 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24273 : int reg6 = 0xF0;
24274 : int reg2 = 0xCC;
24275 : int reg1 = 0xAA;
24276 : int reg3 = 0;
24277 : int reg4 = 0;
24278 : int reg_mask, tmp1, tmp2;
24279 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24280 : STRIP_UNARY (operands[4])))
24281 : {
24282 : reg4 = reg1;
24283 : reg3 = reg6;
24284 : operands[6] = operands[3];
24285 : }
24286 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24287 : STRIP_UNARY (operands[4])))
24288 : {
24289 : reg4 = reg2;
24290 : reg3 = reg6;
24291 : operands[6] = operands[3];
24292 : }
24293 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24294 : STRIP_UNARY (operands[3])))
24295 : {
24296 : reg4 = reg6;
24297 : reg3 = reg1;
24298 : operands[6] = operands[4];
24299 : }
24300 : else
24301 : {
24302 : reg4 = reg6;
24303 : reg3 = reg2;
24304 : operands[6] = operands[4];
24305 : }
24306 :
24307 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24308 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24309 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24310 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24311 :
24312 : tmp1 = reg1 & reg2;
24313 : tmp2 = tmp1 ^ reg3;
24314 : reg_mask = tmp2 ^ reg4;
24315 : reg_mask &= 0xFF;
24316 :
24317 : operands[1] = STRIP_UNARY (operands[1]);
24318 : operands[2] = STRIP_UNARY (operands[2]);
24319 : operands[6] = STRIP_UNARY (operands[6]);
24320 : operands[5] = GEN_INT (reg_mask);
24321 : if (!register_operand (operands[2], V8SImode))
24322 : operands[2] = force_reg (V8SImode, operands[2]);
24323 : if (!register_operand (operands[6], V8SImode))
24324 : operands[6] = force_reg (V8SImode, operands[6]);
24325 :
24326 : }
24327 : #undef DONE
24328 : #undef FAIL
24329 : static const uint8_t expand_encoding[] = {
24330 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
24331 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24332 : 0x25
24333 : };
24334 : return complete_seq (expand_encoding, operands);
24335 : }
24336 :
24337 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24338 : extern rtx_insn *gen_split_2600 (rtx_insn *, rtx *);
24339 : rtx_insn *
24340 : gen_split_2600 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24341 : {
24342 : if (dump_file)
24343 : fprintf (dump_file, "Splitting with gen_split_2600 (sse.md:14227)\n");
24344 : start_sequence ();
24345 : #define FAIL return (end_sequence (), nullptr)
24346 : #define DONE return end_sequence ()
24347 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24348 : {
24349 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24350 : int reg6 = 0xF0;
24351 : int reg2 = 0xCC;
24352 : int reg1 = 0xAA;
24353 : int reg3 = 0;
24354 : int reg4 = 0;
24355 : int reg_mask, tmp1, tmp2;
24356 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24357 : STRIP_UNARY (operands[4])))
24358 : {
24359 : reg4 = reg1;
24360 : reg3 = reg6;
24361 : operands[6] = operands[3];
24362 : }
24363 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24364 : STRIP_UNARY (operands[4])))
24365 : {
24366 : reg4 = reg2;
24367 : reg3 = reg6;
24368 : operands[6] = operands[3];
24369 : }
24370 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24371 : STRIP_UNARY (operands[3])))
24372 : {
24373 : reg4 = reg6;
24374 : reg3 = reg1;
24375 : operands[6] = operands[4];
24376 : }
24377 : else
24378 : {
24379 : reg4 = reg6;
24380 : reg3 = reg2;
24381 : operands[6] = operands[4];
24382 : }
24383 :
24384 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24385 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24386 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24387 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24388 :
24389 : tmp1 = reg1 | reg2;
24390 : tmp2 = tmp1 & reg3;
24391 : reg_mask = tmp2 & reg4;
24392 : reg_mask &= 0xFF;
24393 :
24394 : operands[1] = STRIP_UNARY (operands[1]);
24395 : operands[2] = STRIP_UNARY (operands[2]);
24396 : operands[6] = STRIP_UNARY (operands[6]);
24397 : operands[5] = GEN_INT (reg_mask);
24398 : if (!register_operand (operands[2], V4SImode))
24399 : operands[2] = force_reg (V4SImode, operands[2]);
24400 : if (!register_operand (operands[6], V4SImode))
24401 : operands[6] = force_reg (V4SImode, operands[6]);
24402 :
24403 : }
24404 : #undef DONE
24405 : #undef FAIL
24406 : static const uint8_t expand_encoding[] = {
24407 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
24408 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24409 : 0x25
24410 : };
24411 : return complete_seq (expand_encoding, operands);
24412 : }
24413 :
24414 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24415 : extern rtx_insn *gen_split_2610 (rtx_insn *, rtx *);
24416 : rtx_insn *
24417 : gen_split_2610 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24418 : {
24419 : if (dump_file)
24420 : fprintf (dump_file, "Splitting with gen_split_2610 (sse.md:14227)\n");
24421 : start_sequence ();
24422 : #define FAIL return (end_sequence (), nullptr)
24423 : #define DONE return end_sequence ()
24424 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24425 : {
24426 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24427 : int reg6 = 0xF0;
24428 : int reg2 = 0xCC;
24429 : int reg1 = 0xAA;
24430 : int reg3 = 0;
24431 : int reg4 = 0;
24432 : int reg_mask, tmp1, tmp2;
24433 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24434 : STRIP_UNARY (operands[4])))
24435 : {
24436 : reg4 = reg1;
24437 : reg3 = reg6;
24438 : operands[6] = operands[3];
24439 : }
24440 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24441 : STRIP_UNARY (operands[4])))
24442 : {
24443 : reg4 = reg2;
24444 : reg3 = reg6;
24445 : operands[6] = operands[3];
24446 : }
24447 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24448 : STRIP_UNARY (operands[3])))
24449 : {
24450 : reg4 = reg6;
24451 : reg3 = reg1;
24452 : operands[6] = operands[4];
24453 : }
24454 : else
24455 : {
24456 : reg4 = reg6;
24457 : reg3 = reg2;
24458 : operands[6] = operands[4];
24459 : }
24460 :
24461 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24462 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24463 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24464 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24465 :
24466 : tmp1 = reg1 | reg2;
24467 : tmp2 = tmp1 | reg3;
24468 : reg_mask = tmp2 | reg4;
24469 : reg_mask &= 0xFF;
24470 :
24471 : operands[1] = STRIP_UNARY (operands[1]);
24472 : operands[2] = STRIP_UNARY (operands[2]);
24473 : operands[6] = STRIP_UNARY (operands[6]);
24474 : operands[5] = GEN_INT (reg_mask);
24475 : if (!register_operand (operands[2], V4SImode))
24476 : operands[2] = force_reg (V4SImode, operands[2]);
24477 : if (!register_operand (operands[6], V4SImode))
24478 : operands[6] = force_reg (V4SImode, operands[6]);
24479 :
24480 : }
24481 : #undef DONE
24482 : #undef FAIL
24483 : static const uint8_t expand_encoding[] = {
24484 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
24485 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24486 : 0x25
24487 : };
24488 : return complete_seq (expand_encoding, operands);
24489 : }
24490 :
24491 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24492 : extern rtx_insn *gen_split_2620 (rtx_insn *, rtx *);
24493 : rtx_insn *
24494 : gen_split_2620 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24495 : {
24496 : if (dump_file)
24497 : fprintf (dump_file, "Splitting with gen_split_2620 (sse.md:14227)\n");
24498 : start_sequence ();
24499 : #define FAIL return (end_sequence (), nullptr)
24500 : #define DONE return end_sequence ()
24501 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24502 : {
24503 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24504 : int reg6 = 0xF0;
24505 : int reg2 = 0xCC;
24506 : int reg1 = 0xAA;
24507 : int reg3 = 0;
24508 : int reg4 = 0;
24509 : int reg_mask, tmp1, tmp2;
24510 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24511 : STRIP_UNARY (operands[4])))
24512 : {
24513 : reg4 = reg1;
24514 : reg3 = reg6;
24515 : operands[6] = operands[3];
24516 : }
24517 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24518 : STRIP_UNARY (operands[4])))
24519 : {
24520 : reg4 = reg2;
24521 : reg3 = reg6;
24522 : operands[6] = operands[3];
24523 : }
24524 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24525 : STRIP_UNARY (operands[3])))
24526 : {
24527 : reg4 = reg6;
24528 : reg3 = reg1;
24529 : operands[6] = operands[4];
24530 : }
24531 : else
24532 : {
24533 : reg4 = reg6;
24534 : reg3 = reg2;
24535 : operands[6] = operands[4];
24536 : }
24537 :
24538 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24539 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24540 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24541 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24542 :
24543 : tmp1 = reg1 | reg2;
24544 : tmp2 = tmp1 ^ reg3;
24545 : reg_mask = tmp2 ^ reg4;
24546 : reg_mask &= 0xFF;
24547 :
24548 : operands[1] = STRIP_UNARY (operands[1]);
24549 : operands[2] = STRIP_UNARY (operands[2]);
24550 : operands[6] = STRIP_UNARY (operands[6]);
24551 : operands[5] = GEN_INT (reg_mask);
24552 : if (!register_operand (operands[2], V4SImode))
24553 : operands[2] = force_reg (V4SImode, operands[2]);
24554 : if (!register_operand (operands[6], V4SImode))
24555 : operands[6] = force_reg (V4SImode, operands[6]);
24556 :
24557 : }
24558 : #undef DONE
24559 : #undef FAIL
24560 : static const uint8_t expand_encoding[] = {
24561 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
24562 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24563 : 0x25
24564 : };
24565 : return complete_seq (expand_encoding, operands);
24566 : }
24567 :
24568 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24569 : extern rtx_insn *gen_split_2630 (rtx_insn *, rtx *);
24570 : rtx_insn *
24571 : gen_split_2630 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24572 : {
24573 : if (dump_file)
24574 : fprintf (dump_file, "Splitting with gen_split_2630 (sse.md:14227)\n");
24575 : start_sequence ();
24576 : #define FAIL return (end_sequence (), nullptr)
24577 : #define DONE return end_sequence ()
24578 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24579 : {
24580 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24581 : int reg6 = 0xF0;
24582 : int reg2 = 0xCC;
24583 : int reg1 = 0xAA;
24584 : int reg3 = 0;
24585 : int reg4 = 0;
24586 : int reg_mask, tmp1, tmp2;
24587 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24588 : STRIP_UNARY (operands[4])))
24589 : {
24590 : reg4 = reg1;
24591 : reg3 = reg6;
24592 : operands[6] = operands[3];
24593 : }
24594 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24595 : STRIP_UNARY (operands[4])))
24596 : {
24597 : reg4 = reg2;
24598 : reg3 = reg6;
24599 : operands[6] = operands[3];
24600 : }
24601 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24602 : STRIP_UNARY (operands[3])))
24603 : {
24604 : reg4 = reg6;
24605 : reg3 = reg1;
24606 : operands[6] = operands[4];
24607 : }
24608 : else
24609 : {
24610 : reg4 = reg6;
24611 : reg3 = reg2;
24612 : operands[6] = operands[4];
24613 : }
24614 :
24615 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24616 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24617 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24618 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24619 :
24620 : tmp1 = reg1 ^ reg2;
24621 : tmp2 = tmp1 & reg3;
24622 : reg_mask = tmp2 & reg4;
24623 : reg_mask &= 0xFF;
24624 :
24625 : operands[1] = STRIP_UNARY (operands[1]);
24626 : operands[2] = STRIP_UNARY (operands[2]);
24627 : operands[6] = STRIP_UNARY (operands[6]);
24628 : operands[5] = GEN_INT (reg_mask);
24629 : if (!register_operand (operands[2], V8DImode))
24630 : operands[2] = force_reg (V8DImode, operands[2]);
24631 : if (!register_operand (operands[6], V8DImode))
24632 : operands[6] = force_reg (V8DImode, operands[6]);
24633 :
24634 : }
24635 : #undef DONE
24636 : #undef FAIL
24637 : static const uint8_t expand_encoding[] = {
24638 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
24639 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24640 : 0x25
24641 : };
24642 : return complete_seq (expand_encoding, operands);
24643 : }
24644 :
24645 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24646 : extern rtx_insn *gen_split_2640 (rtx_insn *, rtx *);
24647 : rtx_insn *
24648 : gen_split_2640 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24649 : {
24650 : if (dump_file)
24651 : fprintf (dump_file, "Splitting with gen_split_2640 (sse.md:14227)\n");
24652 : start_sequence ();
24653 : #define FAIL return (end_sequence (), nullptr)
24654 : #define DONE return end_sequence ()
24655 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24656 : {
24657 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24658 : int reg6 = 0xF0;
24659 : int reg2 = 0xCC;
24660 : int reg1 = 0xAA;
24661 : int reg3 = 0;
24662 : int reg4 = 0;
24663 : int reg_mask, tmp1, tmp2;
24664 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24665 : STRIP_UNARY (operands[4])))
24666 : {
24667 : reg4 = reg1;
24668 : reg3 = reg6;
24669 : operands[6] = operands[3];
24670 : }
24671 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24672 : STRIP_UNARY (operands[4])))
24673 : {
24674 : reg4 = reg2;
24675 : reg3 = reg6;
24676 : operands[6] = operands[3];
24677 : }
24678 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24679 : STRIP_UNARY (operands[3])))
24680 : {
24681 : reg4 = reg6;
24682 : reg3 = reg1;
24683 : operands[6] = operands[4];
24684 : }
24685 : else
24686 : {
24687 : reg4 = reg6;
24688 : reg3 = reg2;
24689 : operands[6] = operands[4];
24690 : }
24691 :
24692 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24693 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24694 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24695 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24696 :
24697 : tmp1 = reg1 ^ reg2;
24698 : tmp2 = tmp1 | reg3;
24699 : reg_mask = tmp2 | reg4;
24700 : reg_mask &= 0xFF;
24701 :
24702 : operands[1] = STRIP_UNARY (operands[1]);
24703 : operands[2] = STRIP_UNARY (operands[2]);
24704 : operands[6] = STRIP_UNARY (operands[6]);
24705 : operands[5] = GEN_INT (reg_mask);
24706 : if (!register_operand (operands[2], V8DImode))
24707 : operands[2] = force_reg (V8DImode, operands[2]);
24708 : if (!register_operand (operands[6], V8DImode))
24709 : operands[6] = force_reg (V8DImode, operands[6]);
24710 :
24711 : }
24712 : #undef DONE
24713 : #undef FAIL
24714 : static const uint8_t expand_encoding[] = {
24715 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
24716 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24717 : 0x25
24718 : };
24719 : return complete_seq (expand_encoding, operands);
24720 : }
24721 :
24722 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24723 : extern rtx_insn *gen_split_2650 (rtx_insn *, rtx *);
24724 : rtx_insn *
24725 : gen_split_2650 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24726 : {
24727 : if (dump_file)
24728 : fprintf (dump_file, "Splitting with gen_split_2650 (sse.md:14227)\n");
24729 : start_sequence ();
24730 : #define FAIL return (end_sequence (), nullptr)
24731 : #define DONE return end_sequence ()
24732 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24733 : {
24734 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24735 : int reg6 = 0xF0;
24736 : int reg2 = 0xCC;
24737 : int reg1 = 0xAA;
24738 : int reg3 = 0;
24739 : int reg4 = 0;
24740 : int reg_mask, tmp1, tmp2;
24741 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24742 : STRIP_UNARY (operands[4])))
24743 : {
24744 : reg4 = reg1;
24745 : reg3 = reg6;
24746 : operands[6] = operands[3];
24747 : }
24748 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24749 : STRIP_UNARY (operands[4])))
24750 : {
24751 : reg4 = reg2;
24752 : reg3 = reg6;
24753 : operands[6] = operands[3];
24754 : }
24755 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24756 : STRIP_UNARY (operands[3])))
24757 : {
24758 : reg4 = reg6;
24759 : reg3 = reg1;
24760 : operands[6] = operands[4];
24761 : }
24762 : else
24763 : {
24764 : reg4 = reg6;
24765 : reg3 = reg2;
24766 : operands[6] = operands[4];
24767 : }
24768 :
24769 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24770 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24771 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24772 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24773 :
24774 : tmp1 = reg1 ^ reg2;
24775 : tmp2 = tmp1 ^ reg3;
24776 : reg_mask = tmp2 ^ reg4;
24777 : reg_mask &= 0xFF;
24778 :
24779 : operands[1] = STRIP_UNARY (operands[1]);
24780 : operands[2] = STRIP_UNARY (operands[2]);
24781 : operands[6] = STRIP_UNARY (operands[6]);
24782 : operands[5] = GEN_INT (reg_mask);
24783 : if (!register_operand (operands[2], V8DImode))
24784 : operands[2] = force_reg (V8DImode, operands[2]);
24785 : if (!register_operand (operands[6], V8DImode))
24786 : operands[6] = force_reg (V8DImode, operands[6]);
24787 :
24788 : }
24789 : #undef DONE
24790 : #undef FAIL
24791 : static const uint8_t expand_encoding[] = {
24792 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
24793 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24794 : 0x25
24795 : };
24796 : return complete_seq (expand_encoding, operands);
24797 : }
24798 :
24799 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24800 : extern rtx_insn *gen_split_2660 (rtx_insn *, rtx *);
24801 : rtx_insn *
24802 : gen_split_2660 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24803 : {
24804 : if (dump_file)
24805 : fprintf (dump_file, "Splitting with gen_split_2660 (sse.md:14227)\n");
24806 : start_sequence ();
24807 : #define FAIL return (end_sequence (), nullptr)
24808 : #define DONE return end_sequence ()
24809 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24810 : {
24811 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24812 : int reg6 = 0xF0;
24813 : int reg2 = 0xCC;
24814 : int reg1 = 0xAA;
24815 : int reg3 = 0;
24816 : int reg4 = 0;
24817 : int reg_mask, tmp1, tmp2;
24818 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24819 : STRIP_UNARY (operands[4])))
24820 : {
24821 : reg4 = reg1;
24822 : reg3 = reg6;
24823 : operands[6] = operands[3];
24824 : }
24825 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24826 : STRIP_UNARY (operands[4])))
24827 : {
24828 : reg4 = reg2;
24829 : reg3 = reg6;
24830 : operands[6] = operands[3];
24831 : }
24832 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24833 : STRIP_UNARY (operands[3])))
24834 : {
24835 : reg4 = reg6;
24836 : reg3 = reg1;
24837 : operands[6] = operands[4];
24838 : }
24839 : else
24840 : {
24841 : reg4 = reg6;
24842 : reg3 = reg2;
24843 : operands[6] = operands[4];
24844 : }
24845 :
24846 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24847 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24848 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24849 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24850 :
24851 : tmp1 = reg1 & reg2;
24852 : tmp2 = tmp1 | reg3;
24853 : reg_mask = tmp2 & reg4;
24854 : reg_mask &= 0xFF;
24855 :
24856 : operands[1] = STRIP_UNARY (operands[1]);
24857 : operands[2] = STRIP_UNARY (operands[2]);
24858 : operands[6] = STRIP_UNARY (operands[6]);
24859 : operands[5] = GEN_INT (reg_mask);
24860 : if (!register_operand (operands[2], V4DImode))
24861 : operands[2] = force_reg (V4DImode, operands[2]);
24862 : if (!register_operand (operands[6], V4DImode))
24863 : operands[6] = force_reg (V4DImode, operands[6]);
24864 :
24865 : }
24866 : #undef DONE
24867 : #undef FAIL
24868 : static const uint8_t expand_encoding[] = {
24869 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
24870 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24871 : 0x25
24872 : };
24873 : return complete_seq (expand_encoding, operands);
24874 : }
24875 :
24876 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24877 : extern rtx_insn *gen_split_2670 (rtx_insn *, rtx *);
24878 : rtx_insn *
24879 : gen_split_2670 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24880 : {
24881 : if (dump_file)
24882 : fprintf (dump_file, "Splitting with gen_split_2670 (sse.md:14227)\n");
24883 : start_sequence ();
24884 : #define FAIL return (end_sequence (), nullptr)
24885 : #define DONE return end_sequence ()
24886 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24887 : {
24888 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24889 : int reg6 = 0xF0;
24890 : int reg2 = 0xCC;
24891 : int reg1 = 0xAA;
24892 : int reg3 = 0;
24893 : int reg4 = 0;
24894 : int reg_mask, tmp1, tmp2;
24895 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24896 : STRIP_UNARY (operands[4])))
24897 : {
24898 : reg4 = reg1;
24899 : reg3 = reg6;
24900 : operands[6] = operands[3];
24901 : }
24902 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24903 : STRIP_UNARY (operands[4])))
24904 : {
24905 : reg4 = reg2;
24906 : reg3 = reg6;
24907 : operands[6] = operands[3];
24908 : }
24909 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24910 : STRIP_UNARY (operands[3])))
24911 : {
24912 : reg4 = reg6;
24913 : reg3 = reg1;
24914 : operands[6] = operands[4];
24915 : }
24916 : else
24917 : {
24918 : reg4 = reg6;
24919 : reg3 = reg2;
24920 : operands[6] = operands[4];
24921 : }
24922 :
24923 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
24924 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
24925 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
24926 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
24927 :
24928 : tmp1 = reg1 & reg2;
24929 : tmp2 = tmp1 ^ reg3;
24930 : reg_mask = tmp2 | reg4;
24931 : reg_mask &= 0xFF;
24932 :
24933 : operands[1] = STRIP_UNARY (operands[1]);
24934 : operands[2] = STRIP_UNARY (operands[2]);
24935 : operands[6] = STRIP_UNARY (operands[6]);
24936 : operands[5] = GEN_INT (reg_mask);
24937 : if (!register_operand (operands[2], V4DImode))
24938 : operands[2] = force_reg (V4DImode, operands[2]);
24939 : if (!register_operand (operands[6], V4DImode))
24940 : operands[6] = force_reg (V4DImode, operands[6]);
24941 :
24942 : }
24943 : #undef DONE
24944 : #undef FAIL
24945 : static const uint8_t expand_encoding[] = {
24946 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
24947 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
24948 : 0x25
24949 : };
24950 : return complete_seq (expand_encoding, operands);
24951 : }
24952 :
24953 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
24954 : extern rtx_insn *gen_split_2680 (rtx_insn *, rtx *);
24955 : rtx_insn *
24956 : gen_split_2680 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
24957 : {
24958 : if (dump_file)
24959 : fprintf (dump_file, "Splitting with gen_split_2680 (sse.md:14227)\n");
24960 : start_sequence ();
24961 : #define FAIL return (end_sequence (), nullptr)
24962 : #define DONE return end_sequence ()
24963 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
24964 : {
24965 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
24966 : int reg6 = 0xF0;
24967 : int reg2 = 0xCC;
24968 : int reg1 = 0xAA;
24969 : int reg3 = 0;
24970 : int reg4 = 0;
24971 : int reg_mask, tmp1, tmp2;
24972 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
24973 : STRIP_UNARY (operands[4])))
24974 : {
24975 : reg4 = reg1;
24976 : reg3 = reg6;
24977 : operands[6] = operands[3];
24978 : }
24979 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
24980 : STRIP_UNARY (operands[4])))
24981 : {
24982 : reg4 = reg2;
24983 : reg3 = reg6;
24984 : operands[6] = operands[3];
24985 : }
24986 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
24987 : STRIP_UNARY (operands[3])))
24988 : {
24989 : reg4 = reg6;
24990 : reg3 = reg1;
24991 : operands[6] = operands[4];
24992 : }
24993 : else
24994 : {
24995 : reg4 = reg6;
24996 : reg3 = reg2;
24997 : operands[6] = operands[4];
24998 : }
24999 :
25000 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25001 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25002 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25003 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25004 :
25005 : tmp1 = reg1 & reg2;
25006 : tmp2 = tmp1 & reg3;
25007 : reg_mask = tmp2 ^ reg4;
25008 : reg_mask &= 0xFF;
25009 :
25010 : operands[1] = STRIP_UNARY (operands[1]);
25011 : operands[2] = STRIP_UNARY (operands[2]);
25012 : operands[6] = STRIP_UNARY (operands[6]);
25013 : operands[5] = GEN_INT (reg_mask);
25014 : if (!register_operand (operands[2], V2DImode))
25015 : operands[2] = force_reg (V2DImode, operands[2]);
25016 : if (!register_operand (operands[6], V2DImode))
25017 : operands[6] = force_reg (V2DImode, operands[6]);
25018 :
25019 : }
25020 : #undef DONE
25021 : #undef FAIL
25022 : static const uint8_t expand_encoding[] = {
25023 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
25024 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25025 : 0x25
25026 : };
25027 : return complete_seq (expand_encoding, operands);
25028 : }
25029 :
25030 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25031 : extern rtx_insn *gen_split_2690 (rtx_insn *, rtx *);
25032 : rtx_insn *
25033 : gen_split_2690 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25034 : {
25035 : if (dump_file)
25036 : fprintf (dump_file, "Splitting with gen_split_2690 (sse.md:14227)\n");
25037 : start_sequence ();
25038 : #define FAIL return (end_sequence (), nullptr)
25039 : #define DONE return end_sequence ()
25040 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25041 : {
25042 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25043 : int reg6 = 0xF0;
25044 : int reg2 = 0xCC;
25045 : int reg1 = 0xAA;
25046 : int reg3 = 0;
25047 : int reg4 = 0;
25048 : int reg_mask, tmp1, tmp2;
25049 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25050 : STRIP_UNARY (operands[4])))
25051 : {
25052 : reg4 = reg1;
25053 : reg3 = reg6;
25054 : operands[6] = operands[3];
25055 : }
25056 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25057 : STRIP_UNARY (operands[4])))
25058 : {
25059 : reg4 = reg2;
25060 : reg3 = reg6;
25061 : operands[6] = operands[3];
25062 : }
25063 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25064 : STRIP_UNARY (operands[3])))
25065 : {
25066 : reg4 = reg6;
25067 : reg3 = reg1;
25068 : operands[6] = operands[4];
25069 : }
25070 : else
25071 : {
25072 : reg4 = reg6;
25073 : reg3 = reg2;
25074 : operands[6] = operands[4];
25075 : }
25076 :
25077 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25078 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25079 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25080 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25081 :
25082 : tmp1 = reg1 | reg2;
25083 : tmp2 = tmp1 | reg3;
25084 : reg_mask = tmp2 & reg4;
25085 : reg_mask &= 0xFF;
25086 :
25087 : operands[1] = STRIP_UNARY (operands[1]);
25088 : operands[2] = STRIP_UNARY (operands[2]);
25089 : operands[6] = STRIP_UNARY (operands[6]);
25090 : operands[5] = GEN_INT (reg_mask);
25091 : if (!register_operand (operands[2], V2DImode))
25092 : operands[2] = force_reg (V2DImode, operands[2]);
25093 : if (!register_operand (operands[6], V2DImode))
25094 : operands[6] = force_reg (V2DImode, operands[6]);
25095 :
25096 : }
25097 : #undef DONE
25098 : #undef FAIL
25099 : static const uint8_t expand_encoding[] = {
25100 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
25101 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25102 : 0x25
25103 : };
25104 : return complete_seq (expand_encoding, operands);
25105 : }
25106 :
25107 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25108 : extern rtx_insn *gen_split_2700 (rtx_insn *, rtx *);
25109 : rtx_insn *
25110 : gen_split_2700 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25111 : {
25112 : if (dump_file)
25113 : fprintf (dump_file, "Splitting with gen_split_2700 (sse.md:14227)\n");
25114 : start_sequence ();
25115 : #define FAIL return (end_sequence (), nullptr)
25116 : #define DONE return end_sequence ()
25117 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25118 : {
25119 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25120 : int reg6 = 0xF0;
25121 : int reg2 = 0xCC;
25122 : int reg1 = 0xAA;
25123 : int reg3 = 0;
25124 : int reg4 = 0;
25125 : int reg_mask, tmp1, tmp2;
25126 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25127 : STRIP_UNARY (operands[4])))
25128 : {
25129 : reg4 = reg1;
25130 : reg3 = reg6;
25131 : operands[6] = operands[3];
25132 : }
25133 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25134 : STRIP_UNARY (operands[4])))
25135 : {
25136 : reg4 = reg2;
25137 : reg3 = reg6;
25138 : operands[6] = operands[3];
25139 : }
25140 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25141 : STRIP_UNARY (operands[3])))
25142 : {
25143 : reg4 = reg6;
25144 : reg3 = reg1;
25145 : operands[6] = operands[4];
25146 : }
25147 : else
25148 : {
25149 : reg4 = reg6;
25150 : reg3 = reg2;
25151 : operands[6] = operands[4];
25152 : }
25153 :
25154 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25155 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25156 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25157 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25158 :
25159 : tmp1 = reg1 | reg2;
25160 : tmp2 = tmp1 ^ reg3;
25161 : reg_mask = tmp2 | reg4;
25162 : reg_mask &= 0xFF;
25163 :
25164 : operands[1] = STRIP_UNARY (operands[1]);
25165 : operands[2] = STRIP_UNARY (operands[2]);
25166 : operands[6] = STRIP_UNARY (operands[6]);
25167 : operands[5] = GEN_INT (reg_mask);
25168 : if (!register_operand (operands[2], V2DImode))
25169 : operands[2] = force_reg (V2DImode, operands[2]);
25170 : if (!register_operand (operands[6], V2DImode))
25171 : operands[6] = force_reg (V2DImode, operands[6]);
25172 :
25173 : }
25174 : #undef DONE
25175 : #undef FAIL
25176 : static const uint8_t expand_encoding[] = {
25177 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
25178 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25179 : 0x25
25180 : };
25181 : return complete_seq (expand_encoding, operands);
25182 : }
25183 :
25184 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25185 : extern rtx_insn *gen_split_2710 (rtx_insn *, rtx *);
25186 : rtx_insn *
25187 : gen_split_2710 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25188 : {
25189 : if (dump_file)
25190 : fprintf (dump_file, "Splitting with gen_split_2710 (sse.md:14227)\n");
25191 : start_sequence ();
25192 : #define FAIL return (end_sequence (), nullptr)
25193 : #define DONE return end_sequence ()
25194 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25195 : {
25196 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25197 : int reg6 = 0xF0;
25198 : int reg2 = 0xCC;
25199 : int reg1 = 0xAA;
25200 : int reg3 = 0;
25201 : int reg4 = 0;
25202 : int reg_mask, tmp1, tmp2;
25203 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25204 : STRIP_UNARY (operands[4])))
25205 : {
25206 : reg4 = reg1;
25207 : reg3 = reg6;
25208 : operands[6] = operands[3];
25209 : }
25210 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25211 : STRIP_UNARY (operands[4])))
25212 : {
25213 : reg4 = reg2;
25214 : reg3 = reg6;
25215 : operands[6] = operands[3];
25216 : }
25217 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25218 : STRIP_UNARY (operands[3])))
25219 : {
25220 : reg4 = reg6;
25221 : reg3 = reg1;
25222 : operands[6] = operands[4];
25223 : }
25224 : else
25225 : {
25226 : reg4 = reg6;
25227 : reg3 = reg2;
25228 : operands[6] = operands[4];
25229 : }
25230 :
25231 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25232 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25233 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25234 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25235 :
25236 : tmp1 = reg1 | reg2;
25237 : tmp2 = tmp1 & reg3;
25238 : reg_mask = tmp2 ^ reg4;
25239 : reg_mask &= 0xFF;
25240 :
25241 : operands[1] = STRIP_UNARY (operands[1]);
25242 : operands[2] = STRIP_UNARY (operands[2]);
25243 : operands[6] = STRIP_UNARY (operands[6]);
25244 : operands[5] = GEN_INT (reg_mask);
25245 : if (!register_operand (operands[2], V32HFmode))
25246 : operands[2] = force_reg (V32HFmode, operands[2]);
25247 : if (!register_operand (operands[6], V32HFmode))
25248 : operands[6] = force_reg (V32HFmode, operands[6]);
25249 :
25250 : }
25251 : #undef DONE
25252 : #undef FAIL
25253 : static const uint8_t expand_encoding[] = {
25254 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
25255 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25256 : 0x25
25257 : };
25258 : return complete_seq (expand_encoding, operands);
25259 : }
25260 :
25261 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25262 : extern rtx_insn *gen_split_2720 (rtx_insn *, rtx *);
25263 : rtx_insn *
25264 : gen_split_2720 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25265 : {
25266 : if (dump_file)
25267 : fprintf (dump_file, "Splitting with gen_split_2720 (sse.md:14227)\n");
25268 : start_sequence ();
25269 : #define FAIL return (end_sequence (), nullptr)
25270 : #define DONE return end_sequence ()
25271 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25272 : {
25273 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25274 : int reg6 = 0xF0;
25275 : int reg2 = 0xCC;
25276 : int reg1 = 0xAA;
25277 : int reg3 = 0;
25278 : int reg4 = 0;
25279 : int reg_mask, tmp1, tmp2;
25280 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25281 : STRIP_UNARY (operands[4])))
25282 : {
25283 : reg4 = reg1;
25284 : reg3 = reg6;
25285 : operands[6] = operands[3];
25286 : }
25287 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25288 : STRIP_UNARY (operands[4])))
25289 : {
25290 : reg4 = reg2;
25291 : reg3 = reg6;
25292 : operands[6] = operands[3];
25293 : }
25294 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25295 : STRIP_UNARY (operands[3])))
25296 : {
25297 : reg4 = reg6;
25298 : reg3 = reg1;
25299 : operands[6] = operands[4];
25300 : }
25301 : else
25302 : {
25303 : reg4 = reg6;
25304 : reg3 = reg2;
25305 : operands[6] = operands[4];
25306 : }
25307 :
25308 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25309 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25310 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25311 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25312 :
25313 : tmp1 = reg1 ^ reg2;
25314 : tmp2 = tmp1 | reg3;
25315 : reg_mask = tmp2 & reg4;
25316 : reg_mask &= 0xFF;
25317 :
25318 : operands[1] = STRIP_UNARY (operands[1]);
25319 : operands[2] = STRIP_UNARY (operands[2]);
25320 : operands[6] = STRIP_UNARY (operands[6]);
25321 : operands[5] = GEN_INT (reg_mask);
25322 : if (!register_operand (operands[2], V32HFmode))
25323 : operands[2] = force_reg (V32HFmode, operands[2]);
25324 : if (!register_operand (operands[6], V32HFmode))
25325 : operands[6] = force_reg (V32HFmode, operands[6]);
25326 :
25327 : }
25328 : #undef DONE
25329 : #undef FAIL
25330 : static const uint8_t expand_encoding[] = {
25331 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
25332 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25333 : 0x25
25334 : };
25335 : return complete_seq (expand_encoding, operands);
25336 : }
25337 :
25338 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25339 : extern rtx_insn *gen_split_2730 (rtx_insn *, rtx *);
25340 : rtx_insn *
25341 : gen_split_2730 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25342 : {
25343 : if (dump_file)
25344 : fprintf (dump_file, "Splitting with gen_split_2730 (sse.md:14227)\n");
25345 : start_sequence ();
25346 : #define FAIL return (end_sequence (), nullptr)
25347 : #define DONE return end_sequence ()
25348 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25349 : {
25350 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25351 : int reg6 = 0xF0;
25352 : int reg2 = 0xCC;
25353 : int reg1 = 0xAA;
25354 : int reg3 = 0;
25355 : int reg4 = 0;
25356 : int reg_mask, tmp1, tmp2;
25357 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25358 : STRIP_UNARY (operands[4])))
25359 : {
25360 : reg4 = reg1;
25361 : reg3 = reg6;
25362 : operands[6] = operands[3];
25363 : }
25364 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25365 : STRIP_UNARY (operands[4])))
25366 : {
25367 : reg4 = reg2;
25368 : reg3 = reg6;
25369 : operands[6] = operands[3];
25370 : }
25371 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25372 : STRIP_UNARY (operands[3])))
25373 : {
25374 : reg4 = reg6;
25375 : reg3 = reg1;
25376 : operands[6] = operands[4];
25377 : }
25378 : else
25379 : {
25380 : reg4 = reg6;
25381 : reg3 = reg2;
25382 : operands[6] = operands[4];
25383 : }
25384 :
25385 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25386 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25387 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25388 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25389 :
25390 : tmp1 = reg1 ^ reg2;
25391 : tmp2 = tmp1 ^ reg3;
25392 : reg_mask = tmp2 | reg4;
25393 : reg_mask &= 0xFF;
25394 :
25395 : operands[1] = STRIP_UNARY (operands[1]);
25396 : operands[2] = STRIP_UNARY (operands[2]);
25397 : operands[6] = STRIP_UNARY (operands[6]);
25398 : operands[5] = GEN_INT (reg_mask);
25399 : if (!register_operand (operands[2], V32HFmode))
25400 : operands[2] = force_reg (V32HFmode, operands[2]);
25401 : if (!register_operand (operands[6], V32HFmode))
25402 : operands[6] = force_reg (V32HFmode, operands[6]);
25403 :
25404 : }
25405 : #undef DONE
25406 : #undef FAIL
25407 : static const uint8_t expand_encoding[] = {
25408 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x04, 0x01,
25409 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25410 : 0x25
25411 : };
25412 : return complete_seq (expand_encoding, operands);
25413 : }
25414 :
25415 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25416 : extern rtx_insn *gen_split_2740 (rtx_insn *, rtx *);
25417 : rtx_insn *
25418 : gen_split_2740 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25419 : {
25420 : if (dump_file)
25421 : fprintf (dump_file, "Splitting with gen_split_2740 (sse.md:14227)\n");
25422 : start_sequence ();
25423 : #define FAIL return (end_sequence (), nullptr)
25424 : #define DONE return end_sequence ()
25425 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25426 : {
25427 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25428 : int reg6 = 0xF0;
25429 : int reg2 = 0xCC;
25430 : int reg1 = 0xAA;
25431 : int reg3 = 0;
25432 : int reg4 = 0;
25433 : int reg_mask, tmp1, tmp2;
25434 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25435 : STRIP_UNARY (operands[4])))
25436 : {
25437 : reg4 = reg1;
25438 : reg3 = reg6;
25439 : operands[6] = operands[3];
25440 : }
25441 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25442 : STRIP_UNARY (operands[4])))
25443 : {
25444 : reg4 = reg2;
25445 : reg3 = reg6;
25446 : operands[6] = operands[3];
25447 : }
25448 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25449 : STRIP_UNARY (operands[3])))
25450 : {
25451 : reg4 = reg6;
25452 : reg3 = reg1;
25453 : operands[6] = operands[4];
25454 : }
25455 : else
25456 : {
25457 : reg4 = reg6;
25458 : reg3 = reg2;
25459 : operands[6] = operands[4];
25460 : }
25461 :
25462 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25463 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25464 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25465 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25466 :
25467 : tmp1 = reg1 ^ reg2;
25468 : tmp2 = tmp1 & reg3;
25469 : reg_mask = tmp2 ^ reg4;
25470 : reg_mask &= 0xFF;
25471 :
25472 : operands[1] = STRIP_UNARY (operands[1]);
25473 : operands[2] = STRIP_UNARY (operands[2]);
25474 : operands[6] = STRIP_UNARY (operands[6]);
25475 : operands[5] = GEN_INT (reg_mask);
25476 : if (!register_operand (operands[2], V16HFmode))
25477 : operands[2] = force_reg (V16HFmode, operands[2]);
25478 : if (!register_operand (operands[6], V16HFmode))
25479 : operands[6] = force_reg (V16HFmode, operands[6]);
25480 :
25481 : }
25482 : #undef DONE
25483 : #undef FAIL
25484 : static const uint8_t expand_encoding[] = {
25485 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
25486 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25487 : 0x25
25488 : };
25489 : return complete_seq (expand_encoding, operands);
25490 : }
25491 :
25492 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25493 : extern rtx_insn *gen_split_2750 (rtx_insn *, rtx *);
25494 : rtx_insn *
25495 : gen_split_2750 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25496 : {
25497 : if (dump_file)
25498 : fprintf (dump_file, "Splitting with gen_split_2750 (sse.md:14227)\n");
25499 : start_sequence ();
25500 : #define FAIL return (end_sequence (), nullptr)
25501 : #define DONE return end_sequence ()
25502 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25503 : {
25504 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25505 : int reg6 = 0xF0;
25506 : int reg2 = 0xCC;
25507 : int reg1 = 0xAA;
25508 : int reg3 = 0;
25509 : int reg4 = 0;
25510 : int reg_mask, tmp1, tmp2;
25511 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25512 : STRIP_UNARY (operands[4])))
25513 : {
25514 : reg4 = reg1;
25515 : reg3 = reg6;
25516 : operands[6] = operands[3];
25517 : }
25518 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25519 : STRIP_UNARY (operands[4])))
25520 : {
25521 : reg4 = reg2;
25522 : reg3 = reg6;
25523 : operands[6] = operands[3];
25524 : }
25525 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25526 : STRIP_UNARY (operands[3])))
25527 : {
25528 : reg4 = reg6;
25529 : reg3 = reg1;
25530 : operands[6] = operands[4];
25531 : }
25532 : else
25533 : {
25534 : reg4 = reg6;
25535 : reg3 = reg2;
25536 : operands[6] = operands[4];
25537 : }
25538 :
25539 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25540 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25541 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25542 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25543 :
25544 : tmp1 = reg1 & reg2;
25545 : tmp2 = tmp1 ^ reg3;
25546 : reg_mask = tmp2 & reg4;
25547 : reg_mask &= 0xFF;
25548 :
25549 : operands[1] = STRIP_UNARY (operands[1]);
25550 : operands[2] = STRIP_UNARY (operands[2]);
25551 : operands[6] = STRIP_UNARY (operands[6]);
25552 : operands[5] = GEN_INT (reg_mask);
25553 : if (!register_operand (operands[2], V16HFmode))
25554 : operands[2] = force_reg (V16HFmode, operands[2]);
25555 : if (!register_operand (operands[6], V16HFmode))
25556 : operands[6] = force_reg (V16HFmode, operands[6]);
25557 :
25558 : }
25559 : #undef DONE
25560 : #undef FAIL
25561 : static const uint8_t expand_encoding[] = {
25562 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
25563 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25564 : 0x25
25565 : };
25566 : return complete_seq (expand_encoding, operands);
25567 : }
25568 :
25569 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25570 : extern rtx_insn *gen_split_2760 (rtx_insn *, rtx *);
25571 : rtx_insn *
25572 : gen_split_2760 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25573 : {
25574 : if (dump_file)
25575 : fprintf (dump_file, "Splitting with gen_split_2760 (sse.md:14227)\n");
25576 : start_sequence ();
25577 : #define FAIL return (end_sequence (), nullptr)
25578 : #define DONE return end_sequence ()
25579 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25580 : {
25581 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25582 : int reg6 = 0xF0;
25583 : int reg2 = 0xCC;
25584 : int reg1 = 0xAA;
25585 : int reg3 = 0;
25586 : int reg4 = 0;
25587 : int reg_mask, tmp1, tmp2;
25588 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25589 : STRIP_UNARY (operands[4])))
25590 : {
25591 : reg4 = reg1;
25592 : reg3 = reg6;
25593 : operands[6] = operands[3];
25594 : }
25595 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25596 : STRIP_UNARY (operands[4])))
25597 : {
25598 : reg4 = reg2;
25599 : reg3 = reg6;
25600 : operands[6] = operands[3];
25601 : }
25602 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25603 : STRIP_UNARY (operands[3])))
25604 : {
25605 : reg4 = reg6;
25606 : reg3 = reg1;
25607 : operands[6] = operands[4];
25608 : }
25609 : else
25610 : {
25611 : reg4 = reg6;
25612 : reg3 = reg2;
25613 : operands[6] = operands[4];
25614 : }
25615 :
25616 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25617 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25618 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25619 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25620 :
25621 : tmp1 = reg1 & reg2;
25622 : tmp2 = tmp1 & reg3;
25623 : reg_mask = tmp2 | reg4;
25624 : reg_mask &= 0xFF;
25625 :
25626 : operands[1] = STRIP_UNARY (operands[1]);
25627 : operands[2] = STRIP_UNARY (operands[2]);
25628 : operands[6] = STRIP_UNARY (operands[6]);
25629 : operands[5] = GEN_INT (reg_mask);
25630 : if (!register_operand (operands[2], V8HFmode))
25631 : operands[2] = force_reg (V8HFmode, operands[2]);
25632 : if (!register_operand (operands[6], V8HFmode))
25633 : operands[6] = force_reg (V8HFmode, operands[6]);
25634 :
25635 : }
25636 : #undef DONE
25637 : #undef FAIL
25638 : static const uint8_t expand_encoding[] = {
25639 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
25640 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25641 : 0x25
25642 : };
25643 : return complete_seq (expand_encoding, operands);
25644 : }
25645 :
25646 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25647 : extern rtx_insn *gen_split_2770 (rtx_insn *, rtx *);
25648 : rtx_insn *
25649 : gen_split_2770 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25650 : {
25651 : if (dump_file)
25652 : fprintf (dump_file, "Splitting with gen_split_2770 (sse.md:14227)\n");
25653 : start_sequence ();
25654 : #define FAIL return (end_sequence (), nullptr)
25655 : #define DONE return end_sequence ()
25656 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25657 : {
25658 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25659 : int reg6 = 0xF0;
25660 : int reg2 = 0xCC;
25661 : int reg1 = 0xAA;
25662 : int reg3 = 0;
25663 : int reg4 = 0;
25664 : int reg_mask, tmp1, tmp2;
25665 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25666 : STRIP_UNARY (operands[4])))
25667 : {
25668 : reg4 = reg1;
25669 : reg3 = reg6;
25670 : operands[6] = operands[3];
25671 : }
25672 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25673 : STRIP_UNARY (operands[4])))
25674 : {
25675 : reg4 = reg2;
25676 : reg3 = reg6;
25677 : operands[6] = operands[3];
25678 : }
25679 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25680 : STRIP_UNARY (operands[3])))
25681 : {
25682 : reg4 = reg6;
25683 : reg3 = reg1;
25684 : operands[6] = operands[4];
25685 : }
25686 : else
25687 : {
25688 : reg4 = reg6;
25689 : reg3 = reg2;
25690 : operands[6] = operands[4];
25691 : }
25692 :
25693 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25694 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25695 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25696 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25697 :
25698 : tmp1 = reg1 & reg2;
25699 : tmp2 = tmp1 | reg3;
25700 : reg_mask = tmp2 ^ reg4;
25701 : reg_mask &= 0xFF;
25702 :
25703 : operands[1] = STRIP_UNARY (operands[1]);
25704 : operands[2] = STRIP_UNARY (operands[2]);
25705 : operands[6] = STRIP_UNARY (operands[6]);
25706 : operands[5] = GEN_INT (reg_mask);
25707 : if (!register_operand (operands[2], V8HFmode))
25708 : operands[2] = force_reg (V8HFmode, operands[2]);
25709 : if (!register_operand (operands[6], V8HFmode))
25710 : operands[6] = force_reg (V8HFmode, operands[6]);
25711 :
25712 : }
25713 : #undef DONE
25714 : #undef FAIL
25715 : static const uint8_t expand_encoding[] = {
25716 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
25717 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25718 : 0x25
25719 : };
25720 : return complete_seq (expand_encoding, operands);
25721 : }
25722 :
25723 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25724 : extern rtx_insn *gen_split_2780 (rtx_insn *, rtx *);
25725 : rtx_insn *
25726 : gen_split_2780 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25727 : {
25728 : if (dump_file)
25729 : fprintf (dump_file, "Splitting with gen_split_2780 (sse.md:14227)\n");
25730 : start_sequence ();
25731 : #define FAIL return (end_sequence (), nullptr)
25732 : #define DONE return end_sequence ()
25733 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25734 : {
25735 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25736 : int reg6 = 0xF0;
25737 : int reg2 = 0xCC;
25738 : int reg1 = 0xAA;
25739 : int reg3 = 0;
25740 : int reg4 = 0;
25741 : int reg_mask, tmp1, tmp2;
25742 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25743 : STRIP_UNARY (operands[4])))
25744 : {
25745 : reg4 = reg1;
25746 : reg3 = reg6;
25747 : operands[6] = operands[3];
25748 : }
25749 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25750 : STRIP_UNARY (operands[4])))
25751 : {
25752 : reg4 = reg2;
25753 : reg3 = reg6;
25754 : operands[6] = operands[3];
25755 : }
25756 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25757 : STRIP_UNARY (operands[3])))
25758 : {
25759 : reg4 = reg6;
25760 : reg3 = reg1;
25761 : operands[6] = operands[4];
25762 : }
25763 : else
25764 : {
25765 : reg4 = reg6;
25766 : reg3 = reg2;
25767 : operands[6] = operands[4];
25768 : }
25769 :
25770 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25771 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25772 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25773 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25774 :
25775 : tmp1 = reg1 | reg2;
25776 : tmp2 = tmp1 ^ reg3;
25777 : reg_mask = tmp2 & reg4;
25778 : reg_mask &= 0xFF;
25779 :
25780 : operands[1] = STRIP_UNARY (operands[1]);
25781 : operands[2] = STRIP_UNARY (operands[2]);
25782 : operands[6] = STRIP_UNARY (operands[6]);
25783 : operands[5] = GEN_INT (reg_mask);
25784 : if (!register_operand (operands[2], V8HFmode))
25785 : operands[2] = force_reg (V8HFmode, operands[2]);
25786 : if (!register_operand (operands[6], V8HFmode))
25787 : operands[6] = force_reg (V8HFmode, operands[6]);
25788 :
25789 : }
25790 : #undef DONE
25791 : #undef FAIL
25792 : static const uint8_t expand_encoding[] = {
25793 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
25794 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25795 : 0x25
25796 : };
25797 : return complete_seq (expand_encoding, operands);
25798 : }
25799 :
25800 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25801 : extern rtx_insn *gen_split_2790 (rtx_insn *, rtx *);
25802 : rtx_insn *
25803 : gen_split_2790 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25804 : {
25805 : if (dump_file)
25806 : fprintf (dump_file, "Splitting with gen_split_2790 (sse.md:14227)\n");
25807 : start_sequence ();
25808 : #define FAIL return (end_sequence (), nullptr)
25809 : #define DONE return end_sequence ()
25810 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25811 : {
25812 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25813 : int reg6 = 0xF0;
25814 : int reg2 = 0xCC;
25815 : int reg1 = 0xAA;
25816 : int reg3 = 0;
25817 : int reg4 = 0;
25818 : int reg_mask, tmp1, tmp2;
25819 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25820 : STRIP_UNARY (operands[4])))
25821 : {
25822 : reg4 = reg1;
25823 : reg3 = reg6;
25824 : operands[6] = operands[3];
25825 : }
25826 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25827 : STRIP_UNARY (operands[4])))
25828 : {
25829 : reg4 = reg2;
25830 : reg3 = reg6;
25831 : operands[6] = operands[3];
25832 : }
25833 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25834 : STRIP_UNARY (operands[3])))
25835 : {
25836 : reg4 = reg6;
25837 : reg3 = reg1;
25838 : operands[6] = operands[4];
25839 : }
25840 : else
25841 : {
25842 : reg4 = reg6;
25843 : reg3 = reg2;
25844 : operands[6] = operands[4];
25845 : }
25846 :
25847 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25848 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25849 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25850 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25851 :
25852 : tmp1 = reg1 | reg2;
25853 : tmp2 = tmp1 & reg3;
25854 : reg_mask = tmp2 | reg4;
25855 : reg_mask &= 0xFF;
25856 :
25857 : operands[1] = STRIP_UNARY (operands[1]);
25858 : operands[2] = STRIP_UNARY (operands[2]);
25859 : operands[6] = STRIP_UNARY (operands[6]);
25860 : operands[5] = GEN_INT (reg_mask);
25861 : if (!register_operand (operands[2], V32BFmode))
25862 : operands[2] = force_reg (V32BFmode, operands[2]);
25863 : if (!register_operand (operands[6], V32BFmode))
25864 : operands[6] = force_reg (V32BFmode, operands[6]);
25865 :
25866 : }
25867 : #undef DONE
25868 : #undef FAIL
25869 : static const uint8_t expand_encoding[] = {
25870 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
25871 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25872 : 0x25
25873 : };
25874 : return complete_seq (expand_encoding, operands);
25875 : }
25876 :
25877 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25878 : extern rtx_insn *gen_split_2800 (rtx_insn *, rtx *);
25879 : rtx_insn *
25880 : gen_split_2800 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25881 : {
25882 : if (dump_file)
25883 : fprintf (dump_file, "Splitting with gen_split_2800 (sse.md:14227)\n");
25884 : start_sequence ();
25885 : #define FAIL return (end_sequence (), nullptr)
25886 : #define DONE return end_sequence ()
25887 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25888 : {
25889 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25890 : int reg6 = 0xF0;
25891 : int reg2 = 0xCC;
25892 : int reg1 = 0xAA;
25893 : int reg3 = 0;
25894 : int reg4 = 0;
25895 : int reg_mask, tmp1, tmp2;
25896 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25897 : STRIP_UNARY (operands[4])))
25898 : {
25899 : reg4 = reg1;
25900 : reg3 = reg6;
25901 : operands[6] = operands[3];
25902 : }
25903 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25904 : STRIP_UNARY (operands[4])))
25905 : {
25906 : reg4 = reg2;
25907 : reg3 = reg6;
25908 : operands[6] = operands[3];
25909 : }
25910 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25911 : STRIP_UNARY (operands[3])))
25912 : {
25913 : reg4 = reg6;
25914 : reg3 = reg1;
25915 : operands[6] = operands[4];
25916 : }
25917 : else
25918 : {
25919 : reg4 = reg6;
25920 : reg3 = reg2;
25921 : operands[6] = operands[4];
25922 : }
25923 :
25924 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
25925 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
25926 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
25927 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
25928 :
25929 : tmp1 = reg1 | reg2;
25930 : tmp2 = tmp1 | reg3;
25931 : reg_mask = tmp2 ^ reg4;
25932 : reg_mask &= 0xFF;
25933 :
25934 : operands[1] = STRIP_UNARY (operands[1]);
25935 : operands[2] = STRIP_UNARY (operands[2]);
25936 : operands[6] = STRIP_UNARY (operands[6]);
25937 : operands[5] = GEN_INT (reg_mask);
25938 : if (!register_operand (operands[2], V32BFmode))
25939 : operands[2] = force_reg (V32BFmode, operands[2]);
25940 : if (!register_operand (operands[6], V32BFmode))
25941 : operands[6] = force_reg (V32BFmode, operands[6]);
25942 :
25943 : }
25944 : #undef DONE
25945 : #undef FAIL
25946 : static const uint8_t expand_encoding[] = {
25947 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
25948 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
25949 : 0x25
25950 : };
25951 : return complete_seq (expand_encoding, operands);
25952 : }
25953 :
25954 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
25955 : extern rtx_insn *gen_split_2810 (rtx_insn *, rtx *);
25956 : rtx_insn *
25957 : gen_split_2810 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
25958 : {
25959 : if (dump_file)
25960 : fprintf (dump_file, "Splitting with gen_split_2810 (sse.md:14227)\n");
25961 : start_sequence ();
25962 : #define FAIL return (end_sequence (), nullptr)
25963 : #define DONE return end_sequence ()
25964 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
25965 : {
25966 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
25967 : int reg6 = 0xF0;
25968 : int reg2 = 0xCC;
25969 : int reg1 = 0xAA;
25970 : int reg3 = 0;
25971 : int reg4 = 0;
25972 : int reg_mask, tmp1, tmp2;
25973 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
25974 : STRIP_UNARY (operands[4])))
25975 : {
25976 : reg4 = reg1;
25977 : reg3 = reg6;
25978 : operands[6] = operands[3];
25979 : }
25980 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
25981 : STRIP_UNARY (operands[4])))
25982 : {
25983 : reg4 = reg2;
25984 : reg3 = reg6;
25985 : operands[6] = operands[3];
25986 : }
25987 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
25988 : STRIP_UNARY (operands[3])))
25989 : {
25990 : reg4 = reg6;
25991 : reg3 = reg1;
25992 : operands[6] = operands[4];
25993 : }
25994 : else
25995 : {
25996 : reg4 = reg6;
25997 : reg3 = reg2;
25998 : operands[6] = operands[4];
25999 : }
26000 :
26001 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26002 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26003 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26004 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26005 :
26006 : tmp1 = reg1 ^ reg2;
26007 : tmp2 = tmp1 ^ reg3;
26008 : reg_mask = tmp2 & reg4;
26009 : reg_mask &= 0xFF;
26010 :
26011 : operands[1] = STRIP_UNARY (operands[1]);
26012 : operands[2] = STRIP_UNARY (operands[2]);
26013 : operands[6] = STRIP_UNARY (operands[6]);
26014 : operands[5] = GEN_INT (reg_mask);
26015 : if (!register_operand (operands[2], V32BFmode))
26016 : operands[2] = force_reg (V32BFmode, operands[2]);
26017 : if (!register_operand (operands[6], V32BFmode))
26018 : operands[6] = force_reg (V32BFmode, operands[6]);
26019 :
26020 : }
26021 : #undef DONE
26022 : #undef FAIL
26023 : static const uint8_t expand_encoding[] = {
26024 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
26025 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26026 : 0x25
26027 : };
26028 : return complete_seq (expand_encoding, operands);
26029 : }
26030 :
26031 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26032 : extern rtx_insn *gen_split_2820 (rtx_insn *, rtx *);
26033 : rtx_insn *
26034 : gen_split_2820 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26035 : {
26036 : if (dump_file)
26037 : fprintf (dump_file, "Splitting with gen_split_2820 (sse.md:14227)\n");
26038 : start_sequence ();
26039 : #define FAIL return (end_sequence (), nullptr)
26040 : #define DONE return end_sequence ()
26041 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26042 : {
26043 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26044 : int reg6 = 0xF0;
26045 : int reg2 = 0xCC;
26046 : int reg1 = 0xAA;
26047 : int reg3 = 0;
26048 : int reg4 = 0;
26049 : int reg_mask, tmp1, tmp2;
26050 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26051 : STRIP_UNARY (operands[4])))
26052 : {
26053 : reg4 = reg1;
26054 : reg3 = reg6;
26055 : operands[6] = operands[3];
26056 : }
26057 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26058 : STRIP_UNARY (operands[4])))
26059 : {
26060 : reg4 = reg2;
26061 : reg3 = reg6;
26062 : operands[6] = operands[3];
26063 : }
26064 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26065 : STRIP_UNARY (operands[3])))
26066 : {
26067 : reg4 = reg6;
26068 : reg3 = reg1;
26069 : operands[6] = operands[4];
26070 : }
26071 : else
26072 : {
26073 : reg4 = reg6;
26074 : reg3 = reg2;
26075 : operands[6] = operands[4];
26076 : }
26077 :
26078 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26079 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26080 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26081 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26082 :
26083 : tmp1 = reg1 ^ reg2;
26084 : tmp2 = tmp1 & reg3;
26085 : reg_mask = tmp2 | reg4;
26086 : reg_mask &= 0xFF;
26087 :
26088 : operands[1] = STRIP_UNARY (operands[1]);
26089 : operands[2] = STRIP_UNARY (operands[2]);
26090 : operands[6] = STRIP_UNARY (operands[6]);
26091 : operands[5] = GEN_INT (reg_mask);
26092 : if (!register_operand (operands[2], V16BFmode))
26093 : operands[2] = force_reg (V16BFmode, operands[2]);
26094 : if (!register_operand (operands[6], V16BFmode))
26095 : operands[6] = force_reg (V16BFmode, operands[6]);
26096 :
26097 : }
26098 : #undef DONE
26099 : #undef FAIL
26100 : static const uint8_t expand_encoding[] = {
26101 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
26102 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26103 : 0x25
26104 : };
26105 : return complete_seq (expand_encoding, operands);
26106 : }
26107 :
26108 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26109 : extern rtx_insn *gen_split_2830 (rtx_insn *, rtx *);
26110 : rtx_insn *
26111 : gen_split_2830 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26112 : {
26113 : if (dump_file)
26114 : fprintf (dump_file, "Splitting with gen_split_2830 (sse.md:14227)\n");
26115 : start_sequence ();
26116 : #define FAIL return (end_sequence (), nullptr)
26117 : #define DONE return end_sequence ()
26118 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26119 : {
26120 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26121 : int reg6 = 0xF0;
26122 : int reg2 = 0xCC;
26123 : int reg1 = 0xAA;
26124 : int reg3 = 0;
26125 : int reg4 = 0;
26126 : int reg_mask, tmp1, tmp2;
26127 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26128 : STRIP_UNARY (operands[4])))
26129 : {
26130 : reg4 = reg1;
26131 : reg3 = reg6;
26132 : operands[6] = operands[3];
26133 : }
26134 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26135 : STRIP_UNARY (operands[4])))
26136 : {
26137 : reg4 = reg2;
26138 : reg3 = reg6;
26139 : operands[6] = operands[3];
26140 : }
26141 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26142 : STRIP_UNARY (operands[3])))
26143 : {
26144 : reg4 = reg6;
26145 : reg3 = reg1;
26146 : operands[6] = operands[4];
26147 : }
26148 : else
26149 : {
26150 : reg4 = reg6;
26151 : reg3 = reg2;
26152 : operands[6] = operands[4];
26153 : }
26154 :
26155 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26156 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26157 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26158 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26159 :
26160 : tmp1 = reg1 ^ reg2;
26161 : tmp2 = tmp1 | reg3;
26162 : reg_mask = tmp2 ^ reg4;
26163 : reg_mask &= 0xFF;
26164 :
26165 : operands[1] = STRIP_UNARY (operands[1]);
26166 : operands[2] = STRIP_UNARY (operands[2]);
26167 : operands[6] = STRIP_UNARY (operands[6]);
26168 : operands[5] = GEN_INT (reg_mask);
26169 : if (!register_operand (operands[2], V16BFmode))
26170 : operands[2] = force_reg (V16BFmode, operands[2]);
26171 : if (!register_operand (operands[6], V16BFmode))
26172 : operands[6] = force_reg (V16BFmode, operands[6]);
26173 :
26174 : }
26175 : #undef DONE
26176 : #undef FAIL
26177 : static const uint8_t expand_encoding[] = {
26178 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
26179 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26180 : 0x25
26181 : };
26182 : return complete_seq (expand_encoding, operands);
26183 : }
26184 :
26185 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26186 : extern rtx_insn *gen_split_2840 (rtx_insn *, rtx *);
26187 : rtx_insn *
26188 : gen_split_2840 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26189 : {
26190 : if (dump_file)
26191 : fprintf (dump_file, "Splitting with gen_split_2840 (sse.md:14227)\n");
26192 : start_sequence ();
26193 : #define FAIL return (end_sequence (), nullptr)
26194 : #define DONE return end_sequence ()
26195 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26196 : {
26197 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26198 : int reg6 = 0xF0;
26199 : int reg2 = 0xCC;
26200 : int reg1 = 0xAA;
26201 : int reg3 = 0;
26202 : int reg4 = 0;
26203 : int reg_mask, tmp1, tmp2;
26204 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26205 : STRIP_UNARY (operands[4])))
26206 : {
26207 : reg4 = reg1;
26208 : reg3 = reg6;
26209 : operands[6] = operands[3];
26210 : }
26211 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26212 : STRIP_UNARY (operands[4])))
26213 : {
26214 : reg4 = reg2;
26215 : reg3 = reg6;
26216 : operands[6] = operands[3];
26217 : }
26218 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26219 : STRIP_UNARY (operands[3])))
26220 : {
26221 : reg4 = reg6;
26222 : reg3 = reg1;
26223 : operands[6] = operands[4];
26224 : }
26225 : else
26226 : {
26227 : reg4 = reg6;
26228 : reg3 = reg2;
26229 : operands[6] = operands[4];
26230 : }
26231 :
26232 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26233 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26234 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26235 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26236 :
26237 : tmp1 = reg1 & reg2;
26238 : tmp2 = tmp1 & reg3;
26239 : reg_mask = tmp2 & reg4;
26240 : reg_mask &= 0xFF;
26241 :
26242 : operands[1] = STRIP_UNARY (operands[1]);
26243 : operands[2] = STRIP_UNARY (operands[2]);
26244 : operands[6] = STRIP_UNARY (operands[6]);
26245 : operands[5] = GEN_INT (reg_mask);
26246 : if (!register_operand (operands[2], V8BFmode))
26247 : operands[2] = force_reg (V8BFmode, operands[2]);
26248 : if (!register_operand (operands[6], V8BFmode))
26249 : operands[6] = force_reg (V8BFmode, operands[6]);
26250 :
26251 : }
26252 : #undef DONE
26253 : #undef FAIL
26254 : static const uint8_t expand_encoding[] = {
26255 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
26256 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26257 : 0x25
26258 : };
26259 : return complete_seq (expand_encoding, operands);
26260 : }
26261 :
26262 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26263 : extern rtx_insn *gen_split_2850 (rtx_insn *, rtx *);
26264 : rtx_insn *
26265 : gen_split_2850 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26266 : {
26267 : if (dump_file)
26268 : fprintf (dump_file, "Splitting with gen_split_2850 (sse.md:14227)\n");
26269 : start_sequence ();
26270 : #define FAIL return (end_sequence (), nullptr)
26271 : #define DONE return end_sequence ()
26272 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26273 : {
26274 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26275 : int reg6 = 0xF0;
26276 : int reg2 = 0xCC;
26277 : int reg1 = 0xAA;
26278 : int reg3 = 0;
26279 : int reg4 = 0;
26280 : int reg_mask, tmp1, tmp2;
26281 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26282 : STRIP_UNARY (operands[4])))
26283 : {
26284 : reg4 = reg1;
26285 : reg3 = reg6;
26286 : operands[6] = operands[3];
26287 : }
26288 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26289 : STRIP_UNARY (operands[4])))
26290 : {
26291 : reg4 = reg2;
26292 : reg3 = reg6;
26293 : operands[6] = operands[3];
26294 : }
26295 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26296 : STRIP_UNARY (operands[3])))
26297 : {
26298 : reg4 = reg6;
26299 : reg3 = reg1;
26300 : operands[6] = operands[4];
26301 : }
26302 : else
26303 : {
26304 : reg4 = reg6;
26305 : reg3 = reg2;
26306 : operands[6] = operands[4];
26307 : }
26308 :
26309 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26310 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26311 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26312 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26313 :
26314 : tmp1 = reg1 & reg2;
26315 : tmp2 = tmp1 | reg3;
26316 : reg_mask = tmp2 | reg4;
26317 : reg_mask &= 0xFF;
26318 :
26319 : operands[1] = STRIP_UNARY (operands[1]);
26320 : operands[2] = STRIP_UNARY (operands[2]);
26321 : operands[6] = STRIP_UNARY (operands[6]);
26322 : operands[5] = GEN_INT (reg_mask);
26323 : if (!register_operand (operands[2], V8BFmode))
26324 : operands[2] = force_reg (V8BFmode, operands[2]);
26325 : if (!register_operand (operands[6], V8BFmode))
26326 : operands[6] = force_reg (V8BFmode, operands[6]);
26327 :
26328 : }
26329 : #undef DONE
26330 : #undef FAIL
26331 : static const uint8_t expand_encoding[] = {
26332 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
26333 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26334 : 0x25
26335 : };
26336 : return complete_seq (expand_encoding, operands);
26337 : }
26338 :
26339 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26340 : extern rtx_insn *gen_split_2860 (rtx_insn *, rtx *);
26341 : rtx_insn *
26342 : gen_split_2860 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26343 : {
26344 : if (dump_file)
26345 : fprintf (dump_file, "Splitting with gen_split_2860 (sse.md:14227)\n");
26346 : start_sequence ();
26347 : #define FAIL return (end_sequence (), nullptr)
26348 : #define DONE return end_sequence ()
26349 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26350 : {
26351 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26352 : int reg6 = 0xF0;
26353 : int reg2 = 0xCC;
26354 : int reg1 = 0xAA;
26355 : int reg3 = 0;
26356 : int reg4 = 0;
26357 : int reg_mask, tmp1, tmp2;
26358 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26359 : STRIP_UNARY (operands[4])))
26360 : {
26361 : reg4 = reg1;
26362 : reg3 = reg6;
26363 : operands[6] = operands[3];
26364 : }
26365 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26366 : STRIP_UNARY (operands[4])))
26367 : {
26368 : reg4 = reg2;
26369 : reg3 = reg6;
26370 : operands[6] = operands[3];
26371 : }
26372 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26373 : STRIP_UNARY (operands[3])))
26374 : {
26375 : reg4 = reg6;
26376 : reg3 = reg1;
26377 : operands[6] = operands[4];
26378 : }
26379 : else
26380 : {
26381 : reg4 = reg6;
26382 : reg3 = reg2;
26383 : operands[6] = operands[4];
26384 : }
26385 :
26386 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26387 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26388 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26389 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26390 :
26391 : tmp1 = reg1 & reg2;
26392 : tmp2 = tmp1 ^ reg3;
26393 : reg_mask = tmp2 ^ reg4;
26394 : reg_mask &= 0xFF;
26395 :
26396 : operands[1] = STRIP_UNARY (operands[1]);
26397 : operands[2] = STRIP_UNARY (operands[2]);
26398 : operands[6] = STRIP_UNARY (operands[6]);
26399 : operands[5] = GEN_INT (reg_mask);
26400 : if (!register_operand (operands[2], V8BFmode))
26401 : operands[2] = force_reg (V8BFmode, operands[2]);
26402 : if (!register_operand (operands[6], V8BFmode))
26403 : operands[6] = force_reg (V8BFmode, operands[6]);
26404 :
26405 : }
26406 : #undef DONE
26407 : #undef FAIL
26408 : static const uint8_t expand_encoding[] = {
26409 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
26410 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26411 : 0x25
26412 : };
26413 : return complete_seq (expand_encoding, operands);
26414 : }
26415 :
26416 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26417 : extern rtx_insn *gen_split_2870 (rtx_insn *, rtx *);
26418 : rtx_insn *
26419 : gen_split_2870 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26420 : {
26421 : if (dump_file)
26422 : fprintf (dump_file, "Splitting with gen_split_2870 (sse.md:14227)\n");
26423 : start_sequence ();
26424 : #define FAIL return (end_sequence (), nullptr)
26425 : #define DONE return end_sequence ()
26426 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26427 : {
26428 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26429 : int reg6 = 0xF0;
26430 : int reg2 = 0xCC;
26431 : int reg1 = 0xAA;
26432 : int reg3 = 0;
26433 : int reg4 = 0;
26434 : int reg_mask, tmp1, tmp2;
26435 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26436 : STRIP_UNARY (operands[4])))
26437 : {
26438 : reg4 = reg1;
26439 : reg3 = reg6;
26440 : operands[6] = operands[3];
26441 : }
26442 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26443 : STRIP_UNARY (operands[4])))
26444 : {
26445 : reg4 = reg2;
26446 : reg3 = reg6;
26447 : operands[6] = operands[3];
26448 : }
26449 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26450 : STRIP_UNARY (operands[3])))
26451 : {
26452 : reg4 = reg6;
26453 : reg3 = reg1;
26454 : operands[6] = operands[4];
26455 : }
26456 : else
26457 : {
26458 : reg4 = reg6;
26459 : reg3 = reg2;
26460 : operands[6] = operands[4];
26461 : }
26462 :
26463 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26464 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26465 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26466 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26467 :
26468 : tmp1 = reg1 | reg2;
26469 : tmp2 = tmp1 & reg3;
26470 : reg_mask = tmp2 & reg4;
26471 : reg_mask &= 0xFF;
26472 :
26473 : operands[1] = STRIP_UNARY (operands[1]);
26474 : operands[2] = STRIP_UNARY (operands[2]);
26475 : operands[6] = STRIP_UNARY (operands[6]);
26476 : operands[5] = GEN_INT (reg_mask);
26477 : if (!register_operand (operands[2], V16SFmode))
26478 : operands[2] = force_reg (V16SFmode, operands[2]);
26479 : if (!register_operand (operands[6], V16SFmode))
26480 : operands[6] = force_reg (V16SFmode, operands[6]);
26481 :
26482 : }
26483 : #undef DONE
26484 : #undef FAIL
26485 : static const uint8_t expand_encoding[] = {
26486 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
26487 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26488 : 0x25
26489 : };
26490 : return complete_seq (expand_encoding, operands);
26491 : }
26492 :
26493 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26494 : extern rtx_insn *gen_split_2880 (rtx_insn *, rtx *);
26495 : rtx_insn *
26496 : gen_split_2880 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26497 : {
26498 : if (dump_file)
26499 : fprintf (dump_file, "Splitting with gen_split_2880 (sse.md:14227)\n");
26500 : start_sequence ();
26501 : #define FAIL return (end_sequence (), nullptr)
26502 : #define DONE return end_sequence ()
26503 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26504 : {
26505 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26506 : int reg6 = 0xF0;
26507 : int reg2 = 0xCC;
26508 : int reg1 = 0xAA;
26509 : int reg3 = 0;
26510 : int reg4 = 0;
26511 : int reg_mask, tmp1, tmp2;
26512 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26513 : STRIP_UNARY (operands[4])))
26514 : {
26515 : reg4 = reg1;
26516 : reg3 = reg6;
26517 : operands[6] = operands[3];
26518 : }
26519 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26520 : STRIP_UNARY (operands[4])))
26521 : {
26522 : reg4 = reg2;
26523 : reg3 = reg6;
26524 : operands[6] = operands[3];
26525 : }
26526 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26527 : STRIP_UNARY (operands[3])))
26528 : {
26529 : reg4 = reg6;
26530 : reg3 = reg1;
26531 : operands[6] = operands[4];
26532 : }
26533 : else
26534 : {
26535 : reg4 = reg6;
26536 : reg3 = reg2;
26537 : operands[6] = operands[4];
26538 : }
26539 :
26540 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26541 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26542 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26543 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26544 :
26545 : tmp1 = reg1 | reg2;
26546 : tmp2 = tmp1 | reg3;
26547 : reg_mask = tmp2 | reg4;
26548 : reg_mask &= 0xFF;
26549 :
26550 : operands[1] = STRIP_UNARY (operands[1]);
26551 : operands[2] = STRIP_UNARY (operands[2]);
26552 : operands[6] = STRIP_UNARY (operands[6]);
26553 : operands[5] = GEN_INT (reg_mask);
26554 : if (!register_operand (operands[2], V16SFmode))
26555 : operands[2] = force_reg (V16SFmode, operands[2]);
26556 : if (!register_operand (operands[6], V16SFmode))
26557 : operands[6] = force_reg (V16SFmode, operands[6]);
26558 :
26559 : }
26560 : #undef DONE
26561 : #undef FAIL
26562 : static const uint8_t expand_encoding[] = {
26563 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
26564 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26565 : 0x25
26566 : };
26567 : return complete_seq (expand_encoding, operands);
26568 : }
26569 :
26570 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26571 : extern rtx_insn *gen_split_2890 (rtx_insn *, rtx *);
26572 : rtx_insn *
26573 : gen_split_2890 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26574 : {
26575 : if (dump_file)
26576 : fprintf (dump_file, "Splitting with gen_split_2890 (sse.md:14227)\n");
26577 : start_sequence ();
26578 : #define FAIL return (end_sequence (), nullptr)
26579 : #define DONE return end_sequence ()
26580 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26581 : {
26582 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26583 : int reg6 = 0xF0;
26584 : int reg2 = 0xCC;
26585 : int reg1 = 0xAA;
26586 : int reg3 = 0;
26587 : int reg4 = 0;
26588 : int reg_mask, tmp1, tmp2;
26589 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26590 : STRIP_UNARY (operands[4])))
26591 : {
26592 : reg4 = reg1;
26593 : reg3 = reg6;
26594 : operands[6] = operands[3];
26595 : }
26596 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26597 : STRIP_UNARY (operands[4])))
26598 : {
26599 : reg4 = reg2;
26600 : reg3 = reg6;
26601 : operands[6] = operands[3];
26602 : }
26603 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26604 : STRIP_UNARY (operands[3])))
26605 : {
26606 : reg4 = reg6;
26607 : reg3 = reg1;
26608 : operands[6] = operands[4];
26609 : }
26610 : else
26611 : {
26612 : reg4 = reg6;
26613 : reg3 = reg2;
26614 : operands[6] = operands[4];
26615 : }
26616 :
26617 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26618 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26619 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26620 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26621 :
26622 : tmp1 = reg1 | reg2;
26623 : tmp2 = tmp1 ^ reg3;
26624 : reg_mask = tmp2 ^ reg4;
26625 : reg_mask &= 0xFF;
26626 :
26627 : operands[1] = STRIP_UNARY (operands[1]);
26628 : operands[2] = STRIP_UNARY (operands[2]);
26629 : operands[6] = STRIP_UNARY (operands[6]);
26630 : operands[5] = GEN_INT (reg_mask);
26631 : if (!register_operand (operands[2], V16SFmode))
26632 : operands[2] = force_reg (V16SFmode, operands[2]);
26633 : if (!register_operand (operands[6], V16SFmode))
26634 : operands[6] = force_reg (V16SFmode, operands[6]);
26635 :
26636 : }
26637 : #undef DONE
26638 : #undef FAIL
26639 : static const uint8_t expand_encoding[] = {
26640 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
26641 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26642 : 0x25
26643 : };
26644 : return complete_seq (expand_encoding, operands);
26645 : }
26646 :
26647 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26648 : extern rtx_insn *gen_split_2900 (rtx_insn *, rtx *);
26649 : rtx_insn *
26650 : gen_split_2900 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26651 : {
26652 : if (dump_file)
26653 : fprintf (dump_file, "Splitting with gen_split_2900 (sse.md:14227)\n");
26654 : start_sequence ();
26655 : #define FAIL return (end_sequence (), nullptr)
26656 : #define DONE return end_sequence ()
26657 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26658 : {
26659 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26660 : int reg6 = 0xF0;
26661 : int reg2 = 0xCC;
26662 : int reg1 = 0xAA;
26663 : int reg3 = 0;
26664 : int reg4 = 0;
26665 : int reg_mask, tmp1, tmp2;
26666 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26667 : STRIP_UNARY (operands[4])))
26668 : {
26669 : reg4 = reg1;
26670 : reg3 = reg6;
26671 : operands[6] = operands[3];
26672 : }
26673 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26674 : STRIP_UNARY (operands[4])))
26675 : {
26676 : reg4 = reg2;
26677 : reg3 = reg6;
26678 : operands[6] = operands[3];
26679 : }
26680 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26681 : STRIP_UNARY (operands[3])))
26682 : {
26683 : reg4 = reg6;
26684 : reg3 = reg1;
26685 : operands[6] = operands[4];
26686 : }
26687 : else
26688 : {
26689 : reg4 = reg6;
26690 : reg3 = reg2;
26691 : operands[6] = operands[4];
26692 : }
26693 :
26694 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26695 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26696 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26697 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26698 :
26699 : tmp1 = reg1 ^ reg2;
26700 : tmp2 = tmp1 & reg3;
26701 : reg_mask = tmp2 & reg4;
26702 : reg_mask &= 0xFF;
26703 :
26704 : operands[1] = STRIP_UNARY (operands[1]);
26705 : operands[2] = STRIP_UNARY (operands[2]);
26706 : operands[6] = STRIP_UNARY (operands[6]);
26707 : operands[5] = GEN_INT (reg_mask);
26708 : if (!register_operand (operands[2], V8SFmode))
26709 : operands[2] = force_reg (V8SFmode, operands[2]);
26710 : if (!register_operand (operands[6], V8SFmode))
26711 : operands[6] = force_reg (V8SFmode, operands[6]);
26712 :
26713 : }
26714 : #undef DONE
26715 : #undef FAIL
26716 : static const uint8_t expand_encoding[] = {
26717 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
26718 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26719 : 0x25
26720 : };
26721 : return complete_seq (expand_encoding, operands);
26722 : }
26723 :
26724 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26725 : extern rtx_insn *gen_split_2910 (rtx_insn *, rtx *);
26726 : rtx_insn *
26727 : gen_split_2910 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26728 : {
26729 : if (dump_file)
26730 : fprintf (dump_file, "Splitting with gen_split_2910 (sse.md:14227)\n");
26731 : start_sequence ();
26732 : #define FAIL return (end_sequence (), nullptr)
26733 : #define DONE return end_sequence ()
26734 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26735 : {
26736 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26737 : int reg6 = 0xF0;
26738 : int reg2 = 0xCC;
26739 : int reg1 = 0xAA;
26740 : int reg3 = 0;
26741 : int reg4 = 0;
26742 : int reg_mask, tmp1, tmp2;
26743 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26744 : STRIP_UNARY (operands[4])))
26745 : {
26746 : reg4 = reg1;
26747 : reg3 = reg6;
26748 : operands[6] = operands[3];
26749 : }
26750 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26751 : STRIP_UNARY (operands[4])))
26752 : {
26753 : reg4 = reg2;
26754 : reg3 = reg6;
26755 : operands[6] = operands[3];
26756 : }
26757 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26758 : STRIP_UNARY (operands[3])))
26759 : {
26760 : reg4 = reg6;
26761 : reg3 = reg1;
26762 : operands[6] = operands[4];
26763 : }
26764 : else
26765 : {
26766 : reg4 = reg6;
26767 : reg3 = reg2;
26768 : operands[6] = operands[4];
26769 : }
26770 :
26771 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26772 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26773 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26774 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26775 :
26776 : tmp1 = reg1 ^ reg2;
26777 : tmp2 = tmp1 | reg3;
26778 : reg_mask = tmp2 | reg4;
26779 : reg_mask &= 0xFF;
26780 :
26781 : operands[1] = STRIP_UNARY (operands[1]);
26782 : operands[2] = STRIP_UNARY (operands[2]);
26783 : operands[6] = STRIP_UNARY (operands[6]);
26784 : operands[5] = GEN_INT (reg_mask);
26785 : if (!register_operand (operands[2], V8SFmode))
26786 : operands[2] = force_reg (V8SFmode, operands[2]);
26787 : if (!register_operand (operands[6], V8SFmode))
26788 : operands[6] = force_reg (V8SFmode, operands[6]);
26789 :
26790 : }
26791 : #undef DONE
26792 : #undef FAIL
26793 : static const uint8_t expand_encoding[] = {
26794 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
26795 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26796 : 0x25
26797 : };
26798 : return complete_seq (expand_encoding, operands);
26799 : }
26800 :
26801 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26802 : extern rtx_insn *gen_split_2920 (rtx_insn *, rtx *);
26803 : rtx_insn *
26804 : gen_split_2920 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26805 : {
26806 : if (dump_file)
26807 : fprintf (dump_file, "Splitting with gen_split_2920 (sse.md:14227)\n");
26808 : start_sequence ();
26809 : #define FAIL return (end_sequence (), nullptr)
26810 : #define DONE return end_sequence ()
26811 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26812 : {
26813 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26814 : int reg6 = 0xF0;
26815 : int reg2 = 0xCC;
26816 : int reg1 = 0xAA;
26817 : int reg3 = 0;
26818 : int reg4 = 0;
26819 : int reg_mask, tmp1, tmp2;
26820 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26821 : STRIP_UNARY (operands[4])))
26822 : {
26823 : reg4 = reg1;
26824 : reg3 = reg6;
26825 : operands[6] = operands[3];
26826 : }
26827 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26828 : STRIP_UNARY (operands[4])))
26829 : {
26830 : reg4 = reg2;
26831 : reg3 = reg6;
26832 : operands[6] = operands[3];
26833 : }
26834 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26835 : STRIP_UNARY (operands[3])))
26836 : {
26837 : reg4 = reg6;
26838 : reg3 = reg1;
26839 : operands[6] = operands[4];
26840 : }
26841 : else
26842 : {
26843 : reg4 = reg6;
26844 : reg3 = reg2;
26845 : operands[6] = operands[4];
26846 : }
26847 :
26848 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26849 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26850 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26851 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26852 :
26853 : tmp1 = reg1 ^ reg2;
26854 : tmp2 = tmp1 ^ reg3;
26855 : reg_mask = tmp2 ^ reg4;
26856 : reg_mask &= 0xFF;
26857 :
26858 : operands[1] = STRIP_UNARY (operands[1]);
26859 : operands[2] = STRIP_UNARY (operands[2]);
26860 : operands[6] = STRIP_UNARY (operands[6]);
26861 : operands[5] = GEN_INT (reg_mask);
26862 : if (!register_operand (operands[2], V8SFmode))
26863 : operands[2] = force_reg (V8SFmode, operands[2]);
26864 : if (!register_operand (operands[6], V8SFmode))
26865 : operands[6] = force_reg (V8SFmode, operands[6]);
26866 :
26867 : }
26868 : #undef DONE
26869 : #undef FAIL
26870 : static const uint8_t expand_encoding[] = {
26871 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
26872 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26873 : 0x25
26874 : };
26875 : return complete_seq (expand_encoding, operands);
26876 : }
26877 :
26878 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26879 : extern rtx_insn *gen_split_2930 (rtx_insn *, rtx *);
26880 : rtx_insn *
26881 : gen_split_2930 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26882 : {
26883 : if (dump_file)
26884 : fprintf (dump_file, "Splitting with gen_split_2930 (sse.md:14227)\n");
26885 : start_sequence ();
26886 : #define FAIL return (end_sequence (), nullptr)
26887 : #define DONE return end_sequence ()
26888 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26889 : {
26890 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26891 : int reg6 = 0xF0;
26892 : int reg2 = 0xCC;
26893 : int reg1 = 0xAA;
26894 : int reg3 = 0;
26895 : int reg4 = 0;
26896 : int reg_mask, tmp1, tmp2;
26897 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26898 : STRIP_UNARY (operands[4])))
26899 : {
26900 : reg4 = reg1;
26901 : reg3 = reg6;
26902 : operands[6] = operands[3];
26903 : }
26904 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26905 : STRIP_UNARY (operands[4])))
26906 : {
26907 : reg4 = reg2;
26908 : reg3 = reg6;
26909 : operands[6] = operands[3];
26910 : }
26911 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26912 : STRIP_UNARY (operands[3])))
26913 : {
26914 : reg4 = reg6;
26915 : reg3 = reg1;
26916 : operands[6] = operands[4];
26917 : }
26918 : else
26919 : {
26920 : reg4 = reg6;
26921 : reg3 = reg2;
26922 : operands[6] = operands[4];
26923 : }
26924 :
26925 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
26926 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
26927 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
26928 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
26929 :
26930 : tmp1 = reg1 & reg2;
26931 : tmp2 = tmp1 | reg3;
26932 : reg_mask = tmp2 & reg4;
26933 : reg_mask &= 0xFF;
26934 :
26935 : operands[1] = STRIP_UNARY (operands[1]);
26936 : operands[2] = STRIP_UNARY (operands[2]);
26937 : operands[6] = STRIP_UNARY (operands[6]);
26938 : operands[5] = GEN_INT (reg_mask);
26939 : if (!register_operand (operands[2], V4SFmode))
26940 : operands[2] = force_reg (V4SFmode, operands[2]);
26941 : if (!register_operand (operands[6], V4SFmode))
26942 : operands[6] = force_reg (V4SFmode, operands[6]);
26943 :
26944 : }
26945 : #undef DONE
26946 : #undef FAIL
26947 : static const uint8_t expand_encoding[] = {
26948 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
26949 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
26950 : 0x25
26951 : };
26952 : return complete_seq (expand_encoding, operands);
26953 : }
26954 :
26955 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
26956 : extern rtx_insn *gen_split_2940 (rtx_insn *, rtx *);
26957 : rtx_insn *
26958 : gen_split_2940 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
26959 : {
26960 : if (dump_file)
26961 : fprintf (dump_file, "Splitting with gen_split_2940 (sse.md:14227)\n");
26962 : start_sequence ();
26963 : #define FAIL return (end_sequence (), nullptr)
26964 : #define DONE return end_sequence ()
26965 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
26966 : {
26967 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
26968 : int reg6 = 0xF0;
26969 : int reg2 = 0xCC;
26970 : int reg1 = 0xAA;
26971 : int reg3 = 0;
26972 : int reg4 = 0;
26973 : int reg_mask, tmp1, tmp2;
26974 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
26975 : STRIP_UNARY (operands[4])))
26976 : {
26977 : reg4 = reg1;
26978 : reg3 = reg6;
26979 : operands[6] = operands[3];
26980 : }
26981 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
26982 : STRIP_UNARY (operands[4])))
26983 : {
26984 : reg4 = reg2;
26985 : reg3 = reg6;
26986 : operands[6] = operands[3];
26987 : }
26988 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
26989 : STRIP_UNARY (operands[3])))
26990 : {
26991 : reg4 = reg6;
26992 : reg3 = reg1;
26993 : operands[6] = operands[4];
26994 : }
26995 : else
26996 : {
26997 : reg4 = reg6;
26998 : reg3 = reg2;
26999 : operands[6] = operands[4];
27000 : }
27001 :
27002 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27003 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27004 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27005 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27006 :
27007 : tmp1 = reg1 & reg2;
27008 : tmp2 = tmp1 ^ reg3;
27009 : reg_mask = tmp2 | reg4;
27010 : reg_mask &= 0xFF;
27011 :
27012 : operands[1] = STRIP_UNARY (operands[1]);
27013 : operands[2] = STRIP_UNARY (operands[2]);
27014 : operands[6] = STRIP_UNARY (operands[6]);
27015 : operands[5] = GEN_INT (reg_mask);
27016 : if (!register_operand (operands[2], V4SFmode))
27017 : operands[2] = force_reg (V4SFmode, operands[2]);
27018 : if (!register_operand (operands[6], V4SFmode))
27019 : operands[6] = force_reg (V4SFmode, operands[6]);
27020 :
27021 : }
27022 : #undef DONE
27023 : #undef FAIL
27024 : static const uint8_t expand_encoding[] = {
27025 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
27026 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27027 : 0x25
27028 : };
27029 : return complete_seq (expand_encoding, operands);
27030 : }
27031 :
27032 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27033 : extern rtx_insn *gen_split_2950 (rtx_insn *, rtx *);
27034 : rtx_insn *
27035 : gen_split_2950 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27036 : {
27037 : if (dump_file)
27038 : fprintf (dump_file, "Splitting with gen_split_2950 (sse.md:14227)\n");
27039 : start_sequence ();
27040 : #define FAIL return (end_sequence (), nullptr)
27041 : #define DONE return end_sequence ()
27042 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27043 : {
27044 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27045 : int reg6 = 0xF0;
27046 : int reg2 = 0xCC;
27047 : int reg1 = 0xAA;
27048 : int reg3 = 0;
27049 : int reg4 = 0;
27050 : int reg_mask, tmp1, tmp2;
27051 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27052 : STRIP_UNARY (operands[4])))
27053 : {
27054 : reg4 = reg1;
27055 : reg3 = reg6;
27056 : operands[6] = operands[3];
27057 : }
27058 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27059 : STRIP_UNARY (operands[4])))
27060 : {
27061 : reg4 = reg2;
27062 : reg3 = reg6;
27063 : operands[6] = operands[3];
27064 : }
27065 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27066 : STRIP_UNARY (operands[3])))
27067 : {
27068 : reg4 = reg6;
27069 : reg3 = reg1;
27070 : operands[6] = operands[4];
27071 : }
27072 : else
27073 : {
27074 : reg4 = reg6;
27075 : reg3 = reg2;
27076 : operands[6] = operands[4];
27077 : }
27078 :
27079 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27080 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27081 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27082 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27083 :
27084 : tmp1 = reg1 & reg2;
27085 : tmp2 = tmp1 & reg3;
27086 : reg_mask = tmp2 ^ reg4;
27087 : reg_mask &= 0xFF;
27088 :
27089 : operands[1] = STRIP_UNARY (operands[1]);
27090 : operands[2] = STRIP_UNARY (operands[2]);
27091 : operands[6] = STRIP_UNARY (operands[6]);
27092 : operands[5] = GEN_INT (reg_mask);
27093 : if (!register_operand (operands[2], V8DFmode))
27094 : operands[2] = force_reg (V8DFmode, operands[2]);
27095 : if (!register_operand (operands[6], V8DFmode))
27096 : operands[6] = force_reg (V8DFmode, operands[6]);
27097 :
27098 : }
27099 : #undef DONE
27100 : #undef FAIL
27101 : static const uint8_t expand_encoding[] = {
27102 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
27103 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27104 : 0x25
27105 : };
27106 : return complete_seq (expand_encoding, operands);
27107 : }
27108 :
27109 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27110 : extern rtx_insn *gen_split_2960 (rtx_insn *, rtx *);
27111 : rtx_insn *
27112 : gen_split_2960 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27113 : {
27114 : if (dump_file)
27115 : fprintf (dump_file, "Splitting with gen_split_2960 (sse.md:14227)\n");
27116 : start_sequence ();
27117 : #define FAIL return (end_sequence (), nullptr)
27118 : #define DONE return end_sequence ()
27119 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27120 : {
27121 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27122 : int reg6 = 0xF0;
27123 : int reg2 = 0xCC;
27124 : int reg1 = 0xAA;
27125 : int reg3 = 0;
27126 : int reg4 = 0;
27127 : int reg_mask, tmp1, tmp2;
27128 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27129 : STRIP_UNARY (operands[4])))
27130 : {
27131 : reg4 = reg1;
27132 : reg3 = reg6;
27133 : operands[6] = operands[3];
27134 : }
27135 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27136 : STRIP_UNARY (operands[4])))
27137 : {
27138 : reg4 = reg2;
27139 : reg3 = reg6;
27140 : operands[6] = operands[3];
27141 : }
27142 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27143 : STRIP_UNARY (operands[3])))
27144 : {
27145 : reg4 = reg6;
27146 : reg3 = reg1;
27147 : operands[6] = operands[4];
27148 : }
27149 : else
27150 : {
27151 : reg4 = reg6;
27152 : reg3 = reg2;
27153 : operands[6] = operands[4];
27154 : }
27155 :
27156 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27157 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27158 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27159 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27160 :
27161 : tmp1 = reg1 | reg2;
27162 : tmp2 = tmp1 | reg3;
27163 : reg_mask = tmp2 & reg4;
27164 : reg_mask &= 0xFF;
27165 :
27166 : operands[1] = STRIP_UNARY (operands[1]);
27167 : operands[2] = STRIP_UNARY (operands[2]);
27168 : operands[6] = STRIP_UNARY (operands[6]);
27169 : operands[5] = GEN_INT (reg_mask);
27170 : if (!register_operand (operands[2], V8DFmode))
27171 : operands[2] = force_reg (V8DFmode, operands[2]);
27172 : if (!register_operand (operands[6], V8DFmode))
27173 : operands[6] = force_reg (V8DFmode, operands[6]);
27174 :
27175 : }
27176 : #undef DONE
27177 : #undef FAIL
27178 : static const uint8_t expand_encoding[] = {
27179 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
27180 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27181 : 0x25
27182 : };
27183 : return complete_seq (expand_encoding, operands);
27184 : }
27185 :
27186 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27187 : extern rtx_insn *gen_split_2970 (rtx_insn *, rtx *);
27188 : rtx_insn *
27189 : gen_split_2970 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27190 : {
27191 : if (dump_file)
27192 : fprintf (dump_file, "Splitting with gen_split_2970 (sse.md:14227)\n");
27193 : start_sequence ();
27194 : #define FAIL return (end_sequence (), nullptr)
27195 : #define DONE return end_sequence ()
27196 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27197 : {
27198 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27199 : int reg6 = 0xF0;
27200 : int reg2 = 0xCC;
27201 : int reg1 = 0xAA;
27202 : int reg3 = 0;
27203 : int reg4 = 0;
27204 : int reg_mask, tmp1, tmp2;
27205 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27206 : STRIP_UNARY (operands[4])))
27207 : {
27208 : reg4 = reg1;
27209 : reg3 = reg6;
27210 : operands[6] = operands[3];
27211 : }
27212 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27213 : STRIP_UNARY (operands[4])))
27214 : {
27215 : reg4 = reg2;
27216 : reg3 = reg6;
27217 : operands[6] = operands[3];
27218 : }
27219 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27220 : STRIP_UNARY (operands[3])))
27221 : {
27222 : reg4 = reg6;
27223 : reg3 = reg1;
27224 : operands[6] = operands[4];
27225 : }
27226 : else
27227 : {
27228 : reg4 = reg6;
27229 : reg3 = reg2;
27230 : operands[6] = operands[4];
27231 : }
27232 :
27233 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27234 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27235 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27236 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27237 :
27238 : tmp1 = reg1 | reg2;
27239 : tmp2 = tmp1 ^ reg3;
27240 : reg_mask = tmp2 | reg4;
27241 : reg_mask &= 0xFF;
27242 :
27243 : operands[1] = STRIP_UNARY (operands[1]);
27244 : operands[2] = STRIP_UNARY (operands[2]);
27245 : operands[6] = STRIP_UNARY (operands[6]);
27246 : operands[5] = GEN_INT (reg_mask);
27247 : if (!register_operand (operands[2], V8DFmode))
27248 : operands[2] = force_reg (V8DFmode, operands[2]);
27249 : if (!register_operand (operands[6], V8DFmode))
27250 : operands[6] = force_reg (V8DFmode, operands[6]);
27251 :
27252 : }
27253 : #undef DONE
27254 : #undef FAIL
27255 : static const uint8_t expand_encoding[] = {
27256 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
27257 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27258 : 0x25
27259 : };
27260 : return complete_seq (expand_encoding, operands);
27261 : }
27262 :
27263 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27264 : extern rtx_insn *gen_split_2980 (rtx_insn *, rtx *);
27265 : rtx_insn *
27266 : gen_split_2980 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27267 : {
27268 : if (dump_file)
27269 : fprintf (dump_file, "Splitting with gen_split_2980 (sse.md:14227)\n");
27270 : start_sequence ();
27271 : #define FAIL return (end_sequence (), nullptr)
27272 : #define DONE return end_sequence ()
27273 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27274 : {
27275 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27276 : int reg6 = 0xF0;
27277 : int reg2 = 0xCC;
27278 : int reg1 = 0xAA;
27279 : int reg3 = 0;
27280 : int reg4 = 0;
27281 : int reg_mask, tmp1, tmp2;
27282 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27283 : STRIP_UNARY (operands[4])))
27284 : {
27285 : reg4 = reg1;
27286 : reg3 = reg6;
27287 : operands[6] = operands[3];
27288 : }
27289 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27290 : STRIP_UNARY (operands[4])))
27291 : {
27292 : reg4 = reg2;
27293 : reg3 = reg6;
27294 : operands[6] = operands[3];
27295 : }
27296 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27297 : STRIP_UNARY (operands[3])))
27298 : {
27299 : reg4 = reg6;
27300 : reg3 = reg1;
27301 : operands[6] = operands[4];
27302 : }
27303 : else
27304 : {
27305 : reg4 = reg6;
27306 : reg3 = reg2;
27307 : operands[6] = operands[4];
27308 : }
27309 :
27310 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27311 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27312 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27313 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27314 :
27315 : tmp1 = reg1 | reg2;
27316 : tmp2 = tmp1 & reg3;
27317 : reg_mask = tmp2 ^ reg4;
27318 : reg_mask &= 0xFF;
27319 :
27320 : operands[1] = STRIP_UNARY (operands[1]);
27321 : operands[2] = STRIP_UNARY (operands[2]);
27322 : operands[6] = STRIP_UNARY (operands[6]);
27323 : operands[5] = GEN_INT (reg_mask);
27324 : if (!register_operand (operands[2], V4DFmode))
27325 : operands[2] = force_reg (V4DFmode, operands[2]);
27326 : if (!register_operand (operands[6], V4DFmode))
27327 : operands[6] = force_reg (V4DFmode, operands[6]);
27328 :
27329 : }
27330 : #undef DONE
27331 : #undef FAIL
27332 : static const uint8_t expand_encoding[] = {
27333 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
27334 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27335 : 0x25
27336 : };
27337 : return complete_seq (expand_encoding, operands);
27338 : }
27339 :
27340 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27341 : extern rtx_insn *gen_split_2990 (rtx_insn *, rtx *);
27342 : rtx_insn *
27343 : gen_split_2990 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27344 : {
27345 : if (dump_file)
27346 : fprintf (dump_file, "Splitting with gen_split_2990 (sse.md:14227)\n");
27347 : start_sequence ();
27348 : #define FAIL return (end_sequence (), nullptr)
27349 : #define DONE return end_sequence ()
27350 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27351 : {
27352 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27353 : int reg6 = 0xF0;
27354 : int reg2 = 0xCC;
27355 : int reg1 = 0xAA;
27356 : int reg3 = 0;
27357 : int reg4 = 0;
27358 : int reg_mask, tmp1, tmp2;
27359 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27360 : STRIP_UNARY (operands[4])))
27361 : {
27362 : reg4 = reg1;
27363 : reg3 = reg6;
27364 : operands[6] = operands[3];
27365 : }
27366 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27367 : STRIP_UNARY (operands[4])))
27368 : {
27369 : reg4 = reg2;
27370 : reg3 = reg6;
27371 : operands[6] = operands[3];
27372 : }
27373 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27374 : STRIP_UNARY (operands[3])))
27375 : {
27376 : reg4 = reg6;
27377 : reg3 = reg1;
27378 : operands[6] = operands[4];
27379 : }
27380 : else
27381 : {
27382 : reg4 = reg6;
27383 : reg3 = reg2;
27384 : operands[6] = operands[4];
27385 : }
27386 :
27387 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27388 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27389 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27390 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27391 :
27392 : tmp1 = reg1 ^ reg2;
27393 : tmp2 = tmp1 | reg3;
27394 : reg_mask = tmp2 & reg4;
27395 : reg_mask &= 0xFF;
27396 :
27397 : operands[1] = STRIP_UNARY (operands[1]);
27398 : operands[2] = STRIP_UNARY (operands[2]);
27399 : operands[6] = STRIP_UNARY (operands[6]);
27400 : operands[5] = GEN_INT (reg_mask);
27401 : if (!register_operand (operands[2], V4DFmode))
27402 : operands[2] = force_reg (V4DFmode, operands[2]);
27403 : if (!register_operand (operands[6], V4DFmode))
27404 : operands[6] = force_reg (V4DFmode, operands[6]);
27405 :
27406 : }
27407 : #undef DONE
27408 : #undef FAIL
27409 : static const uint8_t expand_encoding[] = {
27410 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
27411 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27412 : 0x25
27413 : };
27414 : return complete_seq (expand_encoding, operands);
27415 : }
27416 :
27417 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27418 : extern rtx_insn *gen_split_3000 (rtx_insn *, rtx *);
27419 : rtx_insn *
27420 : gen_split_3000 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27421 : {
27422 : if (dump_file)
27423 : fprintf (dump_file, "Splitting with gen_split_3000 (sse.md:14227)\n");
27424 : start_sequence ();
27425 : #define FAIL return (end_sequence (), nullptr)
27426 : #define DONE return end_sequence ()
27427 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27428 : {
27429 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27430 : int reg6 = 0xF0;
27431 : int reg2 = 0xCC;
27432 : int reg1 = 0xAA;
27433 : int reg3 = 0;
27434 : int reg4 = 0;
27435 : int reg_mask, tmp1, tmp2;
27436 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27437 : STRIP_UNARY (operands[4])))
27438 : {
27439 : reg4 = reg1;
27440 : reg3 = reg6;
27441 : operands[6] = operands[3];
27442 : }
27443 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27444 : STRIP_UNARY (operands[4])))
27445 : {
27446 : reg4 = reg2;
27447 : reg3 = reg6;
27448 : operands[6] = operands[3];
27449 : }
27450 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27451 : STRIP_UNARY (operands[3])))
27452 : {
27453 : reg4 = reg6;
27454 : reg3 = reg1;
27455 : operands[6] = operands[4];
27456 : }
27457 : else
27458 : {
27459 : reg4 = reg6;
27460 : reg3 = reg2;
27461 : operands[6] = operands[4];
27462 : }
27463 :
27464 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27465 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27466 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27467 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27468 :
27469 : tmp1 = reg1 ^ reg2;
27470 : tmp2 = tmp1 ^ reg3;
27471 : reg_mask = tmp2 | reg4;
27472 : reg_mask &= 0xFF;
27473 :
27474 : operands[1] = STRIP_UNARY (operands[1]);
27475 : operands[2] = STRIP_UNARY (operands[2]);
27476 : operands[6] = STRIP_UNARY (operands[6]);
27477 : operands[5] = GEN_INT (reg_mask);
27478 : if (!register_operand (operands[2], V4DFmode))
27479 : operands[2] = force_reg (V4DFmode, operands[2]);
27480 : if (!register_operand (operands[6], V4DFmode))
27481 : operands[6] = force_reg (V4DFmode, operands[6]);
27482 :
27483 : }
27484 : #undef DONE
27485 : #undef FAIL
27486 : static const uint8_t expand_encoding[] = {
27487 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x04, 0x01,
27488 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27489 : 0x25
27490 : };
27491 : return complete_seq (expand_encoding, operands);
27492 : }
27493 :
27494 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27495 : extern rtx_insn *gen_split_3010 (rtx_insn *, rtx *);
27496 : rtx_insn *
27497 : gen_split_3010 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27498 : {
27499 : if (dump_file)
27500 : fprintf (dump_file, "Splitting with gen_split_3010 (sse.md:14227)\n");
27501 : start_sequence ();
27502 : #define FAIL return (end_sequence (), nullptr)
27503 : #define DONE return end_sequence ()
27504 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27505 : {
27506 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27507 : int reg6 = 0xF0;
27508 : int reg2 = 0xCC;
27509 : int reg1 = 0xAA;
27510 : int reg3 = 0;
27511 : int reg4 = 0;
27512 : int reg_mask, tmp1, tmp2;
27513 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27514 : STRIP_UNARY (operands[4])))
27515 : {
27516 : reg4 = reg1;
27517 : reg3 = reg6;
27518 : operands[6] = operands[3];
27519 : }
27520 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27521 : STRIP_UNARY (operands[4])))
27522 : {
27523 : reg4 = reg2;
27524 : reg3 = reg6;
27525 : operands[6] = operands[3];
27526 : }
27527 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27528 : STRIP_UNARY (operands[3])))
27529 : {
27530 : reg4 = reg6;
27531 : reg3 = reg1;
27532 : operands[6] = operands[4];
27533 : }
27534 : else
27535 : {
27536 : reg4 = reg6;
27537 : reg3 = reg2;
27538 : operands[6] = operands[4];
27539 : }
27540 :
27541 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27542 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27543 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27544 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27545 :
27546 : tmp1 = reg1 ^ reg2;
27547 : tmp2 = tmp1 & reg3;
27548 : reg_mask = tmp2 ^ reg4;
27549 : reg_mask &= 0xFF;
27550 :
27551 : operands[1] = STRIP_UNARY (operands[1]);
27552 : operands[2] = STRIP_UNARY (operands[2]);
27553 : operands[6] = STRIP_UNARY (operands[6]);
27554 : operands[5] = GEN_INT (reg_mask);
27555 : if (!register_operand (operands[2], V2DFmode))
27556 : operands[2] = force_reg (V2DFmode, operands[2]);
27557 : if (!register_operand (operands[6], V2DFmode))
27558 : operands[6] = force_reg (V2DFmode, operands[6]);
27559 :
27560 : }
27561 : #undef DONE
27562 : #undef FAIL
27563 : static const uint8_t expand_encoding[] = {
27564 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
27565 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27566 : 0x25
27567 : };
27568 : return complete_seq (expand_encoding, operands);
27569 : }
27570 :
27571 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14227 */
27572 : extern rtx_insn *gen_split_3020 (rtx_insn *, rtx *);
27573 : rtx_insn *
27574 : gen_split_3020 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27575 : {
27576 : if (dump_file)
27577 : fprintf (dump_file, "Splitting with gen_split_3020 (sse.md:14227)\n");
27578 : start_sequence ();
27579 : #define FAIL return (end_sequence (), nullptr)
27580 : #define DONE return end_sequence ()
27581 : #line 14256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27582 : {
27583 : /* VPTERNLOGD reg6, reg2, reg1, imm8. */
27584 : int reg6 = 0xF0;
27585 : int reg2 = 0xCC;
27586 : int reg1 = 0xAA;
27587 : int reg3 = 0;
27588 : int reg4 = 0;
27589 : int reg_mask, tmp1, tmp2;
27590 : if (rtx_equal_p (STRIP_UNARY (operands[1]),
27591 : STRIP_UNARY (operands[4])))
27592 : {
27593 : reg4 = reg1;
27594 : reg3 = reg6;
27595 : operands[6] = operands[3];
27596 : }
27597 : else if (rtx_equal_p (STRIP_UNARY (operands[2]),
27598 : STRIP_UNARY (operands[4])))
27599 : {
27600 : reg4 = reg2;
27601 : reg3 = reg6;
27602 : operands[6] = operands[3];
27603 : }
27604 : else if (rtx_equal_p (STRIP_UNARY (operands[1]),
27605 : STRIP_UNARY (operands[3])))
27606 : {
27607 : reg4 = reg6;
27608 : reg3 = reg1;
27609 : operands[6] = operands[4];
27610 : }
27611 : else
27612 : {
27613 : reg4 = reg6;
27614 : reg3 = reg2;
27615 : operands[6] = operands[4];
27616 : }
27617 :
27618 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27619 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27620 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27621 : reg4 = UNARY_P (operands[4]) ? ~reg4 : reg4;
27622 :
27623 : tmp1 = reg1 & reg2;
27624 : tmp2 = tmp1 ^ reg3;
27625 : reg_mask = tmp2 & reg4;
27626 : reg_mask &= 0xFF;
27627 :
27628 : operands[1] = STRIP_UNARY (operands[1]);
27629 : operands[2] = STRIP_UNARY (operands[2]);
27630 : operands[6] = STRIP_UNARY (operands[6]);
27631 : operands[5] = GEN_INT (reg_mask);
27632 : if (!register_operand (operands[2], V2DFmode))
27633 : operands[2] = force_reg (V2DFmode, operands[2]);
27634 : if (!register_operand (operands[6], V2DFmode))
27635 : operands[6] = force_reg (V2DFmode, operands[6]);
27636 :
27637 : }
27638 : #undef DONE
27639 : #undef FAIL
27640 : static const uint8_t expand_encoding[] = {
27641 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
27642 : 0x06, 0x01, 0x02, 0x01, 0x01, 0x01, 0x05, 0x81,
27643 : 0x25
27644 : };
27645 : return complete_seq (expand_encoding, operands);
27646 : }
27647 :
27648 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27649 : extern rtx_insn *gen_split_3030 (rtx_insn *, rtx *);
27650 : rtx_insn *
27651 : gen_split_3030 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27652 : {
27653 : if (dump_file)
27654 : fprintf (dump_file, "Splitting with gen_split_3030 (sse.md:14313)\n");
27655 : start_sequence ();
27656 : #define FAIL return (end_sequence (), nullptr)
27657 : #define DONE return end_sequence ()
27658 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27659 : {
27660 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27661 : int reg3 = 0xF0;
27662 : int reg2 = 0xCC;
27663 : int reg1 = 0xAA;
27664 : int reg_mask, tmp1;
27665 :
27666 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27667 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27668 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27669 :
27670 : tmp1 = reg1 & reg2;
27671 : reg_mask = tmp1 | reg3;
27672 : reg_mask &= 0xFF;
27673 :
27674 : operands[1] = STRIP_UNARY (operands[1]);
27675 : operands[2] = STRIP_UNARY (operands[2]);
27676 : operands[3] = STRIP_UNARY (operands[3]);
27677 : operands[4] = GEN_INT (reg_mask);
27678 : if (!register_operand (operands[2], V64QImode))
27679 : operands[2] = force_reg (V64QImode, operands[2]);
27680 : if (!register_operand (operands[3], V64QImode))
27681 : operands[3] = force_reg (V64QImode, operands[3]);
27682 : }
27683 : #undef DONE
27684 : #undef FAIL
27685 : static const uint8_t expand_encoding[] = {
27686 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
27687 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27688 : 0x25
27689 : };
27690 : return complete_seq (expand_encoding, operands);
27691 : }
27692 :
27693 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27694 : extern rtx_insn *gen_split_3036 (rtx_insn *, rtx *);
27695 : rtx_insn *
27696 : gen_split_3036 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27697 : {
27698 : if (dump_file)
27699 : fprintf (dump_file, "Splitting with gen_split_3036 (sse.md:14313)\n");
27700 : start_sequence ();
27701 : #define FAIL return (end_sequence (), nullptr)
27702 : #define DONE return end_sequence ()
27703 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27704 : {
27705 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27706 : int reg3 = 0xF0;
27707 : int reg2 = 0xCC;
27708 : int reg1 = 0xAA;
27709 : int reg_mask, tmp1;
27710 :
27711 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27712 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27713 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27714 :
27715 : tmp1 = reg1 ^ reg2;
27716 : reg_mask = tmp1 | reg3;
27717 : reg_mask &= 0xFF;
27718 :
27719 : operands[1] = STRIP_UNARY (operands[1]);
27720 : operands[2] = STRIP_UNARY (operands[2]);
27721 : operands[3] = STRIP_UNARY (operands[3]);
27722 : operands[4] = GEN_INT (reg_mask);
27723 : if (!register_operand (operands[2], V64QImode))
27724 : operands[2] = force_reg (V64QImode, operands[2]);
27725 : if (!register_operand (operands[3], V64QImode))
27726 : operands[3] = force_reg (V64QImode, operands[3]);
27727 : }
27728 : #undef DONE
27729 : #undef FAIL
27730 : static const uint8_t expand_encoding[] = {
27731 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x04, 0x01,
27732 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27733 : 0x25
27734 : };
27735 : return complete_seq (expand_encoding, operands);
27736 : }
27737 :
27738 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27739 : extern rtx_insn *gen_split_3046 (rtx_insn *, rtx *);
27740 : rtx_insn *
27741 : gen_split_3046 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27742 : {
27743 : if (dump_file)
27744 : fprintf (dump_file, "Splitting with gen_split_3046 (sse.md:14313)\n");
27745 : start_sequence ();
27746 : #define FAIL return (end_sequence (), nullptr)
27747 : #define DONE return end_sequence ()
27748 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27749 : {
27750 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27751 : int reg3 = 0xF0;
27752 : int reg2 = 0xCC;
27753 : int reg1 = 0xAA;
27754 : int reg_mask, tmp1;
27755 :
27756 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27757 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27758 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27759 :
27760 : tmp1 = reg1 ^ reg2;
27761 : reg_mask = tmp1 ^ reg3;
27762 : reg_mask &= 0xFF;
27763 :
27764 : operands[1] = STRIP_UNARY (operands[1]);
27765 : operands[2] = STRIP_UNARY (operands[2]);
27766 : operands[3] = STRIP_UNARY (operands[3]);
27767 : operands[4] = GEN_INT (reg_mask);
27768 : if (!register_operand (operands[2], V32QImode))
27769 : operands[2] = force_reg (V32QImode, operands[2]);
27770 : if (!register_operand (operands[3], V32QImode))
27771 : operands[3] = force_reg (V32QImode, operands[3]);
27772 : }
27773 : #undef DONE
27774 : #undef FAIL
27775 : static const uint8_t expand_encoding[] = {
27776 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x04, 0x01,
27777 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27778 : 0x25
27779 : };
27780 : return complete_seq (expand_encoding, operands);
27781 : }
27782 :
27783 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27784 : extern rtx_insn *gen_split_3056 (rtx_insn *, rtx *);
27785 : rtx_insn *
27786 : gen_split_3056 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27787 : {
27788 : if (dump_file)
27789 : fprintf (dump_file, "Splitting with gen_split_3056 (sse.md:14313)\n");
27790 : start_sequence ();
27791 : #define FAIL return (end_sequence (), nullptr)
27792 : #define DONE return end_sequence ()
27793 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27794 : {
27795 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27796 : int reg3 = 0xF0;
27797 : int reg2 = 0xCC;
27798 : int reg1 = 0xAA;
27799 : int reg_mask, tmp1;
27800 :
27801 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27802 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27803 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27804 :
27805 : tmp1 = reg1 & reg2;
27806 : reg_mask = tmp1 & reg3;
27807 : reg_mask &= 0xFF;
27808 :
27809 : operands[1] = STRIP_UNARY (operands[1]);
27810 : operands[2] = STRIP_UNARY (operands[2]);
27811 : operands[3] = STRIP_UNARY (operands[3]);
27812 : operands[4] = GEN_INT (reg_mask);
27813 : if (!register_operand (operands[2], V32HImode))
27814 : operands[2] = force_reg (V32HImode, operands[2]);
27815 : if (!register_operand (operands[3], V32HImode))
27816 : operands[3] = force_reg (V32HImode, operands[3]);
27817 : }
27818 : #undef DONE
27819 : #undef FAIL
27820 : static const uint8_t expand_encoding[] = {
27821 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5a, 0x04, 0x01,
27822 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27823 : 0x25
27824 : };
27825 : return complete_seq (expand_encoding, operands);
27826 : }
27827 :
27828 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27829 : extern rtx_insn *gen_split_3066 (rtx_insn *, rtx *);
27830 : rtx_insn *
27831 : gen_split_3066 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27832 : {
27833 : if (dump_file)
27834 : fprintf (dump_file, "Splitting with gen_split_3066 (sse.md:14313)\n");
27835 : start_sequence ();
27836 : #define FAIL return (end_sequence (), nullptr)
27837 : #define DONE return end_sequence ()
27838 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27839 : {
27840 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27841 : int reg3 = 0xF0;
27842 : int reg2 = 0xCC;
27843 : int reg1 = 0xAA;
27844 : int reg_mask, tmp1;
27845 :
27846 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27847 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27848 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27849 :
27850 : tmp1 = reg1 & reg2;
27851 : reg_mask = tmp1 | reg3;
27852 : reg_mask &= 0xFF;
27853 :
27854 : operands[1] = STRIP_UNARY (operands[1]);
27855 : operands[2] = STRIP_UNARY (operands[2]);
27856 : operands[3] = STRIP_UNARY (operands[3]);
27857 : operands[4] = GEN_INT (reg_mask);
27858 : if (!register_operand (operands[2], V16HImode))
27859 : operands[2] = force_reg (V16HImode, operands[2]);
27860 : if (!register_operand (operands[3], V16HImode))
27861 : operands[3] = force_reg (V16HImode, operands[3]);
27862 : }
27863 : #undef DONE
27864 : #undef FAIL
27865 : static const uint8_t expand_encoding[] = {
27866 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x55, 0x04, 0x01,
27867 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27868 : 0x25
27869 : };
27870 : return complete_seq (expand_encoding, operands);
27871 : }
27872 :
27873 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27874 : extern rtx_insn *gen_split_3076 (rtx_insn *, rtx *);
27875 : rtx_insn *
27876 : gen_split_3076 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27877 : {
27878 : if (dump_file)
27879 : fprintf (dump_file, "Splitting with gen_split_3076 (sse.md:14313)\n");
27880 : start_sequence ();
27881 : #define FAIL return (end_sequence (), nullptr)
27882 : #define DONE return end_sequence ()
27883 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27884 : {
27885 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27886 : int reg3 = 0xF0;
27887 : int reg2 = 0xCC;
27888 : int reg1 = 0xAA;
27889 : int reg_mask, tmp1;
27890 :
27891 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27892 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27893 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27894 :
27895 : tmp1 = reg1 & reg2;
27896 : reg_mask = tmp1 ^ reg3;
27897 : reg_mask &= 0xFF;
27898 :
27899 : operands[1] = STRIP_UNARY (operands[1]);
27900 : operands[2] = STRIP_UNARY (operands[2]);
27901 : operands[3] = STRIP_UNARY (operands[3]);
27902 : operands[4] = GEN_INT (reg_mask);
27903 : if (!register_operand (operands[2], V8HImode))
27904 : operands[2] = force_reg (V8HImode, operands[2]);
27905 : if (!register_operand (operands[3], V8HImode))
27906 : operands[3] = force_reg (V8HImode, operands[3]);
27907 : }
27908 : #undef DONE
27909 : #undef FAIL
27910 : static const uint8_t expand_encoding[] = {
27911 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x50, 0x04, 0x01,
27912 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27913 : 0x25
27914 : };
27915 : return complete_seq (expand_encoding, operands);
27916 : }
27917 :
27918 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27919 : extern rtx_insn *gen_split_3086 (rtx_insn *, rtx *);
27920 : rtx_insn *
27921 : gen_split_3086 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27922 : {
27923 : if (dump_file)
27924 : fprintf (dump_file, "Splitting with gen_split_3086 (sse.md:14313)\n");
27925 : start_sequence ();
27926 : #define FAIL return (end_sequence (), nullptr)
27927 : #define DONE return end_sequence ()
27928 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27929 : {
27930 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27931 : int reg3 = 0xF0;
27932 : int reg2 = 0xCC;
27933 : int reg1 = 0xAA;
27934 : int reg_mask, tmp1;
27935 :
27936 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27937 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27938 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27939 :
27940 : tmp1 = reg1 | reg2;
27941 : reg_mask = tmp1 & reg3;
27942 : reg_mask &= 0xFF;
27943 :
27944 : operands[1] = STRIP_UNARY (operands[1]);
27945 : operands[2] = STRIP_UNARY (operands[2]);
27946 : operands[3] = STRIP_UNARY (operands[3]);
27947 : operands[4] = GEN_INT (reg_mask);
27948 : if (!register_operand (operands[2], V16SImode))
27949 : operands[2] = force_reg (V16SImode, operands[2]);
27950 : if (!register_operand (operands[3], V16SImode))
27951 : operands[3] = force_reg (V16SImode, operands[3]);
27952 : }
27953 : #undef DONE
27954 : #undef FAIL
27955 : static const uint8_t expand_encoding[] = {
27956 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5b, 0x04, 0x01,
27957 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
27958 : 0x25
27959 : };
27960 : return complete_seq (expand_encoding, operands);
27961 : }
27962 :
27963 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
27964 : extern rtx_insn *gen_split_3096 (rtx_insn *, rtx *);
27965 : rtx_insn *
27966 : gen_split_3096 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
27967 : {
27968 : if (dump_file)
27969 : fprintf (dump_file, "Splitting with gen_split_3096 (sse.md:14313)\n");
27970 : start_sequence ();
27971 : #define FAIL return (end_sequence (), nullptr)
27972 : #define DONE return end_sequence ()
27973 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
27974 : {
27975 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
27976 : int reg3 = 0xF0;
27977 : int reg2 = 0xCC;
27978 : int reg1 = 0xAA;
27979 : int reg_mask, tmp1;
27980 :
27981 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
27982 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
27983 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
27984 :
27985 : tmp1 = reg1 | reg2;
27986 : reg_mask = tmp1 | reg3;
27987 : reg_mask &= 0xFF;
27988 :
27989 : operands[1] = STRIP_UNARY (operands[1]);
27990 : operands[2] = STRIP_UNARY (operands[2]);
27991 : operands[3] = STRIP_UNARY (operands[3]);
27992 : operands[4] = GEN_INT (reg_mask);
27993 : if (!register_operand (operands[2], V8SImode))
27994 : operands[2] = force_reg (V8SImode, operands[2]);
27995 : if (!register_operand (operands[3], V8SImode))
27996 : operands[3] = force_reg (V8SImode, operands[3]);
27997 : }
27998 : #undef DONE
27999 : #undef FAIL
28000 : static const uint8_t expand_encoding[] = {
28001 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x04, 0x01,
28002 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28003 : 0x25
28004 : };
28005 : return complete_seq (expand_encoding, operands);
28006 : }
28007 :
28008 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28009 : extern rtx_insn *gen_split_3106 (rtx_insn *, rtx *);
28010 : rtx_insn *
28011 : gen_split_3106 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28012 : {
28013 : if (dump_file)
28014 : fprintf (dump_file, "Splitting with gen_split_3106 (sse.md:14313)\n");
28015 : start_sequence ();
28016 : #define FAIL return (end_sequence (), nullptr)
28017 : #define DONE return end_sequence ()
28018 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28019 : {
28020 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28021 : int reg3 = 0xF0;
28022 : int reg2 = 0xCC;
28023 : int reg1 = 0xAA;
28024 : int reg_mask, tmp1;
28025 :
28026 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28027 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28028 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28029 :
28030 : tmp1 = reg1 | reg2;
28031 : reg_mask = tmp1 ^ reg3;
28032 : reg_mask &= 0xFF;
28033 :
28034 : operands[1] = STRIP_UNARY (operands[1]);
28035 : operands[2] = STRIP_UNARY (operands[2]);
28036 : operands[3] = STRIP_UNARY (operands[3]);
28037 : operands[4] = GEN_INT (reg_mask);
28038 : if (!register_operand (operands[2], V4SImode))
28039 : operands[2] = force_reg (V4SImode, operands[2]);
28040 : if (!register_operand (operands[3], V4SImode))
28041 : operands[3] = force_reg (V4SImode, operands[3]);
28042 : }
28043 : #undef DONE
28044 : #undef FAIL
28045 : static const uint8_t expand_encoding[] = {
28046 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x04, 0x01,
28047 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28048 : 0x25
28049 : };
28050 : return complete_seq (expand_encoding, operands);
28051 : }
28052 :
28053 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28054 : extern rtx_insn *gen_split_3116 (rtx_insn *, rtx *);
28055 : rtx_insn *
28056 : gen_split_3116 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28057 : {
28058 : if (dump_file)
28059 : fprintf (dump_file, "Splitting with gen_split_3116 (sse.md:14313)\n");
28060 : start_sequence ();
28061 : #define FAIL return (end_sequence (), nullptr)
28062 : #define DONE return end_sequence ()
28063 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28064 : {
28065 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28066 : int reg3 = 0xF0;
28067 : int reg2 = 0xCC;
28068 : int reg1 = 0xAA;
28069 : int reg_mask, tmp1;
28070 :
28071 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28072 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28073 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28074 :
28075 : tmp1 = reg1 ^ reg2;
28076 : reg_mask = tmp1 & reg3;
28077 : reg_mask &= 0xFF;
28078 :
28079 : operands[1] = STRIP_UNARY (operands[1]);
28080 : operands[2] = STRIP_UNARY (operands[2]);
28081 : operands[3] = STRIP_UNARY (operands[3]);
28082 : operands[4] = GEN_INT (reg_mask);
28083 : if (!register_operand (operands[2], V8DImode))
28084 : operands[2] = force_reg (V8DImode, operands[2]);
28085 : if (!register_operand (operands[3], V8DImode))
28086 : operands[3] = force_reg (V8DImode, operands[3]);
28087 : }
28088 : #undef DONE
28089 : #undef FAIL
28090 : static const uint8_t expand_encoding[] = {
28091 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x5c, 0x04, 0x01,
28092 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28093 : 0x25
28094 : };
28095 : return complete_seq (expand_encoding, operands);
28096 : }
28097 :
28098 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28099 : extern rtx_insn *gen_split_3126 (rtx_insn *, rtx *);
28100 : rtx_insn *
28101 : gen_split_3126 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28102 : {
28103 : if (dump_file)
28104 : fprintf (dump_file, "Splitting with gen_split_3126 (sse.md:14313)\n");
28105 : start_sequence ();
28106 : #define FAIL return (end_sequence (), nullptr)
28107 : #define DONE return end_sequence ()
28108 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28109 : {
28110 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28111 : int reg3 = 0xF0;
28112 : int reg2 = 0xCC;
28113 : int reg1 = 0xAA;
28114 : int reg_mask, tmp1;
28115 :
28116 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28117 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28118 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28119 :
28120 : tmp1 = reg1 ^ reg2;
28121 : reg_mask = tmp1 | reg3;
28122 : reg_mask &= 0xFF;
28123 :
28124 : operands[1] = STRIP_UNARY (operands[1]);
28125 : operands[2] = STRIP_UNARY (operands[2]);
28126 : operands[3] = STRIP_UNARY (operands[3]);
28127 : operands[4] = GEN_INT (reg_mask);
28128 : if (!register_operand (operands[2], V4DImode))
28129 : operands[2] = force_reg (V4DImode, operands[2]);
28130 : if (!register_operand (operands[3], V4DImode))
28131 : operands[3] = force_reg (V4DImode, operands[3]);
28132 : }
28133 : #undef DONE
28134 : #undef FAIL
28135 : static const uint8_t expand_encoding[] = {
28136 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x04, 0x01,
28137 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28138 : 0x25
28139 : };
28140 : return complete_seq (expand_encoding, operands);
28141 : }
28142 :
28143 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28144 : extern rtx_insn *gen_split_3136 (rtx_insn *, rtx *);
28145 : rtx_insn *
28146 : gen_split_3136 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28147 : {
28148 : if (dump_file)
28149 : fprintf (dump_file, "Splitting with gen_split_3136 (sse.md:14313)\n");
28150 : start_sequence ();
28151 : #define FAIL return (end_sequence (), nullptr)
28152 : #define DONE return end_sequence ()
28153 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28154 : {
28155 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28156 : int reg3 = 0xF0;
28157 : int reg2 = 0xCC;
28158 : int reg1 = 0xAA;
28159 : int reg_mask, tmp1;
28160 :
28161 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28162 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28163 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28164 :
28165 : tmp1 = reg1 ^ reg2;
28166 : reg_mask = tmp1 ^ reg3;
28167 : reg_mask &= 0xFF;
28168 :
28169 : operands[1] = STRIP_UNARY (operands[1]);
28170 : operands[2] = STRIP_UNARY (operands[2]);
28171 : operands[3] = STRIP_UNARY (operands[3]);
28172 : operands[4] = GEN_INT (reg_mask);
28173 : if (!register_operand (operands[2], V2DImode))
28174 : operands[2] = force_reg (V2DImode, operands[2]);
28175 : if (!register_operand (operands[3], V2DImode))
28176 : operands[3] = force_reg (V2DImode, operands[3]);
28177 : }
28178 : #undef DONE
28179 : #undef FAIL
28180 : static const uint8_t expand_encoding[] = {
28181 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x52, 0x04, 0x01,
28182 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28183 : 0x25
28184 : };
28185 : return complete_seq (expand_encoding, operands);
28186 : }
28187 :
28188 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28189 : extern rtx_insn *gen_split_3146 (rtx_insn *, rtx *);
28190 : rtx_insn *
28191 : gen_split_3146 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28192 : {
28193 : if (dump_file)
28194 : fprintf (dump_file, "Splitting with gen_split_3146 (sse.md:14313)\n");
28195 : start_sequence ();
28196 : #define FAIL return (end_sequence (), nullptr)
28197 : #define DONE return end_sequence ()
28198 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28199 : {
28200 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28201 : int reg3 = 0xF0;
28202 : int reg2 = 0xCC;
28203 : int reg1 = 0xAA;
28204 : int reg_mask, tmp1;
28205 :
28206 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28207 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28208 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28209 :
28210 : tmp1 = reg1 & reg2;
28211 : reg_mask = tmp1 & reg3;
28212 : reg_mask &= 0xFF;
28213 :
28214 : operands[1] = STRIP_UNARY (operands[1]);
28215 : operands[2] = STRIP_UNARY (operands[2]);
28216 : operands[3] = STRIP_UNARY (operands[3]);
28217 : operands[4] = GEN_INT (reg_mask);
28218 : if (!register_operand (operands[2], V16HFmode))
28219 : operands[2] = force_reg (V16HFmode, operands[2]);
28220 : if (!register_operand (operands[3], V16HFmode))
28221 : operands[3] = force_reg (V16HFmode, operands[3]);
28222 : }
28223 : #undef DONE
28224 : #undef FAIL
28225 : static const uint8_t expand_encoding[] = {
28226 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x04, 0x01,
28227 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28228 : 0x25
28229 : };
28230 : return complete_seq (expand_encoding, operands);
28231 : }
28232 :
28233 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28234 : extern rtx_insn *gen_split_3156 (rtx_insn *, rtx *);
28235 : rtx_insn *
28236 : gen_split_3156 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28237 : {
28238 : if (dump_file)
28239 : fprintf (dump_file, "Splitting with gen_split_3156 (sse.md:14313)\n");
28240 : start_sequence ();
28241 : #define FAIL return (end_sequence (), nullptr)
28242 : #define DONE return end_sequence ()
28243 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28244 : {
28245 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28246 : int reg3 = 0xF0;
28247 : int reg2 = 0xCC;
28248 : int reg1 = 0xAA;
28249 : int reg_mask, tmp1;
28250 :
28251 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28252 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28253 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28254 :
28255 : tmp1 = reg1 & reg2;
28256 : reg_mask = tmp1 | reg3;
28257 : reg_mask &= 0xFF;
28258 :
28259 : operands[1] = STRIP_UNARY (operands[1]);
28260 : operands[2] = STRIP_UNARY (operands[2]);
28261 : operands[3] = STRIP_UNARY (operands[3]);
28262 : operands[4] = GEN_INT (reg_mask);
28263 : if (!register_operand (operands[2], V8HFmode))
28264 : operands[2] = force_reg (V8HFmode, operands[2]);
28265 : if (!register_operand (operands[3], V8HFmode))
28266 : operands[3] = force_reg (V8HFmode, operands[3]);
28267 : }
28268 : #undef DONE
28269 : #undef FAIL
28270 : static const uint8_t expand_encoding[] = {
28271 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x04, 0x01,
28272 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28273 : 0x25
28274 : };
28275 : return complete_seq (expand_encoding, operands);
28276 : }
28277 :
28278 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28279 : extern rtx_insn *gen_split_3166 (rtx_insn *, rtx *);
28280 : rtx_insn *
28281 : gen_split_3166 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28282 : {
28283 : if (dump_file)
28284 : fprintf (dump_file, "Splitting with gen_split_3166 (sse.md:14313)\n");
28285 : start_sequence ();
28286 : #define FAIL return (end_sequence (), nullptr)
28287 : #define DONE return end_sequence ()
28288 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28289 : {
28290 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28291 : int reg3 = 0xF0;
28292 : int reg2 = 0xCC;
28293 : int reg1 = 0xAA;
28294 : int reg_mask, tmp1;
28295 :
28296 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28297 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28298 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28299 :
28300 : tmp1 = reg1 & reg2;
28301 : reg_mask = tmp1 ^ reg3;
28302 : reg_mask &= 0xFF;
28303 :
28304 : operands[1] = STRIP_UNARY (operands[1]);
28305 : operands[2] = STRIP_UNARY (operands[2]);
28306 : operands[3] = STRIP_UNARY (operands[3]);
28307 : operands[4] = GEN_INT (reg_mask);
28308 : if (!register_operand (operands[2], V32BFmode))
28309 : operands[2] = force_reg (V32BFmode, operands[2]);
28310 : if (!register_operand (operands[3], V32BFmode))
28311 : operands[3] = force_reg (V32BFmode, operands[3]);
28312 : }
28313 : #undef DONE
28314 : #undef FAIL
28315 : static const uint8_t expand_encoding[] = {
28316 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x72, 0x04, 0x01,
28317 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28318 : 0x25
28319 : };
28320 : return complete_seq (expand_encoding, operands);
28321 : }
28322 :
28323 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28324 : extern rtx_insn *gen_split_3176 (rtx_insn *, rtx *);
28325 : rtx_insn *
28326 : gen_split_3176 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28327 : {
28328 : if (dump_file)
28329 : fprintf (dump_file, "Splitting with gen_split_3176 (sse.md:14313)\n");
28330 : start_sequence ();
28331 : #define FAIL return (end_sequence (), nullptr)
28332 : #define DONE return end_sequence ()
28333 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28334 : {
28335 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28336 : int reg3 = 0xF0;
28337 : int reg2 = 0xCC;
28338 : int reg1 = 0xAA;
28339 : int reg_mask, tmp1;
28340 :
28341 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28342 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28343 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28344 :
28345 : tmp1 = reg1 | reg2;
28346 : reg_mask = tmp1 & reg3;
28347 : reg_mask &= 0xFF;
28348 :
28349 : operands[1] = STRIP_UNARY (operands[1]);
28350 : operands[2] = STRIP_UNARY (operands[2]);
28351 : operands[3] = STRIP_UNARY (operands[3]);
28352 : operands[4] = GEN_INT (reg_mask);
28353 : if (!register_operand (operands[2], V16BFmode))
28354 : operands[2] = force_reg (V16BFmode, operands[2]);
28355 : if (!register_operand (operands[3], V16BFmode))
28356 : operands[3] = force_reg (V16BFmode, operands[3]);
28357 : }
28358 : #undef DONE
28359 : #undef FAIL
28360 : static const uint8_t expand_encoding[] = {
28361 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x04, 0x01,
28362 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28363 : 0x25
28364 : };
28365 : return complete_seq (expand_encoding, operands);
28366 : }
28367 :
28368 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28369 : extern rtx_insn *gen_split_3186 (rtx_insn *, rtx *);
28370 : rtx_insn *
28371 : gen_split_3186 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28372 : {
28373 : if (dump_file)
28374 : fprintf (dump_file, "Splitting with gen_split_3186 (sse.md:14313)\n");
28375 : start_sequence ();
28376 : #define FAIL return (end_sequence (), nullptr)
28377 : #define DONE return end_sequence ()
28378 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28379 : {
28380 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28381 : int reg3 = 0xF0;
28382 : int reg2 = 0xCC;
28383 : int reg1 = 0xAA;
28384 : int reg_mask, tmp1;
28385 :
28386 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28387 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28388 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28389 :
28390 : tmp1 = reg1 | reg2;
28391 : reg_mask = tmp1 | reg3;
28392 : reg_mask &= 0xFF;
28393 :
28394 : operands[1] = STRIP_UNARY (operands[1]);
28395 : operands[2] = STRIP_UNARY (operands[2]);
28396 : operands[3] = STRIP_UNARY (operands[3]);
28397 : operands[4] = GEN_INT (reg_mask);
28398 : if (!register_operand (operands[2], V8BFmode))
28399 : operands[2] = force_reg (V8BFmode, operands[2]);
28400 : if (!register_operand (operands[3], V8BFmode))
28401 : operands[3] = force_reg (V8BFmode, operands[3]);
28402 : }
28403 : #undef DONE
28404 : #undef FAIL
28405 : static const uint8_t expand_encoding[] = {
28406 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x69, 0x04, 0x01,
28407 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28408 : 0x25
28409 : };
28410 : return complete_seq (expand_encoding, operands);
28411 : }
28412 :
28413 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28414 : extern rtx_insn *gen_split_3196 (rtx_insn *, rtx *);
28415 : rtx_insn *
28416 : gen_split_3196 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28417 : {
28418 : if (dump_file)
28419 : fprintf (dump_file, "Splitting with gen_split_3196 (sse.md:14313)\n");
28420 : start_sequence ();
28421 : #define FAIL return (end_sequence (), nullptr)
28422 : #define DONE return end_sequence ()
28423 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28424 : {
28425 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28426 : int reg3 = 0xF0;
28427 : int reg2 = 0xCC;
28428 : int reg1 = 0xAA;
28429 : int reg_mask, tmp1;
28430 :
28431 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28432 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28433 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28434 :
28435 : tmp1 = reg1 | reg2;
28436 : reg_mask = tmp1 ^ reg3;
28437 : reg_mask &= 0xFF;
28438 :
28439 : operands[1] = STRIP_UNARY (operands[1]);
28440 : operands[2] = STRIP_UNARY (operands[2]);
28441 : operands[3] = STRIP_UNARY (operands[3]);
28442 : operands[4] = GEN_INT (reg_mask);
28443 : if (!register_operand (operands[2], V16SFmode))
28444 : operands[2] = force_reg (V16SFmode, operands[2]);
28445 : if (!register_operand (operands[3], V16SFmode))
28446 : operands[3] = force_reg (V16SFmode, operands[3]);
28447 : }
28448 : #undef DONE
28449 : #undef FAIL
28450 : static const uint8_t expand_encoding[] = {
28451 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x04, 0x01,
28452 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28453 : 0x25
28454 : };
28455 : return complete_seq (expand_encoding, operands);
28456 : }
28457 :
28458 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28459 : extern rtx_insn *gen_split_3206 (rtx_insn *, rtx *);
28460 : rtx_insn *
28461 : gen_split_3206 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28462 : {
28463 : if (dump_file)
28464 : fprintf (dump_file, "Splitting with gen_split_3206 (sse.md:14313)\n");
28465 : start_sequence ();
28466 : #define FAIL return (end_sequence (), nullptr)
28467 : #define DONE return end_sequence ()
28468 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28469 : {
28470 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28471 : int reg3 = 0xF0;
28472 : int reg2 = 0xCC;
28473 : int reg1 = 0xAA;
28474 : int reg_mask, tmp1;
28475 :
28476 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28477 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28478 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28479 :
28480 : tmp1 = reg1 ^ reg2;
28481 : reg_mask = tmp1 & reg3;
28482 : reg_mask &= 0xFF;
28483 :
28484 : operands[1] = STRIP_UNARY (operands[1]);
28485 : operands[2] = STRIP_UNARY (operands[2]);
28486 : operands[3] = STRIP_UNARY (operands[3]);
28487 : operands[4] = GEN_INT (reg_mask);
28488 : if (!register_operand (operands[2], V8SFmode))
28489 : operands[2] = force_reg (V8SFmode, operands[2]);
28490 : if (!register_operand (operands[3], V8SFmode))
28491 : operands[3] = force_reg (V8SFmode, operands[3]);
28492 : }
28493 : #undef DONE
28494 : #undef FAIL
28495 : static const uint8_t expand_encoding[] = {
28496 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6f, 0x04, 0x01,
28497 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28498 : 0x25
28499 : };
28500 : return complete_seq (expand_encoding, operands);
28501 : }
28502 :
28503 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28504 : extern rtx_insn *gen_split_3216 (rtx_insn *, rtx *);
28505 : rtx_insn *
28506 : gen_split_3216 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28507 : {
28508 : if (dump_file)
28509 : fprintf (dump_file, "Splitting with gen_split_3216 (sse.md:14313)\n");
28510 : start_sequence ();
28511 : #define FAIL return (end_sequence (), nullptr)
28512 : #define DONE return end_sequence ()
28513 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28514 : {
28515 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28516 : int reg3 = 0xF0;
28517 : int reg2 = 0xCC;
28518 : int reg1 = 0xAA;
28519 : int reg_mask, tmp1;
28520 :
28521 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28522 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28523 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28524 :
28525 : tmp1 = reg1 ^ reg2;
28526 : reg_mask = tmp1 | reg3;
28527 : reg_mask &= 0xFF;
28528 :
28529 : operands[1] = STRIP_UNARY (operands[1]);
28530 : operands[2] = STRIP_UNARY (operands[2]);
28531 : operands[3] = STRIP_UNARY (operands[3]);
28532 : operands[4] = GEN_INT (reg_mask);
28533 : if (!register_operand (operands[2], V4SFmode))
28534 : operands[2] = force_reg (V4SFmode, operands[2]);
28535 : if (!register_operand (operands[3], V4SFmode))
28536 : operands[3] = force_reg (V4SFmode, operands[3]);
28537 : }
28538 : #undef DONE
28539 : #undef FAIL
28540 : static const uint8_t expand_encoding[] = {
28541 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x04, 0x01,
28542 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28543 : 0x25
28544 : };
28545 : return complete_seq (expand_encoding, operands);
28546 : }
28547 :
28548 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28549 : extern rtx_insn *gen_split_3226 (rtx_insn *, rtx *);
28550 : rtx_insn *
28551 : gen_split_3226 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28552 : {
28553 : if (dump_file)
28554 : fprintf (dump_file, "Splitting with gen_split_3226 (sse.md:14313)\n");
28555 : start_sequence ();
28556 : #define FAIL return (end_sequence (), nullptr)
28557 : #define DONE return end_sequence ()
28558 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28559 : {
28560 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28561 : int reg3 = 0xF0;
28562 : int reg2 = 0xCC;
28563 : int reg1 = 0xAA;
28564 : int reg_mask, tmp1;
28565 :
28566 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28567 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28568 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28569 :
28570 : tmp1 = reg1 ^ reg2;
28571 : reg_mask = tmp1 ^ reg3;
28572 : reg_mask &= 0xFF;
28573 :
28574 : operands[1] = STRIP_UNARY (operands[1]);
28575 : operands[2] = STRIP_UNARY (operands[2]);
28576 : operands[3] = STRIP_UNARY (operands[3]);
28577 : operands[4] = GEN_INT (reg_mask);
28578 : if (!register_operand (operands[2], V8DFmode))
28579 : operands[2] = force_reg (V8DFmode, operands[2]);
28580 : if (!register_operand (operands[3], V8DFmode))
28581 : operands[3] = force_reg (V8DFmode, operands[3]);
28582 : }
28583 : #undef DONE
28584 : #undef FAIL
28585 : static const uint8_t expand_encoding[] = {
28586 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x75, 0x04, 0x01,
28587 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28588 : 0x25
28589 : };
28590 : return complete_seq (expand_encoding, operands);
28591 : }
28592 :
28593 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14313 */
28594 : extern rtx_insn *gen_split_3236 (rtx_insn *, rtx *);
28595 : rtx_insn *
28596 : gen_split_3236 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28597 : {
28598 : if (dump_file)
28599 : fprintf (dump_file, "Splitting with gen_split_3236 (sse.md:14313)\n");
28600 : start_sequence ();
28601 : #define FAIL return (end_sequence (), nullptr)
28602 : #define DONE return end_sequence ()
28603 : #line 14332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28604 : {
28605 : /* VPTERNLOGD reg3, reg2, reg1, imm8. */
28606 : int reg3 = 0xF0;
28607 : int reg2 = 0xCC;
28608 : int reg1 = 0xAA;
28609 : int reg_mask, tmp1;
28610 :
28611 : reg1 = UNARY_P (operands[1]) ? ~reg1 : reg1;
28612 : reg2 = UNARY_P (operands[2]) ? ~reg2 : reg2;
28613 : reg3 = UNARY_P (operands[3]) ? ~reg3 : reg3;
28614 :
28615 : tmp1 = reg1 & reg2;
28616 : reg_mask = tmp1 & reg3;
28617 : reg_mask &= 0xFF;
28618 :
28619 : operands[1] = STRIP_UNARY (operands[1]);
28620 : operands[2] = STRIP_UNARY (operands[2]);
28621 : operands[3] = STRIP_UNARY (operands[3]);
28622 : operands[4] = GEN_INT (reg_mask);
28623 : if (!register_operand (operands[2], V2DFmode))
28624 : operands[2] = force_reg (V2DFmode, operands[2]);
28625 : if (!register_operand (operands[3], V2DFmode))
28626 : operands[3] = force_reg (V2DFmode, operands[3]);
28627 : }
28628 : #undef DONE
28629 : #undef FAIL
28630 : static const uint8_t expand_encoding[] = {
28631 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6c, 0x04, 0x01,
28632 : 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x04, 0x81,
28633 : 0x25
28634 : };
28635 : return complete_seq (expand_encoding, operands);
28636 : }
28637 :
28638 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14358 */
28639 : rtx
28640 : gen_avx512vl_vternlogv8si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
28641 : {
28642 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
28643 : start_sequence ();
28644 : {
28645 : #define FAIL return (end_sequence (), nullptr)
28646 : #define DONE return end_sequence ()
28647 : #line 14370 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28648 : {
28649 : unsigned HOST_WIDE_INT mode_mask = GET_MODE_MASK (QImode);
28650 : if (CONST_INT_P (operands[5])
28651 : && (UINTVAL (operands[5]) & mode_mask) == mode_mask)
28652 : {
28653 : ix86_expand_ternlog (V8SImode, operands[1], operands[2],
28654 : operands[3], INTVAL (operands[4]),
28655 : operands[0]);
28656 : DONE;
28657 : }
28658 : if (!register_operand (operands[5], QImode))
28659 : operands[5] = force_reg (QImode, operands[5]);
28660 : }
28661 : #undef DONE
28662 : #undef FAIL
28663 : }
28664 : static const uint8_t expand_encoding[] = {
28665 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a,
28666 : 0x56, 0x04, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
28667 : 0x01, 0x04, 0x81, 0x25, 0x01, 0x01, 0x01, 0x05
28668 : };
28669 : return complete_seq (expand_encoding, operands);
28670 : }
28671 :
28672 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14497 */
28673 : rtx
28674 : gen_avx512vl_fixupimmv8sf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
28675 : {
28676 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
28677 : start_sequence ();
28678 : {
28679 : #define FAIL return (end_sequence (), nullptr)
28680 : #define DONE return end_sequence ()
28681 : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28682 : {
28683 : emit_insn (gen_avx512vl_fixupimmv8sf_maskz_1 (
28684 : operands[0], operands[1], operands[2], operands[3],
28685 : operands[4], CONST0_RTX (V8SFmode), operands[5]
28686 : ));
28687 : DONE;
28688 : }
28689 : #undef DONE
28690 : #undef FAIL
28691 : }
28692 : static const uint8_t expand_encoding[] = {
28693 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
28694 : 0x03, 0x01, 0x04, 0x01, 0x05
28695 : };
28696 : return complete_seq (expand_encoding, operands);
28697 : }
28698 :
28699 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:14497 */
28700 : rtx
28701 : gen_avx512vl_fixupimmv2df_maskz_round (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5, const rtx operand6)
28702 : {
28703 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5, operand6 };
28704 : start_sequence ();
28705 : {
28706 : #define FAIL return (end_sequence (), nullptr)
28707 : #define DONE return end_sequence ()
28708 : #line 14505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28709 : {
28710 : emit_insn (gen_avx512vl_fixupimmv2df_maskz_1_round (
28711 : operands[0], operands[1], operands[2], operands[3],
28712 : operands[4], CONST0_RTX (V2DFmode), operands[5]
28713 : , operands[6]));
28714 : DONE;
28715 : }
28716 : #undef DONE
28717 : #undef FAIL
28718 : }
28719 : static const uint8_t expand_encoding[] = {
28720 : 0x07, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
28721 : 0x03, 0x01, 0x04, 0x01, 0x05, 0x1a, 0x00, 0x01,
28722 : 0x01, 0x06, 0x81, 0x33
28723 : };
28724 : return complete_seq (expand_encoding, operands);
28725 : }
28726 :
28727 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15011 */
28728 : extern rtx_insn *gen_split_3246 (rtx_insn *, rtx *);
28729 : rtx_insn *
28730 : gen_split_3246 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28731 : {
28732 : if (dump_file)
28733 : fprintf (dump_file, "Splitting with gen_split_3246 (sse.md:15011)\n");
28734 : start_sequence ();
28735 : static const uint8_t expand_encoding[] = {
28736 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x2e, 0x01,
28737 : 0x01, 0x17, 0x00, 0x01, 0x27, 0x01
28738 : };
28739 : return complete_seq (expand_encoding, operands);
28740 : }
28741 :
28742 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15353 */
28743 : rtx
28744 : gen_truncv16siv16hi2 (const rtx operand0, const rtx operand1)
28745 : {
28746 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
28747 : static const uint8_t expand_encoding[] = {
28748 : 0x1f, 0x01, 0x00, 0x70, 0x55, 0x01, 0x01
28749 : };
28750 : return expand_rtx (expand_encoding, operands);
28751 : }
28752 :
28753 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15451 */
28754 : extern rtx_insn *gen_split_3254 (rtx_insn *, rtx *);
28755 : rtx_insn *
28756 : gen_split_3254 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28757 : {
28758 : if (dump_file)
28759 : fprintf (dump_file, "Splitting with gen_split_3254 (sse.md:15451)\n");
28760 : start_sequence ();
28761 : #define FAIL return (end_sequence (), nullptr)
28762 : #define DONE return end_sequence ()
28763 : #line 15468 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28764 : {
28765 : operands[1] = lowpart_subreg (V8SImode,
28766 : force_reg (V16HImode, operands[1]),
28767 : V16HImode);
28768 : if (MEM_P (operands[0]))
28769 : operands[0] = lowpart_subreg (V8HImode, operands[0], V8HFmode);
28770 : else
28771 : {
28772 : rtx op0 = gen_reg_rtx (V8HImode);
28773 : emit_insn (gen_truncv8siv8hi2 (op0, operands[1]));
28774 : emit_move_insn (operands[0], lowpart_subreg (V8HFmode, op0, V8HImode));
28775 : DONE;
28776 : }
28777 : }
28778 : #undef DONE
28779 : #undef FAIL
28780 : static const uint8_t expand_encoding[] = {
28781 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x50, 0x01, 0x01
28782 : };
28783 : return complete_seq (expand_encoding, operands);
28784 : }
28785 :
28786 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15589 */
28787 : rtx
28788 : gen_avx512bw_truncatev32hiv32qi2_mask_store (const rtx operand0, const rtx operand1, const rtx operand2)
28789 : {
28790 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28791 : static const uint8_t expand_encoding[] = {
28792 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x70, 0x54,
28793 : 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
28794 : };
28795 : return expand_rtx (expand_encoding, operands);
28796 : }
28797 :
28798 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15689 */
28799 : rtx
28800 : gen_avx512vl_us_truncatev4div4si2_mask_store (const rtx operand0, const rtx operand1, const rtx operand2)
28801 : {
28802 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28803 : static const uint8_t expand_encoding[] = {
28804 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x81, 0x18,
28805 : 0x51, 0x01, 0x01, 0x01, 0x00, 0x01, 0x02
28806 : };
28807 : return expand_rtx (expand_encoding, operands);
28808 : }
28809 :
28810 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15710 */
28811 : rtx
28812 : gen_truncv8siv8qi2 (const rtx operand0, const rtx operand1)
28813 : {
28814 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
28815 : start_sequence ();
28816 : {
28817 : #define FAIL return (end_sequence (), nullptr)
28818 : #define DONE return end_sequence ()
28819 : #line 15715 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28820 : {
28821 : if (TARGET_AVX512VL
28822 : && (V8SImode != V8HImode || TARGET_AVX512BW))
28823 : {
28824 : rtx op0 = gen_reg_rtx (V16QImode);
28825 :
28826 : emit_insn (gen_avx512vl_truncatev8siv8qi2
28827 : (op0, operands[1], CONST0_RTX (V8QImode)));
28828 :
28829 : emit_move_insn (operands[0],
28830 : lowpart_subreg (V8QImode, op0, V16QImode));
28831 : }
28832 : else
28833 : {
28834 : ix86_expand_trunc_with_avx2_noavx512f (operands[0],
28835 : operands[1],
28836 : V32QImode);
28837 : }
28838 : DONE;
28839 : }
28840 : #undef DONE
28841 : #undef FAIL
28842 : }
28843 : static const uint8_t expand_encoding[] = {
28844 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x48, 0x01, 0x01
28845 : };
28846 : return complete_seq (expand_encoding, operands);
28847 : }
28848 :
28849 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15877 */
28850 : extern rtx_insn *gen_split_3264 (rtx_insn *, rtx *);
28851 : rtx_insn *
28852 : gen_split_3264 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28853 : {
28854 : if (dump_file)
28855 : fprintf (dump_file, "Splitting with gen_split_3264 (sse.md:15877)\n");
28856 : start_sequence ();
28857 : #define FAIL return (end_sequence (), nullptr)
28858 : #define DONE return end_sequence ()
28859 : #line 15887 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28860 : operands[0] = adjust_address_nv (operands[0], V4QImode, 0);
28861 : #undef DONE
28862 : #undef FAIL
28863 : static const uint8_t expand_encoding[] = {
28864 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x45, 0x01, 0x01
28865 : };
28866 : return complete_seq (expand_encoding, operands);
28867 : }
28868 :
28869 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:15947 */
28870 : rtx
28871 : gen_avx512vl_ss_truncatev4div4qi2_mask_store_2 (const rtx operand0, const rtx operand1, const rtx operand2)
28872 : {
28873 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28874 : start_sequence ();
28875 : {
28876 : #define FAIL return (end_sequence (), nullptr)
28877 : #define DONE return end_sequence ()
28878 : #line 15953 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28879 : {
28880 : operands[0] = adjust_address_nv (operands[0], V4QImode, 0);
28881 : emit_insn (gen_avx512vl_ss_truncatev4div4qi2_mask_store_1 (operands[0],
28882 : operands[1],
28883 : operands[2]));
28884 : DONE;
28885 : }
28886 : #undef DONE
28887 : #undef FAIL
28888 : }
28889 : static const uint8_t expand_encoding[] = {
28890 : 0x03, 0x01, 0x00, 0x81, 0x17, 0x45, 0x01, 0x01,
28891 : 0x01, 0x02
28892 : };
28893 : return complete_seq (expand_encoding, operands);
28894 : }
28895 :
28896 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16045 */
28897 : rtx
28898 : gen_avx512vl_us_truncatev8siv8qi2_mask_store_2 (const rtx operand0, const rtx operand1, const rtx operand2)
28899 : {
28900 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28901 : start_sequence ();
28902 : {
28903 : #define FAIL return (end_sequence (), nullptr)
28904 : #define DONE return end_sequence ()
28905 : #line 16051 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28906 : {
28907 : operands[0] = adjust_address_nv (operands[0], V8QImode, 0);
28908 : emit_insn (gen_avx512vl_us_truncatev8siv8qi2_mask_store_1 (operands[0],
28909 : operands[1],
28910 : operands[2]));
28911 : DONE;
28912 : }
28913 : #undef DONE
28914 : #undef FAIL
28915 : }
28916 : static const uint8_t expand_encoding[] = {
28917 : 0x03, 0x01, 0x00, 0x81, 0x18, 0x48, 0x01, 0x01,
28918 : 0x01, 0x02
28919 : };
28920 : return complete_seq (expand_encoding, operands);
28921 : }
28922 :
28923 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16137 */
28924 : extern rtx_insn *gen_split_3281 (rtx_insn *, rtx *);
28925 : rtx_insn *
28926 : gen_split_3281 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
28927 : {
28928 : if (dump_file)
28929 : fprintf (dump_file, "Splitting with gen_split_3281 (sse.md:16137)\n");
28930 : start_sequence ();
28931 : #define FAIL return (end_sequence (), nullptr)
28932 : #define DONE return end_sequence ()
28933 : #line 16147 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28934 : operands[0] = adjust_address_nv (operands[0], V4HImode, 0);
28935 : #undef DONE
28936 : #undef FAIL
28937 : static const uint8_t expand_encoding[] = {
28938 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x18, 0x49, 0x01,
28939 : 0x01
28940 : };
28941 : return complete_seq (expand_encoding, operands);
28942 : }
28943 :
28944 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16290 */
28945 : rtx
28946 : gen_avx512vl_ss_truncatev2div2hi2_mask_store_2 (const rtx operand0, const rtx operand1, const rtx operand2)
28947 : {
28948 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28949 : start_sequence ();
28950 : {
28951 : #define FAIL return (end_sequence (), nullptr)
28952 : #define DONE return end_sequence ()
28953 : #line 16296 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28954 : {
28955 : operands[0] = adjust_address_nv (operands[0], V2HImode, 0);
28956 : emit_insn (gen_avx512vl_ss_truncatev2div2hi2_mask_store_1 (operands[0],
28957 : operands[1],
28958 : operands[2]));
28959 : DONE;
28960 : }
28961 : #undef DONE
28962 : #undef FAIL
28963 : }
28964 : static const uint8_t expand_encoding[] = {
28965 : 0x03, 0x01, 0x00, 0x81, 0x17, 0x46, 0x01, 0x01,
28966 : 0x01, 0x02
28967 : };
28968 : return complete_seq (expand_encoding, operands);
28969 : }
28970 :
28971 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16436 */
28972 : rtx
28973 : gen_avx512vl_us_truncatev2div2si2_mask_store_2 (const rtx operand0, const rtx operand1, const rtx operand2)
28974 : {
28975 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
28976 : start_sequence ();
28977 : {
28978 : #define FAIL return (end_sequence (), nullptr)
28979 : #define DONE return end_sequence ()
28980 : #line 16442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
28981 : {
28982 : operands[0] = adjust_address_nv (operands[0], V2SImode, 0);
28983 : emit_insn (gen_avx512vl_us_truncatev2div2si2_mask_store_1 (operands[0],
28984 : operands[1],
28985 : operands[2]));
28986 : DONE;
28987 : }
28988 : #undef DONE
28989 : #undef FAIL
28990 : }
28991 : static const uint8_t expand_encoding[] = {
28992 : 0x03, 0x01, 0x00, 0x81, 0x18, 0x4a, 0x01, 0x01,
28993 : 0x01, 0x02
28994 : };
28995 : return complete_seq (expand_encoding, operands);
28996 : }
28997 :
28998 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16581 */
28999 : rtx
29000 : gen_negv16qi2 (const rtx operand0, const rtx operand1)
29001 : {
29002 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
29003 : start_sequence ();
29004 : {
29005 : #define FAIL return (end_sequence (), nullptr)
29006 : #define DONE return end_sequence ()
29007 : #line 16587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29008 : operands[2] = force_reg (V16QImode, CONST0_RTX (V16QImode));
29009 : #undef DONE
29010 : #undef FAIL
29011 : }
29012 : static const uint8_t expand_encoding[] = {
29013 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x4f, 0x01, 0x02,
29014 : 0x01, 0x01
29015 : };
29016 : return complete_seq (expand_encoding, operands);
29017 : }
29018 :
29019 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16581 */
29020 : rtx
29021 : gen_negv2di2 (const rtx operand0, const rtx operand1)
29022 : {
29023 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
29024 : start_sequence ();
29025 : {
29026 : #define FAIL return (end_sequence (), nullptr)
29027 : #define DONE return end_sequence ()
29028 : #line 16587 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29029 : operands[2] = force_reg (V2DImode, CONST0_RTX (V2DImode));
29030 : #undef DONE
29031 : #undef FAIL
29032 : }
29033 : static const uint8_t expand_encoding[] = {
29034 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x52, 0x01, 0x02,
29035 : 0x01, 0x01
29036 : };
29037 : return complete_seq (expand_encoding, operands);
29038 : }
29039 :
29040 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16589 */
29041 : rtx
29042 : gen_subv16hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29043 : {
29044 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29045 : start_sequence ();
29046 : {
29047 : #define FAIL return (end_sequence (), nullptr)
29048 : #define DONE return end_sequence ()
29049 : #line 16595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29050 : ix86_fixup_binary_operands_no_copy (MINUS, V16HImode, operands);
29051 : #undef DONE
29052 : #undef FAIL
29053 : }
29054 : static const uint8_t expand_encoding[] = {
29055 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x55, 0x01, 0x01,
29056 : 0x01, 0x02
29057 : };
29058 : return complete_seq (expand_encoding, operands);
29059 : }
29060 :
29061 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16589 */
29062 : rtx
29063 : gen_subv8di3 (const rtx operand0, const rtx operand1, const rtx operand2)
29064 : {
29065 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29066 : start_sequence ();
29067 : {
29068 : #define FAIL return (end_sequence (), nullptr)
29069 : #define DONE return end_sequence ()
29070 : #line 16595 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29071 : ix86_fixup_binary_operands_no_copy (MINUS, V8DImode, operands);
29072 : #undef DONE
29073 : #undef FAIL
29074 : }
29075 : static const uint8_t expand_encoding[] = {
29076 : 0x01, 0x1f, 0x01, 0x00, 0x3c, 0x5c, 0x01, 0x01,
29077 : 0x01, 0x02
29078 : };
29079 : return complete_seq (expand_encoding, operands);
29080 : }
29081 :
29082 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16597 */
29083 : rtx
29084 : gen_cond_subv16qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29085 : {
29086 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29087 : start_sequence ();
29088 : {
29089 : #define FAIL _Pragma ("GCC error \"cond_subv16qi cannot FAIL\"") (void)0
29090 : #define DONE return end_sequence ()
29091 : #line 16606 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29092 : {
29093 : emit_insn (gen_subv16qi3_mask (operands[0],
29094 : operands[2],
29095 : operands[3],
29096 : operands[4],
29097 : operands[1]));
29098 : DONE;
29099 : }
29100 : #undef DONE
29101 : #undef FAIL
29102 : }
29103 : static const uint8_t expand_encoding[] = {
29104 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x4f, 0x3c,
29105 : 0x4f, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29106 : 0x01
29107 : };
29108 : return complete_seq (expand_encoding, operands);
29109 : }
29110 :
29111 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16597 */
29112 : rtx
29113 : gen_cond_subv8si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29114 : {
29115 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29116 : start_sequence ();
29117 : {
29118 : #define FAIL _Pragma ("GCC error \"cond_subv8si cannot FAIL\"") (void)0
29119 : #define DONE return end_sequence ()
29120 : #line 16606 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29121 : {
29122 : emit_insn (gen_subv8si3_mask (operands[0],
29123 : operands[2],
29124 : operands[3],
29125 : operands[4],
29126 : operands[1]));
29127 : DONE;
29128 : }
29129 : #undef DONE
29130 : #undef FAIL
29131 : }
29132 : static const uint8_t expand_encoding[] = {
29133 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x3c,
29134 : 0x56, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29135 : 0x01
29136 : };
29137 : return complete_seq (expand_encoding, operands);
29138 : }
29139 :
29140 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16615 */
29141 : rtx
29142 : gen_subv16si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29143 : {
29144 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29145 : start_sequence ();
29146 : {
29147 : #define FAIL return (end_sequence (), nullptr)
29148 : #define DONE return end_sequence ()
29149 : #line 16624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29150 : ix86_fixup_binary_operands_no_copy (MINUS, V16SImode, operands);
29151 : #undef DONE
29152 : #undef FAIL
29153 : }
29154 : static const uint8_t expand_encoding[] = {
29155 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x3c,
29156 : 0x5b, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29157 : 0x04
29158 : };
29159 : return complete_seq (expand_encoding, operands);
29160 : }
29161 :
29162 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16615 */
29163 : rtx
29164 : gen_addv4di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29165 : {
29166 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29167 : start_sequence ();
29168 : {
29169 : #define FAIL return (end_sequence (), nullptr)
29170 : #define DONE return end_sequence ()
29171 : #line 16624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29172 : ix86_fixup_binary_operands_no_copy (PLUS, V4DImode, operands);
29173 : #undef DONE
29174 : #undef FAIL
29175 : }
29176 : static const uint8_t expand_encoding[] = {
29177 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x3b,
29178 : 0x57, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29179 : 0x04
29180 : };
29181 : return complete_seq (expand_encoding, operands);
29182 : }
29183 :
29184 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16626 */
29185 : rtx
29186 : gen_addv32hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29187 : {
29188 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29189 : start_sequence ();
29190 : {
29191 : #define FAIL return (end_sequence (), nullptr)
29192 : #define DONE return end_sequence ()
29193 : #line 16635 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29194 : ix86_fixup_binary_operands_no_copy (PLUS, V32HImode, operands);
29195 : #undef DONE
29196 : #undef FAIL
29197 : }
29198 : static const uint8_t expand_encoding[] = {
29199 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x3b,
29200 : 0x5a, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29201 : 0x04
29202 : };
29203 : return complete_seq (expand_encoding, operands);
29204 : }
29205 :
29206 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16680 */
29207 : rtx
29208 : gen_sssubv64qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29209 : {
29210 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29211 : start_sequence ();
29212 : {
29213 : #define FAIL return (end_sequence (), nullptr)
29214 : #define DONE return end_sequence ()
29215 : #line 16686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29216 : ix86_fixup_binary_operands_no_copy (SS_MINUS, V64QImode, operands);
29217 : #undef DONE
29218 : #undef FAIL
29219 : }
29220 : static const uint8_t expand_encoding[] = {
29221 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x10, 0x59, 0x01,
29222 : 0x01, 0x01, 0x02
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_sssubv32qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29230 : {
29231 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
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_MINUS, V32QImode, operands);
29238 : #undef DONE
29239 : #undef FAIL
29240 : }
29241 : static const uint8_t expand_encoding[] = {
29242 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x81,
29243 : 0x10, 0x54, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
29244 : 0x01, 0x04
29245 : };
29246 : return complete_seq (expand_encoding, operands);
29247 : }
29248 :
29249 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16680 */
29250 : rtx
29251 : gen_ssaddv32hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29252 : {
29253 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29254 : start_sequence ();
29255 : {
29256 : #define FAIL return (end_sequence (), nullptr)
29257 : #define DONE return end_sequence ()
29258 : #line 16686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29259 : ix86_fixup_binary_operands_no_copy (SS_PLUS, V32HImode, operands);
29260 : #undef DONE
29261 : #undef FAIL
29262 : }
29263 : static const uint8_t expand_encoding[] = {
29264 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x81,
29265 : 0x0e, 0x5a, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
29266 : 0x01, 0x04
29267 : };
29268 : return complete_seq (expand_encoding, operands);
29269 : }
29270 :
29271 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16680 */
29272 : rtx
29273 : gen_sssubv16hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29274 : {
29275 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29276 : start_sequence ();
29277 : {
29278 : #define FAIL return (end_sequence (), nullptr)
29279 : #define DONE return end_sequence ()
29280 : #line 16686 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29281 : ix86_fixup_binary_operands_no_copy (SS_MINUS, V16HImode, operands);
29282 : #undef DONE
29283 : #undef FAIL
29284 : }
29285 : static const uint8_t expand_encoding[] = {
29286 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x55, 0x81,
29287 : 0x10, 0x55, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
29288 : 0x01, 0x04
29289 : };
29290 : return complete_seq (expand_encoding, operands);
29291 : }
29292 :
29293 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16705 */
29294 : extern rtx_insn *gen_split_3292 (rtx_insn *, rtx *);
29295 : rtx_insn *
29296 : gen_split_3292 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29297 : {
29298 : if (dump_file)
29299 : fprintf (dump_file, "Splitting with gen_split_3292 (sse.md:16705)\n");
29300 : start_sequence ();
29301 : #define FAIL return (end_sequence (), nullptr)
29302 : #define DONE return end_sequence ()
29303 : #line 16719 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29304 : operands[4] = gen_reg_rtx (V32QImode);
29305 : #undef DONE
29306 : #undef FAIL
29307 : static const uint8_t expand_encoding[] = {
29308 : 0x02, 0x1f, 0x01, 0x04, 0x54, 0x54, 0x01, 0x01,
29309 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x5d, 0x54, 0x01,
29310 : 0x04, 0x01, 0x01
29311 : };
29312 : return complete_seq (expand_encoding, operands);
29313 : }
29314 :
29315 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16749 */
29316 : rtx
29317 : gen_mulv32hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29318 : {
29319 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29320 : start_sequence ();
29321 : {
29322 : #define FAIL return (end_sequence (), nullptr)
29323 : #define DONE return end_sequence ()
29324 : #line 16754 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29325 : ix86_fixup_binary_operands_no_copy (MULT, V32HImode, operands);
29326 : #undef DONE
29327 : #undef FAIL
29328 : }
29329 : static const uint8_t expand_encoding[] = {
29330 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x5a, 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:16771 */
29337 : rtx
29338 : gen_smulv32hi3_highpart_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 16783 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29346 : ix86_fixup_binary_operands_no_copy (MULT, V32HImode, operands);
29347 : #undef DONE
29348 : #undef FAIL
29349 : }
29350 : static const uint8_t expand_encoding[] = {
29351 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x70,
29352 : 0x5a, 0x50, 0x60, 0x3e, 0x60, 0x6e, 0x60, 0x01,
29353 : 0x01, 0x6e, 0x60, 0x01, 0x02, 0x27, 0x10, 0x01,
29354 : 0x03, 0x01, 0x04
29355 : };
29356 : return complete_seq (expand_encoding, operands);
29357 : }
29358 :
29359 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:16806 */
29360 : rtx
29361 : gen_vec_widen_umult_even_v16si_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29362 : {
29363 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29364 : start_sequence ();
29365 : {
29366 : #define FAIL return (end_sequence (), nullptr)
29367 : #define DONE return end_sequence ()
29368 : #line 16824 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29369 : ix86_fixup_binary_operands_no_copy (MULT, V16SImode, operands);
29370 : #undef DONE
29371 : #undef FAIL
29372 : }
29373 : static const uint8_t expand_encoding[] = {
29374 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x3e,
29375 : 0x5c, 0x6f, 0x5c, 0x81, 0x0a, 0x56, 0x01, 0x01,
29376 : 0x17, 0x00, 0x08, 0x27, 0x00, 0x27, 0x02, 0x27,
29377 : 0x04, 0x27, 0x06, 0x27, 0x08, 0x27, 0x0a, 0x27,
29378 : 0x0c, 0x27, 0x0e, 0x6f, 0x5c, 0x81, 0x0a, 0x56,
29379 : 0x01, 0x02, 0x17, 0x00, 0x08, 0x27, 0x00, 0x27,
29380 : 0x02, 0x27, 0x04, 0x27, 0x06, 0x27, 0x08, 0x27,
29381 : 0x0a, 0x27, 0x0c, 0x27, 0x0e, 0x01, 0x03, 0x01,
29382 : 0x04
29383 : };
29384 : return complete_seq (expand_encoding, operands);
29385 : }
29386 :
29387 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17186 */
29388 : rtx
29389 : gen_cond_mulv8di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29390 : {
29391 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29392 : start_sequence ();
29393 : {
29394 : #define FAIL _Pragma ("GCC error \"cond_mulv8di cannot FAIL\"") (void)0
29395 : #define DONE return end_sequence ()
29396 : #line 17195 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29397 : {
29398 : emit_insn (gen_avx512dq_mulv8di3_mask (operands[0],
29399 : operands[2],
29400 : operands[3],
29401 : operands[4],
29402 : operands[1]));
29403 : DONE;
29404 : }
29405 : #undef DONE
29406 : #undef FAIL
29407 : }
29408 : static const uint8_t expand_encoding[] = {
29409 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x3e,
29410 : 0x5c, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29411 : 0x01
29412 : };
29413 : return complete_seq (expand_encoding, operands);
29414 : }
29415 :
29416 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17204 */
29417 : rtx
29418 : gen_avx512dq_mulv2di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29419 : {
29420 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29421 : start_sequence ();
29422 : {
29423 : #define FAIL return (end_sequence (), nullptr)
29424 : #define DONE return end_sequence ()
29425 : #line 17210 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29426 : ix86_fixup_binary_operands_no_copy (MULT, V2DImode, operands);
29427 : #undef DONE
29428 : #undef FAIL
29429 : }
29430 : static const uint8_t expand_encoding[] = {
29431 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x3e,
29432 : 0x52, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29433 : 0x04
29434 : };
29435 : return complete_seq (expand_encoding, operands);
29436 : }
29437 :
29438 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17290 */
29439 : rtx
29440 : gen_mulv8di3 (const rtx operand0, const rtx operand1, const rtx operand2)
29441 : {
29442 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29443 : start_sequence ();
29444 : {
29445 : #define FAIL return (end_sequence (), nullptr)
29446 : #define DONE return end_sequence ()
29447 : #line 17296 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29448 : {
29449 : ix86_expand_sse2_mulvxdi3 (operands[0], operands[1], operands[2]);
29450 : DONE;
29451 : }
29452 : #undef DONE
29453 : #undef FAIL
29454 : }
29455 : static const uint8_t expand_encoding[] = {
29456 : 0x01, 0x1f, 0x01, 0x00, 0x3e, 0x5c, 0x01, 0x01,
29457 : 0x01, 0x02
29458 : };
29459 : return complete_seq (expand_encoding, operands);
29460 : }
29461 :
29462 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17301 */
29463 : rtx
29464 : gen_vec_widen_smult_hi_v16hi (const rtx operand0, const rtx operand1, const rtx operand2)
29465 : {
29466 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29467 : start_sequence ();
29468 : {
29469 : #define FAIL return (end_sequence (), nullptr)
29470 : #define DONE return end_sequence ()
29471 : #line 17307 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29472 : {
29473 : ix86_expand_mul_widen_hilo (operands[0], operands[1], operands[2],
29474 : false, true);
29475 : DONE;
29476 : }
29477 : #undef DONE
29478 : #undef FAIL
29479 : }
29480 : static const uint8_t expand_encoding[] = {
29481 : 0x03, 0x01, 0x00, 0x6e, 0x56, 0x01, 0x01, 0x01,
29482 : 0x02
29483 : };
29484 : return complete_seq (expand_encoding, operands);
29485 : }
29486 :
29487 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17313 */
29488 : rtx
29489 : gen_vec_widen_smult_lo_v16qi (const rtx operand0, const rtx operand1, const rtx operand2)
29490 : {
29491 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29492 : start_sequence ();
29493 : {
29494 : #define FAIL return (end_sequence (), nullptr)
29495 : #define DONE return end_sequence ()
29496 : #line 17319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29497 : {
29498 : ix86_expand_mul_widen_hilo (operands[0], operands[1], operands[2],
29499 : false, false);
29500 : DONE;
29501 : }
29502 : #undef DONE
29503 : #undef FAIL
29504 : }
29505 : static const uint8_t expand_encoding[] = {
29506 : 0x03, 0x01, 0x00, 0x6e, 0x50, 0x01, 0x01, 0x01,
29507 : 0x02
29508 : };
29509 : return complete_seq (expand_encoding, operands);
29510 : }
29511 :
29512 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17327 */
29513 : rtx
29514 : gen_vec_widen_smult_even_v4si (const rtx operand0, const rtx operand1, const rtx operand2)
29515 : {
29516 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29517 : start_sequence ();
29518 : {
29519 : #define FAIL return (end_sequence (), nullptr)
29520 : #define DONE return end_sequence ()
29521 : #line 17332 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29522 : {
29523 : ix86_expand_mul_widen_evenodd (operands[0], operands[1], operands[2],
29524 : false, false);
29525 : DONE;
29526 : }
29527 : #undef DONE
29528 : #undef FAIL
29529 : }
29530 : static const uint8_t expand_encoding[] = {
29531 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
29532 : };
29533 : return complete_seq (expand_encoding, operands);
29534 : }
29535 :
29536 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17391 */
29537 : rtx
29538 : gen_sdot_prodv2div4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
29539 : {
29540 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
29541 : start_sequence ();
29542 : {
29543 : #define FAIL return (end_sequence (), nullptr)
29544 : #define DONE return end_sequence ()
29545 : #line 17397 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29546 : {
29547 : rtx t = gen_reg_rtx (V2DImode);
29548 : emit_insn (gen_xop_pmacsdqh (t, operands[1], operands[2], operands[3]));
29549 : emit_insn (gen_xop_pmacsdql (operands[0], operands[1], operands[2], t));
29550 : DONE;
29551 : }
29552 : #undef DONE
29553 : #undef FAIL
29554 : }
29555 : static const uint8_t expand_encoding[] = {
29556 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
29557 : 0x03
29558 : };
29559 : return complete_seq (expand_encoding, operands);
29560 : }
29561 :
29562 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17422 */
29563 : rtx
29564 : gen_usadv16qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
29565 : {
29566 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
29567 : start_sequence ();
29568 : {
29569 : #define FAIL return (end_sequence (), nullptr)
29570 : #define DONE return end_sequence ()
29571 : #line 17428 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29572 : {
29573 : rtx t1 = gen_reg_rtx (V2DImode);
29574 : rtx t2 = gen_reg_rtx (V4SImode);
29575 : emit_insn (gen_sse2_psadbw (t1, operands[1], operands[2]));
29576 : convert_move (t2, t1, 0);
29577 : emit_insn (gen_addv4si3 (operands[0], t2, operands[3]));
29578 : DONE;
29579 : }
29580 : #undef DONE
29581 : #undef FAIL
29582 : }
29583 : static const uint8_t expand_encoding[] = {
29584 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
29585 : 0x03
29586 : };
29587 : return complete_seq (expand_encoding, operands);
29588 : }
29589 :
29590 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17525 */
29591 : extern rtx_insn *gen_split_3303 (rtx_insn *, rtx *);
29592 : rtx_insn *
29593 : gen_split_3303 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29594 : {
29595 : if (dump_file)
29596 : fprintf (dump_file, "Splitting with gen_split_3303 (sse.md:17525)\n");
29597 : start_sequence ();
29598 : #define FAIL return (end_sequence (), nullptr)
29599 : #define DONE return end_sequence ()
29600 : #line 17540 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29601 : operands[5] = gen_int_mode (32 - 1, DImode);
29602 : #undef DONE
29603 : #undef FAIL
29604 : static const uint8_t expand_encoding[] = {
29605 : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x5b, 0x01, 0x03,
29606 : 0x01, 0x05
29607 : };
29608 : return complete_seq (expand_encoding, operands);
29609 : }
29610 :
29611 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17713 */
29612 : extern rtx_insn *gen_split_3311 (rtx_insn *, rtx *);
29613 : rtx_insn *
29614 : gen_split_3311 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29615 : {
29616 : if (dump_file)
29617 : fprintf (dump_file, "Splitting with gen_split_3311 (sse.md:17713)\n");
29618 : start_sequence ();
29619 : static const uint8_t expand_encoding[] = {
29620 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x57, 0x01, 0x01,
29621 : 0x27, 0x3f
29622 : };
29623 : return complete_seq (expand_encoding, operands);
29624 : }
29625 :
29626 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17725 */
29627 : extern rtx_insn *gen_split_3318 (rtx_insn *, rtx *);
29628 : rtx_insn *
29629 : gen_split_3318 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29630 : {
29631 : if (dump_file)
29632 : fprintf (dump_file, "Splitting with gen_split_3318 (sse.md:17725)\n");
29633 : start_sequence ();
29634 : #define FAIL return (end_sequence (), nullptr)
29635 : #define DONE return end_sequence ()
29636 : #line 17734 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29637 : operands[4] = gen_int_mode (64 - 1, DImode);
29638 : #undef DONE
29639 : #undef FAIL
29640 : static const uint8_t expand_encoding[] = {
29641 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x52, 0x01, 0x01,
29642 : 0x01, 0x04
29643 : };
29644 : return complete_seq (expand_encoding, operands);
29645 : }
29646 :
29647 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17736 */
29648 : extern rtx_insn *gen_split_3327 (rtx_insn *, rtx *);
29649 : rtx_insn *
29650 : gen_split_3327 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29651 : {
29652 : if (dump_file)
29653 : fprintf (dump_file, "Splitting with gen_split_3327 (sse.md:17736)\n");
29654 : start_sequence ();
29655 : #define FAIL return (end_sequence (), nullptr)
29656 : #define DONE return end_sequence ()
29657 : #line 17749 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29658 : operands[5] = gen_int_mode (64 - 1, DImode);
29659 : #undef DONE
29660 : #undef FAIL
29661 : static const uint8_t expand_encoding[] = {
29662 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x52, 0x01, 0x03,
29663 : 0x01, 0x05
29664 : };
29665 : return complete_seq (expand_encoding, operands);
29666 : }
29667 :
29668 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17767 */
29669 : extern rtx_insn *gen_split_3336 (rtx_insn *, rtx *);
29670 : rtx_insn *
29671 : gen_split_3336 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
29672 : {
29673 : if (dump_file)
29674 : fprintf (dump_file, "Splitting with gen_split_3336 (sse.md:17767)\n");
29675 : start_sequence ();
29676 : #define FAIL return (end_sequence (), nullptr)
29677 : #define DONE return end_sequence ()
29678 : #line 17778 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29679 : operands[3] = XVECEXP (operands[2], 0, 0);
29680 : #undef DONE
29681 : #undef FAIL
29682 : static const uint8_t expand_encoding[] = {
29683 : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x5c, 0x01, 0x01,
29684 : 0x01, 0x03
29685 : };
29686 : return complete_seq (expand_encoding, operands);
29687 : }
29688 :
29689 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17796 */
29690 : rtx
29691 : gen_vec_shr_v16qi (const rtx operand0, const rtx operand1, const rtx operand2)
29692 : {
29693 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29694 : start_sequence ();
29695 : {
29696 : #define FAIL return (end_sequence (), nullptr)
29697 : #define DONE return end_sequence ()
29698 : #line 17802 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29699 : {
29700 : rtx op0 = gen_reg_rtx (V1TImode);
29701 : rtx op1 = force_reg (V16QImode, operands[1]);
29702 :
29703 : emit_insn (gen_sse2_lshrv1ti3
29704 : (op0, gen_lowpart (V1TImode, op1), operands[2]));
29705 : emit_move_insn (operands[0], gen_lowpart (V16QImode, op0));
29706 : DONE;
29707 : }
29708 : #undef DONE
29709 : #undef FAIL
29710 : }
29711 : static const uint8_t expand_encoding[] = {
29712 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x53, 0x01, 0x01,
29713 : 0x01, 0x02
29714 : };
29715 : return complete_seq (expand_encoding, operands);
29716 : }
29717 :
29718 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17841 */
29719 : rtx
29720 : gen_lshrv1ti3 (const rtx operand0, const rtx operand1, const rtx operand2)
29721 : {
29722 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29723 : start_sequence ();
29724 : {
29725 : #define FAIL return (end_sequence (), nullptr)
29726 : #define DONE return end_sequence ()
29727 : #line 17847 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29728 : {
29729 : if (!CONST_INT_P (operands[2]))
29730 : {
29731 : ix86_expand_v1ti_shift (LSHIFTRT, operands);
29732 : DONE;
29733 : }
29734 : }
29735 : #undef DONE
29736 : #undef FAIL
29737 : }
29738 : static const uint8_t expand_encoding[] = {
29739 : 0x01, 0x1f, 0x01, 0x00, 0x50, 0x53, 0x01, 0x01,
29740 : 0x01, 0x02
29741 : };
29742 : return complete_seq (expand_encoding, operands);
29743 : }
29744 :
29745 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:17912 */
29746 : rtx
29747 : gen_rotlv1ti3 (const rtx operand0, const rtx operand1, const rtx operand2)
29748 : {
29749 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29750 : start_sequence ();
29751 : {
29752 : #define FAIL return (end_sequence (), nullptr)
29753 : #define DONE return end_sequence ()
29754 : #line 17918 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29755 : {
29756 : if (!CONST_INT_P (operands[2]))
29757 : {
29758 : ix86_expand_v1ti_rotate (ROTATE, operands);
29759 : DONE;
29760 : }
29761 : }
29762 : #undef DONE
29763 : #undef FAIL
29764 : }
29765 : static const uint8_t expand_encoding[] = {
29766 : 0x01, 0x1f, 0x01, 0x00, 0x4e, 0x53, 0x01, 0x01,
29767 : 0x01, 0x02
29768 : };
29769 : return complete_seq (expand_encoding, operands);
29770 : }
29771 :
29772 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18032 */
29773 : rtx
29774 : gen_umaxv16hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29775 : {
29776 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29777 : start_sequence ();
29778 : {
29779 : #define FAIL return (end_sequence (), nullptr)
29780 : #define DONE return end_sequence ()
29781 : #line 18038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29782 : ix86_fixup_binary_operands_no_copy (UMAX, V16HImode, operands);
29783 : #undef DONE
29784 : #undef FAIL
29785 : }
29786 : static const uint8_t expand_encoding[] = {
29787 : 0x01, 0x1f, 0x01, 0x00, 0x55, 0x55, 0x01, 0x01,
29788 : 0x01, 0x02
29789 : };
29790 : return complete_seq (expand_encoding, operands);
29791 : }
29792 :
29793 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18032 */
29794 : rtx
29795 : gen_smaxv32hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
29796 : {
29797 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
29798 : start_sequence ();
29799 : {
29800 : #define FAIL return (end_sequence (), nullptr)
29801 : #define DONE return end_sequence ()
29802 : #line 18038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29803 : ix86_fixup_binary_operands_no_copy (SMAX, V32HImode, operands);
29804 : #undef DONE
29805 : #undef FAIL
29806 : }
29807 : static const uint8_t expand_encoding[] = {
29808 : 0x01, 0x1f, 0x01, 0x00, 0x53, 0x5a, 0x01, 0x01,
29809 : 0x01, 0x02
29810 : };
29811 : return complete_seq (expand_encoding, operands);
29812 : }
29813 :
29814 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18053 */
29815 : rtx
29816 : gen_cond_umaxv64qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29817 : {
29818 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29819 : start_sequence ();
29820 : {
29821 : #define FAIL return (end_sequence (), nullptr)
29822 : #define DONE return end_sequence ()
29823 : #line 18062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29824 : {
29825 : emit_insn (gen_umaxv64qi3_mask (operands[0],
29826 : operands[2],
29827 : operands[3],
29828 : operands[4],
29829 : operands[1]));
29830 : DONE;
29831 : }
29832 : #undef DONE
29833 : #undef FAIL
29834 : }
29835 : static const uint8_t expand_encoding[] = {
29836 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x59, 0x55,
29837 : 0x59, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29838 : 0x01
29839 : };
29840 : return complete_seq (expand_encoding, operands);
29841 : }
29842 :
29843 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18053 */
29844 : rtx
29845 : gen_cond_smaxv32hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29846 : {
29847 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29848 : start_sequence ();
29849 : {
29850 : #define FAIL return (end_sequence (), nullptr)
29851 : #define DONE return end_sequence ()
29852 : #line 18062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29853 : {
29854 : emit_insn (gen_smaxv32hi3_mask (operands[0],
29855 : operands[2],
29856 : operands[3],
29857 : operands[4],
29858 : operands[1]));
29859 : DONE;
29860 : }
29861 : #undef DONE
29862 : #undef FAIL
29863 : }
29864 : static const uint8_t expand_encoding[] = {
29865 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x53,
29866 : 0x5a, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29867 : 0x01
29868 : };
29869 : return complete_seq (expand_encoding, operands);
29870 : }
29871 :
29872 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18053 */
29873 : rtx
29874 : gen_cond_umaxv8hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29875 : {
29876 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29877 : start_sequence ();
29878 : {
29879 : #define FAIL return (end_sequence (), nullptr)
29880 : #define DONE return end_sequence ()
29881 : #line 18062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29882 : {
29883 : emit_insn (gen_umaxv8hi3_mask (operands[0],
29884 : operands[2],
29885 : operands[3],
29886 : operands[4],
29887 : operands[1]));
29888 : DONE;
29889 : }
29890 : #undef DONE
29891 : #undef FAIL
29892 : }
29893 : static const uint8_t expand_encoding[] = {
29894 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x55,
29895 : 0x50, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29896 : 0x01
29897 : };
29898 : return complete_seq (expand_encoding, operands);
29899 : }
29900 :
29901 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18053 */
29902 : rtx
29903 : gen_cond_smaxv4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29904 : {
29905 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29906 : start_sequence ();
29907 : {
29908 : #define FAIL return (end_sequence (), nullptr)
29909 : #define DONE return end_sequence ()
29910 : #line 18062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29911 : {
29912 : emit_insn (gen_smaxv4si3_mask (operands[0],
29913 : operands[2],
29914 : operands[3],
29915 : operands[4],
29916 : operands[1]));
29917 : DONE;
29918 : }
29919 : #undef DONE
29920 : #undef FAIL
29921 : }
29922 : static const uint8_t expand_encoding[] = {
29923 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x53,
29924 : 0x51, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29925 : 0x01
29926 : };
29927 : return complete_seq (expand_encoding, operands);
29928 : }
29929 :
29930 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18053 */
29931 : rtx
29932 : gen_cond_umaxv4di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29933 : {
29934 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29935 : start_sequence ();
29936 : {
29937 : #define FAIL return (end_sequence (), nullptr)
29938 : #define DONE return end_sequence ()
29939 : #line 18062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29940 : {
29941 : emit_insn (gen_umaxv4di3_mask (operands[0],
29942 : operands[2],
29943 : operands[3],
29944 : operands[4],
29945 : operands[1]));
29946 : DONE;
29947 : }
29948 : #undef DONE
29949 : #undef FAIL
29950 : }
29951 : static const uint8_t expand_encoding[] = {
29952 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x55,
29953 : 0x57, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
29954 : 0x01
29955 : };
29956 : return complete_seq (expand_encoding, operands);
29957 : }
29958 :
29959 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18071 */
29960 : rtx
29961 : gen_smaxv32qi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29962 : {
29963 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29964 : start_sequence ();
29965 : {
29966 : #define FAIL return (end_sequence (), nullptr)
29967 : #define DONE return end_sequence ()
29968 : #line 18080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29969 : ix86_fixup_binary_operands_no_copy (SMAX, V32QImode, operands);
29970 : #undef DONE
29971 : #undef FAIL
29972 : }
29973 : static const uint8_t expand_encoding[] = {
29974 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x54, 0x53,
29975 : 0x54, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29976 : 0x04
29977 : };
29978 : return complete_seq (expand_encoding, operands);
29979 : }
29980 :
29981 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18071 */
29982 : rtx
29983 : gen_umaxv32hi3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
29984 : {
29985 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
29986 : start_sequence ();
29987 : {
29988 : #define FAIL return (end_sequence (), nullptr)
29989 : #define DONE return end_sequence ()
29990 : #line 18080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
29991 : ix86_fixup_binary_operands_no_copy (UMAX, V32HImode, operands);
29992 : #undef DONE
29993 : #undef FAIL
29994 : }
29995 : static const uint8_t expand_encoding[] = {
29996 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x55,
29997 : 0x5a, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
29998 : 0x04
29999 : };
30000 : return complete_seq (expand_encoding, operands);
30001 : }
30002 :
30003 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18071 */
30004 : rtx
30005 : gen_smaxv16si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30006 : {
30007 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30008 : start_sequence ();
30009 : {
30010 : #define FAIL return (end_sequence (), nullptr)
30011 : #define DONE return end_sequence ()
30012 : #line 18080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30013 : ix86_fixup_binary_operands_no_copy (SMAX, V16SImode, operands);
30014 : #undef DONE
30015 : #undef FAIL
30016 : }
30017 : static const uint8_t expand_encoding[] = {
30018 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x53,
30019 : 0x5b, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30020 : 0x04
30021 : };
30022 : return complete_seq (expand_encoding, operands);
30023 : }
30024 :
30025 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18071 */
30026 : rtx
30027 : gen_umaxv4si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30028 : {
30029 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30030 : start_sequence ();
30031 : {
30032 : #define FAIL return (end_sequence (), nullptr)
30033 : #define DONE return end_sequence ()
30034 : #line 18080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30035 : ix86_fixup_binary_operands_no_copy (UMAX, V4SImode, operands);
30036 : #undef DONE
30037 : #undef FAIL
30038 : }
30039 : static const uint8_t expand_encoding[] = {
30040 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x55,
30041 : 0x51, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30042 : 0x04
30043 : };
30044 : return complete_seq (expand_encoding, operands);
30045 : }
30046 :
30047 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18071 */
30048 : rtx
30049 : gen_smaxv2di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30050 : {
30051 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30052 : start_sequence ();
30053 : {
30054 : #define FAIL return (end_sequence (), nullptr)
30055 : #define DONE return end_sequence ()
30056 : #line 18080 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30057 : ix86_fixup_binary_operands_no_copy (SMAX, V2DImode, operands);
30058 : #undef DONE
30059 : #undef FAIL
30060 : }
30061 : static const uint8_t expand_encoding[] = {
30062 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x52, 0x53,
30063 : 0x52, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30064 : 0x04
30065 : };
30066 : return complete_seq (expand_encoding, operands);
30067 : }
30068 :
30069 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18106 */
30070 : rtx
30071 : gen_umaxv4di3 (const rtx operand0, const rtx operand1, const rtx operand2)
30072 : {
30073 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30074 : start_sequence ();
30075 : {
30076 : #define FAIL return (end_sequence (), nullptr)
30077 : #define DONE return end_sequence ()
30078 : #line 18112 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30079 : {
30080 : if (TARGET_AVX512F
30081 : && (V4DImode == V8DImode || TARGET_AVX512VL))
30082 : ;
30083 : else
30084 : {
30085 : enum rtx_code code;
30086 : rtx xops[6];
30087 : bool ok;
30088 :
30089 :
30090 : xops[0] = operands[0];
30091 :
30092 : if (UMAX == SMAX || UMAX == UMAX)
30093 : {
30094 : xops[1] = operands[1];
30095 : xops[2] = operands[2];
30096 : }
30097 : else
30098 : {
30099 : xops[1] = operands[2];
30100 : xops[2] = operands[1];
30101 : }
30102 :
30103 : code = (UMAX == UMAX || UMAX == UMIN) ? GTU : GT;
30104 :
30105 : xops[3] = gen_rtx_fmt_ee (code, VOIDmode, operands[1], operands[2]);
30106 : xops[4] = operands[1];
30107 : xops[5] = operands[2];
30108 :
30109 : ok = ix86_expand_int_vcond (xops);
30110 : gcc_assert (ok);
30111 : DONE;
30112 : }
30113 : }
30114 : #undef DONE
30115 : #undef FAIL
30116 : }
30117 : static const uint8_t expand_encoding[] = {
30118 : 0x01, 0x1f, 0x01, 0x00, 0x55, 0x57, 0x01, 0x01,
30119 : 0x01, 0x02
30120 : };
30121 : return complete_seq (expand_encoding, operands);
30122 : }
30123 :
30124 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18148 */
30125 : rtx
30126 : gen_smaxv4si3 (const rtx operand0, const rtx operand1, const rtx operand2)
30127 : {
30128 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30129 : start_sequence ();
30130 : {
30131 : #define FAIL return (end_sequence (), nullptr)
30132 : #define DONE return end_sequence ()
30133 : #line 18154 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30134 : {
30135 : if (TARGET_SSE4_1 || V4SImode == V8HImode)
30136 : ix86_fixup_binary_operands_no_copy (SMAX, V4SImode, operands);
30137 : else
30138 : {
30139 : rtx xops[6];
30140 : bool ok;
30141 :
30142 : xops[0] = operands[0];
30143 : operands[1] = force_reg (V4SImode, operands[1]);
30144 : operands[2] = force_reg (V4SImode, operands[2]);
30145 :
30146 : if (SMAX == SMAX)
30147 : {
30148 : xops[1] = operands[1];
30149 : xops[2] = operands[2];
30150 : }
30151 : else
30152 : {
30153 : xops[1] = operands[2];
30154 : xops[2] = operands[1];
30155 : }
30156 :
30157 : xops[3] = gen_rtx_GT (VOIDmode, operands[1], operands[2]);
30158 : xops[4] = operands[1];
30159 : xops[5] = operands[2];
30160 :
30161 : ok = ix86_expand_int_vcond (xops);
30162 : gcc_assert (ok);
30163 : DONE;
30164 : }
30165 : }
30166 : #undef DONE
30167 : #undef FAIL
30168 : }
30169 : static const uint8_t expand_encoding[] = {
30170 : 0x01, 0x1f, 0x01, 0x00, 0x53, 0x51, 0x01, 0x01,
30171 : 0x01, 0x02
30172 : };
30173 : return complete_seq (expand_encoding, operands);
30174 : }
30175 :
30176 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18331 */
30177 : extern rtx_insn *gen_split_3350 (rtx_insn *, rtx *);
30178 : rtx_insn *
30179 : gen_split_3350 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30180 : {
30181 : if (dump_file)
30182 : fprintf (dump_file, "Splitting with gen_split_3350 (sse.md:18331)\n");
30183 : start_sequence ();
30184 : #define FAIL return (end_sequence (), nullptr)
30185 : #define DONE return end_sequence ()
30186 : #line 18346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30187 : operands[5] = force_reg (V16HImode, operands[2]);
30188 : #undef DONE
30189 : #undef FAIL
30190 : static const uint8_t expand_encoding[] = {
30191 : 0x01, 0x1f, 0x01, 0x00, 0x5d, 0x55, 0x01, 0x01,
30192 : 0x01, 0x05
30193 : };
30194 : return complete_seq (expand_encoding, operands);
30195 : }
30196 :
30197 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18349 */
30198 : extern rtx_insn *gen_split_3356 (rtx_insn *, rtx *);
30199 : rtx_insn *
30200 : gen_split_3356 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30201 : {
30202 : if (dump_file)
30203 : fprintf (dump_file, "Splitting with gen_split_3356 (sse.md:18349)\n");
30204 : start_sequence ();
30205 : #define FAIL return (end_sequence (), nullptr)
30206 : #define DONE return end_sequence ()
30207 : #line 18372 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30208 : {
30209 : if (INTVAL (operands[5]) == 1)
30210 : std::swap (operands[3], operands[4]);
30211 :
30212 : if (operands[3] == CONST0_RTX (V16QImode))
30213 : operands[3] = force_reg (V16QImode, operands[3]);
30214 : if (operands[4] == CONST0_RTX (V16QImode))
30215 : operands[4] = force_reg (V16QImode, operands[4]);
30216 :
30217 : enum rtx_code code = INTVAL (operands[5]) ? GT : EQ;
30218 : emit_move_insn (operands[0], gen_rtx_fmt_ee (code, V16QImode,
30219 : operands[3], operands[4]));
30220 : DONE;
30221 : }
30222 : #undef DONE
30223 : #undef FAIL
30224 : static const uint8_t expand_encoding[] = {
30225 : 0x01, 0x27, 0x00
30226 : };
30227 : return complete_seq (expand_encoding, operands);
30228 : }
30229 :
30230 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18387 */
30231 : extern rtx_insn *gen_split_3366 (rtx_insn *, rtx *);
30232 : rtx_insn *
30233 : gen_split_3366 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30234 : {
30235 : if (dump_file)
30236 : fprintf (dump_file, "Splitting with gen_split_3366 (sse.md:18387)\n");
30237 : start_sequence ();
30238 : #define FAIL return (end_sequence (), nullptr)
30239 : #define DONE return end_sequence ()
30240 : #line 18411 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30241 : {
30242 : if (INTVAL (operands[5]) == 5)
30243 : std::swap (operands[3], operands[4]);
30244 : enum rtx_code code = INTVAL (operands[5]) != 4 ? GT : EQ;
30245 : emit_move_insn (operands[0], gen_rtx_fmt_ee (code, V4SImode,
30246 : operands[3], operands[4]));
30247 : DONE;
30248 : }
30249 : #undef DONE
30250 : #undef FAIL
30251 : static const uint8_t expand_encoding[] = {
30252 : 0x01, 0x27, 0x00
30253 : };
30254 : return complete_seq (expand_encoding, operands);
30255 : }
30256 :
30257 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18481 */
30258 : extern rtx_insn *gen_split_3376 (rtx_insn *, rtx *);
30259 : rtx_insn *
30260 : gen_split_3376 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30261 : {
30262 : if (dump_file)
30263 : fprintf (dump_file, "Splitting with gen_split_3376 (sse.md:18481)\n");
30264 : start_sequence ();
30265 : #define FAIL return (end_sequence (), nullptr)
30266 : #define DONE return end_sequence ()
30267 : #line 18505 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30268 : {
30269 : if (INTVAL (operands[5]) == 5)
30270 : std::swap (operands[1], operands[2]);
30271 : }
30272 : #undef DONE
30273 : #undef FAIL
30274 : static const uint8_t expand_encoding[] = {
30275 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x03, 0x01,
30276 : 0x01, 0x01, 0x02, 0x61, 0x54, 0x01, 0x03, 0x01,
30277 : 0x04, 0x34
30278 : };
30279 : return complete_seq (expand_encoding, operands);
30280 : }
30281 :
30282 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18513 */
30283 : extern rtx_insn *gen_split_3386 (rtx_insn *, rtx *);
30284 : rtx_insn *
30285 : gen_split_3386 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30286 : {
30287 : if (dump_file)
30288 : fprintf (dump_file, "Splitting with gen_split_3386 (sse.md:18513)\n");
30289 : start_sequence ();
30290 : #define FAIL return (end_sequence (), nullptr)
30291 : #define DONE return end_sequence ()
30292 : #line 18528 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30293 : {
30294 : rtx dst_min = gen_reg_rtx (V32QImode);
30295 :
30296 : if (MEM_P (operands[3]) && MEM_P (operands[4]))
30297 : operands[3] = force_reg (V32QImode, operands[3]);
30298 : emit_insn (gen_sminv32qi3 (dst_min, operands[3], operands[4]));
30299 : rtx eq_op = INTVAL (operands[5]) == 2 ? operands[3] : operands[4];
30300 : emit_move_insn (operands[0], gen_rtx_EQ (V32QImode, eq_op, dst_min));
30301 : DONE;
30302 : }
30303 : #undef DONE
30304 : #undef FAIL
30305 : static const uint8_t expand_encoding[] = {
30306 : 0x01, 0x27, 0x00
30307 : };
30308 : return complete_seq (expand_encoding, operands);
30309 : }
30310 :
30311 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18539 */
30312 : extern rtx_insn *gen_split_3396 (rtx_insn *, rtx *);
30313 : rtx_insn *
30314 : gen_split_3396 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30315 : {
30316 : if (dump_file)
30317 : fprintf (dump_file, "Splitting with gen_split_3396 (sse.md:18539)\n");
30318 : start_sequence ();
30319 : #define FAIL return (end_sequence (), nullptr)
30320 : #define DONE return end_sequence ()
30321 : #line 18559 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30322 : {
30323 : if (INTVAL (operands[5]) == 5)
30324 : std::swap (operands[3], operands[4]);
30325 :
30326 : if (MEM_P (operands[3]))
30327 : operands[3] = force_reg (V4SImode, operands[3]);
30328 : enum rtx_code code = INTVAL (operands[5]) != 4 ? GT : EQ;
30329 : emit_move_insn (operands[0], gen_rtx_fmt_ee (code, V4SImode,
30330 : operands[3], operands[4]));
30331 : DONE;
30332 : }
30333 : #undef DONE
30334 : #undef FAIL
30335 : static const uint8_t expand_encoding[] = {
30336 : 0x01, 0x27, 0x00
30337 : };
30338 : return complete_seq (expand_encoding, operands);
30339 : }
30340 :
30341 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18571 */
30342 : extern rtx_insn *gen_split_3406 (rtx_insn *, rtx *);
30343 : rtx_insn *
30344 : gen_split_3406 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
30345 : {
30346 : if (dump_file)
30347 : fprintf (dump_file, "Splitting with gen_split_3406 (sse.md:18571)\n");
30348 : start_sequence ();
30349 : #define FAIL return (end_sequence (), nullptr)
30350 : #define DONE return end_sequence ()
30351 : #line 18588 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30352 : {
30353 : if (MEM_P (operands[3]))
30354 : operands[3] = force_reg (V32QImode, operands[3]);
30355 : emit_move_insn (operands[0], gen_rtx_fmt_ee (EQ, V32QImode,
30356 : operands[3], operands[4]));
30357 : DONE;
30358 : }
30359 : #undef DONE
30360 : #undef FAIL
30361 : static const uint8_t expand_encoding[] = {
30362 : 0x01, 0x27, 0x00
30363 : };
30364 : return complete_seq (expand_encoding, operands);
30365 : }
30366 :
30367 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18596 */
30368 : rtx
30369 : gen_avx512bw_eqv32hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30370 : {
30371 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30372 : start_sequence ();
30373 : {
30374 : #define FAIL return (end_sequence (), nullptr)
30375 : #define DONE return end_sequence ()
30376 : #line 18604 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30377 : ix86_fixup_binary_operands_no_copy (EQ, V32HImode, operands);
30378 : #undef DONE
30379 : #undef FAIL
30380 : }
30381 : static const uint8_t expand_encoding[] = {
30382 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x03, 0x01,
30383 : 0x01, 0x01, 0x02, 0x27, 0x00, 0x3c
30384 : };
30385 : return complete_seq (expand_encoding, operands);
30386 : }
30387 :
30388 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18606 */
30389 : rtx
30390 : gen_avx512vl_eqv4si3 (const rtx operand0, const rtx operand1, const rtx operand2)
30391 : {
30392 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30393 : start_sequence ();
30394 : {
30395 : #define FAIL return (end_sequence (), nullptr)
30396 : #define DONE return end_sequence ()
30397 : #line 18614 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30398 : ix86_fixup_binary_operands_no_copy (EQ, V4SImode, operands);
30399 : #undef DONE
30400 : #undef FAIL
30401 : }
30402 : static const uint8_t expand_encoding[] = {
30403 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01,
30404 : 0x01, 0x01, 0x02, 0x27, 0x00, 0x3c
30405 : };
30406 : return complete_seq (expand_encoding, operands);
30407 : }
30408 :
30409 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18682 */
30410 : rtx
30411 : gen_avx512vl_gtv8si3 (const rtx operand0, const rtx operand1, const rtx operand2)
30412 : {
30413 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30414 : static const uint8_t expand_encoding[] = {
30415 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01, 0x01,
30416 : 0x01, 0x02, 0x27, 0x06, 0x3c
30417 : };
30418 : return expand_rtx (expand_encoding, operands);
30419 : }
30420 :
30421 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18682 */
30422 : rtx
30423 : gen_avx512vl_gtv2di3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30424 : {
30425 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30426 : static const uint8_t expand_encoding[] = {
30427 : 0x1f, 0x01, 0x00, 0x49, 0x0f, 0x1a, 0x0f, 0x03,
30428 : 0x01, 0x01, 0x01, 0x02, 0x27, 0x06, 0x3c, 0x01,
30429 : 0x03
30430 : };
30431 : return expand_rtx (expand_encoding, operands);
30432 : }
30433 :
30434 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18690 */
30435 : rtx
30436 : gen_avx512vl_gtv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30437 : {
30438 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30439 : static const uint8_t expand_encoding[] = {
30440 : 0x1f, 0x01, 0x00, 0x1a, 0x0f, 0x03, 0x01, 0x01,
30441 : 0x01, 0x02, 0x27, 0x06, 0x3c
30442 : };
30443 : return expand_rtx (expand_encoding, operands);
30444 : }
30445 :
30446 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18725 */
30447 : rtx
30448 : gen_vec_permv32qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30449 : {
30450 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30451 : start_sequence ();
30452 : {
30453 : #define FAIL return (end_sequence (), nullptr)
30454 : #define DONE return end_sequence ()
30455 : #line 18731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30456 : {
30457 : ix86_expand_vec_perm (operands);
30458 : DONE;
30459 : }
30460 : #undef DONE
30461 : #undef FAIL
30462 : }
30463 : static const uint8_t expand_encoding[] = {
30464 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
30465 : 0x03
30466 : };
30467 : return complete_seq (expand_encoding, operands);
30468 : }
30469 :
30470 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18725 */
30471 : rtx
30472 : gen_vec_permv8di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
30473 : {
30474 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
30475 : start_sequence ();
30476 : {
30477 : #define FAIL return (end_sequence (), nullptr)
30478 : #define DONE return end_sequence ()
30479 : #line 18731 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30480 : {
30481 : ix86_expand_vec_perm (operands);
30482 : DONE;
30483 : }
30484 : #undef DONE
30485 : #undef FAIL
30486 : }
30487 : static const uint8_t expand_encoding[] = {
30488 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
30489 : 0x03
30490 : };
30491 : return complete_seq (expand_encoding, operands);
30492 : }
30493 :
30494 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18742 */
30495 : rtx
30496 : gen_one_cmplv16hi2 (const rtx operand0, const rtx operand1)
30497 : {
30498 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
30499 : start_sequence ();
30500 : {
30501 : #define FAIL return (end_sequence (), nullptr)
30502 : #define DONE return end_sequence ()
30503 : #line 18747 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30504 : {
30505 : operands[2] = CONSTM1_RTX (V16HImode);
30506 :
30507 : if (!TARGET_AVX512F)
30508 : operands[2] = force_reg (V16HImode, operands[2]);
30509 : }
30510 : #undef DONE
30511 : #undef FAIL
30512 : }
30513 : static const uint8_t expand_encoding[] = {
30514 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x55, 0x01, 0x01,
30515 : 0x01, 0x02
30516 : };
30517 : return complete_seq (expand_encoding, operands);
30518 : }
30519 :
30520 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18754 */
30521 : extern rtx_insn *gen_split_3414 (rtx_insn *, rtx *);
30522 : rtx_insn *
30523 : gen_split_3414 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30524 : {
30525 : if (dump_file)
30526 : fprintf (dump_file, "Splitting with gen_split_3414 (sse.md:18754)\n");
30527 : start_sequence ();
30528 : #define FAIL return (end_sequence (), nullptr)
30529 : #define DONE return end_sequence ()
30530 : #line 18775 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30531 : {
30532 : if (MEM_P (operands[1]))
30533 : {
30534 : operands[3] = operands[1];
30535 : operands[1] = operands[0];
30536 : }
30537 : else
30538 : {
30539 : if (GET_MODE_SIZE (QImode) < 4)
30540 : {
30541 : if (16 == 64 ? TARGET_AVX512BW
30542 : : (TARGET_AVX512BW && TARGET_AVX512VL)
30543 : || !EXT_REX_SSE_REG_P (operands[0]))
30544 : {
30545 : operands[3] = operands[1];
30546 : operands[1] = operands[0];
30547 : }
30548 : else
30549 : operands[3] = CONST0_RTX (V16QImode);
30550 : }
30551 : else
30552 : {
30553 : if (16 == 64 || TARGET_AVX512VL
30554 : || !EXT_REX_SSE_REG_P (operands[0]))
30555 : {
30556 : operands[3] = operands[1];
30557 : operands[1] = operands[0];
30558 : }
30559 : else
30560 : operands[3] = CONST0_RTX (V16QImode);
30561 : }
30562 : }
30563 : }
30564 : #undef DONE
30565 : #undef FAIL
30566 : static const uint8_t expand_encoding[] = {
30567 : 0x02, 0x1f, 0x01, 0x00, 0x01, 0x03, 0x17, 0x00,
30568 : 0x02, 0x1f, 0x01, 0x00, 0x4b, 0x4f, 0x01, 0x01,
30569 : 0x01, 0x02, 0x1a, 0x00, 0x01, 0x01, 0x00, 0x27
30570 : };
30571 : return complete_seq (expand_encoding, operands);
30572 : }
30573 :
30574 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18843 */
30575 : extern rtx_insn *gen_split_3424 (rtx_insn *, rtx *);
30576 : rtx_insn *
30577 : gen_split_3424 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30578 : {
30579 : if (dump_file)
30580 : fprintf (dump_file, "Splitting with gen_split_3424 (sse.md:18843)\n");
30581 : start_sequence ();
30582 : #define FAIL return (end_sequence (), nullptr)
30583 : #define DONE return end_sequence ()
30584 : #line 18854 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30585 : operands[2] = CONSTM1_RTX (V4SImode);
30586 : #undef DONE
30587 : #undef FAIL
30588 : static const uint8_t expand_encoding[] = {
30589 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x51, 0x81, 0x0c,
30590 : 0x51, 0x01, 0x01, 0x01, 0x02
30591 : };
30592 : return complete_seq (expand_encoding, operands);
30593 : }
30594 :
30595 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18856 */
30596 : rtx
30597 : gen_avx2_andnotv16hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30598 : {
30599 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30600 : static const uint8_t expand_encoding[] = {
30601 : 0x1f, 0x01, 0x00, 0x49, 0x55, 0x4c, 0x55, 0x01,
30602 : 0x01, 0x01, 0x02
30603 : };
30604 : return expand_rtx (expand_encoding, operands);
30605 : }
30606 :
30607 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18856 */
30608 : rtx
30609 : gen_sse2_andnotv2di3 (const rtx operand0, const rtx operand1, const rtx operand2)
30610 : {
30611 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30612 : static const uint8_t expand_encoding[] = {
30613 : 0x1f, 0x01, 0x00, 0x49, 0x52, 0x4c, 0x52, 0x01,
30614 : 0x01, 0x01, 0x02
30615 : };
30616 : return expand_rtx (expand_encoding, operands);
30617 : }
30618 :
30619 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:18863 */
30620 : rtx
30621 : gen_andnv4di3 (const rtx operand0, const rtx operand1, const rtx operand2)
30622 : {
30623 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30624 : static const uint8_t expand_encoding[] = {
30625 : 0x1f, 0x01, 0x00, 0x49, 0x57, 0x4c, 0x57, 0x01,
30626 : 0x02, 0x01, 0x01
30627 : };
30628 : return expand_rtx (expand_encoding, operands);
30629 : }
30630 :
30631 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19025 */
30632 : extern rtx_insn *gen_split_3430 (rtx_insn *, rtx *);
30633 : rtx_insn *
30634 : gen_split_3430 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30635 : {
30636 : if (dump_file)
30637 : fprintf (dump_file, "Splitting with gen_split_3430 (sse.md:19025)\n");
30638 : start_sequence ();
30639 : #define FAIL return (end_sequence (), nullptr)
30640 : #define DONE return end_sequence ()
30641 : #line 19038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30642 : operands[3] = gen_reg_rtx (V64QImode);
30643 : #undef DONE
30644 : #undef FAIL
30645 : static const uint8_t expand_encoding[] = {
30646 : 0x02, 0x1f, 0x01, 0x03, 0x81, 0x0c, 0x59, 0x01,
30647 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x59, 0x4c, 0x59,
30648 : 0x01, 0x03, 0x01, 0x02
30649 : };
30650 : return complete_seq (expand_encoding, operands);
30651 : }
30652 :
30653 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19025 */
30654 : extern rtx_insn *gen_split_3440 (rtx_insn *, rtx *);
30655 : rtx_insn *
30656 : gen_split_3440 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30657 : {
30658 : if (dump_file)
30659 : fprintf (dump_file, "Splitting with gen_split_3440 (sse.md:19025)\n");
30660 : start_sequence ();
30661 : #define FAIL return (end_sequence (), nullptr)
30662 : #define DONE return end_sequence ()
30663 : #line 19038 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30664 : operands[3] = gen_reg_rtx (V4DImode);
30665 : #undef DONE
30666 : #undef FAIL
30667 : static const uint8_t expand_encoding[] = {
30668 : 0x02, 0x1f, 0x01, 0x03, 0x81, 0x0c, 0x57, 0x01,
30669 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x57, 0x4c, 0x57,
30670 : 0x01, 0x03, 0x01, 0x02
30671 : };
30672 : return complete_seq (expand_encoding, operands);
30673 : }
30674 :
30675 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19040 */
30676 : extern rtx_insn *gen_split_3450 (rtx_insn *, rtx *);
30677 : rtx_insn *
30678 : gen_split_3450 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30679 : {
30680 : if (dump_file)
30681 : fprintf (dump_file, "Splitting with gen_split_3450 (sse.md:19040)\n");
30682 : start_sequence ();
30683 : #define FAIL return (end_sequence (), nullptr)
30684 : #define DONE return end_sequence ()
30685 : #line 19053 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30686 : operands[3] = gen_reg_rtx (V8SImode);
30687 : #undef DONE
30688 : #undef FAIL
30689 : static const uint8_t expand_encoding[] = {
30690 : 0x02, 0x1f, 0x01, 0x03, 0x81, 0x0c, 0x56, 0x01,
30691 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x56, 0x4c, 0x56,
30692 : 0x01, 0x03, 0x01, 0x02
30693 : };
30694 : return complete_seq (expand_encoding, operands);
30695 : }
30696 :
30697 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19055 */
30698 : extern rtx_insn *gen_split_3460 (rtx_insn *, rtx *);
30699 : rtx_insn *
30700 : gen_split_3460 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30701 : {
30702 : if (dump_file)
30703 : fprintf (dump_file, "Splitting with gen_split_3460 (sse.md:19055)\n");
30704 : start_sequence ();
30705 : #define FAIL return (end_sequence (), nullptr)
30706 : #define DONE return end_sequence ()
30707 : #line 19068 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30708 : operands[3] = gen_reg_rtx (V16HImode);
30709 : #undef DONE
30710 : #undef FAIL
30711 : static const uint8_t expand_encoding[] = {
30712 : 0x02, 0x1f, 0x01, 0x03, 0x81, 0x0c, 0x55, 0x01,
30713 : 0x01, 0x1f, 0x01, 0x00, 0x4c, 0x55, 0x4b, 0x55,
30714 : 0x01, 0x03, 0x01, 0x02
30715 : };
30716 : return complete_seq (expand_encoding, operands);
30717 : }
30718 :
30719 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19086 */
30720 : rtx
30721 : gen_iorv8di3 (const rtx operand0, const rtx operand1, const rtx operand2)
30722 : {
30723 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30724 : start_sequence ();
30725 : {
30726 : #define FAIL return (end_sequence (), nullptr)
30727 : #define DONE return end_sequence ()
30728 : #line 19092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30729 : {
30730 : ix86_expand_vector_logical_operator (IOR, V8DImode, operands);
30731 : DONE;
30732 : }
30733 : #undef DONE
30734 : #undef FAIL
30735 : }
30736 : static const uint8_t expand_encoding[] = {
30737 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x5c, 0x01, 0x01,
30738 : 0x01, 0x02
30739 : };
30740 : return complete_seq (expand_encoding, operands);
30741 : }
30742 :
30743 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19086 */
30744 : rtx
30745 : gen_xorv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
30746 : {
30747 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30748 : start_sequence ();
30749 : {
30750 : #define FAIL return (end_sequence (), nullptr)
30751 : #define DONE return end_sequence ()
30752 : #line 19092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30753 : {
30754 : ix86_expand_vector_logical_operator (XOR, V16QImode, operands);
30755 : DONE;
30756 : }
30757 : #undef DONE
30758 : #undef FAIL
30759 : }
30760 : static const uint8_t expand_encoding[] = {
30761 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x4f, 0x01, 0x01,
30762 : 0x01, 0x02
30763 : };
30764 : return complete_seq (expand_encoding, operands);
30765 : }
30766 :
30767 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19086 */
30768 : rtx
30769 : gen_andv8si3 (const rtx operand0, const rtx operand1, const rtx operand2)
30770 : {
30771 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30772 : start_sequence ();
30773 : {
30774 : #define FAIL return (end_sequence (), nullptr)
30775 : #define DONE return end_sequence ()
30776 : #line 19092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30777 : {
30778 : ix86_expand_vector_logical_operator (AND, V8SImode, operands);
30779 : DONE;
30780 : }
30781 : #undef DONE
30782 : #undef FAIL
30783 : }
30784 : static const uint8_t expand_encoding[] = {
30785 : 0x01, 0x1f, 0x01, 0x00, 0x49, 0x56, 0x01, 0x01,
30786 : 0x01, 0x02
30787 : };
30788 : return complete_seq (expand_encoding, operands);
30789 : }
30790 :
30791 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19086 */
30792 : rtx
30793 : gen_iorv2di3 (const rtx operand0, const rtx operand1, const rtx operand2)
30794 : {
30795 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30796 : start_sequence ();
30797 : {
30798 : #define FAIL return (end_sequence (), nullptr)
30799 : #define DONE return end_sequence ()
30800 : #line 19092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30801 : {
30802 : ix86_expand_vector_logical_operator (IOR, V2DImode, operands);
30803 : DONE;
30804 : }
30805 : #undef DONE
30806 : #undef FAIL
30807 : }
30808 : static const uint8_t expand_encoding[] = {
30809 : 0x01, 0x1f, 0x01, 0x00, 0x4a, 0x52, 0x01, 0x01,
30810 : 0x01, 0x02
30811 : };
30812 : return complete_seq (expand_encoding, operands);
30813 : }
30814 :
30815 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19097 */
30816 : rtx
30817 : gen_cond_xorv4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30818 : {
30819 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30820 : start_sequence ();
30821 : {
30822 : #define FAIL _Pragma ("GCC error \"cond_xorv4si cannot FAIL\"") (void)0
30823 : #define DONE return end_sequence ()
30824 : #line 19106 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30825 : {
30826 : emit_insn (gen_xorv4si3_mask (operands[0],
30827 : operands[2],
30828 : operands[3],
30829 : operands[4],
30830 : operands[1]));
30831 : DONE;
30832 : }
30833 : #undef DONE
30834 : #undef FAIL
30835 : }
30836 : static const uint8_t expand_encoding[] = {
30837 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x4b,
30838 : 0x51, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
30839 : 0x01
30840 : };
30841 : return complete_seq (expand_encoding, operands);
30842 : }
30843 :
30844 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19115 */
30845 : rtx
30846 : gen_andv16si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30847 : {
30848 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30849 : start_sequence ();
30850 : {
30851 : #define FAIL return (end_sequence (), nullptr)
30852 : #define DONE return end_sequence ()
30853 : #line 19124 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30854 : ix86_fixup_binary_operands_no_copy (AND, V16SImode, operands);
30855 : #undef DONE
30856 : #undef FAIL
30857 : }
30858 : static const uint8_t expand_encoding[] = {
30859 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x49,
30860 : 0x5b, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30861 : 0x04
30862 : };
30863 : return complete_seq (expand_encoding, operands);
30864 : }
30865 :
30866 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19115 */
30867 : rtx
30868 : gen_xorv4si3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
30869 : {
30870 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
30871 : start_sequence ();
30872 : {
30873 : #define FAIL return (end_sequence (), nullptr)
30874 : #define DONE return end_sequence ()
30875 : #line 19124 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30876 : ix86_fixup_binary_operands_no_copy (XOR, V4SImode, operands);
30877 : #undef DONE
30878 : #undef FAIL
30879 : }
30880 : static const uint8_t expand_encoding[] = {
30881 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x4b,
30882 : 0x51, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03, 0x01,
30883 : 0x04
30884 : };
30885 : return complete_seq (expand_encoding, operands);
30886 : }
30887 :
30888 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19345 */
30889 : rtx
30890 : gen_one_cmplv1ti2 (const rtx operand0, const rtx operand1)
30891 : {
30892 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
30893 : start_sequence ();
30894 : {
30895 : #define FAIL return (end_sequence (), nullptr)
30896 : #define DONE return end_sequence ()
30897 : #line 19350 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30898 : {
30899 : operands[2] = force_reg (V1TImode, CONSTM1_RTX (V1TImode));
30900 : }
30901 : #undef DONE
30902 : #undef FAIL
30903 : }
30904 : static const uint8_t expand_encoding[] = {
30905 : 0x01, 0x1f, 0x01, 0x00, 0x4b, 0x53, 0x01, 0x01,
30906 : 0x01, 0x02
30907 : };
30908 : return complete_seq (expand_encoding, operands);
30909 : }
30910 :
30911 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:19549 */
30912 : rtx
30913 : gen_vec_pack_trunc_qi (const rtx operand0, const rtx operand1, const rtx operand2)
30914 : {
30915 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30916 : static const uint8_t expand_encoding[] = {
30917 : 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x4a, 0x10,
30918 : 0x4d, 0x10, 0x6f, 0x10, 0x01, 0x02, 0x27, 0x08,
30919 : 0x6f, 0x10, 0x01, 0x01, 0x1a, 0x00, 0x01, 0x27,
30920 : 0x00, 0x81, 0x2f
30921 : };
30922 : return expand_rtx (expand_encoding, operands);
30923 : }
30924 :
30925 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20226 */
30926 : rtx
30927 : gen_vec_interleave_highv32qi (const rtx operand0, const rtx operand1, const rtx operand2)
30928 : {
30929 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
30930 : start_sequence ();
30931 : {
30932 : #define FAIL return (end_sequence (), nullptr)
30933 : #define DONE return end_sequence ()
30934 : #line 20231 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30935 : {
30936 : rtx t1 = gen_reg_rtx (V32QImode);
30937 : rtx t2 = gen_reg_rtx (V32QImode);
30938 : rtx t3 = gen_reg_rtx (V4DImode);
30939 : emit_insn (gen_avx2_interleave_lowv32qi (t1, operands[1], operands[2]));
30940 : emit_insn (gen_avx2_interleave_highv32qi (t2, operands[1], operands[2]));
30941 : emit_insn (gen_avx2_permv2ti (t3, gen_lowpart (V4DImode, t1),
30942 : gen_lowpart (V4DImode, t2),
30943 : GEN_INT (1 + (3 << 4))));
30944 : emit_move_insn (operands[0], gen_lowpart (V32QImode, t3));
30945 : DONE;
30946 : }
30947 : #undef DONE
30948 : #undef FAIL
30949 : }
30950 : static const uint8_t expand_encoding[] = {
30951 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
30952 : };
30953 : return complete_seq (expand_encoding, operands);
30954 : }
30955 :
30956 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20346 */
30957 : extern rtx_insn *gen_split_3467 (rtx_insn *, rtx *);
30958 : rtx_insn *
30959 : gen_split_3467 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
30960 : {
30961 : if (dump_file)
30962 : fprintf (dump_file, "Splitting with gen_split_3467 (sse.md:20346)\n");
30963 : start_sequence ();
30964 : static const uint8_t expand_encoding[] = {
30965 : 0x02, 0x1f, 0x01, 0x00, 0x81, 0x0c, 0x6a, 0x01,
30966 : 0x02, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6a, 0x01,
30967 : 0x00, 0x01, 0x01, 0x01, 0x03
30968 : };
30969 : return complete_seq (expand_encoding, operands);
30970 : }
30971 :
30972 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:20559 */
30973 : rtx
30974 : gen_avx512dq_shuf_i64x2_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
30975 : {
30976 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
30977 : start_sequence ();
30978 : {
30979 : #define FAIL return (end_sequence (), nullptr)
30980 : #define DONE return end_sequence ()
30981 : #line 20567 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
30982 : {
30983 : int mask = INTVAL (operands[3]);
30984 : emit_insn (gen_avx512dq_shuf_i64x2_1_mask
30985 : (operands[0], operands[1], operands[2],
30986 : GEN_INT (((mask >> 0) & 1) * 2 + 0),
30987 : GEN_INT (((mask >> 0) & 1) * 2 + 1),
30988 : GEN_INT (((mask >> 1) & 1) * 2 + 4),
30989 : GEN_INT (((mask >> 1) & 1) * 2 + 5),
30990 : operands[4], operands[5]));
30991 : DONE;
30992 : }
30993 : #undef DONE
30994 : #undef FAIL
30995 : }
30996 : static const uint8_t expand_encoding[] = {
30997 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
30998 : 0x03, 0x01, 0x04, 0x01, 0x05
30999 : };
31000 : return complete_seq (expand_encoding, operands);
31001 : }
31002 :
31003 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21015 */
31004 : rtx
31005 : gen_avx2_pshufdv3 (const rtx operand0, const rtx operand1, const rtx operand2)
31006 : {
31007 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
31008 : start_sequence ();
31009 : {
31010 : #define FAIL return (end_sequence (), nullptr)
31011 : #define DONE return end_sequence ()
31012 : #line 21020 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31013 : {
31014 : int mask = INTVAL (operands[2]);
31015 : emit_insn (gen_avx2_pshufd_1 (operands[0], operands[1],
31016 : GEN_INT ((mask >> 0) & 3),
31017 : GEN_INT ((mask >> 2) & 3),
31018 : GEN_INT ((mask >> 4) & 3),
31019 : GEN_INT ((mask >> 6) & 3),
31020 : GEN_INT (((mask >> 0) & 3) + 4),
31021 : GEN_INT (((mask >> 2) & 3) + 4),
31022 : GEN_INT (((mask >> 4) & 3) + 4),
31023 : GEN_INT (((mask >> 6) & 3) + 4)));
31024 : DONE;
31025 : }
31026 : #undef DONE
31027 : #undef FAIL
31028 : }
31029 : static const uint8_t expand_encoding[] = {
31030 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
31031 : };
31032 : return complete_seq (expand_encoding, operands);
31033 : }
31034 :
31035 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21282 */
31036 : rtx
31037 : gen_avx2_pshufhwv3 (const rtx operand0, const rtx operand1, const rtx operand2)
31038 : {
31039 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
31040 : start_sequence ();
31041 : {
31042 : #define FAIL return (end_sequence (), nullptr)
31043 : #define DONE return end_sequence ()
31044 : #line 21287 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31045 : {
31046 : int mask = INTVAL (operands[2]);
31047 : emit_insn (gen_avx2_pshufhw_1 (operands[0], operands[1],
31048 : GEN_INT (((mask >> 0) & 3) + 4),
31049 : GEN_INT (((mask >> 2) & 3) + 4),
31050 : GEN_INT (((mask >> 4) & 3) + 4),
31051 : GEN_INT (((mask >> 6) & 3) + 4),
31052 : GEN_INT (((mask >> 0) & 3) + 12),
31053 : GEN_INT (((mask >> 2) & 3) + 12),
31054 : GEN_INT (((mask >> 4) & 3) + 12),
31055 : GEN_INT (((mask >> 6) & 3) + 12)));
31056 : DONE;
31057 : }
31058 : #undef DONE
31059 : #undef FAIL
31060 : }
31061 : static const uint8_t expand_encoding[] = {
31062 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
31063 : };
31064 : return complete_seq (expand_encoding, operands);
31065 : }
31066 :
31067 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:21812 */
31068 : extern rtx_insn *gen_split_3476 (rtx_insn *, rtx *);
31069 : rtx_insn *
31070 : gen_split_3476 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31071 : {
31072 : if (dump_file)
31073 : fprintf (dump_file, "Splitting with gen_split_3476 (sse.md:21812)\n");
31074 : start_sequence ();
31075 : #define FAIL return (end_sequence (), nullptr)
31076 : #define DONE return end_sequence ()
31077 : #line 21820 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31078 : {
31079 : int offs = INTVAL (operands[2]) * GET_MODE_SIZE (QImode);
31080 :
31081 : operands[1] = adjust_address (operands[1], QImode, offs);
31082 : }
31083 : #undef DONE
31084 : #undef FAIL
31085 : static const uint8_t expand_encoding[] = {
31086 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
31087 : };
31088 : return complete_seq (expand_encoding, operands);
31089 : }
31090 :
31091 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22155 */
31092 : extern rtx_insn *gen_split_3486 (rtx_insn *, rtx *);
31093 : rtx_insn *
31094 : gen_split_3486 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31095 : {
31096 : if (dump_file)
31097 : fprintf (dump_file, "Splitting with gen_split_3486 (sse.md:22155)\n");
31098 : start_sequence ();
31099 : static const uint8_t expand_encoding[] = {
31100 : 0x01, 0x1f, 0x01, 0x00, 0x32, 0x52, 0x01, 0x01,
31101 : 0x00
31102 : };
31103 : return complete_seq (expand_encoding, operands);
31104 : }
31105 :
31106 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22207 */
31107 : rtx
31108 : gen_vec_unpacks_lo_v8hi (const rtx operand0, const rtx operand1)
31109 : {
31110 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31111 : start_sequence ();
31112 : {
31113 : #define FAIL return (end_sequence (), nullptr)
31114 : #define DONE return end_sequence ()
31115 : #line 22211 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31116 : ix86_expand_sse_unpack (operands[0], operands[1], false, false); DONE;
31117 : #undef DONE
31118 : #undef FAIL
31119 : }
31120 : static const uint8_t expand_encoding[] = {
31121 : 0x02, 0x01, 0x00, 0x01, 0x01
31122 : };
31123 : return complete_seq (expand_encoding, operands);
31124 : }
31125 :
31126 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22213 */
31127 : rtx
31128 : gen_vec_unpacks_hi_v16hi (const rtx operand0, const rtx operand1)
31129 : {
31130 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31131 : start_sequence ();
31132 : {
31133 : #define FAIL return (end_sequence (), nullptr)
31134 : #define DONE return end_sequence ()
31135 : #line 22217 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31136 : ix86_expand_sse_unpack (operands[0], operands[1], false, true); DONE;
31137 : #undef DONE
31138 : #undef FAIL
31139 : }
31140 : static const uint8_t expand_encoding[] = {
31141 : 0x02, 0x01, 0x00, 0x01, 0x01
31142 : };
31143 : return complete_seq (expand_encoding, operands);
31144 : }
31145 :
31146 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22219 */
31147 : rtx
31148 : gen_vec_unpacku_lo_v8hi (const rtx operand0, const rtx operand1)
31149 : {
31150 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31151 : start_sequence ();
31152 : {
31153 : #define FAIL return (end_sequence (), nullptr)
31154 : #define DONE return end_sequence ()
31155 : #line 22223 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31156 : ix86_expand_sse_unpack (operands[0], operands[1], true, false); DONE;
31157 : #undef DONE
31158 : #undef FAIL
31159 : }
31160 : static const uint8_t expand_encoding[] = {
31161 : 0x02, 0x01, 0x00, 0x01, 0x01
31162 : };
31163 : return complete_seq (expand_encoding, operands);
31164 : }
31165 :
31166 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22252 */
31167 : rtx
31168 : gen_vec_unpacku_hi_v16qi (const rtx operand0, const rtx operand1)
31169 : {
31170 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31171 : start_sequence ();
31172 : {
31173 : #define FAIL return (end_sequence (), nullptr)
31174 : #define DONE return end_sequence ()
31175 : #line 22256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31176 : ix86_expand_sse_unpack (operands[0], operands[1], true, true); DONE;
31177 : #undef DONE
31178 : #undef FAIL
31179 : }
31180 : static const uint8_t expand_encoding[] = {
31181 : 0x02, 0x01, 0x00, 0x01, 0x01
31182 : };
31183 : return complete_seq (expand_encoding, operands);
31184 : }
31185 :
31186 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22289 */
31187 : rtx
31188 : gen_vec_unpacks_hi_di (const rtx operand0, const rtx operand1)
31189 : {
31190 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
31191 : start_sequence ();
31192 : {
31193 : #define FAIL return (end_sequence (), nullptr)
31194 : #define DONE return end_sequence ()
31195 : #line 22298 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31196 : operands[2] = GEN_INT (GET_MODE_BITSIZE (SImode));
31197 : #undef DONE
31198 : #undef FAIL
31199 : }
31200 : static const uint8_t expand_encoding[] = {
31201 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x32, 0x12, 0x01,
31202 : 0x00, 0x00, 0x50, 0x12, 0x01, 0x01, 0x01, 0x02,
31203 : 0x1a, 0x00, 0x01, 0x27, 0x00, 0x81, 0x2f
31204 : };
31205 : return complete_seq (expand_encoding, operands);
31206 : }
31207 :
31208 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22306 */
31209 : rtx
31210 : gen_avx2_uavgv16hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
31211 : {
31212 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
31213 : start_sequence ();
31214 : {
31215 : #define FAIL return (end_sequence (), nullptr)
31216 : #define DONE return end_sequence ()
31217 : #line 22319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31218 : {
31219 : operands[3] = CONST1_RTX(V16SImode);
31220 : ix86_fixup_binary_operands_no_copy (PLUS, V16HImode, operands);
31221 : }
31222 : #undef DONE
31223 : #undef FAIL
31224 : }
31225 : static const uint8_t expand_encoding[] = {
31226 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x55, 0x50, 0x5b,
31227 : 0x3b, 0x5b, 0x3b, 0x5b, 0x6f, 0x5b, 0x01, 0x01,
31228 : 0x6f, 0x5b, 0x01, 0x02, 0x01, 0x03, 0x27, 0x01
31229 : };
31230 : return complete_seq (expand_encoding, operands);
31231 : }
31232 :
31233 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22405 */
31234 : extern rtx_insn *gen_split_3489 (rtx_insn *, rtx *);
31235 : rtx_insn *
31236 : gen_split_3489 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31237 : {
31238 : if (dump_file)
31239 : fprintf (dump_file, "Splitting with gen_split_3489 (sse.md:22405)\n");
31240 : start_sequence ();
31241 : #define FAIL return (end_sequence (), nullptr)
31242 : #define DONE return end_sequence ()
31243 : #line 22417 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31244 : operands[1] = gen_lowpart (V4DFmode, operands[1]);
31245 : #undef DONE
31246 : #undef FAIL
31247 : static const uint8_t expand_encoding[] = {
31248 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01,
31249 : 0x01, 0x32
31250 : };
31251 : return complete_seq (expand_encoding, operands);
31252 : }
31253 :
31254 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22447 */
31255 : extern rtx_insn *gen_split_3499 (rtx_insn *, rtx *);
31256 : rtx_insn *
31257 : gen_split_3499 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31258 : {
31259 : if (dump_file)
31260 : fprintf (dump_file, "Splitting with gen_split_3499 (sse.md:22447)\n");
31261 : start_sequence ();
31262 : #define FAIL return (end_sequence (), nullptr)
31263 : #define DONE return end_sequence ()
31264 : #line 22460 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31265 : operands[1] = gen_lowpart (V4DFmode, operands[1]);
31266 : #undef DONE
31267 : #undef FAIL
31268 : static const uint8_t expand_encoding[] = {
31269 : 0x01, 0x1f, 0x01, 0x00, 0x6e, 0x12, 0x1a, 0x11,
31270 : 0x01, 0x01, 0x01, 0x32
31271 : };
31272 : return complete_seq (expand_encoding, operands);
31273 : }
31274 :
31275 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22466 */
31276 : extern rtx_insn *gen_split_3509 (rtx_insn *, rtx *);
31277 : rtx_insn *
31278 : gen_split_3509 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31279 : {
31280 : if (dump_file)
31281 : fprintf (dump_file, "Splitting with gen_split_3509 (sse.md:22466)\n");
31282 : start_sequence ();
31283 : #define FAIL return (end_sequence (), nullptr)
31284 : #define DONE return end_sequence ()
31285 : #line 22485 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31286 : operands[1] = gen_lowpart (V2DFmode, operands[1]);
31287 : #undef DONE
31288 : #undef FAIL
31289 : static const uint8_t expand_encoding[] = {
31290 : 0x01, 0x1f, 0x01, 0x00, 0x6e, 0x12, 0x1a, 0x11,
31291 : 0x01, 0x01, 0x01, 0x32
31292 : };
31293 : return complete_seq (expand_encoding, operands);
31294 : }
31295 :
31296 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22510 */
31297 : extern rtx_insn *gen_split_3519 (rtx_insn *, rtx *);
31298 : rtx_insn *
31299 : gen_split_3519 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31300 : {
31301 : if (dump_file)
31302 : fprintf (dump_file, "Splitting with gen_split_3519 (sse.md:22510)\n");
31303 : start_sequence ();
31304 : #define FAIL return (end_sequence (), nullptr)
31305 : #define DONE return end_sequence ()
31306 : #line 22524 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31307 : operands[1] = gen_lowpart (V4DFmode, operands[1]);
31308 : #undef DONE
31309 : #undef FAIL
31310 : static const uint8_t expand_encoding[] = {
31311 : 0x01, 0x1f, 0x01, 0x00, 0x6e, 0x12, 0x1a, 0x11,
31312 : 0x01, 0x01, 0x01, 0x32
31313 : };
31314 : return complete_seq (expand_encoding, operands);
31315 : }
31316 :
31317 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22661 */
31318 : extern rtx_insn *gen_split_3530 (rtx_insn *, rtx *);
31319 : rtx_insn *
31320 : gen_split_3530 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31321 : {
31322 : if (dump_file)
31323 : fprintf (dump_file, "Splitting with gen_split_3530 (sse.md:22661)\n");
31324 : start_sequence ();
31325 : #define FAIL return (end_sequence (), nullptr)
31326 : #define DONE return end_sequence ()
31327 : #line 22672 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31328 :
31329 : #undef DONE
31330 : #undef FAIL
31331 : static const uint8_t expand_encoding[] = {
31332 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x11, 0x01, 0x01,
31333 : 0x01, 0x32
31334 : };
31335 : return complete_seq (expand_encoding, operands);
31336 : }
31337 :
31338 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:22763 */
31339 : extern rtx_insn *gen_split_3537 (rtx_insn *, rtx *);
31340 : rtx_insn *
31341 : gen_split_3537 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31342 : {
31343 : if (dump_file)
31344 : fprintf (dump_file, "Splitting with gen_split_3537 (sse.md:22763)\n");
31345 : start_sequence ();
31346 : #define FAIL return (end_sequence (), nullptr)
31347 : #define DONE return end_sequence ()
31348 : #line 22775 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31349 :
31350 : #undef DONE
31351 : #undef FAIL
31352 : static const uint8_t expand_encoding[] = {
31353 : 0x01, 0x1f, 0x01, 0x00, 0x6e, 0x12, 0x1a, 0x11,
31354 : 0x01, 0x01, 0x01, 0x32
31355 : };
31356 : return complete_seq (expand_encoding, operands);
31357 : }
31358 :
31359 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23063 */
31360 : extern rtx_insn *gen_split_3548 (rtx_insn *, rtx *);
31361 : rtx_insn *
31362 : gen_split_3548 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
31363 : {
31364 : if (dump_file)
31365 : fprintf (dump_file, "Splitting with gen_split_3548 (sse.md:23063)\n");
31366 : start_sequence ();
31367 : #define FAIL return (end_sequence (), nullptr)
31368 : #define DONE return end_sequence ()
31369 : #line 23084 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31370 : {
31371 : /* Generate SSE version of the operation. */
31372 : rtx op0 = lowpart_subreg (V8HImode, operands[0],
31373 : GET_MODE (operands[0]));
31374 : rtx op1 = lowpart_subreg (V8HImode, operands[1],
31375 : GET_MODE (operands[1]));
31376 : rtx op2 = lowpart_subreg (V8HImode, operands[2],
31377 : GET_MODE (operands[2]));
31378 : emit_insn (gen_ssse3_phaddwv8hi3 (op0, op1, op2));
31379 : ix86_move_vector_high_sse_to_mmx (op0);
31380 : DONE;
31381 : }
31382 : #undef DONE
31383 : #undef FAIL
31384 : static const uint8_t expand_encoding[] = {
31385 : 0x01, 0x27, 0x00
31386 : };
31387 : return complete_seq (expand_encoding, operands);
31388 : }
31389 :
31390 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23427 */
31391 : rtx
31392 : gen_smulhrsv32hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
31393 : {
31394 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
31395 : start_sequence ();
31396 : {
31397 : #define FAIL return (end_sequence (), nullptr)
31398 : #define DONE return end_sequence ()
31399 : #line 23442 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31400 : {
31401 : operands[3] = CONST1_RTX(V32HImode);
31402 : ix86_fixup_binary_operands_no_copy (MULT, V32HImode, operands);
31403 : }
31404 : #undef DONE
31405 : #undef FAIL
31406 : }
31407 : static const uint8_t expand_encoding[] = {
31408 : 0x01, 0x1f, 0x01, 0x00, 0x70, 0x5a, 0x50, 0x60,
31409 : 0x3b, 0x60, 0x50, 0x60, 0x3e, 0x60, 0x6e, 0x60,
31410 : 0x01, 0x01, 0x6e, 0x60, 0x01, 0x02, 0x27, 0x0e,
31411 : 0x01, 0x03, 0x27, 0x01
31412 : };
31413 : return complete_seq (expand_encoding, operands);
31414 : }
31415 :
31416 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23860 */
31417 : rtx
31418 : gen_absv32qi2 (const rtx operand0, const rtx operand1)
31419 : {
31420 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31421 : start_sequence ();
31422 : {
31423 : #define FAIL return (end_sequence (), nullptr)
31424 : #define DONE return end_sequence ()
31425 : #line 23865 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31426 : {
31427 : if (!TARGET_SSSE3
31428 : || ((V32QImode == V2DImode || V32QImode == V4DImode)
31429 : && !TARGET_AVX512VL))
31430 : {
31431 : ix86_expand_sse2_abs (operands[0], operands[1]);
31432 : DONE;
31433 : }
31434 : }
31435 : #undef DONE
31436 : #undef FAIL
31437 : }
31438 : static const uint8_t expand_encoding[] = {
31439 : 0x01, 0x1f, 0x01, 0x00, 0x7b, 0x54, 0x01, 0x01
31440 : };
31441 : return complete_seq (expand_encoding, operands);
31442 : }
31443 :
31444 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:23860 */
31445 : rtx
31446 : gen_absv8di2 (const rtx operand0, const rtx operand1)
31447 : {
31448 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31449 : start_sequence ();
31450 : {
31451 : #define FAIL return (end_sequence (), nullptr)
31452 : #define DONE return end_sequence ()
31453 : #line 23865 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31454 : {
31455 : if (!TARGET_SSSE3
31456 : || ((V8DImode == V2DImode || V8DImode == V4DImode)
31457 : && !TARGET_AVX512VL))
31458 : {
31459 : ix86_expand_sse2_abs (operands[0], operands[1]);
31460 : DONE;
31461 : }
31462 : }
31463 : #undef DONE
31464 : #undef FAIL
31465 : }
31466 : static const uint8_t expand_encoding[] = {
31467 : 0x01, 0x1f, 0x01, 0x00, 0x7b, 0x5c, 0x01, 0x01
31468 : };
31469 : return complete_seq (expand_encoding, operands);
31470 : }
31471 :
31472 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24077 */
31473 : extern rtx_insn *gen_split_3562 (rtx_insn *, rtx *);
31474 : rtx_insn *
31475 : gen_split_3562 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31476 : {
31477 : if (dump_file)
31478 : fprintf (dump_file, "Splitting with gen_split_3562 (sse.md:24077)\n");
31479 : start_sequence ();
31480 : #define FAIL return (end_sequence (), nullptr)
31481 : #define DONE return end_sequence ()
31482 : #line 24092 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31483 : operands[3] = gen_lowpart (V4DFmode, operands[3]);
31484 : #undef DONE
31485 : #undef FAIL
31486 : static const uint8_t expand_encoding[] = {
31487 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x03, 0x01,
31488 : 0x02, 0x01, 0x01, 0x01, 0x03, 0x34
31489 : };
31490 : return complete_seq (expand_encoding, operands);
31491 : }
31492 :
31493 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24168 */
31494 : extern rtx_insn *gen_split_3572 (rtx_insn *, rtx *);
31495 : rtx_insn *
31496 : gen_split_3572 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31497 : {
31498 : if (dump_file)
31499 : fprintf (dump_file, "Splitting with gen_split_3572 (sse.md:24168)\n");
31500 : start_sequence ();
31501 : #define FAIL return (end_sequence (), nullptr)
31502 : #define DONE return end_sequence ()
31503 : #line 24186 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31504 : {
31505 : operands[0] = gen_lowpart (V4SFmode, operands[0]);
31506 : operands[1] = gen_lowpart (V4SFmode, operands[1]);
31507 : operands[2] = force_reg (V4SFmode,
31508 : gen_lowpart (V4SFmode, operands[2]));
31509 : operands[3] = gen_lowpart (V4SFmode, operands[3]);
31510 : }
31511 : #undef DONE
31512 : #undef FAIL
31513 : static const uint8_t expand_encoding[] = {
31514 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x03, 0x01,
31515 : 0x02, 0x01, 0x01, 0x01, 0x03, 0x34
31516 : };
31517 : return complete_seq (expand_encoding, operands);
31518 : }
31519 :
31520 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24363 */
31521 : extern rtx_insn *gen_split_3582 (rtx_insn *, rtx *);
31522 : rtx_insn *
31523 : gen_split_3582 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31524 : {
31525 : if (dump_file)
31526 : fprintf (dump_file, "Splitting with gen_split_3582 (sse.md:24363)\n");
31527 : start_sequence ();
31528 : #define FAIL return (end_sequence (), nullptr)
31529 : #define DONE return end_sequence ()
31530 : #line 24377 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31531 : operands[4] = gen_lowpart (V32QImode, operands[3]);
31532 : #undef DONE
31533 : #undef FAIL
31534 : static const uint8_t expand_encoding[] = {
31535 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x54, 0x03, 0x01,
31536 : 0x02, 0x01, 0x01, 0x01, 0x04, 0x34
31537 : };
31538 : return complete_seq (expand_encoding, operands);
31539 : }
31540 :
31541 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24492 */
31542 : rtx
31543 : gen_avx2_pblendph (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
31544 : {
31545 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
31546 : start_sequence ();
31547 : {
31548 : #define FAIL return (end_sequence (), nullptr)
31549 : #define DONE return end_sequence ()
31550 : #line 24499 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31551 : {
31552 : HOST_WIDE_INT val = INTVAL (operands[3]) & 0xff;
31553 : operands[3] = GEN_INT (val << 8 | val);
31554 : }
31555 : #undef DONE
31556 : #undef FAIL
31557 : }
31558 : static const uint8_t expand_encoding[] = {
31559 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6e, 0x01,
31560 : 0x02, 0x01, 0x01, 0x01, 0x03
31561 : };
31562 : return complete_seq (expand_encoding, operands);
31563 : }
31564 :
31565 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24642 */
31566 : rtx
31567 : gen_zero_extendv16qiv16hi2 (const rtx operand0, const rtx operand1)
31568 : {
31569 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31570 : static const uint8_t expand_encoding[] = {
31571 : 0x1f, 0x01, 0x00, 0x6f, 0x55, 0x01, 0x01
31572 : };
31573 : return expand_rtx (expand_encoding, operands);
31574 : }
31575 :
31576 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24676 */
31577 : extern rtx_insn *gen_split_3599 (rtx_insn *, rtx *);
31578 : rtx_insn *
31579 : gen_split_3599 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31580 : {
31581 : if (dump_file)
31582 : fprintf (dump_file, "Splitting with gen_split_3599 (sse.md:24676)\n");
31583 : start_sequence ();
31584 : #define FAIL return (end_sequence (), nullptr)
31585 : #define DONE return end_sequence ()
31586 : #line 24691 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31587 : {
31588 : operands[0] = lowpart_subreg (V32HImode, operands[0], V64QImode);
31589 : operands[1] = lowpart_subreg (V32QImode, operands[1], V4DImode);
31590 : }
31591 : #undef DONE
31592 : #undef FAIL
31593 : static const uint8_t expand_encoding[] = {
31594 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x5a, 0x01, 0x01
31595 : };
31596 : return complete_seq (expand_encoding, operands);
31597 : }
31598 :
31599 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:24851 */
31600 : rtx
31601 : gen_zero_extendv8qiv8hi2 (const rtx operand0, const rtx operand1)
31602 : {
31603 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31604 : start_sequence ();
31605 : {
31606 : #define FAIL return (end_sequence (), nullptr)
31607 : #define DONE return end_sequence ()
31608 : #line 24856 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31609 : {
31610 : if (!TARGET_SSE4_1)
31611 : {
31612 : ix86_expand_sse_extend (operands[0], operands[1], true);
31613 : DONE;
31614 : }
31615 :
31616 : if (!MEM_P (operands[1]))
31617 : {
31618 : rtx op1 = force_reg (V8QImode, operands[1]);
31619 : op1 = lowpart_subreg (V16QImode, op1, V8QImode);
31620 : emit_insn (gen_sse4_1_zero_extendv8qiv8hi2 (operands[0], op1));
31621 : DONE;
31622 : }
31623 : }
31624 : #undef DONE
31625 : #undef FAIL
31626 : }
31627 : static const uint8_t expand_encoding[] = {
31628 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x50, 0x01, 0x01
31629 : };
31630 : return complete_seq (expand_encoding, operands);
31631 : }
31632 :
31633 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25010 */
31634 : extern rtx_insn *gen_split_3613 (rtx_insn *, rtx *);
31635 : rtx_insn *
31636 : gen_split_3613 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31637 : {
31638 : if (dump_file)
31639 : fprintf (dump_file, "Splitting with gen_split_3613 (sse.md:25010)\n");
31640 : start_sequence ();
31641 : #define FAIL return (end_sequence (), nullptr)
31642 : #define DONE return end_sequence ()
31643 : #line 25030 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31644 : operands[1] = adjust_address_nv (operands[1], V4QImode, 0);
31645 : #undef DONE
31646 : #undef FAIL
31647 : static const uint8_t expand_encoding[] = {
31648 : 0x01, 0x1f, 0x01, 0x00, 0x6e, 0x51, 0x01, 0x01
31649 : };
31650 : return complete_seq (expand_encoding, operands);
31651 : }
31652 :
31653 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25093 */
31654 : extern rtx_insn *gen_split_3618 (rtx_insn *, rtx *);
31655 : rtx_insn *
31656 : gen_split_3618 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31657 : {
31658 : if (dump_file)
31659 : fprintf (dump_file, "Splitting with gen_split_3618 (sse.md:25093)\n");
31660 : start_sequence ();
31661 : #define FAIL return (end_sequence (), nullptr)
31662 : #define DONE return end_sequence ()
31663 : #line 25105 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31664 : {
31665 : operands[0] = lowpart_subreg (V16SImode, operands[0], V32HImode);
31666 : operands[1] = lowpart_subreg (V16HImode, operands[1], V32HImode);
31667 : }
31668 : #undef DONE
31669 : #undef FAIL
31670 : static const uint8_t expand_encoding[] = {
31671 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x5b, 0x01, 0x01
31672 : };
31673 : return complete_seq (expand_encoding, operands);
31674 : }
31675 :
31676 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25234 */
31677 : extern rtx_insn *gen_split_3628 (rtx_insn *, rtx *);
31678 : rtx_insn *
31679 : gen_split_3628 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31680 : {
31681 : if (dump_file)
31682 : fprintf (dump_file, "Splitting with gen_split_3628 (sse.md:25234)\n");
31683 : start_sequence ();
31684 : #define FAIL return (end_sequence (), nullptr)
31685 : #define DONE return end_sequence ()
31686 : #line 25256 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31687 : operands[1] = adjust_address_nv (operands[1], V4HImode, 0);
31688 : #undef DONE
31689 : #undef FAIL
31690 : static const uint8_t expand_encoding[] = {
31691 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x6e,
31692 : 0x51, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
31693 : };
31694 : return complete_seq (expand_encoding, operands);
31695 : }
31696 :
31697 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25390 */
31698 : extern rtx_insn *gen_split_3636 (rtx_insn *, rtx *);
31699 : rtx_insn *
31700 : gen_split_3636 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31701 : {
31702 : if (dump_file)
31703 : fprintf (dump_file, "Splitting with gen_split_3636 (sse.md:25390)\n");
31704 : start_sequence ();
31705 : #define FAIL return (end_sequence (), nullptr)
31706 : #define DONE return end_sequence ()
31707 : #line 25413 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31708 : operands[1] = adjust_address_nv (operands[1], V8QImode, 0);
31709 : #undef DONE
31710 : #undef FAIL
31711 : static const uint8_t expand_encoding[] = {
31712 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5c, 0x6e,
31713 : 0x5c, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
31714 : };
31715 : return complete_seq (expand_encoding, operands);
31716 : }
31717 :
31718 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25509 */
31719 : rtx
31720 : gen_zero_extendv4qiv4di2 (const rtx operand0, const rtx operand1)
31721 : {
31722 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31723 : start_sequence ();
31724 : {
31725 : #define FAIL return (end_sequence (), nullptr)
31726 : #define DONE return end_sequence ()
31727 : #line 25514 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31728 : {
31729 : if (!MEM_P (operands[1]))
31730 : {
31731 : rtx op1 = force_reg (V4QImode, operands[1]);
31732 : op1 = lowpart_subreg (V16QImode, operands[1], V4QImode);
31733 : emit_insn (gen_avx2_zero_extendv4qiv4di2 (operands[0], op1));
31734 : DONE;
31735 : }
31736 : }
31737 : #undef DONE
31738 : #undef FAIL
31739 : }
31740 : static const uint8_t expand_encoding[] = {
31741 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x57, 0x01, 0x01
31742 : };
31743 : return complete_seq (expand_encoding, operands);
31744 : }
31745 :
31746 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25653 */
31747 : extern rtx_insn *gen_split_3648 (rtx_insn *, rtx *);
31748 : rtx_insn *
31749 : gen_split_3648 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31750 : {
31751 : if (dump_file)
31752 : fprintf (dump_file, "Splitting with gen_split_3648 (sse.md:25653)\n");
31753 : start_sequence ();
31754 : #define FAIL return (end_sequence (), nullptr)
31755 : #define DONE return end_sequence ()
31756 : #line 25675 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31757 : operands[1] = adjust_address_nv (operands[1], V4HImode, 0);
31758 : #undef DONE
31759 : #undef FAIL
31760 : static const uint8_t expand_encoding[] = {
31761 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x6f,
31762 : 0x57, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03
31763 : };
31764 : return complete_seq (expand_encoding, operands);
31765 : }
31766 :
31767 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25814 */
31768 : extern rtx_insn *gen_split_3654 (rtx_insn *, rtx *);
31769 : rtx_insn *
31770 : gen_split_3654 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31771 : {
31772 : if (dump_file)
31773 : fprintf (dump_file, "Splitting with gen_split_3654 (sse.md:25814)\n");
31774 : start_sequence ();
31775 : #define FAIL return (end_sequence (), nullptr)
31776 : #define DONE return end_sequence ()
31777 : #line 25828 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31778 : {
31779 : operands[0] = lowpart_subreg (V8DImode, operands[0], V16SImode);
31780 : }
31781 : #undef DONE
31782 : #undef FAIL
31783 : static const uint8_t expand_encoding[] = {
31784 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x5c, 0x01, 0x01
31785 : };
31786 : return complete_seq (expand_encoding, operands);
31787 : }
31788 :
31789 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:25960 */
31790 : extern rtx_insn *gen_split_3661 (rtx_insn *, rtx *);
31791 : rtx_insn *
31792 : gen_split_3661 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31793 : {
31794 : if (dump_file)
31795 : fprintf (dump_file, "Splitting with gen_split_3661 (sse.md:25960)\n");
31796 : start_sequence ();
31797 : #define FAIL return (end_sequence (), nullptr)
31798 : #define DONE return end_sequence ()
31799 : #line 25975 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
31800 : {
31801 : operands[0] = lowpart_subreg (V2DImode, operands[0], V4SImode);
31802 : if (MEM_P (operands[1]))
31803 : {
31804 : operands[1] = lowpart_subreg (V2SImode, operands[1], V4SImode);
31805 : operands[1] = gen_rtx_ZERO_EXTEND (V2DImode, operands[1]);
31806 : emit_insn (gen_rtx_SET (operands[0], operands[1]));
31807 : DONE;
31808 : }
31809 : }
31810 : #undef DONE
31811 : #undef FAIL
31812 : static const uint8_t expand_encoding[] = {
31813 : 0x01, 0x1f, 0x01, 0x00, 0x6f, 0x52, 0x81, 0x0a,
31814 : 0x4a, 0x01, 0x01, 0x17, 0x00, 0x02, 0x27, 0x00,
31815 : 0x27, 0x01
31816 : };
31817 : return complete_seq (expand_encoding, operands);
31818 : }
31819 :
31820 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26084 */
31821 : rtx
31822 : gen_sse4_1_ptestcv16qi (const rtx operand0, const rtx operand1)
31823 : {
31824 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31825 : static const uint8_t expand_encoding[] = {
31826 : 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02, 0x01,
31827 : 0x00, 0x01, 0x01, 0x81, 0x03
31828 : };
31829 : return expand_rtx (expand_encoding, operands);
31830 : }
31831 :
31832 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26084 */
31833 : rtx
31834 : gen_avx_ptestcv4di (const rtx operand0, const rtx operand1)
31835 : {
31836 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31837 : static const uint8_t expand_encoding[] = {
31838 : 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02, 0x01,
31839 : 0x00, 0x01, 0x01, 0x81, 0x03
31840 : };
31841 : return expand_rtx (expand_encoding, operands);
31842 : }
31843 :
31844 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26092 */
31845 : rtx
31846 : gen_sse4_1_ptestv2df (const rtx operand0, const rtx operand1)
31847 : {
31848 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
31849 : static const uint8_t expand_encoding[] = {
31850 : 0x1f, 0x30, 0x02, 0x11, 0x1a, 0x02, 0x02, 0x01,
31851 : 0x00, 0x01, 0x01, 0x81, 0x03
31852 : };
31853 : return expand_rtx (expand_encoding, operands);
31854 : }
31855 :
31856 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26113 */
31857 : extern rtx_insn *gen_split_3665 (rtx_insn *, rtx *);
31858 : rtx_insn *
31859 : gen_split_3665 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31860 : {
31861 : if (dump_file)
31862 : fprintf (dump_file, "Splitting with gen_split_3665 (sse.md:26113)\n");
31863 : start_sequence ();
31864 : static const uint8_t expand_encoding[] = {
31865 : 0x01, 0x1f, 0x30, 0x0c, 0x11, 0x1a, 0x0c, 0x02,
31866 : 0x01, 0x00, 0x01, 0x01, 0x81, 0x03
31867 : };
31868 : return complete_seq (expand_encoding, operands);
31869 : }
31870 :
31871 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26113 */
31872 : extern rtx_insn *gen_split_3675 (rtx_insn *, rtx *);
31873 : rtx_insn *
31874 : gen_split_3675 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31875 : {
31876 : if (dump_file)
31877 : fprintf (dump_file, "Splitting with gen_split_3675 (sse.md:26113)\n");
31878 : start_sequence ();
31879 : static const uint8_t expand_encoding[] = {
31880 : 0x01, 0x1f, 0x30, 0x0c, 0x11, 0x1a, 0x0c, 0x02,
31881 : 0x01, 0x00, 0x01, 0x01, 0x81, 0x03
31882 : };
31883 : return complete_seq (expand_encoding, operands);
31884 : }
31885 :
31886 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26127 */
31887 : extern rtx_insn *gen_split_3685 (rtx_insn *, rtx *);
31888 : rtx_insn *
31889 : gen_split_3685 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
31890 : {
31891 : if (dump_file)
31892 : fprintf (dump_file, "Splitting with gen_split_3685 (sse.md:26127)\n");
31893 : start_sequence ();
31894 : static const uint8_t expand_encoding[] = {
31895 : 0x01, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x01,
31896 : 0x27, 0x00, 0x2a
31897 : };
31898 : return complete_seq (expand_encoding, operands);
31899 : }
31900 :
31901 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31902 : extern rtx_insn *gen_split_3695 (rtx_insn *, rtx *);
31903 : rtx_insn *
31904 : gen_split_3695 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31905 : {
31906 : if (dump_file)
31907 : fprintf (dump_file, "Splitting with gen_split_3695 (sse.md:26139)\n");
31908 : start_sequence ();
31909 : static const uint8_t expand_encoding[] = {
31910 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31911 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31912 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31913 : };
31914 : return complete_seq (expand_encoding, operands);
31915 : }
31916 :
31917 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31918 : extern rtx_insn *gen_split_3705 (rtx_insn *, rtx *);
31919 : rtx_insn *
31920 : gen_split_3705 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31921 : {
31922 : if (dump_file)
31923 : fprintf (dump_file, "Splitting with gen_split_3705 (sse.md:26139)\n");
31924 : start_sequence ();
31925 : static const uint8_t expand_encoding[] = {
31926 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31927 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31928 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31929 : };
31930 : return complete_seq (expand_encoding, operands);
31931 : }
31932 :
31933 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31934 : extern rtx_insn *gen_split_3715 (rtx_insn *, rtx *);
31935 : rtx_insn *
31936 : gen_split_3715 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31937 : {
31938 : if (dump_file)
31939 : fprintf (dump_file, "Splitting with gen_split_3715 (sse.md:26139)\n");
31940 : start_sequence ();
31941 : static const uint8_t expand_encoding[] = {
31942 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31943 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31944 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31945 : };
31946 : return complete_seq (expand_encoding, operands);
31947 : }
31948 :
31949 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31950 : extern rtx_insn *gen_split_3725 (rtx_insn *, rtx *);
31951 : rtx_insn *
31952 : gen_split_3725 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31953 : {
31954 : if (dump_file)
31955 : fprintf (dump_file, "Splitting with gen_split_3725 (sse.md:26139)\n");
31956 : start_sequence ();
31957 : static const uint8_t expand_encoding[] = {
31958 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31959 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31960 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31961 : };
31962 : return complete_seq (expand_encoding, operands);
31963 : }
31964 :
31965 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31966 : extern rtx_insn *gen_split_3735 (rtx_insn *, rtx *);
31967 : rtx_insn *
31968 : gen_split_3735 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31969 : {
31970 : if (dump_file)
31971 : fprintf (dump_file, "Splitting with gen_split_3735 (sse.md:26139)\n");
31972 : start_sequence ();
31973 : static const uint8_t expand_encoding[] = {
31974 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31975 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31976 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31977 : };
31978 : return complete_seq (expand_encoding, operands);
31979 : }
31980 :
31981 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26139 */
31982 : extern rtx_insn *gen_split_3745 (rtx_insn *, rtx *);
31983 : rtx_insn *
31984 : gen_split_3745 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
31985 : {
31986 : if (dump_file)
31987 : fprintf (dump_file, "Splitting with gen_split_3745 (sse.md:26139)\n");
31988 : start_sequence ();
31989 : static const uint8_t expand_encoding[] = {
31990 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
31991 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x01,
31992 : 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27, 0x00
31993 : };
31994 : return complete_seq (expand_encoding, operands);
31995 : }
31996 :
31997 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26154 */
31998 : extern rtx_insn *gen_split_3755 (rtx_insn *, rtx *);
31999 : rtx_insn *
32000 : gen_split_3755 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32001 : {
32002 : if (dump_file)
32003 : fprintf (dump_file, "Splitting with gen_split_3755 (sse.md:26154)\n");
32004 : start_sequence ();
32005 : static const uint8_t expand_encoding[] = {
32006 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
32007 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x33,
32008 : 0x00, 0x01, 0x00, 0x02, 0x03, 0x30, 0x08, 0x11,
32009 : 0x27, 0x00
32010 : };
32011 : return complete_seq (expand_encoding, operands);
32012 : }
32013 :
32014 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26170 */
32015 : extern rtx_insn *gen_split_3765 (rtx_insn *, rtx *);
32016 : rtx_insn *
32017 : gen_split_3765 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32018 : {
32019 : if (dump_file)
32020 : fprintf (dump_file, "Splitting with gen_split_3765 (sse.md:26170)\n");
32021 : start_sequence ();
32022 : static const uint8_t expand_encoding[] = {
32023 : 0x02, 0x1f, 0x30, 0x08, 0x11, 0x1a, 0x08, 0x02,
32024 : 0x01, 0x01, 0x01, 0x02, 0x81, 0x03, 0x1f, 0x2f,
32025 : 0x39, 0x00, 0x02, 0x03, 0x30, 0x08, 0x11, 0x27,
32026 : 0x00, 0x01, 0x00, 0x2f
32027 : };
32028 : return complete_seq (expand_encoding, operands);
32029 : }
32030 :
32031 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26193 */
32032 : extern rtx_insn *gen_split_3775 (rtx_insn *, rtx *);
32033 : rtx_insn *
32034 : gen_split_3775 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32035 : {
32036 : if (dump_file)
32037 : fprintf (dump_file, "Splitting with gen_split_3775 (sse.md:26193)\n");
32038 : start_sequence ();
32039 : #define FAIL return (end_sequence (), nullptr)
32040 : #define DONE return end_sequence ()
32041 : #line 26213 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32042 : {
32043 : if (MEM_P (operands[0]))
32044 : operands[3] = force_reg (V32QImode, operands[0]);
32045 : else
32046 : operands[3] = operands[0];
32047 : }
32048 : #undef DONE
32049 : #undef FAIL
32050 : static const uint8_t expand_encoding[] = {
32051 : 0x01, 0x1f, 0x30, 0x0c, 0x11, 0x1a, 0x0c, 0x02,
32052 : 0x01, 0x03, 0x01, 0x03, 0x81, 0x03
32053 : };
32054 : return complete_seq (expand_encoding, operands);
32055 : }
32056 :
32057 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26220 */
32058 : rtx
32059 : gen_nearbyintv8hf2 (const rtx operand0, const rtx operand1)
32060 : {
32061 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32062 : start_sequence ();
32063 : {
32064 : #define FAIL _Pragma ("GCC error \"nearbyintv8hf2 cannot FAIL\"") (void)0
32065 : #define DONE return end_sequence ()
32066 : #line 26227 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32067 : operands[2] = GEN_INT (ROUND_MXCSR | ROUND_NO_EXC);
32068 : #undef DONE
32069 : #undef FAIL
32070 : }
32071 : static const uint8_t expand_encoding[] = {
32072 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02, 0x01,
32073 : 0x01, 0x01, 0x02, 0x5f
32074 : };
32075 : return complete_seq (expand_encoding, operands);
32076 : }
32077 :
32078 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26229 */
32079 : rtx
32080 : gen_rintv16sf2 (const rtx operand0, const rtx operand1)
32081 : {
32082 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32083 : start_sequence ();
32084 : {
32085 : #define FAIL _Pragma ("GCC error \"rintv16sf2 cannot FAIL\"") (void)0
32086 : #define DONE return end_sequence ()
32087 : #line 26236 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32088 : operands[2] = GEN_INT (ROUND_MXCSR);
32089 : #undef DONE
32090 : #undef FAIL
32091 : }
32092 : static const uint8_t expand_encoding[] = {
32093 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x74, 0x02, 0x01,
32094 : 0x01, 0x01, 0x02, 0x5f
32095 : };
32096 : return complete_seq (expand_encoding, operands);
32097 : }
32098 :
32099 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26239 */
32100 : rtx
32101 : gen_lrintv4dfv4di2 (const rtx operand0, const rtx operand1)
32102 : {
32103 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
32104 : static const uint8_t expand_encoding[] = {
32105 : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x01, 0x01, 0x01,
32106 : 0x2f
32107 : };
32108 : return expand_rtx (expand_encoding, operands);
32109 : }
32110 :
32111 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26414 */
32112 : rtx
32113 : gen_floorv32hf2 (const rtx operand0, const rtx operand1)
32114 : {
32115 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32116 : start_sequence ();
32117 : {
32118 : #define FAIL _Pragma ("GCC error \"floorv32hf2 cannot FAIL\"") (void)0
32119 : #define DONE return end_sequence ()
32120 : #line 26421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32121 : operands[2] = GEN_INT (ROUND_FLOOR | ROUND_NO_EXC);
32122 : #undef DONE
32123 : #undef FAIL
32124 : }
32125 : static const uint8_t expand_encoding[] = {
32126 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x73, 0x02, 0x01,
32127 : 0x01, 0x01, 0x02, 0x5f
32128 : };
32129 : return complete_seq (expand_encoding, operands);
32130 : }
32131 :
32132 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26414 */
32133 : rtx
32134 : gen_floorv4df2 (const rtx operand0, const rtx operand1)
32135 : {
32136 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32137 : start_sequence ();
32138 : {
32139 : #define FAIL _Pragma ("GCC error \"floorv4df2 cannot FAIL\"") (void)0
32140 : #define DONE return end_sequence ()
32141 : #line 26421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32142 : operands[2] = GEN_INT (ROUND_FLOOR | ROUND_NO_EXC);
32143 : #undef DONE
32144 : #undef FAIL
32145 : }
32146 : static const uint8_t expand_encoding[] = {
32147 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x70, 0x02, 0x01,
32148 : 0x01, 0x01, 0x02, 0x5f
32149 : };
32150 : return complete_seq (expand_encoding, operands);
32151 : }
32152 :
32153 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26434 */
32154 : rtx
32155 : gen_lfloorv4dfv4di2 (const rtx operand0, const rtx operand1)
32156 : {
32157 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
32158 : start_sequence ();
32159 : {
32160 : #define FAIL _Pragma ("GCC error \"lfloorv4dfv4di2 cannot FAIL\"") (void)0
32161 : #define DONE return end_sequence ()
32162 : #line 26438 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32163 : {
32164 : rtx tmp = gen_reg_rtx (V4DFmode);
32165 : emit_insn (gen_floorv4df2 (tmp, operands[1]));
32166 : emit_insn (gen_fix_truncv4dfv4di2 (operands[0], tmp));
32167 : DONE;
32168 : }
32169 : #undef DONE
32170 : #undef FAIL
32171 : }
32172 : static const uint8_t expand_encoding[] = {
32173 : 0x02, 0x01, 0x00, 0x01, 0x01
32174 : };
32175 : return complete_seq (expand_encoding, operands);
32176 : }
32177 :
32178 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26454 */
32179 : rtx
32180 : gen_lceilv32hfv32hi2 (const rtx operand0, const rtx operand1)
32181 : {
32182 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
32183 : start_sequence ();
32184 : {
32185 : #define FAIL _Pragma ("GCC error \"lceilv32hfv32hi2 cannot FAIL\"") (void)0
32186 : #define DONE return end_sequence ()
32187 : #line 26458 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32188 : {
32189 : rtx tmp = gen_reg_rtx (V32HFmode);
32190 : emit_insn (gen_ceilv32hf2 (tmp, operands[1]));
32191 : emit_insn (gen_fix_truncv32hfv32hi2 (operands[0], tmp));
32192 : DONE;
32193 : }
32194 : #undef DONE
32195 : #undef FAIL
32196 : }
32197 : static const uint8_t expand_encoding[] = {
32198 : 0x02, 0x01, 0x00, 0x01, 0x01
32199 : };
32200 : return complete_seq (expand_encoding, operands);
32201 : }
32202 :
32203 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26476 */
32204 : rtx
32205 : gen_btruncv16hf2 (const rtx operand0, const rtx operand1)
32206 : {
32207 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
32208 : start_sequence ();
32209 : {
32210 : #define FAIL _Pragma ("GCC error \"btruncv16hf2 cannot FAIL\"") (void)0
32211 : #define DONE return end_sequence ()
32212 : #line 26483 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32213 : operands[2] = GEN_INT (ROUND_TRUNC | ROUND_NO_EXC);
32214 : #undef DONE
32215 : #undef FAIL
32216 : }
32217 : static const uint8_t expand_encoding[] = {
32218 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6e, 0x02, 0x01,
32219 : 0x01, 0x01, 0x02, 0x5f
32220 : };
32221 : return complete_seq (expand_encoding, operands);
32222 : }
32223 :
32224 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26485 */
32225 : rtx
32226 : gen_roundv8hf2 (const rtx operand0, const rtx operand1)
32227 : {
32228 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1 };
32229 : start_sequence ();
32230 : {
32231 : #define FAIL _Pragma ("GCC error \"roundv8hf2 cannot FAIL\"") (void)0
32232 : #define DONE return end_sequence ()
32233 : #line 26495 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32234 : {
32235 : machine_mode scalar_mode;
32236 : const struct real_format *fmt;
32237 : REAL_VALUE_TYPE pred_half, half_minus_pred_half;
32238 : rtx half, vec_half;
32239 :
32240 : scalar_mode = GET_MODE_INNER (V8HFmode);
32241 :
32242 : /* load nextafter (0.5, 0.0) */
32243 : fmt = REAL_MODE_FORMAT (scalar_mode);
32244 : real_2expN (&half_minus_pred_half, -(fmt->p) - 1, scalar_mode);
32245 : real_arithmetic (&pred_half, MINUS_EXPR, &dconsthalf, &half_minus_pred_half);
32246 : half = const_double_from_real_value (pred_half, scalar_mode);
32247 :
32248 : vec_half = ix86_build_const_vector (V8HFmode, true, half);
32249 : vec_half = force_reg (V8HFmode, vec_half);
32250 :
32251 : operands[2] = gen_reg_rtx (V8HFmode);
32252 : emit_insn (gen_copysignv8hf3 (operands[2], vec_half, operands[1]));
32253 :
32254 : operands[3] = gen_reg_rtx (V8HFmode);
32255 : operands[4] = GEN_INT (ROUND_TRUNC);
32256 : }
32257 : #undef DONE
32258 : #undef FAIL
32259 : }
32260 : static const uint8_t expand_encoding[] = {
32261 : 0x02, 0x1f, 0x01, 0x03, 0x3b, 0x6a, 0x01, 0x01,
32262 : 0x01, 0x02, 0x1f, 0x01, 0x00, 0x1a, 0x6a, 0x02,
32263 : 0x01, 0x03, 0x01, 0x04, 0x5f
32264 : };
32265 : return complete_seq (expand_encoding, operands);
32266 : }
32267 :
32268 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26530 */
32269 : rtx
32270 : gen_lroundv8sfv8si2 (const rtx operand0, const rtx operand1)
32271 : {
32272 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
32273 : start_sequence ();
32274 : {
32275 : #define FAIL _Pragma ("GCC error \"lroundv8sfv8si2 cannot FAIL\"") (void)0
32276 : #define DONE return end_sequence ()
32277 : #line 26534 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32278 : {
32279 : rtx tmp = gen_reg_rtx (V8SFmode);
32280 : emit_insn (gen_roundv8sf2 (tmp, operands[1]));
32281 : emit_insn (gen_fix_truncv8sfv8si2 (operands[0], tmp));
32282 : DONE;
32283 : }
32284 : #undef DONE
32285 : #undef FAIL
32286 : }
32287 : static const uint8_t expand_encoding[] = {
32288 : 0x02, 0x01, 0x00, 0x01, 0x01
32289 : };
32290 : return complete_seq (expand_encoding, operands);
32291 : }
32292 :
32293 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:26555 */
32294 : rtx
32295 : gen_roundv2df2_vec_pack_sfix (const rtx operand0, const rtx operand1, const rtx operand2)
32296 : {
32297 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32298 : start_sequence ();
32299 : {
32300 : #define FAIL return (end_sequence (), nullptr)
32301 : #define DONE return end_sequence ()
32302 : #line 26560 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32303 : {
32304 : rtx tmp0, tmp1;
32305 :
32306 : if (V2DFmode == V2DFmode
32307 : && TARGET_AVX && !TARGET_PREFER_AVX128 && optimize_insn_for_speed_p ())
32308 : {
32309 : rtx tmp2 = gen_reg_rtx (V4DFmode);
32310 :
32311 : tmp0 = gen_reg_rtx (V4DFmode);
32312 : tmp1 = force_reg (V2DFmode, operands[1]);
32313 :
32314 : emit_insn (gen_avx_vec_concatv4df (tmp0, tmp1, operands[2]));
32315 : emit_insn (gen_roundv4df2 (tmp2, tmp0));
32316 : emit_insn (gen_fix_truncv4dfv4si2 (operands[0], tmp2));
32317 : }
32318 : else
32319 : {
32320 : tmp0 = gen_reg_rtx (V2DFmode);
32321 : tmp1 = gen_reg_rtx (V2DFmode);
32322 :
32323 : emit_insn (gen_roundv2df2 (tmp0, operands[1]));
32324 : emit_insn (gen_roundv2df2 (tmp1, operands[2]));
32325 :
32326 : emit_insn
32327 : (gen_vec_pack_sfix_trunc_v2df (operands[0], tmp0, tmp1));
32328 : }
32329 : DONE;
32330 : }
32331 : #undef DONE
32332 : #undef FAIL
32333 : }
32334 : static const uint8_t expand_encoding[] = {
32335 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
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_3797 (rtx_insn *, rtx *);
32342 : rtx_insn *
32343 : gen_split_3797 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32344 : {
32345 : if (dump_file)
32346 : fprintf (dump_file, "Splitting with gen_split_3797 (sse.md:27001)\n");
32347 : start_sequence ();
32348 : static const uint8_t expand_encoding[] = {
32349 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x6f, 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:27013 */
32356 : extern rtx_insn *gen_split_3807 (rtx_insn *, rtx *);
32357 : rtx_insn *
32358 : gen_split_3807 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32359 : {
32360 : if (dump_file)
32361 : fprintf (dump_file, "Splitting with gen_split_3807 (sse.md:27013)\n");
32362 : start_sequence ();
32363 : static const uint8_t expand_encoding[] = {
32364 : 0x01, 0x1f, 0x01, 0x00, 0x39, 0x57, 0x01, 0x03,
32365 : 0x01, 0x01, 0x01, 0x02
32366 : };
32367 : return complete_seq (expand_encoding, operands);
32368 : }
32369 :
32370 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27322 */
32371 : rtx
32372 : gen_rotlv8hi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32373 : {
32374 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32375 : start_sequence ();
32376 : {
32377 : #define FAIL return (end_sequence (), nullptr)
32378 : #define DONE return end_sequence ()
32379 : #line 27328 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32380 : {
32381 : /* If we were given a scalar, convert it to parallel */
32382 : if (! const_0_to_15_operand (operands[2], SImode))
32383 : {
32384 : rtvec vs = rtvec_alloc (8);
32385 : rtx par = gen_rtx_PARALLEL (V8HImode, vs);
32386 : rtx reg = gen_reg_rtx (V8HImode);
32387 : rtx op2 = operands[2];
32388 : int i;
32389 :
32390 : if (GET_MODE (op2) != HImode)
32391 : {
32392 : op2 = gen_reg_rtx (HImode);
32393 : convert_move (op2, operands[2], false);
32394 : }
32395 :
32396 : for (i = 0; i < 8; i++)
32397 : RTVEC_ELT (vs, i) = op2;
32398 :
32399 : emit_insn (gen_vec_initv8hihi (reg, par));
32400 : emit_insn (gen_xop_vrotlv8hi3 (operands[0], operands[1], reg));
32401 : DONE;
32402 : }
32403 : }
32404 : #undef DONE
32405 : #undef FAIL
32406 : }
32407 : static const uint8_t expand_encoding[] = {
32408 : 0x01, 0x1f, 0x01, 0x00, 0x4e, 0x50, 0x01, 0x01,
32409 : 0x01, 0x02
32410 : };
32411 : return complete_seq (expand_encoding, operands);
32412 : }
32413 :
32414 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27428 */
32415 : rtx
32416 : gen_vrotlv2di3 (const rtx operand0, const rtx operand1, const rtx operand2)
32417 : {
32418 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32419 : start_sequence ();
32420 : {
32421 : #define FAIL return (end_sequence (), nullptr)
32422 : #define DONE return end_sequence ()
32423 : #line 27433 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32424 : {
32425 : emit_insn (gen_xop_vrotlv2di3 (operands[0], operands[1], operands[2]));
32426 : DONE;
32427 : }
32428 : #undef DONE
32429 : #undef FAIL
32430 : }
32431 : static const uint8_t expand_encoding[] = {
32432 : 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02
32433 : };
32434 : return complete_seq (expand_encoding, operands);
32435 : }
32436 :
32437 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27495 */
32438 : rtx
32439 : gen_vashrv32qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32440 : {
32441 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32442 : start_sequence ();
32443 : {
32444 : #define FAIL return (end_sequence (), nullptr)
32445 : #define DONE return end_sequence ()
32446 : #line 27501 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32447 : {
32448 : if (V32QImode == V32QImode || V32QImode == V64QImode)
32449 : {
32450 : ix86_expand_vecop_qihi (ASHIFTRT, operands[0], operands[1], operands[2]);
32451 : DONE;
32452 : }
32453 : }
32454 : #undef DONE
32455 : #undef FAIL
32456 : }
32457 : static const uint8_t expand_encoding[] = {
32458 : 0x01, 0x1f, 0x01, 0x00, 0x4f, 0x54, 0x01, 0x01,
32459 : 0x01, 0x02
32460 : };
32461 : return complete_seq (expand_encoding, operands);
32462 : }
32463 :
32464 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27516 */
32465 : rtx
32466 : gen_vlshrv4di3 (const rtx operand0, const rtx operand1, const rtx operand2)
32467 : {
32468 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32469 : static const uint8_t expand_encoding[] = {
32470 : 0x1f, 0x01, 0x00, 0x50, 0x57, 0x01, 0x01, 0x01,
32471 : 0x02
32472 : };
32473 : return expand_rtx (expand_encoding, operands);
32474 : }
32475 :
32476 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27627 */
32477 : rtx
32478 : gen_vashlv16qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32479 : {
32480 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32481 : start_sequence ();
32482 : {
32483 : #define FAIL return (end_sequence (), nullptr)
32484 : #define DONE return end_sequence ()
32485 : #line 27633 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32486 : {
32487 : if (TARGET_XOP)
32488 : {
32489 : emit_insn (gen_xop_shav16qi3 (operands[0], operands[1], operands[2]));
32490 : DONE;
32491 : }
32492 : else if (V16QImode == V16QImode)
32493 : {
32494 : ix86_expand_vecop_qihi (ASHIFT, operands[0], operands[1], operands[2]);
32495 : DONE;
32496 : }
32497 : }
32498 : #undef DONE
32499 : #undef FAIL
32500 : }
32501 : static const uint8_t expand_encoding[] = {
32502 : 0x01, 0x1f, 0x01, 0x00, 0x4d, 0x4f, 0x01, 0x01,
32503 : 0x01, 0x02
32504 : };
32505 : return complete_seq (expand_encoding, operands);
32506 : }
32507 :
32508 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27668 */
32509 : rtx
32510 : gen_vashlv4di3 (const rtx operand0, const rtx operand1, const rtx operand2)
32511 : {
32512 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32513 : static const uint8_t expand_encoding[] = {
32514 : 0x1f, 0x01, 0x00, 0x4d, 0x57, 0x01, 0x01, 0x01,
32515 : 0x02
32516 : };
32517 : return expand_rtx (expand_encoding, operands);
32518 : }
32519 :
32520 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27762 */
32521 : rtx
32522 : gen_rotlv64qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32523 : {
32524 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32525 : start_sequence ();
32526 : {
32527 : #define FAIL return (end_sequence (), nullptr)
32528 : #define DONE return end_sequence ()
32529 : #line 27768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32530 : {
32531 : rtx matrix = ix86_vgf2p8affine_shift_matrix (operands[0], operands[2], ROTATE);
32532 : emit_insn (gen_vgf2p8affineqb_v64qi (operands[0], operands[1], matrix,
32533 : const0_rtx));
32534 : DONE;
32535 : }
32536 : #undef DONE
32537 : #undef FAIL
32538 : }
32539 : static const uint8_t expand_encoding[] = {
32540 : 0x01, 0x1f, 0x01, 0x00, 0x4e, 0x59, 0x01, 0x01,
32541 : 0x01, 0x02
32542 : };
32543 : return complete_seq (expand_encoding, operands);
32544 : }
32545 :
32546 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27762 */
32547 : rtx
32548 : gen_rotrv64qi3 (const rtx operand0, const rtx operand1, const rtx operand2)
32549 : {
32550 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32551 : start_sequence ();
32552 : {
32553 : #define FAIL return (end_sequence (), nullptr)
32554 : #define DONE return end_sequence ()
32555 : #line 27768 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32556 : {
32557 : rtx matrix = ix86_vgf2p8affine_shift_matrix (operands[0], operands[2], ROTATERT);
32558 : emit_insn (gen_vgf2p8affineqb_v64qi (operands[0], operands[1], matrix,
32559 : const0_rtx));
32560 : DONE;
32561 : }
32562 : #undef DONE
32563 : #undef FAIL
32564 : }
32565 : static const uint8_t expand_encoding[] = {
32566 : 0x01, 0x1f, 0x01, 0x00, 0x51, 0x59, 0x01, 0x01,
32567 : 0x01, 0x02
32568 : };
32569 : return complete_seq (expand_encoding, operands);
32570 : }
32571 :
32572 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:27840 */
32573 : extern rtx_insn *gen_split_3817 (rtx_insn *, rtx *);
32574 : rtx_insn *
32575 : gen_split_3817 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
32576 : {
32577 : if (dump_file)
32578 : fprintf (dump_file, "Splitting with gen_split_3817 (sse.md:27840)\n");
32579 : start_sequence ();
32580 : #define FAIL return (end_sequence (), nullptr)
32581 : #define DONE return end_sequence ()
32582 : #line 27849 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32583 : ix86_expand_v2di_ashiftrt (operands); DONE;
32584 : #undef DONE
32585 : #undef FAIL
32586 : static const uint8_t expand_encoding[] = {
32587 : 0x01, 0x27, 0x00
32588 : };
32589 : return complete_seq (expand_encoding, operands);
32590 : }
32591 :
32592 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28319 */
32593 : rtx
32594 : gen_avx512f_vpermilv8df (const rtx operand0, const rtx operand1, const rtx operand2)
32595 : {
32596 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32597 : start_sequence ();
32598 : {
32599 : #define FAIL return (end_sequence (), nullptr)
32600 : #define DONE return end_sequence ()
32601 : #line 28325 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32602 : {
32603 : int mask = INTVAL (operands[2]);
32604 : rtx perm[8];
32605 :
32606 : int i;
32607 : for (i = 0; i < 8; i = i + 2)
32608 : {
32609 : perm[i] = GEN_INT (((mask >> i) & 1) + i);
32610 : perm[i + 1] = GEN_INT (((mask >> (i + 1)) & 1) + i);
32611 : }
32612 :
32613 : operands[2]
32614 : = gen_rtx_PARALLEL (VOIDmode, gen_rtvec_v (8, perm));
32615 : }
32616 : #undef DONE
32617 : #undef FAIL
32618 : }
32619 : static const uint8_t expand_encoding[] = {
32620 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x75, 0x01,
32621 : 0x01, 0x01, 0x02
32622 : };
32623 : return complete_seq (expand_encoding, operands);
32624 : }
32625 :
32626 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28340 */
32627 : rtx
32628 : gen_avx512f_vpermilv16sf (const rtx operand0, const rtx operand1, const rtx operand2)
32629 : {
32630 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32631 : start_sequence ();
32632 : {
32633 : #define FAIL return (end_sequence (), nullptr)
32634 : #define DONE return end_sequence ()
32635 : #line 28346 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32636 : {
32637 : int mask = INTVAL (operands[2]);
32638 : rtx perm[16];
32639 :
32640 : int i;
32641 : for (i = 0; i < 16; i = i + 4)
32642 : {
32643 : perm[i] = GEN_INT (((mask >> 0) & 3) + i);
32644 : perm[i + 1] = GEN_INT (((mask >> 2) & 3) + i);
32645 : perm[i + 2] = GEN_INT (((mask >> 4) & 3) + i);
32646 : perm[i + 3] = GEN_INT (((mask >> 6) & 3) + i);
32647 : }
32648 :
32649 : operands[2]
32650 : = gen_rtx_PARALLEL (VOIDmode, gen_rtvec_v (16, perm));
32651 : }
32652 : #undef DONE
32653 : #undef FAIL
32654 : }
32655 : static const uint8_t expand_encoding[] = {
32656 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0a, 0x74, 0x01,
32657 : 0x01, 0x01, 0x02
32658 : };
32659 : return complete_seq (expand_encoding, operands);
32660 : }
32661 :
32662 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28401 */
32663 : rtx
32664 : gen_avx512vl_permv4di_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32665 : {
32666 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32667 : start_sequence ();
32668 : {
32669 : #define FAIL return (end_sequence (), nullptr)
32670 : #define DONE return end_sequence ()
32671 : #line 28408 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32672 : {
32673 : int mask = INTVAL (operands[2]);
32674 : emit_insn (gen_avx2_permv4di_1_mask (operands[0], operands[1],
32675 : GEN_INT ((mask >> 0) & 3),
32676 : GEN_INT ((mask >> 2) & 3),
32677 : GEN_INT ((mask >> 4) & 3),
32678 : GEN_INT ((mask >> 6) & 3),
32679 : operands[3], operands[4]));
32680 : DONE;
32681 : }
32682 : #undef DONE
32683 : #undef FAIL
32684 : }
32685 : static const uint8_t expand_encoding[] = {
32686 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
32687 : 0x03, 0x01, 0x04
32688 : };
32689 : return complete_seq (expand_encoding, operands);
32690 : }
32691 :
32692 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28841 */
32693 : extern rtx_insn *gen_split_3825 (rtx_insn *, rtx *);
32694 : rtx_insn *
32695 : gen_split_3825 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
32696 : {
32697 : if (dump_file)
32698 : fprintf (dump_file, "Splitting with gen_split_3825 (sse.md:28841)\n");
32699 : start_sequence ();
32700 : #define FAIL return (end_sequence (), nullptr)
32701 : #define DONE return end_sequence ()
32702 : #line 28854 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32703 : {
32704 : emit_insn (gen_vec_setv4si_0 (gen_lowpart (V4SImode, operands[0]),
32705 : CONST0_RTX (V4SImode),
32706 : gen_lowpart (SImode, operands[1])));
32707 : emit_insn (gen_avx2_pbroadcastv8si (operands[0],
32708 : gen_lowpart (V4SImode,
32709 : operands[0])));
32710 : DONE;
32711 : }
32712 : #undef DONE
32713 : #undef FAIL
32714 : static const uint8_t expand_encoding[] = {
32715 : 0x01, 0x27, 0x00
32716 : };
32717 : return complete_seq (expand_encoding, operands);
32718 : }
32719 :
32720 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:28902 */
32721 : extern rtx_insn *gen_split_3835 (rtx_insn *, rtx *);
32722 : rtx_insn *
32723 : gen_split_3835 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
32724 : {
32725 : if (dump_file)
32726 : fprintf (dump_file, "Splitting with gen_split_3835 (sse.md:28902)\n");
32727 : start_sequence ();
32728 : static const uint8_t expand_encoding[] = {
32729 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x54, 0x01,
32730 : 0x01, 0x01, 0x01
32731 : };
32732 : return complete_seq (expand_encoding, operands);
32733 : }
32734 :
32735 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29051 */
32736 : rtx
32737 : gen_avx512f_vpermi2varv16sf3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32738 : {
32739 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32740 : start_sequence ();
32741 : {
32742 : #define FAIL return (end_sequence (), nullptr)
32743 : #define DONE return end_sequence ()
32744 : #line 29062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32745 : {
32746 : operands[2] = force_reg (V16SImode, operands[2]);
32747 : operands[5] = gen_lowpart (V16SFmode, operands[2]);
32748 : }
32749 : #undef DONE
32750 : #undef FAIL
32751 : }
32752 : static const uint8_t expand_encoding[] = {
32753 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x74, 0x1a,
32754 : 0x74, 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x03,
32755 : 0x81, 0x1c, 0x01, 0x05, 0x01, 0x04
32756 : };
32757 : return complete_seq (expand_encoding, operands);
32758 : }
32759 :
32760 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29051 */
32761 : rtx
32762 : gen_avx512vl_vpermi2varv2df3_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32763 : {
32764 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32765 : start_sequence ();
32766 : {
32767 : #define FAIL return (end_sequence (), nullptr)
32768 : #define DONE return end_sequence ()
32769 : #line 29062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32770 : {
32771 : operands[2] = force_reg (V2DImode, operands[2]);
32772 : operands[5] = gen_lowpart (V2DFmode, operands[2]);
32773 : }
32774 : #undef DONE
32775 : #undef FAIL
32776 : }
32777 : static const uint8_t expand_encoding[] = {
32778 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6c, 0x1a,
32779 : 0x6c, 0x03, 0x01, 0x02, 0x01, 0x01, 0x01, 0x03,
32780 : 0x81, 0x1c, 0x01, 0x05, 0x01, 0x04
32781 : };
32782 : return complete_seq (expand_encoding, operands);
32783 : }
32784 :
32785 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29101 */
32786 : rtx
32787 : gen_avx512f_vpermt2varv8df3_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32788 : {
32789 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32790 : start_sequence ();
32791 : {
32792 : #define FAIL return (end_sequence (), nullptr)
32793 : #define DONE return end_sequence ()
32794 : #line 29108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32795 : {
32796 : emit_insn (gen_avx512f_vpermt2varv8df3_maskz_1 (
32797 : operands[0], operands[1], operands[2], operands[3],
32798 : CONST0_RTX (V8DFmode), operands[4]));
32799 : DONE;
32800 : }
32801 : #undef DONE
32802 : #undef FAIL
32803 : }
32804 : static const uint8_t expand_encoding[] = {
32805 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
32806 : 0x03, 0x01, 0x04
32807 : };
32808 : return complete_seq (expand_encoding, operands);
32809 : }
32810 :
32811 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29101 */
32812 : rtx
32813 : gen_avx512vl_vpermt2varv16hi3_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
32814 : {
32815 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
32816 : start_sequence ();
32817 : {
32818 : #define FAIL return (end_sequence (), nullptr)
32819 : #define DONE return end_sequence ()
32820 : #line 29108 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32821 : {
32822 : emit_insn (gen_avx512vl_vpermt2varv16hi3_maskz_1 (
32823 : operands[0], operands[1], operands[2], operands[3],
32824 : CONST0_RTX (V16HImode), operands[4]));
32825 : DONE;
32826 : }
32827 : #undef DONE
32828 : #undef FAIL
32829 : }
32830 : static const uint8_t expand_encoding[] = {
32831 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
32832 : 0x03, 0x01, 0x04
32833 : };
32834 : return complete_seq (expand_encoding, operands);
32835 : }
32836 :
32837 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29274 */
32838 : rtx
32839 : gen_avx512vl_vinsertv4di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
32840 : {
32841 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
32842 : start_sequence ();
32843 : {
32844 : #define FAIL return (end_sequence (), nullptr)
32845 : #define DONE return end_sequence ()
32846 : #line 29282 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32847 : {
32848 : rtx (*insn)(rtx, rtx, rtx, rtx, rtx);
32849 :
32850 : switch (INTVAL (operands[3]))
32851 : {
32852 : case 0:
32853 : insn = gen_vec_set_lo_v4di_mask;
32854 : break;
32855 : case 1:
32856 : insn = gen_vec_set_hi_v4di_mask;
32857 : break;
32858 : default:
32859 : gcc_unreachable ();
32860 : }
32861 :
32862 : emit_insn (insn (operands[0], operands[1], operands[2], operands[4],
32863 : operands[5]));
32864 : DONE;
32865 : }
32866 : #undef DONE
32867 : #undef FAIL
32868 : }
32869 : static const uint8_t expand_encoding[] = {
32870 : 0x06, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
32871 : 0x03, 0x01, 0x04, 0x01, 0x05
32872 : };
32873 : return complete_seq (expand_encoding, operands);
32874 : }
32875 :
32876 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29568 */
32877 : rtx
32878 : gen_maskloadv4div4di_1 (const rtx operand0, const rtx operand1, const rtx operand2)
32879 : {
32880 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32881 : static const uint8_t expand_encoding[] = {
32882 : 0x1f, 0x01, 0x00, 0x1a, 0x57, 0x02, 0x01, 0x02,
32883 : 0x01, 0x01, 0x30
32884 : };
32885 : return expand_rtx (expand_encoding, operands);
32886 : }
32887 :
32888 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29576 */
32889 : rtx
32890 : gen_maskloadv4sfv4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32891 : {
32892 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32893 : start_sequence ();
32894 : {
32895 : #define FAIL _Pragma ("GCC error \"maskloadv4sfv4si cannot FAIL\"") (void)0
32896 : #define DONE return end_sequence ()
32897 : #line 29584 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
32898 : {
32899 : emit_insn (gen_maskloadv4sfv4si_1 (operands[0],
32900 : operands[1],
32901 : operands[2]));
32902 : DONE;
32903 : }
32904 : #undef DONE
32905 : #undef FAIL
32906 : }
32907 : static const uint8_t expand_encoding[] = {
32908 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x6b, 0x03, 0x01,
32909 : 0x02, 0x01, 0x01, 0x01, 0x03, 0x30
32910 : };
32911 : return complete_seq (expand_encoding, operands);
32912 : }
32913 :
32914 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29591 */
32915 : rtx
32916 : gen_maskloadv4siqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32917 : {
32918 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32919 : static const uint8_t expand_encoding[] = {
32920 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a, 0x51,
32921 : 0x01, 0x01, 0x01, 0x81, 0x32, 0x01, 0x03, 0x01,
32922 : 0x02
32923 : };
32924 : return expand_rtx (expand_encoding, operands);
32925 : }
32926 :
32927 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29601 */
32928 : rtx
32929 : gen_maskloadv64qidi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32930 : {
32931 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32932 : static const uint8_t expand_encoding[] = {
32933 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x59, 0x1a, 0x59,
32934 : 0x01, 0x01, 0x01, 0x81, 0x32, 0x01, 0x03, 0x01,
32935 : 0x02
32936 : };
32937 : return expand_rtx (expand_encoding, operands);
32938 : }
32939 :
32940 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29601 */
32941 : rtx
32942 : gen_maskloadv16bfhi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
32943 : {
32944 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
32945 : static const uint8_t expand_encoding[] = {
32946 : 0x1f, 0x01, 0x00, 0x81, 0x09, 0x6d, 0x1a, 0x6d,
32947 : 0x01, 0x01, 0x01, 0x81, 0x32, 0x01, 0x03, 0x01,
32948 : 0x02
32949 : };
32950 : return expand_rtx (expand_encoding, operands);
32951 : }
32952 :
32953 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29620 */
32954 : rtx
32955 : gen_maskstorev4siqi (const rtx operand0, const rtx operand1, const rtx operand2)
32956 : {
32957 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32958 : static const uint8_t expand_encoding[] = {
32959 : 0x1f, 0x01, 0x00, 0x1a, 0x51, 0x03, 0x01, 0x01,
32960 : 0x01, 0x00, 0x01, 0x02, 0x30
32961 : };
32962 : return expand_rtx (expand_encoding, operands);
32963 : }
32964 :
32965 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29629 */
32966 : rtx
32967 : gen_maskstorev64qidi (const rtx operand0, const rtx operand1, const rtx operand2)
32968 : {
32969 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32970 : static const uint8_t expand_encoding[] = {
32971 : 0x1f, 0x01, 0x00, 0x1a, 0x59, 0x03, 0x01, 0x01,
32972 : 0x01, 0x00, 0x01, 0x02, 0x30
32973 : };
32974 : return expand_rtx (expand_encoding, operands);
32975 : }
32976 :
32977 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29629 */
32978 : rtx
32979 : gen_maskstorev16bfhi (const rtx operand0, const rtx operand1, const rtx operand2)
32980 : {
32981 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
32982 : static const uint8_t expand_encoding[] = {
32983 : 0x1f, 0x01, 0x00, 0x1a, 0x6d, 0x03, 0x01, 0x01,
32984 : 0x01, 0x00, 0x01, 0x02, 0x30
32985 : };
32986 : return expand_rtx (expand_encoding, operands);
32987 : }
32988 :
32989 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29681 */
32990 : extern rtx_insn *gen_split_3851 (rtx_insn *, rtx *);
32991 : rtx_insn *
32992 : gen_split_3851 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
32993 : {
32994 : if (dump_file)
32995 : fprintf (dump_file, "Splitting with gen_split_3851 (sse.md:29681)\n");
32996 : start_sequence ();
32997 : #define FAIL return (end_sequence (), nullptr)
32998 : #define DONE return end_sequence ()
32999 : #line 29692 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33000 : {
33001 : if (constm1_operand (operands[2], V4SImode))
33002 : emit_move_insn (operands[0], operands[1]);
33003 : else
33004 : emit_note (NOTE_INSN_DELETED);
33005 :
33006 : DONE;
33007 : }
33008 : #undef DONE
33009 : #undef FAIL
33010 : static const uint8_t expand_encoding[] = {
33011 : 0x01, 0x27, 0x00
33012 : };
33013 : return complete_seq (expand_encoding, operands);
33014 : }
33015 :
33016 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29681 */
33017 : extern rtx_insn *gen_split_3861 (rtx_insn *, rtx *);
33018 : rtx_insn *
33019 : gen_split_3861 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
33020 : {
33021 : if (dump_file)
33022 : fprintf (dump_file, "Splitting with gen_split_3861 (sse.md:29681)\n");
33023 : start_sequence ();
33024 : #define FAIL return (end_sequence (), nullptr)
33025 : #define DONE return end_sequence ()
33026 : #line 29692 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33027 : {
33028 : if (constm1_operand (operands[2], V16SFmode))
33029 : emit_move_insn (operands[0], operands[1]);
33030 : else
33031 : emit_note (NOTE_INSN_DELETED);
33032 :
33033 : DONE;
33034 : }
33035 : #undef DONE
33036 : #undef FAIL
33037 : static const uint8_t expand_encoding[] = {
33038 : 0x01, 0x27, 0x00
33039 : };
33040 : return complete_seq (expand_encoding, operands);
33041 : }
33042 :
33043 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29701 */
33044 : rtx
33045 : gen_cbranchv16hi4 (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33046 : {
33047 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33048 : start_sequence ();
33049 : {
33050 : #define FAIL return (end_sequence (), nullptr)
33051 : #define DONE return end_sequence ()
33052 : #line 29711 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33053 : {
33054 : ix86_expand_branch (GET_CODE (operands[0]),
33055 : operands[1], operands[2], operands[3]);
33056 : DONE;
33057 : }
33058 : #undef DONE
33059 : #undef FAIL
33060 : }
33061 : static const uint8_t expand_encoding[] = {
33062 : 0x02, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
33063 : 0x01, 0x01, 0x02, 0x1f, 0x2f, 0x39, 0x00, 0x03,
33064 : 0x00, 0x00, 0x30, 0x02, 0x11, 0x27, 0x00, 0x37,
33065 : 0x00, 0x01, 0x03, 0x2f
33066 : };
33067 : return complete_seq (expand_encoding, operands);
33068 : }
33069 :
33070 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29718 */
33071 : extern rtx_insn *gen_split_3869 (rtx_insn *, rtx *);
33072 : rtx_insn *
33073 : gen_split_3869 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
33074 : {
33075 : if (dump_file)
33076 : fprintf (dump_file, "Splitting with gen_split_3869 (sse.md:29718)\n");
33077 : start_sequence ();
33078 : #define FAIL return (end_sequence (), nullptr)
33079 : #define DONE return end_sequence ()
33080 : #line 29727 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33081 : {
33082 : if (REG_P (operands[0]))
33083 : operands[0] = gen_lowpart (V2DFmode, operands[0]);
33084 : else
33085 : operands[1] = lowpart_subreg (V4DFmode, operands[1],
33086 : V2DFmode);
33087 : }
33088 : #undef DONE
33089 : #undef FAIL
33090 : static const uint8_t expand_encoding[] = {
33091 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
33092 : };
33093 : return complete_seq (expand_encoding, operands);
33094 : }
33095 :
33096 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29760 */
33097 : rtx
33098 : gen_vec_initv4didi (const rtx operand0, const rtx operand1)
33099 : {
33100 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33101 : start_sequence ();
33102 : {
33103 : #define FAIL return (end_sequence (), nullptr)
33104 : #define DONE return end_sequence ()
33105 : #line 29764 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33106 : {
33107 : ix86_expand_vector_init (false, operands[0], operands[1]);
33108 : DONE;
33109 : }
33110 : #undef DONE
33111 : #undef FAIL
33112 : }
33113 : static const uint8_t expand_encoding[] = {
33114 : 0x02, 0x01, 0x00, 0x01, 0x01
33115 : };
33116 : return complete_seq (expand_encoding, operands);
33117 : }
33118 :
33119 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29760 */
33120 : rtx
33121 : gen_vec_initv4sfsf (const rtx operand0, const rtx operand1)
33122 : {
33123 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33124 : start_sequence ();
33125 : {
33126 : #define FAIL return (end_sequence (), nullptr)
33127 : #define DONE return end_sequence ()
33128 : #line 29764 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33129 : {
33130 : ix86_expand_vector_init (false, operands[0], operands[1]);
33131 : DONE;
33132 : }
33133 : #undef DONE
33134 : #undef FAIL
33135 : }
33136 : static const uint8_t expand_encoding[] = {
33137 : 0x02, 0x01, 0x00, 0x01, 0x01
33138 : };
33139 : return complete_seq (expand_encoding, operands);
33140 : }
33141 :
33142 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29769 */
33143 : rtx
33144 : gen_vec_initv16hiv8hi (const rtx operand0, const rtx operand1)
33145 : {
33146 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33147 : start_sequence ();
33148 : {
33149 : #define FAIL return (end_sequence (), nullptr)
33150 : #define DONE return end_sequence ()
33151 : #line 29773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33152 : {
33153 : ix86_expand_vector_init (false, operands[0], operands[1]);
33154 : DONE;
33155 : }
33156 : #undef DONE
33157 : #undef FAIL
33158 : }
33159 : static const uint8_t expand_encoding[] = {
33160 : 0x02, 0x01, 0x00, 0x01, 0x01
33161 : };
33162 : return complete_seq (expand_encoding, operands);
33163 : }
33164 :
33165 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29769 */
33166 : rtx
33167 : gen_vec_initv32bfv16bf (const rtx operand0, const rtx operand1)
33168 : {
33169 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33170 : start_sequence ();
33171 : {
33172 : #define FAIL return (end_sequence (), nullptr)
33173 : #define DONE return end_sequence ()
33174 : #line 29773 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33175 : {
33176 : ix86_expand_vector_init (false, operands[0], operands[1]);
33177 : DONE;
33178 : }
33179 : #undef DONE
33180 : #undef FAIL
33181 : }
33182 : static const uint8_t expand_encoding[] = {
33183 : 0x02, 0x01, 0x00, 0x01, 0x01
33184 : };
33185 : return complete_seq (expand_encoding, operands);
33186 : }
33187 :
33188 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29778 */
33189 : rtx
33190 : gen_cond_lshrv32hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33191 : {
33192 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33193 : start_sequence ();
33194 : {
33195 : #define FAIL return (end_sequence (), nullptr)
33196 : #define DONE return end_sequence ()
33197 : #line 29787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33198 : {
33199 : if (const_vec_duplicate_p (operands[3]))
33200 : {
33201 : operands[3] = unwrap_const_vec_duplicate (operands[3]);
33202 : operands[3] = lowpart_subreg (DImode, operands[3], HImode);
33203 : emit_insn (gen_lshrv32hi3_mask (operands[0],
33204 : operands[2],
33205 : operands[3],
33206 : operands[4],
33207 : operands[1]));
33208 : }
33209 : else
33210 : emit_insn (gen_avx512bw_lshrvv32hi_mask (operands[0],
33211 : operands[2],
33212 : operands[3],
33213 : operands[4],
33214 : operands[1]));
33215 : DONE;
33216 : }
33217 : #undef DONE
33218 : #undef FAIL
33219 : }
33220 : static const uint8_t expand_encoding[] = {
33221 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5a, 0x50,
33222 : 0x5a, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
33223 : 0x01
33224 : };
33225 : return complete_seq (expand_encoding, operands);
33226 : }
33227 :
33228 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29778 */
33229 : rtx
33230 : gen_cond_ashrv16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33231 : {
33232 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33233 : start_sequence ();
33234 : {
33235 : #define FAIL return (end_sequence (), nullptr)
33236 : #define DONE return end_sequence ()
33237 : #line 29787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33238 : {
33239 : if (const_vec_duplicate_p (operands[3]))
33240 : {
33241 : operands[3] = unwrap_const_vec_duplicate (operands[3]);
33242 : operands[3] = lowpart_subreg (DImode, operands[3], SImode);
33243 : emit_insn (gen_ashrv16si3_mask (operands[0],
33244 : operands[2],
33245 : operands[3],
33246 : operands[4],
33247 : operands[1]));
33248 : }
33249 : else
33250 : emit_insn (gen_avx512f_ashrvv16si_mask (operands[0],
33251 : operands[2],
33252 : operands[3],
33253 : operands[4],
33254 : operands[1]));
33255 : DONE;
33256 : }
33257 : #undef DONE
33258 : #undef FAIL
33259 : }
33260 : static const uint8_t expand_encoding[] = {
33261 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x5b, 0x4f,
33262 : 0x5b, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
33263 : 0x01
33264 : };
33265 : return complete_seq (expand_encoding, operands);
33266 : }
33267 :
33268 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29778 */
33269 : rtx
33270 : gen_cond_ashlv4di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33271 : {
33272 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33273 : start_sequence ();
33274 : {
33275 : #define FAIL _Pragma ("GCC error \"cond_ashlv4di cannot FAIL\"") (void)0
33276 : #define DONE return end_sequence ()
33277 : #line 29787 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33278 : {
33279 : if (const_vec_duplicate_p (operands[3]))
33280 : {
33281 : operands[3] = unwrap_const_vec_duplicate (operands[3]);
33282 : operands[3] = lowpart_subreg (DImode, operands[3], DImode);
33283 : emit_insn (gen_ashlv4di3_mask (operands[0],
33284 : operands[2],
33285 : operands[3],
33286 : operands[4],
33287 : operands[1]));
33288 : }
33289 : else
33290 : emit_insn (gen_avx2_ashlvv4di_mask (operands[0],
33291 : operands[2],
33292 : operands[3],
33293 : operands[4],
33294 : operands[1]));
33295 : DONE;
33296 : }
33297 : #undef DONE
33298 : #undef FAIL
33299 : }
33300 : static const uint8_t expand_encoding[] = {
33301 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x57, 0x4d,
33302 : 0x57, 0x01, 0x02, 0x01, 0x03, 0x01, 0x04, 0x01,
33303 : 0x01
33304 : };
33305 : return complete_seq (expand_encoding, operands);
33306 : }
33307 :
33308 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29963 */
33309 : extern rtx_insn *gen_split_3874 (rtx_insn *, rtx *);
33310 : rtx_insn *
33311 : gen_split_3874 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
33312 : {
33313 : if (dump_file)
33314 : fprintf (dump_file, "Splitting with gen_split_3874 (sse.md:29963)\n");
33315 : start_sequence ();
33316 : #define FAIL return (end_sequence (), nullptr)
33317 : #define DONE return end_sequence ()
33318 : #line 29976 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33319 : {
33320 : operands[1] = gen_lowpart (V8HImode, operands[1]);
33321 : operands[5] = CONST0_RTX (V8HImode);
33322 : }
33323 : #undef DONE
33324 : #undef FAIL
33325 : static const uint8_t expand_encoding[] = {
33326 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x55, 0x01,
33327 : 0x01, 0x01, 0x05
33328 : };
33329 : return complete_seq (expand_encoding, operands);
33330 : }
33331 :
33332 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:29963 */
33333 : extern rtx_insn *gen_split_3884 (rtx_insn *, rtx *);
33334 : rtx_insn *
33335 : gen_split_3884 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
33336 : {
33337 : if (dump_file)
33338 : fprintf (dump_file, "Splitting with gen_split_3884 (sse.md:29963)\n");
33339 : start_sequence ();
33340 : #define FAIL return (end_sequence (), nullptr)
33341 : #define DONE return end_sequence ()
33342 : #line 29976 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33343 : {
33344 : operands[1] = gen_lowpart (V4HFmode, operands[1]);
33345 : operands[5] = CONST0_RTX (V4HFmode);
33346 : }
33347 : #undef DONE
33348 : #undef FAIL
33349 : static const uint8_t expand_encoding[] = {
33350 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x6a, 0x01,
33351 : 0x01, 0x01, 0x05
33352 : };
33353 : return complete_seq (expand_encoding, operands);
33354 : }
33355 :
33356 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30026 */
33357 : rtx
33358 : gen_vcvtps2ph_mask (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33359 : {
33360 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33361 : start_sequence ();
33362 : {
33363 : #define FAIL return (end_sequence (), nullptr)
33364 : #define DONE return end_sequence ()
33365 : #line 30037 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33366 : operands[5] = CONST0_RTX (V4HImode);
33367 : #undef DONE
33368 : #undef FAIL
33369 : }
33370 : static const uint8_t expand_encoding[] = {
33371 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x50, 0x81,
33372 : 0x0b, 0x50, 0x1a, 0x49, 0x02, 0x01, 0x01, 0x01,
33373 : 0x02, 0x81, 0x17, 0x01, 0x05, 0x01, 0x03, 0x01,
33374 : 0x04
33375 : };
33376 : return complete_seq (expand_encoding, operands);
33377 : }
33378 :
33379 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30231 */
33380 : rtx
33381 : gen_avx2_gatherdiv2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33382 : {
33383 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33384 : start_sequence ();
33385 : {
33386 : #define FAIL return (end_sequence (), nullptr)
33387 : #define DONE return end_sequence ()
33388 : #line 30246 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33389 : {
33390 : operands[6]
33391 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33392 : operands[5]), UNSPEC_VSIBADDR);
33393 : }
33394 : #undef DONE
33395 : #undef FAIL
33396 : }
33397 : static const uint8_t expand_encoding[] = {
33398 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33399 : 0x52, 0x04, 0x01, 0x01, 0x36, 0x12, 0x04, 0x06,
33400 : 0x36, 0x01, 0x31, 0x00, 0x01, 0x04, 0x81, 0x1a,
33401 : 0x21, 0x00, 0x31, 0x52
33402 : };
33403 : return complete_seq (expand_encoding, operands);
33404 : }
33405 :
33406 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30346 */
33407 : rtx
33408 : gen_avx512f_gathersiv8di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33409 : {
33410 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33411 : start_sequence ();
33412 : {
33413 : #define FAIL return (end_sequence (), nullptr)
33414 : #define DONE return end_sequence ()
33415 : #line 30359 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33416 : {
33417 : operands[6]
33418 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33419 : operands[5]), UNSPEC_VSIBADDR);
33420 : }
33421 : #undef DONE
33422 : #undef FAIL
33423 : }
33424 : static const uint8_t expand_encoding[] = {
33425 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33426 : 0x5c, 0x03, 0x01, 0x01, 0x01, 0x04, 0x36, 0x12,
33427 : 0x04, 0x06, 0x81, 0x1a, 0x21, 0x00, 0x31, 0x0f
33428 : };
33429 : return complete_seq (expand_encoding, operands);
33430 : }
33431 :
33432 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30408 */
33433 : rtx
33434 : gen_avx512f_gatherdiv16si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33435 : {
33436 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33437 : start_sequence ();
33438 : {
33439 : #define FAIL return (end_sequence (), nullptr)
33440 : #define DONE return end_sequence ()
33441 : #line 30421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33442 : {
33443 : operands[6]
33444 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33445 : operands[5]), UNSPEC_VSIBADDR);
33446 : }
33447 : #undef DONE
33448 : #undef FAIL
33449 : }
33450 : static const uint8_t expand_encoding[] = {
33451 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33452 : 0x5b, 0x03, 0x01, 0x01, 0x01, 0x04, 0x36, 0x11,
33453 : 0x04, 0x06, 0x81, 0x1a, 0x21, 0x00, 0x31, 0x0f
33454 : };
33455 : return complete_seq (expand_encoding, operands);
33456 : }
33457 :
33458 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30408 */
33459 : rtx
33460 : gen_avx512vl_gatherdiv2di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4, const rtx operand5)
33461 : {
33462 : rtx operands[8] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4, operand5 };
33463 : start_sequence ();
33464 : {
33465 : #define FAIL return (end_sequence (), nullptr)
33466 : #define DONE return end_sequence ()
33467 : #line 30421 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33468 : {
33469 : operands[6]
33470 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (3, operands[2], operands[3],
33471 : operands[5]), UNSPEC_VSIBADDR);
33472 : }
33473 : #undef DONE
33474 : #undef FAIL
33475 : }
33476 : static const uint8_t expand_encoding[] = {
33477 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x1a,
33478 : 0x52, 0x03, 0x01, 0x01, 0x01, 0x04, 0x36, 0x12,
33479 : 0x04, 0x06, 0x81, 0x1a, 0x21, 0x00, 0x31, 0x0f
33480 : };
33481 : return complete_seq (expand_encoding, operands);
33482 : }
33483 :
33484 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30478 */
33485 : rtx
33486 : gen_avx512vl_scattersiv4si (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33487 : {
33488 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33489 : start_sequence ();
33490 : {
33491 : #define FAIL return (end_sequence (), nullptr)
33492 : #define DONE return end_sequence ()
33493 : #line 30490 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33494 : {
33495 : operands[5]
33496 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (4, operands[0], operands[2],
33497 : operands[4], operands[1]),
33498 : UNSPEC_VSIBADDR);
33499 : }
33500 : #undef DONE
33501 : #undef FAIL
33502 : }
33503 : static const uint8_t expand_encoding[] = {
33504 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x36, 0x51, 0x04,
33505 : 0x05, 0x1a, 0x51, 0x02, 0x01, 0x01, 0x01, 0x03,
33506 : 0x81, 0x21, 0x21, 0x00, 0x31, 0x0f
33507 : };
33508 : return complete_seq (expand_encoding, operands);
33509 : }
33510 :
33511 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30518 */
33512 : rtx
33513 : gen_avx512vl_scatterdiv4di (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33514 : {
33515 : rtx operands[7] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33516 : start_sequence ();
33517 : {
33518 : #define FAIL return (end_sequence (), nullptr)
33519 : #define DONE return end_sequence ()
33520 : #line 30530 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33521 : {
33522 : operands[5]
33523 : = gen_rtx_UNSPEC (Pmode, gen_rtvec (4, operands[0], operands[2],
33524 : operands[4], operands[1]),
33525 : UNSPEC_VSIBADDR);
33526 : }
33527 : #undef DONE
33528 : #undef FAIL
33529 : }
33530 : static const uint8_t expand_encoding[] = {
33531 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x36, 0x57, 0x04,
33532 : 0x05, 0x1a, 0x57, 0x02, 0x01, 0x01, 0x01, 0x03,
33533 : 0x81, 0x21, 0x21, 0x00, 0x31, 0x0f
33534 : };
33535 : return complete_seq (expand_encoding, operands);
33536 : }
33537 :
33538 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30616 */
33539 : rtx
33540 : gen_avx512vl_expandv8si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33541 : {
33542 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33543 : start_sequence ();
33544 : {
33545 : #define FAIL return (end_sequence (), nullptr)
33546 : #define DONE return end_sequence ()
33547 : #line 30624 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33548 : operands[2] = CONST0_RTX (V8SImode);
33549 : #undef DONE
33550 : #undef FAIL
33551 : }
33552 : static const uint8_t expand_encoding[] = {
33553 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x56, 0x03, 0x01,
33554 : 0x01, 0x01, 0x02, 0x01, 0x03, 0x81, 0x2c
33555 : };
33556 : return complete_seq (expand_encoding, operands);
33557 : }
33558 :
33559 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30656 */
33560 : extern rtx_insn *gen_split_3896 (rtx_insn *, rtx *);
33561 : rtx_insn *
33562 : gen_split_3896 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
33563 : {
33564 : if (dump_file)
33565 : fprintf (dump_file, "Splitting with gen_split_3896 (sse.md:30656)\n");
33566 : start_sequence ();
33567 : #define FAIL return (end_sequence (), nullptr)
33568 : #define DONE return end_sequence ()
33569 : #line 30668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33570 : {
33571 : unsigned HOST_WIDE_INT mask = INTVAL (operands[3]);
33572 : bool has_zero = false;
33573 : unsigned n = GET_MODE_NUNITS (V8DImode), i;
33574 : unsigned ones = 0;
33575 :
33576 : /* If all ones bits is in mask's lower part,
33577 : get number of ones and assign it to ONES. */
33578 : for (i = 0; i != n; i++)
33579 : {
33580 : if ((mask & HOST_WIDE_INT_1U << i) && has_zero)
33581 : break;
33582 :
33583 : /* Record first zero bit. */
33584 : if (!(mask & HOST_WIDE_INT_1U << i) && !has_zero)
33585 : {
33586 : has_zero = true;
33587 : ones = i;
33588 : }
33589 : }
33590 :
33591 : if (!has_zero)
33592 : ones = n;
33593 :
33594 : if (i != n || (ones != 0 && ones != n))
33595 : {
33596 : rtx reg = gen_reg_rtx (QImode);
33597 : emit_move_insn (reg, operands[3]);
33598 : enum insn_code icode;
33599 : if (i == n)
33600 : /* For masks with all one bits in it's lower part,
33601 : we can transform v{,p}expand* to vmovdq* with
33602 : mask operand. */
33603 : icode = CODE_FOR_avx512f_loadv8di_mask;
33604 : else
33605 : icode = CODE_FOR_expandv8di_mask;
33606 : emit_insn (GEN_FCN (icode) (operands[0], operands[1], operands[2], reg));
33607 : }
33608 : else
33609 : /* For ALL_MASK_ONES or CONST0_RTX mask, transform it to simple mov. */
33610 : emit_move_insn (operands[0], ones ? operands[1] : operands[2]);
33611 : DONE;
33612 : }
33613 : #undef DONE
33614 : #undef FAIL
33615 : static const uint8_t expand_encoding[] = {
33616 : 0x01, 0x27, 0x00
33617 : };
33618 : return complete_seq (expand_encoding, operands);
33619 : }
33620 :
33621 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:30656 */
33622 : extern rtx_insn *gen_split_3906 (rtx_insn *, rtx *);
33623 : rtx_insn *
33624 : gen_split_3906 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands ATTRIBUTE_UNUSED)
33625 : {
33626 : if (dump_file)
33627 : fprintf (dump_file, "Splitting with gen_split_3906 (sse.md:30656)\n");
33628 : start_sequence ();
33629 : #define FAIL return (end_sequence (), nullptr)
33630 : #define DONE return end_sequence ()
33631 : #line 30668 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33632 : {
33633 : unsigned HOST_WIDE_INT mask = INTVAL (operands[3]);
33634 : bool has_zero = false;
33635 : unsigned n = GET_MODE_NUNITS (V64QImode), i;
33636 : unsigned ones = 0;
33637 :
33638 : /* If all ones bits is in mask's lower part,
33639 : get number of ones and assign it to ONES. */
33640 : for (i = 0; i != n; i++)
33641 : {
33642 : if ((mask & HOST_WIDE_INT_1U << i) && has_zero)
33643 : break;
33644 :
33645 : /* Record first zero bit. */
33646 : if (!(mask & HOST_WIDE_INT_1U << i) && !has_zero)
33647 : {
33648 : has_zero = true;
33649 : ones = i;
33650 : }
33651 : }
33652 :
33653 : if (!has_zero)
33654 : ones = n;
33655 :
33656 : if (i != n || (ones != 0 && ones != n))
33657 : {
33658 : rtx reg = gen_reg_rtx (DImode);
33659 : emit_move_insn (reg, operands[3]);
33660 : enum insn_code icode;
33661 : if (i == n)
33662 : /* For masks with all one bits in it's lower part,
33663 : we can transform v{,p}expand* to vmovdq* with
33664 : mask operand. */
33665 : icode = CODE_FOR_avx512bw_loadv64qi_mask;
33666 : else
33667 : icode = CODE_FOR_expandv64qi_mask;
33668 : emit_insn (GEN_FCN (icode) (operands[0], operands[1], operands[2], reg));
33669 : }
33670 : else
33671 : /* For ALL_MASK_ONES or CONST0_RTX mask, transform it to simple mov. */
33672 : emit_move_insn (operands[0], ones ? operands[1] : operands[2]);
33673 : DONE;
33674 : }
33675 : #undef DONE
33676 : #undef FAIL
33677 : static const uint8_t expand_encoding[] = {
33678 : 0x01, 0x27, 0x00
33679 : };
33680 : return complete_seq (expand_encoding, operands);
33681 : }
33682 :
33683 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31051 */
33684 : extern rtx_insn *gen_split_3912 (rtx_insn *, rtx *);
33685 : rtx_insn *
33686 : gen_split_3912 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
33687 : {
33688 : if (dump_file)
33689 : fprintf (dump_file, "Splitting with gen_split_3912 (sse.md:31051)\n");
33690 : start_sequence ();
33691 : #define FAIL return (end_sequence (), nullptr)
33692 : #define DONE return end_sequence ()
33693 : #line 31062 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33694 : {
33695 : if (REG_P (operands[0]))
33696 : operands[0] = gen_lowpart (V4SImode, operands[0]);
33697 : else
33698 : operands[1] = lowpart_subreg (V16SImode, operands[1],
33699 : V4SImode);
33700 : }
33701 : #undef DONE
33702 : #undef FAIL
33703 : static const uint8_t expand_encoding[] = {
33704 : 0x01, 0x1f, 0x01, 0x00, 0x01, 0x01
33705 : };
33706 : return complete_seq (expand_encoding, operands);
33707 : }
33708 :
33709 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31108 */
33710 : rtx
33711 : gen_vpmadd52luqv4di_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33712 : {
33713 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33714 : start_sequence ();
33715 : {
33716 : #define FAIL return (end_sequence (), nullptr)
33717 : #define DONE return end_sequence ()
33718 : #line 31115 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33719 : {
33720 : emit_insn (gen_vpmadd52luqv4di_maskz_1 (
33721 : operands[0], operands[1], operands[2], operands[3],
33722 : CONST0_RTX (V4DImode), operands[4]));
33723 : DONE;
33724 : }
33725 : #undef DONE
33726 : #undef FAIL
33727 : }
33728 : static const uint8_t expand_encoding[] = {
33729 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33730 : 0x03, 0x01, 0x04
33731 : };
33732 : return complete_seq (expand_encoding, operands);
33733 : }
33734 :
33735 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31362 */
33736 : rtx
33737 : gen_vpshrdv_v16hi_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33738 : {
33739 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33740 : start_sequence ();
33741 : {
33742 : #define FAIL return (end_sequence (), nullptr)
33743 : #define DONE return end_sequence ()
33744 : #line 31369 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33745 : {
33746 : emit_insn (gen_vpshrdv_v16hi_maskz_1 (operands[0], operands[1],
33747 : operands[2], operands[3],
33748 : CONST0_RTX (V16HImode),
33749 : operands[4]));
33750 : DONE;
33751 : }
33752 : #undef DONE
33753 : #undef FAIL
33754 : }
33755 : static const uint8_t expand_encoding[] = {
33756 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33757 : 0x03, 0x01, 0x04
33758 : };
33759 : return complete_seq (expand_encoding, operands);
33760 : }
33761 :
33762 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31419 */
33763 : rtx
33764 : gen_vpshldv_v8si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33765 : {
33766 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33767 : start_sequence ();
33768 : {
33769 : #define FAIL return (end_sequence (), nullptr)
33770 : #define DONE return end_sequence ()
33771 : #line 31426 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33772 : {
33773 : emit_insn (gen_vpshldv_v8si_maskz_1 (operands[0], operands[1],
33774 : operands[2], operands[3],
33775 : CONST0_RTX (V8SImode),
33776 : operands[4]));
33777 : DONE;
33778 : }
33779 : #undef DONE
33780 : #undef FAIL
33781 : }
33782 : static const uint8_t expand_encoding[] = {
33783 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33784 : 0x03, 0x01, 0x04
33785 : };
33786 : return complete_seq (expand_encoding, operands);
33787 : }
33788 :
33789 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31537 */
33790 : rtx
33791 : gen_vpdpbusd_v4si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33792 : {
33793 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33794 : start_sequence ();
33795 : {
33796 : #define FAIL return (end_sequence (), nullptr)
33797 : #define DONE return end_sequence ()
33798 : #line 31544 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33799 : {
33800 : emit_insn (gen_vpdpbusd_v4si_maskz_1 (operands[0], operands[1],
33801 : operands[2], operands[3],
33802 : CONST0_RTX (V4SImode),
33803 : operands[4]));
33804 : DONE;
33805 : }
33806 : #undef DONE
33807 : #undef FAIL
33808 : }
33809 : static const uint8_t expand_encoding[] = {
33810 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33811 : 0x03, 0x01, 0x04
33812 : };
33813 : return complete_seq (expand_encoding, operands);
33814 : }
33815 :
33816 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31744 */
33817 : rtx
33818 : gen_vpdpwssds_v16si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
33819 : {
33820 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
33821 : start_sequence ();
33822 : {
33823 : #define FAIL return (end_sequence (), nullptr)
33824 : #define DONE return end_sequence ()
33825 : #line 31751 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33826 : {
33827 : emit_insn (gen_vpdpwssds_v16si_maskz_1 (operands[0], operands[1],
33828 : operands[2], operands[3],
33829 : CONST0_RTX (V16SImode),
33830 : operands[4]));
33831 : DONE;
33832 : }
33833 : #undef DONE
33834 : #undef FAIL
33835 : }
33836 : static const uint8_t expand_encoding[] = {
33837 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33838 : 0x03, 0x01, 0x04
33839 : };
33840 : return complete_seq (expand_encoding, operands);
33841 : }
33842 :
33843 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:31976 */
33844 : rtx
33845 : gen_vcvtneps2bf16_v4sf (const rtx operand0, const rtx operand1)
33846 : {
33847 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
33848 : start_sequence ();
33849 : {
33850 : #define FAIL return (end_sequence (), nullptr)
33851 : #define DONE return end_sequence ()
33852 : #line 31983 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33853 : operands[2] = CONST0_RTX (V4BFmode);
33854 : #undef DONE
33855 : #undef FAIL
33856 : }
33857 : static const uint8_t expand_encoding[] = {
33858 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x69, 0x72,
33859 : 0x65, 0x01, 0x01, 0x01, 0x02
33860 : };
33861 : return complete_seq (expand_encoding, operands);
33862 : }
33863 :
33864 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32080 */
33865 : rtx
33866 : gen_truncv16sfv16bf2 (const rtx operand0, const rtx operand1)
33867 : {
33868 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0, operand1 };
33869 : start_sequence ();
33870 : {
33871 : #define FAIL return (end_sequence (), nullptr)
33872 : #define DONE return end_sequence ()
33873 : #line 32087 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33874 : {
33875 : if (!TARGET_AVX512BF16)
33876 : {
33877 : ix86_expand_vector_sf2bf_with_vec_perm (operands[0], operands[1]);
33878 : DONE;
33879 : }
33880 : }
33881 : #undef DONE
33882 : #undef FAIL
33883 : }
33884 : static const uint8_t expand_encoding[] = {
33885 : 0x01, 0x1f, 0x01, 0x00, 0x72, 0x6d, 0x01, 0x01
33886 : };
33887 : return complete_seq (expand_encoding, operands);
33888 : }
33889 :
33890 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32312 */
33891 : rtx
33892 : gen_aesencwide256klu8 (const rtx operand0)
33893 : {
33894 : rtx operands[2] ATTRIBUTE_UNUSED = { operand0 };
33895 : start_sequence ();
33896 : {
33897 : #define FAIL return (end_sequence (), nullptr)
33898 : #define DONE return end_sequence ()
33899 : #line 32319 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33900 : {
33901 : rtx tmp_unspec;
33902 : unsigned i;
33903 :
33904 : /* parallel rtx for widekl predicate */
33905 : operands[1] = gen_rtx_PARALLEL (VOIDmode, rtvec_alloc (9));
33906 :
33907 : tmp_unspec
33908 : = gen_rtx_UNSPEC_VOLATILE (CCZmode,
33909 : gen_rtvec (1, operands[0]),
33910 : UNSPECV_AESENCWIDE256KLU8);
33911 :
33912 : XVECEXP (operands[1], 0, 0)
33913 : = gen_rtx_SET (gen_rtx_REG (CCZmode, FLAGS_REG),
33914 : tmp_unspec);
33915 :
33916 : for (i = 0; i < 8; i++)
33917 : {
33918 : rtx xmm_reg = gen_rtx_REG (V2DImode, GET_SSE_REGNO (i));
33919 :
33920 : tmp_unspec
33921 : = gen_rtx_UNSPEC_VOLATILE (V2DImode,
33922 : gen_rtvec (1, xmm_reg),
33923 : UNSPECV_AESENCWIDE256KLU8);
33924 : XVECEXP (operands[1], 0, i + 1)
33925 : = gen_rtx_SET (xmm_reg, tmp_unspec);
33926 : }
33927 : }
33928 : #undef DONE
33929 : #undef FAIL
33930 : }
33931 : static const uint8_t expand_encoding[] = {
33932 : 0x01, 0x04, 0x01
33933 : };
33934 : return complete_seq (expand_encoding, operands);
33935 : }
33936 :
33937 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32403 */
33938 : rtx
33939 : gen_sdot_prodv16siv64qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
33940 : {
33941 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
33942 : start_sequence ();
33943 : {
33944 : #define FAIL return (end_sequence (), nullptr)
33945 : #define DONE return end_sequence ()
33946 : #line 32409 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
33947 : {
33948 : if ((64 == 64 && TARGET_AVX10_2)
33949 : || (64 < 64 && (TARGET_AVXVNNIINT8 || TARGET_AVX10_2)))
33950 : {
33951 : operands[1] = lowpart_subreg (V16SImode,
33952 : force_reg (V64QImode, operands[1]),
33953 : V64QImode);
33954 : operands[2] = lowpart_subreg (V16SImode,
33955 : force_reg (V64QImode, operands[2]),
33956 : V64QImode);
33957 : emit_insn (gen_vpdpbssd_v16si (operands[0], operands[3],
33958 : operands[1], operands[2]));
33959 : }
33960 : else
33961 : {
33962 : /* Emulate with vpdpwssd. */
33963 : rtx op1_lo = gen_reg_rtx (V32HImode);
33964 : rtx op1_hi = gen_reg_rtx (V32HImode);
33965 : rtx op2_lo = gen_reg_rtx (V32HImode);
33966 : rtx op2_hi = gen_reg_rtx (V32HImode);
33967 :
33968 : emit_insn (gen_vec_unpacks_lo_v64qi (op1_lo, operands[1]));
33969 : emit_insn (gen_vec_unpacks_lo_v64qi (op2_lo, operands[2]));
33970 : emit_insn (gen_vec_unpacks_hi_v64qi (op1_hi, operands[1]));
33971 : emit_insn (gen_vec_unpacks_hi_v64qi (op2_hi, operands[2]));
33972 :
33973 : rtx res1 = gen_reg_rtx (V16SImode);
33974 : rtx res2 = gen_reg_rtx (V16SImode);
33975 : rtx sum = gen_reg_rtx (V16SImode);
33976 :
33977 : emit_move_insn (sum, CONST0_RTX (V16SImode));
33978 : emit_insn (gen_sdot_prodv16siv32hi (res1,
33979 : op1_lo, op2_lo, sum));
33980 : emit_insn (gen_sdot_prodv16siv32hi (res2,
33981 : op1_hi, op2_hi,
33982 : operands[3]));
33983 : emit_insn (gen_addv16si3 (operands[0], res1, res2));
33984 : }
33985 :
33986 : DONE;
33987 : }
33988 : #undef DONE
33989 : #undef FAIL
33990 : }
33991 : static const uint8_t expand_encoding[] = {
33992 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
33993 : 0x03
33994 : };
33995 : return complete_seq (expand_encoding, operands);
33996 : }
33997 :
33998 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32535 */
33999 : rtx
34000 : gen_vpdpbsud_v8si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34001 : {
34002 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34003 : start_sequence ();
34004 : {
34005 : #define FAIL return (end_sequence (), nullptr)
34006 : #define DONE return end_sequence ()
34007 : #line 32546 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34008 : operands[5] = CONST0_RTX (V8SImode);
34009 : #undef DONE
34010 : #undef FAIL
34011 : }
34012 : static const uint8_t expand_encoding[] = {
34013 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a,
34014 : 0x56, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
34015 : 0x81, 0x66, 0x01, 0x05, 0x01, 0x04
34016 : };
34017 : return complete_seq (expand_encoding, operands);
34018 : }
34019 :
34020 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32693 */
34021 : rtx
34022 : gen_vcvtbiasph2bf8v8hf (const rtx operand0, const rtx operand1, const rtx operand2)
34023 : {
34024 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
34025 : start_sequence ();
34026 : {
34027 : #define FAIL return (end_sequence (), nullptr)
34028 : #define DONE return end_sequence ()
34029 : #line 32702 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34030 : operands[3] = CONST0_RTX (V8QImode);
34031 : #undef DONE
34032 : #undef FAIL
34033 : }
34034 : static const uint8_t expand_encoding[] = {
34035 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x1a,
34036 : 0x48, 0x02, 0x01, 0x01, 0x01, 0x02, 0x81, 0x76,
34037 : 0x01, 0x03
34038 : };
34039 : return complete_seq (expand_encoding, operands);
34040 : }
34041 :
34042 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32785 */
34043 : rtx
34044 : gen_vcvtph2hf8v8hf (const rtx operand0, const rtx operand1)
34045 : {
34046 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1 };
34047 : start_sequence ();
34048 : {
34049 : #define FAIL return (end_sequence (), nullptr)
34050 : #define DONE return end_sequence ()
34051 : #line 32793 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34052 : operands[2] = CONST0_RTX (V8QImode);
34053 : #undef DONE
34054 : #undef FAIL
34055 : }
34056 : static const uint8_t expand_encoding[] = {
34057 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x0b, 0x4f, 0x1a,
34058 : 0x48, 0x01, 0x01, 0x01, 0x82, 0x00, 0x01, 0x02
34059 : };
34060 : return complete_seq (expand_encoding, operands);
34061 : }
34062 :
34063 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32893 */
34064 : rtx
34065 : gen_udot_prodv16siv32hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34066 : {
34067 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34068 : start_sequence ();
34069 : {
34070 : #define FAIL return (end_sequence (), nullptr)
34071 : #define DONE return end_sequence ()
34072 : #line 32899 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34073 : {
34074 : operands[1] = lowpart_subreg (V16SImode,
34075 : force_reg (V32HImode, operands[1]),
34076 : V32HImode);
34077 : operands[2] = lowpart_subreg (V16SImode,
34078 : force_reg (V32HImode, operands[2]),
34079 : V32HImode);
34080 : emit_insn (gen_vpdpwuud_v16si (operands[0], operands[3],
34081 : operands[1], operands[2]));
34082 : DONE;
34083 : }
34084 : #undef DONE
34085 : #undef FAIL
34086 : }
34087 : static const uint8_t expand_encoding[] = {
34088 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34089 : 0x03
34090 : };
34091 : return complete_seq (expand_encoding, operands);
34092 : }
34093 :
34094 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32947 */
34095 : rtx
34096 : gen_vpdpwusds_v8si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34097 : {
34098 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34099 : start_sequence ();
34100 : {
34101 : #define FAIL return (end_sequence (), nullptr)
34102 : #define DONE return end_sequence ()
34103 : #line 32958 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34104 : operands[5] = CONST0_RTX (V8SImode);
34105 : #undef DONE
34106 : #undef FAIL
34107 : }
34108 : static const uint8_t expand_encoding[] = {
34109 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x56, 0x1a,
34110 : 0x56, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
34111 : 0x81, 0x6b, 0x01, 0x05, 0x01, 0x04
34112 : };
34113 : return complete_seq (expand_encoding, operands);
34114 : }
34115 :
34116 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:32947 */
34117 : rtx
34118 : gen_vpdpwuuds_v4si_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34119 : {
34120 : rtx operands[6] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34121 : start_sequence ();
34122 : {
34123 : #define FAIL return (end_sequence (), nullptr)
34124 : #define DONE return end_sequence ()
34125 : #line 32958 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34126 : operands[5] = CONST0_RTX (V4SImode);
34127 : #undef DONE
34128 : #undef FAIL
34129 : }
34130 : static const uint8_t expand_encoding[] = {
34131 : 0x01, 0x1f, 0x01, 0x00, 0x81, 0x09, 0x51, 0x1a,
34132 : 0x51, 0x03, 0x01, 0x01, 0x01, 0x02, 0x01, 0x03,
34133 : 0x81, 0x6f, 0x01, 0x05, 0x01, 0x04
34134 : };
34135 : return complete_seq (expand_encoding, operands);
34136 : }
34137 :
34138 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33062 */
34139 : rtx
34140 : gen_avx10_2_fmaddbf16_v16bf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34141 : {
34142 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34143 : start_sequence ();
34144 : {
34145 : #define FAIL return (end_sequence (), nullptr)
34146 : #define DONE return end_sequence ()
34147 : #line 33069 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34148 : {
34149 : emit_insn (gen_avx10_2_fmaddbf16_v16bf_maskz_1 (operands[0], operands[1],
34150 : operands[2], operands[3],
34151 : CONST0_RTX (V16BFmode),
34152 : operands[4]));
34153 : DONE;
34154 : }
34155 : #undef DONE
34156 : #undef FAIL
34157 : }
34158 : static const uint8_t expand_encoding[] = {
34159 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34160 : 0x03, 0x01, 0x04
34161 : };
34162 : return complete_seq (expand_encoding, operands);
34163 : }
34164 :
34165 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md:33254 */
34166 : rtx
34167 : gen_avx10_2_fnmsubbf16_v8bf_maskz (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34168 : {
34169 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34170 : start_sequence ();
34171 : {
34172 : #define FAIL return (end_sequence (), nullptr)
34173 : #define DONE return end_sequence ()
34174 : #line 33261 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sse.md"
34175 : {
34176 : emit_insn (gen_avx10_2_fnmsubbf16_v8bf_maskz_1 (operands[0], operands[1],
34177 : operands[2], operands[3],
34178 : CONST0_RTX (V8BFmode),
34179 : operands[4]));
34180 : DONE;
34181 : }
34182 : #undef DONE
34183 : #undef FAIL
34184 : }
34185 : static const uint8_t expand_encoding[] = {
34186 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34187 : 0x03, 0x01, 0x04
34188 : };
34189 : return complete_seq (expand_encoding, operands);
34190 : }
34191 :
34192 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:238 */
34193 : rtx
34194 : gen_atomic_storedi (const rtx operand0, const rtx operand1, const rtx operand2)
34195 : {
34196 : rtx operands[3] ATTRIBUTE_UNUSED = { operand0, operand1, operand2 };
34197 : start_sequence ();
34198 : {
34199 : #define FAIL return (end_sequence (), nullptr)
34200 : #define DONE return end_sequence ()
34201 : #line 244 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34202 : {
34203 : enum memmodel model = memmodel_from_int (INTVAL (operands[2]));
34204 :
34205 : if (DImode == DImode && !TARGET_64BIT)
34206 : {
34207 : /* For DImode on 32-bit, we can use the FPU to perform the store. */
34208 : /* Note that while we could perform a cmpxchg8b loop, that turns
34209 : out to be significantly larger than this plus a barrier. */
34210 : emit_insn (gen_atomic_storedi_fpu
34211 : (operands[0], operands[1],
34212 : assign_stack_temp (DImode, GET_MODE_SIZE (DImode))));
34213 : }
34214 : else
34215 : {
34216 : operands[1] = force_reg (DImode, operands[1]);
34217 :
34218 : /* For seq-cst stores, use XCHG when we lack MFENCE. */
34219 : if (is_mm_seq_cst (model)
34220 : && (!(TARGET_64BIT || TARGET_SSE2)
34221 : || TARGET_AVOID_MFENCE))
34222 : {
34223 : emit_insn (gen_atomic_exchangedi (gen_reg_rtx (DImode),
34224 : operands[0], operands[1],
34225 : operands[2]));
34226 : DONE;
34227 : }
34228 :
34229 : /* Otherwise use a store. */
34230 : emit_insn (gen_atomic_storedi_1 (operands[0], operands[1],
34231 : operands[2]));
34232 : }
34233 : /* ... followed by an MFENCE, if required. */
34234 : if (is_mm_seq_cst (model))
34235 : emit_insn (gen_mem_thread_fence (operands[2]));
34236 : DONE;
34237 : }
34238 : #undef DONE
34239 : #undef FAIL
34240 : }
34241 : static const uint8_t expand_encoding[] = {
34242 : 0x01, 0x1f, 0x01, 0x00, 0x1a, 0x12, 0x02, 0x01,
34243 : 0x01, 0x01, 0x02, 0x82, 0x24
34244 : };
34245 : return complete_seq (expand_encoding, operands);
34246 : }
34247 :
34248 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:539 */
34249 : extern rtx_insn *gen_peephole2_439 (rtx_insn *, rtx *);
34250 : rtx_insn *
34251 : gen_peephole2_439 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
34252 : {
34253 : if (dump_file)
34254 : fprintf (dump_file, "Splitting with gen_peephole2_439 (sync.md:539)\n");
34255 : start_sequence ();
34256 : static const uint8_t expand_encoding[] = {
34257 : 0x02, 0x17, 0x00, 0x02, 0x1f, 0x01, 0x00, 0x01,
34258 : 0x01, 0x05, 0x02, 0x11, 0x17, 0x00, 0x03, 0x1f,
34259 : 0x01, 0x02, 0x1b, 0x0f, 0x04, 0x01, 0x03, 0x01,
34260 : 0x02, 0x01, 0x04, 0x01, 0x05, 0x6d, 0x1f, 0x01,
34261 : 0x03, 0x1b, 0x0f, 0x01, 0x27, 0x00, 0x6d, 0x1f,
34262 : 0x30, 0x0c, 0x11, 0x1b, 0x0c, 0x01, 0x27, 0x00,
34263 : 0x6d
34264 : };
34265 : return complete_seq (expand_encoding, operands);
34266 : }
34267 :
34268 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:573 */
34269 : rtx
34270 : gen_atomic_fetch_orqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34271 : {
34272 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34273 : start_sequence ();
34274 : {
34275 : #define FAIL return (end_sequence (), nullptr)
34276 : #define DONE return end_sequence ()
34277 : #line 580 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34278 : {
34279 : ix86_expand_atomic_fetch_op_loop (operands[0], operands[1],
34280 : operands[2], IOR, false,
34281 : false);
34282 : DONE;
34283 : }
34284 : #undef DONE
34285 : #undef FAIL
34286 : }
34287 : static const uint8_t expand_encoding[] = {
34288 : 0x03, 0x01, 0x00, 0x4a, 0x0f, 0x01, 0x01, 0x01,
34289 : 0x02, 0x01, 0x03
34290 : };
34291 : return complete_seq (expand_encoding, operands);
34292 : }
34293 :
34294 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:587 */
34295 : rtx
34296 : gen_atomic_xor_fetchqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34297 : {
34298 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34299 : start_sequence ();
34300 : {
34301 : #define FAIL return (end_sequence (), nullptr)
34302 : #define DONE return end_sequence ()
34303 : #line 594 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34304 : {
34305 : ix86_expand_atomic_fetch_op_loop (operands[0], operands[1],
34306 : operands[2], XOR, true,
34307 : false);
34308 : DONE;
34309 : }
34310 : #undef DONE
34311 : #undef FAIL
34312 : }
34313 : static const uint8_t expand_encoding[] = {
34314 : 0x03, 0x01, 0x00, 0x4b, 0x0f, 0x01, 0x01, 0x01,
34315 : 0x02, 0x01, 0x03
34316 : };
34317 : return complete_seq (expand_encoding, operands);
34318 : }
34319 :
34320 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:614 */
34321 : rtx
34322 : gen_atomic_nand_fetchqi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34323 : {
34324 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34325 : start_sequence ();
34326 : {
34327 : #define FAIL return (end_sequence (), nullptr)
34328 : #define DONE return end_sequence ()
34329 : #line 620 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34330 : {
34331 : ix86_expand_atomic_fetch_op_loop (operands[0], operands[1],
34332 : operands[2], NOT, true,
34333 : false);
34334 : DONE;
34335 : }
34336 : #undef DONE
34337 : #undef FAIL
34338 : }
34339 : static const uint8_t expand_encoding[] = {
34340 : 0x04, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34341 : 0x03
34342 : };
34343 : return complete_seq (expand_encoding, operands);
34344 : }
34345 :
34346 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:643 */
34347 : rtx
34348 : gen_atomic_or_fetchdi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3)
34349 : {
34350 : rtx operands[4] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3 };
34351 : start_sequence ();
34352 : {
34353 : #define FAIL return (end_sequence (), nullptr)
34354 : #define DONE return end_sequence ()
34355 : #line 650 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34356 : {
34357 : bool doubleword = (DImode == DImode && !TARGET_64BIT)
34358 : || (DImode == TImode);
34359 : ix86_expand_atomic_fetch_op_loop (operands[0], operands[1],
34360 : operands[2], IOR, true,
34361 : doubleword);
34362 : DONE;
34363 : }
34364 : #undef DONE
34365 : #undef FAIL
34366 : }
34367 : static const uint8_t expand_encoding[] = {
34368 : 0x03, 0x01, 0x00, 0x4a, 0x12, 0x01, 0x01, 0x01,
34369 : 0x02, 0x01, 0x03
34370 : };
34371 : return complete_seq (expand_encoding, operands);
34372 : }
34373 :
34374 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:709 */
34375 : extern rtx_insn *gen_peephole2_448 (rtx_insn *, rtx *);
34376 : rtx_insn *
34377 : gen_peephole2_448 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
34378 : {
34379 : if (dump_file)
34380 : fprintf (dump_file, "Splitting with gen_peephole2_448 (sync.md:709)\n");
34381 : start_sequence ();
34382 : static const uint8_t expand_encoding[] = {
34383 : 0x01, 0x17, 0x00, 0x02, 0x1f, 0x30, 0x0c, 0x11,
34384 : 0x3a, 0x0c, 0x1b, 0x10, 0x02, 0x01, 0x01, 0x01,
34385 : 0x04, 0x6e, 0x01, 0x03, 0x1f, 0x01, 0x01, 0x3b,
34386 : 0x10, 0x01, 0x01, 0x01, 0x02
34387 : };
34388 : return complete_seq (expand_encoding, operands);
34389 : }
34390 :
34391 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:889 */
34392 : rtx
34393 : gen_atomic_bit_test_and_sethi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34394 : {
34395 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34396 : start_sequence ();
34397 : {
34398 : #define FAIL return (end_sequence (), nullptr)
34399 : #define DONE return end_sequence ()
34400 : #line 896 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34401 : {
34402 : emit_insn (gen_atomic_bit_test_and_sethi_1 (operands[1], operands[2],
34403 : operands[3]));
34404 : rtx tem = gen_reg_rtx (QImode);
34405 : ix86_expand_setcc (tem, EQ, gen_rtx_REG (CCCmode, FLAGS_REG), const0_rtx);
34406 : rtx result = convert_modes (HImode, QImode, tem, 1);
34407 : if (operands[4] == const0_rtx)
34408 : result = expand_simple_binop (HImode, ASHIFT, result,
34409 : operands[2], operands[0], 0, OPTAB_WIDEN);
34410 : if (result != operands[0])
34411 : emit_move_insn (operands[0], result);
34412 : DONE;
34413 : }
34414 : #undef DONE
34415 : #undef FAIL
34416 : }
34417 : static const uint8_t expand_encoding[] = {
34418 : 0x05, 0x01, 0x00, 0x01, 0x01, 0x01, 0x02, 0x01,
34419 : 0x03, 0x01, 0x04
34420 : };
34421 : return complete_seq (expand_encoding, operands);
34422 : }
34423 :
34424 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1000 */
34425 : rtx
34426 : gen_atomic_sub_fetch_cmp_0qi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34427 : {
34428 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34429 : start_sequence ();
34430 : {
34431 : #define FAIL return (end_sequence (), nullptr)
34432 : #define DONE return end_sequence ()
34433 : #line 1007 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34434 : {
34435 : if (INTVAL (operands[4]) == GT || INTVAL (operands[4]) == LE)
34436 : FAIL;
34437 : emit_insn (gen_atomic_sub_fetch_cmp_0qi_1 (operands[1],
34438 : operands[2],
34439 : operands[3]));
34440 : ix86_expand_setcc (operands[0], (enum rtx_code) INTVAL (operands[4]),
34441 : gen_rtx_REG (CCGOCmode, FLAGS_REG), const0_rtx);
34442 : DONE;
34443 : }
34444 : #undef DONE
34445 : #undef FAIL
34446 : }
34447 : static const uint8_t expand_encoding[] = {
34448 : 0x04, 0x01, 0x00, 0x3c, 0x0f, 0x01, 0x01, 0x01,
34449 : 0x02, 0x01, 0x03, 0x01, 0x04
34450 : };
34451 : return complete_seq (expand_encoding, operands);
34452 : }
34453 :
34454 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1074 */
34455 : rtx
34456 : gen_atomic_and_fetch_cmp_0hi (const rtx operand0, const rtx operand1, const rtx operand2, const rtx operand3, const rtx operand4)
34457 : {
34458 : rtx operands[5] ATTRIBUTE_UNUSED = { operand0, operand1, operand2, operand3, operand4 };
34459 : start_sequence ();
34460 : {
34461 : #define FAIL return (end_sequence (), nullptr)
34462 : #define DONE return end_sequence ()
34463 : #line 1081 "/home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md"
34464 : {
34465 : emit_insn (gen_atomic_and_fetch_cmp_0hi_1 (operands[1], operands[2],
34466 : operands[3]));
34467 : ix86_expand_setcc (operands[0], (enum rtx_code) INTVAL (operands[4]),
34468 : gen_rtx_REG (CCNOmode, FLAGS_REG), const0_rtx);
34469 : DONE;
34470 : }
34471 : #undef DONE
34472 : #undef FAIL
34473 : }
34474 : static const uint8_t expand_encoding[] = {
34475 : 0x04, 0x01, 0x00, 0x49, 0x10, 0x01, 0x01, 0x01,
34476 : 0x02, 0x01, 0x03, 0x01, 0x04
34477 : };
34478 : return complete_seq (expand_encoding, operands);
34479 : }
34480 :
34481 : /* /home/worker/buildworker/tiber-lcov/build/gcc/config/i386/sync.md:1131 */
34482 : extern rtx_insn *gen_peephole2_456 (rtx_insn *, rtx *);
34483 : rtx_insn *
34484 : gen_peephole2_456 (rtx_insn *curr_insn ATTRIBUTE_UNUSED, rtx *operands)
34485 : {
34486 : if (dump_file)
34487 : fprintf (dump_file, "Splitting with gen_peephole2_456 (sync.md:1131)\n");
34488 : start_sequence ();
34489 : static const uint8_t expand_encoding[] = {
34490 : 0x03, 0x1f, 0x01, 0x00, 0x01, 0x01, 0x17, 0x00,
34491 : 0x03, 0x1f, 0x01, 0x00, 0x1b, 0x12, 0x04, 0x01,
34492 : 0x02, 0x01, 0x00, 0x01, 0x03, 0x01, 0x04, 0x70,
34493 : 0x1f, 0x01, 0x02, 0x1b, 0x12, 0x01, 0x27, 0x00,
34494 : 0x70, 0x1f, 0x30, 0x02, 0x11, 0x3a, 0x02, 0x01,
34495 : 0x02, 0x01, 0x00, 0x1f, 0x01, 0x07, 0x02, 0x08,
34496 : 0x01, 0x09, 0x27, 0x00
34497 : };
34498 : return complete_seq (expand_encoding, operands);
34499 : }
34500 :
|